Existem várias maneiras de fazer isso; Eu uso apt-ftparchive
.
-
Crie um arquivo
aptftp.conf
na raiz do seu repositório:APT::FTPArchive::Release { Origin "Your origin"; Label "Your label"; Suite "unstable"; Codename "sid"; Architectures "amd64 i386 source"; Components "main"; Description "Your description"; };
com os valores apropriados (altere “Origin”, “Label”, “Description” pelo menos e ajuste “Architectures” para corresponder aos binários que você hospeda).
-
Crie um arquivo
aptgenerate.conf
correspondente ao lado de:Dir::ArchiveDir "."; Dir::CacheDir "."; TreeDefault::Directory "pool/"; TreeDefault::SrcDirectory "pool/"; Default::Packages::Extensions ".deb"; Default::Packages::Compress ". gzip bzip2"; Default::Sources::Compress ". gzip bzip2"; Default::Contents::Compress "gzip bzip2"; BinDirectory "dists/unstable/main/binary-amd64" { Packages "dists/unstable/main/binary-amd64/Packages"; Contents "dists/unstable/Contents-amd64"; SrcPackages "dists/unstable/main/source/Sources"; }; BinDirectory "dists/unstable/main/binary-i386" { Packages "dists/unstable/main/binary-i386/Packages"; Contents "dists/unstable/Contents-i386"; SrcPackages "dists/unstable/main/source/Sources"; }; Tree "dists/unstable" { Sections "main"; # contrib non-free"; Architectures "amd64 i386 source"; };
(removendo
i386
se você não precisar disso). -
No seu repositório, limpe o banco de dados:
rm -f packages-i386.db packages-amd64.db
-
Gere os catálogos de pacotes:
apt-ftparchive generate -c=aptftp.conf aptgenerate.conf
-
Gere o arquivo
Release
:apt-ftparchive release -c=aptftp.conf dists/unstable >dists/unstable/Release
-
Assine:
gpg -u yourkeyid -bao dists/unstable/Release.gpg dists/unstable/Release
(com o id apropriado em vez de
yourkeyid
).
Sempre que você fizer uma alteração no repositório, será necessário executar as etapas de 3 a 6 novamente.