Návod na repository pro Debian
Strukturu jsem zvolil podobnou jako mají oficiální repository - balíčky jsou v adresáři pool, seznamy pro jednotlivé distribuce v dist. Tomu odpovídá konfigurace apt-ftparchive:
Dir { ArchiveDir "/home/debbuild/packages"; CacheDir "/home/debbuild/ftparchive/"; }; Default { Packages::Compress ". gzip bzip2"; Sources::Compress ". gzip bzip2"; Contents::Compress ". gzip bzip2"; }; TreeDefault { BinCacheDB "packages-$(SECTION)-$(ARCH).db"; Directory "pool/$(SECTION)"; Packages "$(DIST)/$(SECTION)/binary-$(ARCH)/Packages"; SrcDirectory "pool/$(SECTION)"; Sources "$(DIST)/$(SECTION)/source/Sources"; Contents "$(DIST)/Contents-$(ARCH)"; }; Tree "dists/unstable" { Sections "mc gammu slovnik"; Architectures "i386 source"; }
Teď již můžeme vygenerovat seznamy balíčků a jejich obsahy (pro vyhledávání pomocí apt-file):
apt-ftparchive generate configuration_file
Protože archív chci mít podepsaný, tak nezbývá než ještě vytvořit soubor Release, který budeme podepisovat. K tomu nám opět pomůže apt-ftparchive. Je vhodné do tohoto souboru uvést některé informace o tom co distribuujeme, takže je zadáme do konfiguračního souboru:
APT::FTPArchive::Release::Codename "sid"; APT::FTPArchive::Release::Origin "Michal Čihař"; APT::FTPArchive::Release::Components "mc slovnik gammu"; APT::FTPArchive::Release::Label "Unofficial packages"; APT::FTPArchive::Release::Architectures "i386 all"; APT::FTPArchive::Release::Suite "unstable";
A pak již jen vygenerovat Release, obsah tohoto souboru získáme pomocí příkazu:
apt-ftparchive -c configuration_for_release release /home/debbuild/packages/dists/unstable & \ /home/debbuild/packages/dists/unstable/Release
Záverečným krokem je podepsat tento soubor, aby si uživatelé APT 0.6 a novějšího mohli ověřit původ balíčků:
gpg --output Release.gpg -ba Release