Я хочу выяснить стандарт имен файлов deb. Например, у меня есть файл с именем foo_1.0.0-1_all.deb
. Как я выяснил в FAQ Debian , существует такое соглашение:
<foo>_<VersionNumber>-<DebianRevisionNumber>_<DebianArchitecture>.deb
Но это не стандарт. Он не отвечает на множество вопросов. Например: как долго это может быть? Какие символы разрешены? Какие значения могут быть?
Существует ли какой-либо стандарт, подробно описывающий имя файла deb?
Вот некоторые соображения по поводу соглашений об именах:
Если вы использовали Debian какое-то время, вы могли заметить, что все файлы пакетов Debian следуют определенным соглашениям об именах. Каждый двоичный пакет Debian должен иметь имя файла в следующем формате: packagename_version_arch.deb, где «packagename» - это имя пакета, «version» - это версия пакета с номерами старшего, младшего номера и версии, а «arch» - это архитектура для пакета. < ..>
blockquote>Из IBM.com
Несмотря на то, что это для RPM, оно также имеет довольно хорошее соглашение об именах: имя - версия - выпуск . архитектура .rpm
где:
blockquote>
name - это имя, описывающее упакованное программное обеспечение.
версия является версией упакованного программного обеспечения.
выпуск - это количество раз, когда эта версия программного обеспечения была упакована.
архитектура - это сокращенное название, описывающее тип компьютерного оборудования, на котором должно работать упакованное программное обеспечение. Это также может быть строка src или nosrc. Обе эти строки указывают, что файл является исходным пакетом RPM. Строка nosrc означает, что файл содержит только файлы сборки пакета, а строка src означает, что файл содержит необходимые файлы сборки пакета и исходный код программного обеспечения.
С RPM.org
Ну, как вы сказали, имя foo_VVV-RRR_AAA.deb
для файла deb - это просто соглашение для именования файлов .deb
, где VVV
, RRR
и AAA
- версия, ревизия и архитектура пакет foo
.
Также это соглашение предлагается (продиктовано) при сборке пакетов с debuild или git-buildpackage .
Если вы согласны с тем, что с соглашением все в порядке, если нет, вы можете переименовать свои .deb
файлы по своему желанию, , но только следуя этим правилам (в этом случае возможно вы должны запустить dpkg --info <deb_file>
, чтобы найти простую информацию, которую обычно можно получить, используя вышеуказанное соглашение для имени файла deb).
Теперь, как вы можете прочитать в Filename - Wikipedia :
Нет общего стандарта кодирования для имен файлов.
Поскольку имена файлов должны обмениваться между программными средами (например, передача файлов по сети, хранение файловой системы, программное обеспечение для резервного копирования и синхронизации файлов, управление конфигурацией, сжатие и архивирование данных и т. Д.), Очень важно не потерять информацию об именах файлов. между приложениями. Это привело к широкому принятию Unicode в качестве стандарта для кодирования имен файлов, хотя устаревшее программное обеспечение может не поддерживать Unicode.
[...] Максимальная длина имени файла не является стандартной и может зависеть от размера единицы кода. Хотя это серьезная проблема, в большинстве случаев это ограниченная проблема.
blockquote>Итак, если вообще нет стандарта для имен файлов, я почти уверен, что не существует специального стандарта для
.deb
имен файлов. Или, если вы все еще в замешательстве, примите соглашение в качестве стандарта и следуйте этим правилам .