Что означает двоеточие (:) и тире (-) в номере версии Ubuntu dpkg? - PullRequest
24 голосов
/ 08 марта 2012

Я пытаюсь получить номер версии уже установленного пакета, чтобы создать список зависимостей для dpkg.

Если я наберу "dpkg -l | grep libqtcore4" в моем терминале, я получу следующий результат:

ii  libqtgui4       4:4.7.4-0ubuntu8      Qt 4 GUI module
ii  libqtgui4:i386  4:4.7.4-0ubuntu8      Qt 4 GUI module

Мой вопрос; что на самом деле означает двоеточие (:) в номере версии, и что означает -0ubuntu в конце?

Ответы [ 2 ]

34 голосов
/ 08 марта 2012

Число перед : является эпохой . Это переопределяет версию для целей заказа, например, 3: 3.1 считается более новым, чем 2: 3.2. Он используется, когда упаковщик должен понизить пакет в репозиториях по одной из разных причин.

Число (значение, действительно) после - - это релиз . Он различает разные версии пакета с одинаковой версией. Он используется, например, для исправления безопасности для существующей версии программного обеспечения.

1 голос

Руководство по политике Debian

Оба из них охвачены: https://www.debian.org/doc/debian-policy/#version

Формат: [epoch:] upstream_version [-debian_revision].

epoch разъясняется по адресу:

эпоха

Он позволяет оставить ошибки в номерах версий более старых версий пакета, а также в схемах нумерации предыдущих версий пакета.

также спрашивают по адресу: https://askubuntu.com/questions/441879/why-do-some-packages-have-extra-numbers-on-the-front-of-their-version-string

А debian_revision:

debian_revision

Эта часть номера версии указывает версия пакета Debian на основе исходной версии

Редакция Debian необходима, потому что Debian из-за изменений в скриптах / патчах сборки, которые сам пакет Debian использует поверх самого исходного кода программного обеспечения.

-ubuntuY

Ubuntu также может добавить суффикс -ubuntuY для учета изменений, внесенных в упаковку Ubuntu по сравнению с упаковкой Debian.

Например, 4:4.7.4-0ubuntu8 означает, что это восьмая версия пакета Ubuntu для пакета 4:4.7.4 Debian.

* * * * * * * * 0 там просто действует как заполнитель, когда пакет Debian не имеет номера, поскольку debian_revision является необязательным.

Подробнее на: https://serverfault.com/questions/604541/debian-packages-version-convention/708569#708569

...