Debian-Richtlinienhandbuch
Beides wird behandelt in:https://www.debian.org/doc/debian-policy/#version, das auch reproduziert wird in:
man deb-version
Diese Handbücher sagen, dass das vollständige Format:
ist[epoch:]upstream_version[-debian_revision]
epoch
Im Handbuch steht:
Es wird bereitgestellt, um zu ermöglichen, dass Fehler in den Versionsnummern älterer Versionen eines Pakets und auch in früheren Versionsnummerierungsschemata eines Pakets zurückgelassen werden.
Angenommen, das ursprüngliche Paket hatte folgende Versionen:
2019.1
2019.2
1.2
(Das ursprüngliche Paket hat beschlossen, das Benennungsschema der Veröffentlichung willkürlich zu ändern)1.3
Dann behandelt Debian diese als:
0:2019.1
(allgemein bekannt einfach als2019.1
weil die führende0:
kann weggelassen werden)0:2019.2
1:1.2
(Debian erhöht die Epoche von 0 auf 1, um mit dem neuen Namensschema fertig zu werden)1:1.3
Auf diese Weise können wir die Versionsreihenfolge immer noch eindeutig aus der Zeichenfolge der Paketversion erkennen oder sie überhaupt unterscheiden, wenn das ursprüngliche Paket die Todsünde begeht, eine alte Namensfreigabe im neuen Schema wiederzuverwenden.
Können Sie sich die Art von höllischen Dingen vorstellen, mit denen sich Debian-Entwickler abfinden mussten? :-)
debian_revision
Im Handbuch steht:
Dieser Teil der Versionsnummer gibt die Version des Debian-Pakets basierend auf der Upstream-Version
anDie Debian-Revision wird für Debian aufgrund von Änderungen an den Build-Skripten/Patches benötigt, die das Debian-Paket selbst zusätzlich zu den Quellen der Software selbst verwendet.
-ubuntuY
Ubuntu kann auch einen -ubuntuY
hinzufügen Suffix, um Änderungen zu berücksichtigen, die an der Ubuntu-Paketierung gegenüber der Debian-Paketierung vorgenommen wurden.
Also zum Beispiel 4:4.7.4-0ubuntu8
bedeutet, dass dies die 8. Version des Ubuntu-Pakets ist, das auf 4:4.7.4
basiert Debian-Paket.
Dies liegt daran, dass Ubuntu Debian als Basis nimmt, aber auch zusätzliche Änderungen hinzufügen kann.
Die 0
dient nur als Platzhalter, wenn das Debian-Paket keine Nummer hat, da die debian_revision
ist optional.
Weitere Einzelheiten unter:https://serverfault.com/questions/604541/debian-packages-version-convention/708569#708569
Die Zahl vor dem :
ist die Epoche . Dies überschreibt die Version für Bestellzwecke, z. 3:3.1 gilt als neuer als 2:3.2. Es wird verwendet, wenn ein Paketierer ein Paket in den Repos aus einem von verschiedenen Gründen herunterstufen muss.
Die Zahl (eigentlich Wert) nach -
ist die Veröffentlichung . Es unterscheidet zwischen verschiedenen Versionen eines Pakets, die dieselbe Version haben. Es wird z.B. Sicherheitspatches für eine vorhandene Version der Software.