1 .\" dpkg manual page - deb-version(5)
3 .\" Copyright © 1996-1998 Ian Jackson and Christian Schwarz
4 .\" for parts of the text reused from the Debian Policy
5 .\" Copyright © 2007 Frank Lichtenheld <djpig@debian.org>
6 .\" Copyright © 2011, 2013, 2015 Guillem Jover <guillem@debian.org>
8 .\" This is free software; you can redistribute it and/or modify
9 .\" it under the terms of the GNU General Public License as published by
10 .\" the Free Software Foundation; either version 2 of the License, or
11 .\" (at your option) any later version.
13 .\" This is distributed in the hope that it will be useful,
14 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
15 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 .\" GNU General Public License for more details.
18 .\" You should have received a copy of the GNU General Public License
19 .\" along with this program. If not, see <https://www.gnu.org/licenses/>.
21 .\"*******************************************************************
23 .\" This file was generated with po4a. Translate the source file.
25 .\"*******************************************************************
26 .TH deb\-version 5 %RELEASE_DATE% %VERSION% dpkg\-suite
29 deb\-version \- Indeling van het pakketversienummer in Debian
32 [\fIepoche\fP\fB:\fP]\fItoeleveraarsversie\fP[\fB\-\fP\fIdebian\-revisie\fP]
34 De versienummers die gebruikt worden voor de binaire en broncodepakketten
35 van Debian bestaan uit drie componenten. Die zijn:
38 Dit is een enkel (meestal klein) positief geheel getal. Het mag weggelaten
39 worden en in dat geval wordt aangenomen dat het nul is. Indien het
40 weggelaten wordt, mag de \fItoeleveraarsversie\fP geen dubbele punt bevatten.
42 Het wordt gebruikt om te kunnen breken met een vergissing die bij de
43 versienummering van een eerdere versie van het pakket gemaakt werd of met
44 een vroeger versienummeringsschema.
46 \fItoeleveraarsversie\fP
47 Dit is het belangrijkste deel van het versienummer. Het is gewoonlijk het
48 versienummer van het originele (“upstream”) pakket waarvan het
49 \&\fI.deb\fP\-bestand gemaakt werd, voor zover dit van toepassing is. Gewoonlijk
50 wordt dezelfde indeling gebruikt als die welke door de auteurs van de
51 software opgegeven wordt. Een herindeling kan nochtans nodig zijn om ze te
52 laten passen binnen de indeling van het systeem voor pakketbeheer en
55 Het vergelijkingsgedrag van het pakketbeheerssysteem met betrekking tot de
56 \fItoeleveraarsversie\fP wordt hierna beschreven. Het onderdeel
57 \fItoeleveraarsversie\fP is een verplicht onderdeel van het versienummer.
59 De \fItoeleveraarsversie\fP mag enkel alfanumerieke (“A\-Za\-z0\-9”) tekens
60 bevatten en de tekens \fB.\fP \fB+\fP \fB\-\fP \fB:\fP \fB~\fP (punt, plus,
61 verbindingsteken, dubbele punt, tilde) en moet met een cijfer beginnen. Als
62 er geen \fIdebian\-revisie\fP is, mogen geen verbindingstekens gebruikt worden
63 en als het onderdeel \fIepoche\fP ontbreekt, mogen geen dubbele punten gebruikt
67 Dit deel van het versienummer specificeert de versie van het Debian pakket,
68 gebaseerd op de versie van de toeleveraar. Het mag enkel alfanumerieke
69 tekens bevatten en de tekens \fB+\fP \fB.\fP \fB~\fP (plus, punt, tilde) en wordt op
70 dezelfde manier vergeleken als de \fItoeleveraarsversie\fP.
72 Het is facultatief. Als het ontbreekt, mag de \fItoeleveraarsversie\fP geen
73 verbindingsteken bevatten. Deze indeling komt voor in het geval een stuk
74 software geschreven werd met de specifieke bedoeling er een Debian pakket
75 van te maken, zodat er slechts één enkele “debianisatie” van is en er daarom
76 geen revisieaanduiding nodig is.
78 Het is gebruikelijk om de \fIdebian\-revisie\fP terug op ‘1’ te laten beginnen
79 telkens wanneer de \fItoeleveraarsversie\fP verhoogd wordt.
81 Dpkg splitst het versienummer op bij het laatste verbindingstekenteken uit
82 de tekenreeks (als er een in voorkomt) om te bepalen wat de
83 \fItoeleveraarsversie\fP is en wat de \fIdebian\-revisie\fP. In een vergelijking is
84 een versienummer zonder een \fIdebian\-revisie\fP een lagere versie dan één met
85 een dergelijke component (maar merk op dat de \fIdebian\-revisie\fP het minst
86 significante deel van een versienummer is).
88 De onderdelen \fItoeleveraarsversie\fP en \fIdebian\-revisie\fP worden door het
89 pakketbeheersysteem met behulp van hetzelfde algoritme vergeleken:
91 De tekenreeksen worden vergeleken van links naar rechts.
93 Eerst wordt van elke tekenreeks het eerste deel, dat volledig uit
94 niet\-numerieke tekens bestaat, bepaald. Deze twee delen (waarvan er een leeg
95 mag zijn) worden lexicaal met elkaar vergeleken. Als een verschil
96 aangetroffen wordt, wordt ze teruggegeven. Een lexicale vergelijking is een
97 vergelijking van ASCII\-waarden die aangepast wordt, zodat alle lettertekens
98 in de ordening voor alle niet\-lettertekens komen en zodat een tilde voor
99 alles komt, zelfs het einde van een onderdeel. De volgende onderdelen zijn
100 bijvoorbeeld in volgorde weergegeven: ‘~~’, ‘~~a’, ‘~’, het lege deel, ‘a’.
102 Vervolgens wordt het eerste deel van de rest van elke tekenreeks dat
103 volledig uit cijfertekens bestaat, bepaald. De numerieke waarden van deze
104 twee delen worden vergeleken en een eventueel gevonden verschil wordt als
105 resultaat van de vergelijking teruggegeven. In deze context geldt een lege
106 tekenreeks (die enkel kan voorkomen op het einde van een of beide vergeleken
107 versietekenreeksen) als een nul.
109 Deze beide stappen (vergelijken en verwijderen van initiële niet\-numerieke
110 en initiële numerieke tekenreeksen) worden herhaald tot er een verschil
111 gevonden wordt of tot beide tekenreeksen volledig afgelopen werden.
113 Merk op dat een epoche bedoeld is om ons toe te laten fouten in
114 versienummering achter ons te laten en te kunnen omgaan met situaties
115 waarbij het versienummeringssysteem gewijzigd werd. Het is \fBniet\fP de
116 bedoeling ervan te kunnen omgaan met versienummers die lettertekenreeksen
117 bevatten die niet geïnterpreteerd kunnen worden door het pakketbeheersysteem
118 (zoals ‘ALPHA’ of ‘pre\-’), of met ondoordachte ordeningen.
120 De bijzondere betekenis van het tilde\-teken bij het sorteren werd
121 geïntroduceerd in dpkg 1.10 en sommige onderdelen van de bouwscripts van
122 dpkg werden pas later in de 1.10.x\-cyclus in staat gesteld het te
125 \fBdeb\-control\fP(5), \fBdeb\fP(5), \fBdpkg\fP(1)