Назад | Перейти на главную страницу

Как установить дополнительные поля в файле выпуска с помощью apt-ftparchive?

Страница руководства для apt-ftparchive гласит:

   release
       The release command generates a Release file from a directory tree. It recursively searches the given directory
       for uncompressed and compressed Packages, Sources, Contents, Components and icons files as well as Release, Index
       and md5sum.txt files by default (APT::FTPArchive::Release::Default-Patterns). Additional filename patterns can be
       added by listing them in APT::FTPArchive::Release::Patterns. It then writes to stdout a Release file containing
       (by default) an MD5, SHA1, SHA256 and SHA512 digest for each file.

       Values for the additional metadata fields in the Release file are taken from the corresponding variables under
       APT::FTPArchive::Release, e.g.  APT::FTPArchive::Release::Origin. The supported fields are Origin, Label, Suite,
       Version, Codename, Date, NotAutomatic, ButAutomaticUpgrades, Acquire-By-Hash, Valid-Until, Signed-By,
       Architectures, Components and Description.

Мне нужно установить эти поля в сгенерированном Release файл, созданный с помощью:

user@server:/srv/repo/dists/ascii$ apt-ftparchive release . > Release

Как я могу это сделать?

Что это APT::FTPArchive::Release::... переменные и как их установить?

Команда apt-configстраница руководства показывает, что его можно использовать для установки этих переменных с помощью --option вариант.

К сожалению, параметры не сохраняются, что приводит к их настройке. apt-config абсолютно бессмысленно. (Вероятно, есть причина, я просто еще не знаю достаточно, чтобы это увидеть.)

К счастью, это --option вариант также работает на apt-ftparchive, Я только что пропустил этот раздел справочной страницы:

   -o, --option
       Set a Configuration Option; This will set an arbitrary configuration option. The syntax is -o Foo::Bar=bar.  -o
       and --option can be used multiple times to set different options.

Итак, полная командная строка была:

user@server:/srv/repo/dists/ascii$ apt-ftparchive -o APT::FTPArchive::Release::Origin="Devuan" -o APT::FTPArchive::Release::Label="Devuan" -o APT::FTPArchive::Release::Suite="stable" -o APT::FTPArchive::Release::Version="2.0" -o APT::FTPArchive::Release::Codename="ascii" -o APT::FTPArchive::Release::Architectures="armhf" -o APT::FTPArchive::Release::Components="main" release . > Release