1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
|
*****************************************************
* GENERATED FILE, DO NOT EDIT *
* THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
*****************************************************
This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.
In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.
=encoding UTF-8
=head1 NAMN
deb-control - styrfilsformat för Debians binärpaket
=head1 SYNOPS
I<DEBIAN/control>
=head1 BESKRIVNING
Varje Debianbinärpaket innehåller en fil B<control> i posten B<control>, och dess L<deb822(5)>-format är en delmängd av B<debian/control>-filen från Debiankällkodspaketen, se B<deb-src-control>(5).
Filen innehåller ett antal fält. Varje fält börjar med en etikett, såsom B<Package> eller B<Version> (skiftlägesoberoende), följt av ett kolontecken och fältets kropp (skiftlägesberoende såvida inte annat anges). Fält avdelas endast av fältetiketter. Med andra ord kan texten i fälten spänna över flera rader, men installationsverktygen kommer oftast att slå samman rader när kroppen tolkas (förutom när det gäller fältet B<Description>, se nedan).
=head1 FÄLT
=over
=item B<Package:> I<paketnamn> (krävs)
Värdet på fältet bestämmer paketets namn, och används av de flesta installationsverktygen för att generera filnamnen.
=item B<Package-Type:> B<deb>|B<udeb>|I<typ>
Detta fält anger paketets typ. B<udeb> används för storleksbegränsade paket som används av debians installationsprogram. B<deb> är standardvärdet, och antas om fältet saknas. Fler typer kan komma att läggas till i framtiden.
=item B<Version:> I<versionssträng> (krävs)
Vanligtvis är detta det ursprungliga paketets versionsnummer på den form programmets författare använder. Den kan även innehålla ett Debianuppdateringsnummer (för paket vars källa är utanför Debian). Exakt format och sorteringsalgoritm beskrivs i L<deb-version(7)>.
=item B<Maintainer:> I<fullt-namn-epost> (rekommenderas)
Ska vara på formatet ”Joe Bloggs E<lt>jbloggs@foo.comE<gt>” och är normalt sett den person som skapat paketet, till skillnad från författaren av den programvara som paketerades.
=item B<Description:> I<kort-beskrivning> (rekommenderas)
=item S< >I<lång-beskrivning>
Formatet för paketbeskrivningen är en kortfattad sammanfattning på den första raden (efter B<Description>-fältet). Följande rader bör användas för en längre, mer detaljerad beskrivning. Varje rad i den lägre beskrivningen måste inledas med ett blanksteg, och blanka rader i den långa beskrivningen måste innehålla en ensam punkt (”B<.>”) efter det inledande blanksteget.
=item B<Section:> I<sektion>
Detta är ett generellt fält som ger paketet en kategori baserat på programvara som det installerar. Några vanliga sektioner är B<utils>, B<net>, B<mail>, B<text>, B<x11>, osv.
=item B<Priority:> I<prioritet>
Ställer in hur viktigt paketet är jämfört med systemet som helhet. Vanliga prioriteter är B<required> (nödvändig), B<standard> (normal), B<optional> (valfritt), B<extra> (extra), osv.
=back
Gälten B<Section> och B<Priority> har vanligtvis en definierad uppsättning accepterade värden baserade på den specifika distributionens policy.
=over
=item B<Installed-Size:> I<storlek>
Ungefärlig total storlek för paketets installerade filer, i KiB-enheter. Algoritmen för att beräkna storleken beskrivs i L<deb-substvars(5)>.
=item B<Protected:> B<yes>|B<no>
Fältet krävs normalt sett endast om svaret är B<yes> (ja), och betecknar att paketet huvudsakligen krävs för en korrekt start av systemet eller som används som skräddarsydda systemlokala metapaket. L<dpkg(1)> eller andra installationsverktyg tillåter inte att ett paket märkt B<Protected> tas bort (åtminstone inte utan att använda en av de tvingande flaggorna).
Stöds sedan dpkg 1.20.1.
=item B<Essential:> B<yes>|B<no>
Fältet krävs normalt sett endast om svaret är B<yes> (ja), och betecknar att paketet krävs av pakethanteringssystemet, för att systemet generellt ska fungera korrekt eller under start (även om det sistnämnda bör skrivas om till att istället använda ett B<Protected>-fält). L<dpkg(1)> eller andra installationsverktyg tillåter inte att ett paket märkt B<Essential> tas bort (åtminstone inte utan att använda en av de tvingande flaggorna).
=item B<Build-Essential:> B<yes>|B<no>
Fältet krävs normalt sett endast om svaret är B<yes> (ja), och sätts vanligtvis in av arkivprogramvaran. Det betecknar ett paket som krävs för att bygga andra paket.
=item B<Architecture:> I<ark>|B<all>> (krävs)
Arkitekturen anger vilken sorts maskinvara paketet kompilerades för. Vanliga arkitekturer är B<amd64>, B<armel>, B<i386>, B<powerpc>, osv. Observera att värdet B<all> är avsett för paket som är oberoende av arkitektur. Exempel på detta är skal- eller Perlskript och dokumentation.
=item B<Origin:> I<namn>
Namnet på den distribution paketet härstammar från.
=item B<Bugs:> I<url>
I<URL>:en till felrapporteringssystemet för detta paket. Det nuvarande formatet är I<systemtyp>B<://>I<adress>, till exempel B<debbugs://bugs.debian.org>.
=item B<Homepage:> I<url>
URL till uppströmsprojektets hemside-I<url>.
=item B<Tag:> I<lista-med-märken>
Lista över märken som beskriver paketets egenskaper. En beskrivningen och förteckning över kända märken finns i paketet B<debtags>.
=item B<Multi-Arch:> B<no>|B<same>|B<foreign>|B<allowed>
Det här fältet används för att ange hur paketet ska bete sig på installationer där flera arkitekturer stöds.
=over
=item B<no> (nej)
Det här är förval om fältet utesluts, i vilket fall det normalt sett inte är nödvändligt att lägga till fältet med ett explicit B<no>-värde.
=item B<same> (samma)
Paketet kan installeras vid sidan av sig självt, men kan inte användas för att tillfredsställa beroenden för några paket på andra arkitekturer än sig självt.
=item B<foreign> (oegen)
Paketet kan inte installeras vid sidan av sig självt, men bör tillåtas att tillfredsställa beroenden som inte anger en arkitektur för paket från en annan arkitektur än sig självt (om en beroende har en specifik arkitekturangivelse kommer värdet B<foreign> att ignoreras).
=item B<allowed> (tillåtet)
Detta tillåter omvända beroenden att ange i sitt B<Depends>-fält att de tillåter det här paketet från en oegen arkitektur genom att kvalificera paketnamnet med B<:any>, men har annars ingen effekt.
=back
=item B<Source:> I<källkodsnamn> [B<(>I<källkodsversion>B<)>]
Namnet på källkodspaketet det här binärpaketet kommer från, om det skiljer sig från namnet på själva paketet. Om källkodsversionen skiljer sig från binärversionen kommer I<källkodsnamn> följas av I<källkodsversion> i parentes. Detta kan till exempel uppstå när bygget är för en insändning bestående av enbart binärer från någon annan än den paketansvarige (”binary-only non-maintainer upload”) eller när man anger en annan binärversion genom ”B<dpkg-gencontrol -v>”.
=item B<Subarchitecture:> I<värde>
=item B<Kernel-Version:> I<värde>
=item B<Installer-Menu-Item:> I<värde>
Dessa fält används av debian-installer och behövs normalt inte. För mer information om dem, se L<https://salsa.debian.org/installer-team/debian-installer/-/raw/master/doc/devel/modules.txt>.
=item B<Depends:> I<paketlista>
Lista över paket som krävs för att paketet ska kunna tillhandahålla en icke-trivial mängd funktionalitet. Pakethanteringsprogramvaran kommer inte tillåta att ett paket installeras om paketen som listas i B<Depends>-fältet inte är installerade (åtminstone inte utan att använda en av de tvingande flaggorna). Vid en installation körs postinst-skripten från paketen i B<Depends>-fältet innan de paket som beror på dem. Under det omvända förhållandet, en borttagning, körs prerm-skriptet från ett paket innan de som kommer från paketen i dess B<Depends>-fält.
=item B<Pre-Depends:> I<paketlista>
Lista över paket som måste vara installerade B<och> konfigurerade innan paketet kan installeras. Detta används normalt i de fall paketet kräver att ett annat paket är installerat för sitt preinst-skript.
=item B<Recommends:> I<paketlista>
Lista över paket som bör installeras tillsammans med paketet i de allra flesta fall. Pakethanteringsprogramvaran kommer att varna användaren om man installerar ett paket utan de som listas i B<Recommends>-fältet.
=item B<Suggests:> I<paketlista>
Lista över paket som är relaterade till paketet och som kanske kan göra det mer användbart, men utan vilka det fortfarande är rimligt att installera paketet.
=back
Syntaxen för fälten B<Depends>, B<Pre-Depends>, B<Recommends> och B<Suggests> är en lista med grupper av alternativa paket. Varje grupp innehåller en lista med paket avdelade med ett vertikalstreck (”rör”), ”B<|>”. Grupperna avdelas med kommatecken. Komma utläses som ”OCH”, och vertikalstrecken som ”ELLER”, där vertikalstrecken binder hårdare. Ett paketnamn kan möjligen följas av en arkitekturangivelse efter ett kolontecken ”B<:>”, möjligen åtföljt av en versionsnummerangivelse inom parentes.
En arkitekturangivelse kan vara ett existerande Debianarkitekturnamn (sedan dpkg 1.16.5) eller B<any> (sedan dpkg 1.16.2). Om det utesluts är förvalet den aktuella binärpaketarkitekturen. Ett existerande Debianarkitekturnamn motsvarar exakt den arkitekturen för det paketnamnet, B<any> motsvarar valfri arkitektur för paketnamnet om paketet har markerats som B<Multi-Arch: allowed>.
Ett versionsnummer kan börja med ”B<E<gt>E<gt>>”, vilket betyder att vilken som helst senare version matchar, där det är valfritt att ange Debianuppdateringen (avdelad med bindestreck). Tillåtna versionrelationer är ”B<E<gt>E<gt>>” för större än, ”B<E<lt>E<lt>>” för mindre än, ”B<E<gt>=>” för större än eller lika med, ”B<E<lt>=>” för mindre än eller lika med, och ”B<=>” för lika med.
=over
=item B<Breaks:> I<paketlista>
Listar paket som förstörs av detta, till exempel genom att lyfta fram fel när det namngivna paketet beror på detta. Pakethanteringsprogramvaran tillåter inte att förstörda paket konfigureras; problemet löses vanligtvis genom att uppgradera paketen som namnges i ett B<Breaks>-fält.
=item B<Conflicts:> I<paketlista>
Listar paket som är i konflikt (krockar) med detta, till exempel genom att innehålla filer med samma namn. Pakethanteringsprogramvaran tillåter inte två sådana paket att vara installerade samtidigt. Två paket med inbördes konflikt bör innehålla en B<Conflicts>-rad med varandras namn.
=item B<Replaces:> I<paketlista>
Lista över paket ersätts av filer från det här paketet. Detta används för att möjliggöra paket att skriva över filer från andra paket, och används normalt sett tillsammans med B<Conflicts>-fältet för att tvinga fram borttagning av det andra paketet om även det här har de filer som finns i paketet det står i konflikt med.
=back
Syntaxen för B<Breaks>, B<Conflicts> och B<Replaces> är en lista över paketnamn avdelade med komman (och eventuella blanktecken). I fälten B<Breaks> och B<Conflicts> läses kommatecknet som ”ELLER”. En valfri arkitekturangivelse kan också läggas till paketnamnet med samma syntax som över, men förvalet är B<any> istället för binärpaketets arkitektur. Ett eventuellt versionsnummer kan också anges, med samma syntax som ovan för fälten B<Breaks>, B<Conflicts> och B<Replaces>.
=over
=item B<Enhances:> I<paketlista>
Detta är en lista över paket som förbättras av detta. Det liknar B<Suggests> men är i motsatt riktning.
=item B<Provides:> I<paketlista>
Detta är en lista av virtuella paket som tillhandahålls av detta. Normalt sett används detta i de fall flera paket tillhandahåller samma tjänst. Till exempel kan både sendmail och exim fungera som e-postserver, så de tillhandahåller ett gemensamt paket (”mail-transport-agent”) på vilket andra paket kan bero, vilket gör det möjligt för sendmail eller exim att fungera som ett alternativ som tillfredsställer beroendet. Detta förhindrar att paket som beror på en e-postserver måste känna till alla deras paketnamn och använda ”B<|>” för att dela av listan.
=back
Syntaxen för B<Provides> är en lista över paketnamn avdelade med komman (och eventuella blanktecken). En valfri arkitekturangivelse kan också läggas till paketnamnet med samma syntax som över. Om det inte anges är förvalet binärpaketets arkitektur. Ett eventuellt exakt (lika med) versionsnummer kan också anges, med samma syntax som ovan (sedan dpkg 1.17.11).
=over
=item B<Built-Using:> I<paketlista>
Beroendefältet visar ytterligare källkodspaket som användes när binärpaketet byggdes för att uppfylla licensvillkor. Detta anger för hanteringsprogramvaran för arkivet att dessa ytterligare källkodspaket måste behållas så länge binärpaketet finns i arkivet. Fältet måste innehålla en kommaavdelad lista med källkodspaket med strikta ”B<=>” versionsberoenden inom parentes. Observera att hanteringsprogramvaran för arkivet troligen kommer att avvisa en insändning som deklarerar en B<Built-Using>-relation som inte kan uppfyllas inom arkivet.
=item B<Static-Built-Using:> I<paketlista>
Beroendefältet visar ytterligare källkodspaket som användes när binärpaketet byggdes för att bygga statiskt (till exempel länkning mot statiska bibliotek, byggen för källkodscentrerade spårk såsom Go eller Rust, användning av C/C++-bibliotek som enbart består av filhuvuden, injicering av data-blobbar i kod, osv.). Detta är användbart för att spåra huruvida paketet kan behöva byggas om när källkodspaket som listas här uppdateras, till exempel vid säkerhetsuppdateringar. Fältet måste innehålla en kommaavdelad lista med källkodspaket med strikta ”B<=>” versionsberoenden inom perentes.
Stöds sedan dpkg 1.21.3.
=item B<Built-For-Profiles:> I<profillista> (föråldrat)
Det här fältet används för att ange en blankstegsavdelad lista med byggprofiler som det binära paketet byggdes med (sedan dpkg 1.17.2 fram till 1.18.18). Informationen som tidigare fanns i det här fältet finns nu i filen B<.buildinfo> som ersätter det.
=item B<Auto-Built-Package:> I<orsakslista>
Det här fältet innehåller en blankstegsavdelad lista med orsaker till varför det här paketet autogenererades. Binärpaket som markerats med det här fältet kommer inta dyka upp i mall-källkodsstyrfilen I<debian/control>. Den enda orsak som används är för närvarande B<debug-symbols> (felsökningssymboler).
=item B<Build-Ids:> I<elf-bygg-id-lista>
Det här fältet innehåller en blankstegsavdelad lista med ELF-bygg-id:n. Det är unika identifierare för semantiskt identiska ELF-objekt, för var av dessa i paketet.
Formatet och sättet på vilket varje bygg-id beräknas är medvetet inte definierat.
=back
=head1 EXEMPEL
Package: grep
Essential: yes
Priority: required
Section: base
Maintainer: Wichert Akkerman <wakkerma@debian.org>
Architecture: sparc
Version: 2.4-1
Pre-Depends: libc6 (>= 2.0.105)
Provides: rgrep
Conflicts: rgrep
Description: GNU grep, egrep and fgrep.
The GNU family of grep utilities may be the "fastest grep in the west".
GNU grep is based on a fast lazy-state deterministic matcher (about
twice as fast as stock Unix egrep) hybridized with a Boyer-Moore-Gosper
search for a fixed string that eliminates impossible text from being
considered by the full regexp matcher without necessarily having to
look at every character. The result is typically many times faster
than Unix grep or egrep. (Regular expressions containing backreferencing
will run more slowly, however).
=head1 PROGRAMFEL
Fältet B<Build-Ids> använder ett ganska allmänt namn utanför sitt ursprungliga sammanhang inuti ett ELF-objekt, som gäller ett väldigt specifikt syfte och exekverbart format.
=head1 SE ÄVEN
L<deb822(5)>, L<deb-src-control(5)>, L<deb(5)>, L<deb-version(7)>, L<debtags(1)>, L<dpkg(1)>, L<dpkg-deb(1)>.
=head1 ÖVERSÄTTNING
Peter Krefting och Daniel Nylander.
|