De pakketlijst kan grondig aangepast worden: hoe pakketten weergegeven worden, hoe de pakkethiërarchie opgebouwd wordt, hoe pakketten geordend worden en zelfs de manier waarop het scherm georganiseerd wordt, zijn allemaal elementen die kunnen veranderd worden.
Dit onderdeel beschrijft hoe u de inhoud en de indeling van de pakketlijst
kunt configureren, evenals de statusregel, de kopregel en de uitvoer van
aptitude search
.
De indeling van elk van deze plekken wordt gedefinieerd door een
“indelingstekenreeks”. Een indelingstekenreeks is een
tekstfragment met %
-stuurcodes, zoals
%p
, %S
, enzovoort. De uitvoer die er
het resultaat van is, wordt aangemaakt door de tekst te nemen en er de
%
-stuurcodes mee te vervangen naargelang hun betekenis
(die hieronder gegeven wordt).
Een %
-stuurcode kan ofwel een vaste lengte hebben of
“uitrekbaar” zijn. Bij een vaste lengte wordt ze steeds
vervangen door een even grote hoeveelheid tekst (die als dat nodig is met
extra spaties uitgevuld wordt). Een uitrekbare stuurcode neemt de ruimte in
die niet door kolommen met een vaste grootte opgeëist wordt. Als er meerdere
zijn die uitrekbaar zijn, dan wordt de beschikbare ruimte gelijkmatig onder
hen verdeeld.
Alle %
-stuurcodes hebben een standaardwaarde voor grootte
of uitrekbaarheid. De grootte van een %
-stuurcode kan
aangepast worden door ze in te schrijven tussen het
%
-teken en het letterteken dat de identiteit van de
stuurcode aangeeft. Bijvoorbeeld, %20V
gebruikt een
ruimte van 20 lettertekens voor de weergave van de kandidaatversie van het pakket. Een
vraagteken (?
) tussen het %
-teken en
het letterteken dat de identiteit van de stuurcode aangeeft, heeft tot
gevolg dat de “basale” breedte van de kolom varieert
afhankelijk van zijn inhoud. Merk op dat dan de resulterende kolommen niet
mooi verticaal uitgelijnd zullen zijn.
Indien u wenst dat een bepaalde %
-stuurcode uitrekbaar
is, ook al heeft die normaal een vaste breedte, dan moet u onmiddellijk
erachter een hekje (“#
”) plaatsen. Om
bijvoorbeeld de kandidaatversie van een pakket weer te geven, ongeacht de
lengte ervan, gebruikt u de indelingstekenreeks %V#
. U
kunt #
ook plaatsen na iets dat geen
%
-stuurcode is. Dan zal aptitude de aan het
#
-teken voorafgaande tekst “uitrekken” door
er achteraan extra spaties aan toe te voegen.
Samengevat is de syntaxis van een %
-stuurcode:
%
[breedte
][?
]code
[#
]
De configuratievariabelen Aptitude::UI::Package-Display-Format
,
Aptitude::UI::Package-Header-Format
en Aptitude::UI::Package-Status-Format
definiëren de standaardindeling van respectievelijk de pakketlijst, de
kopregel bovenaan de pakketlijst en de statusregel onderaan de
pakketlijst. Gebruik de optie -F
om aan te passen hoe het
resultaat van het commando aptitude
search
weergegeven wordt.
De volgende %
-stuurcodes kunt u gebruiken in een
indelingstekenreeks:
![]() | Opmerking |
---|---|
In sommige van de onderstaande beschrijvingen wordt verwezen naar “het pakket”. In de GUI gaat het dan ofwel over het pakket dat weergegeven wordt, ofwel over het pakket dat momenteel geselecteerd is. In een zoekopdracht aan de commandoregel betreft het dan het weergegeven pakket. |
Stuurcode | Naam | Standaardgrootte | Uitrekbaar | Omschrijving |
---|---|---|---|---|
%% | Letterlijke % | 1 | Neen | Dit is geen echte stuurcode. Het voegt in de uitvoer gewoon een percentteken in op de plaats waar het voorkomt. |
%# | Parametersubstitutie | Variabele | Neen |
In sommige omstandigheden zal de tekenreeks die de indeling van de weergave
bepaalt, “parameters” bevatten: bij een
zoekopdracht aan de commandoregel bijvoorbeeld, zullen de
groepen die beantwoorden aan de zoekopdracht gebruikt worden als parameters
bij de weergave van het resultaat. Deze indelingscode zal vervangen worden
door de parameter die met getal aangegeven wordt.
|
%a | Actieteken | 1 | Neen | Een enkel letterteken dat de actie aangeeft die op het pakket uitgevoerd moet worden en beschreven wordt in Afbeelding 2.10, “Waarden voor de vlag “actie””. |
%A | Actie | 10 | Neen | Een iets uitgebreidere beschrijving van de actie die op het pakket uitgevoerd moet worden. |
%B | Aantal defecte | 12 | Neen |
Produceert niets als er geen defecte pakketten zijn. Anders produceert het
een tekenreeks die het aantal defecte pakketten beschrijft, zoals
“Defect: 10 ”.
|
%c | Vlag voor de huidige toestand | 1 | Neen | Een uit een letter bestaand teken dat de huidige toestand van het pakket samenvat, zoals beschreven in Afbeelding 2.9, “Waarden voor de vlag “huidige toestand””. |
%C | Huidige toestand | 11 | Neen | Een meer uitgebreide beschrijving van de huidige toestand van het pakket. |
%d | Omschrijving | 40 | Ja | Een korte pakketbeschrijving. |
%D | Pakketgrootte | 8 | Neen | De grootte van het pakketbestand dat het pakket bevat. |
%E | Architectuur | 10 | Neen |
Geeft de tekenreeks weer die verwijst naar de architectuur, bijvoorbeeld
“amd64 ”.
|
%e | Broncode | 30 | Neen |
Geeft weer wat het broncodepakket is, bijvoorbeeld,
“aptitude ” voor
“aptitude-doc-nl ”.
|
%H | Computernaam | 15 | Neen | De naam van de computer waarop aptitude uitgevoerd wordt. |
%i | Pinprioriteit | 4 | Neen | Geeft de hoogste prioriteit weer die aan een pakketversie toegekend wordt. Toont van pakketten de prioriteit van de versie waarvan de installatie afgedwongen zal worden (in voorkomend geval). |
%I | Grootte na installatie | 8 | Neen | De (geschatte) hoeveelheid schijfruimte die het pakket zal innemen. |
%m | Pakketbeheerder | 30 | Ja | De pakketbeheerder die het pakket onderhoudt. |
%M | Kenteken automatisch | 1 | Neen |
Toon de letter “A ” als het
pakket automatisch geïnstalleerd werd. Geef anders niets weer.
|
%n | Programmaversie | De lengte van “0.8.3”. | Neen |
Toont de versie van aptitude die uitgevoerd wordt, momenteel
“0.8.3 ”.
|
%N | Programmanaam | De lengte van de naam. | Neen |
Toont de naam van het programma, gewoonlijk
“aptitude ”.
|
%o | Ophaalgrootte | 17 | Neen |
Geen uitvoer als er geen pakketten geïnstalleerd zullen worden. Geeft anders
een tekenreeks weer die de totale grootte aangeeft van alle pakketbestanden
die geïnstalleerd zullen worden (een schatting van hoeveel er opgehaald moet
worden). Bijvoorbeeld, “DL-grootte:
1000B ”.
|
%O | Origine | 30 | Neen |
Geeft een tekenreeks weer die de origine van het pakket aanduidt,
bijvoorbeeld “Debian:unstable
[amd64] ”.
|
%p | Pakketnaam | 30 | Ja | Geeft de naam van het pakket weer. Als een pakket weergegeven wordt in de context van een boomstructuur, dan zal de naam van het pakket zo mogelijk inspringen overeenkomstig zijn niveau in de boomstructuur. |
%P | Prioriteit | 9 | Neen | Geeft de prioriteit van het pakket weer. |
%r | Aantal achterwaartse afhankelijkheden | 2 | Neen | Toont bij benadering het aantal geïnstalleerde pakketten dat van het pakket afhankelijk is. |
%R | Verkorte weergave van de prioriteit | 3 | Neen |
Geeft een verkorte beschrijving van de prioriteit van het pakket:
bijvoorbeeld, “Important ”
wordt “Imp ”.
|
%s | Sectie | 10 | Neen | Geeft de sectie van het pakket weer. |
%S | Betrouwbaarheidsstatus | 1 | Neen | Toont de letter "U" als het pakket niet vertrouwd wordt. |
%t | Archief | 10 | Ja | Het archief waarin het pakket te vinden is. |
%T | Gemerkt (en gebruikerslabels) | 30 | Neen |
Geeft met een “ Dit veld bevat ook gebruikerslabels (user-tags). |
%u | Verschil in schijfgebruik | 30 | Neen |
Indien de geplande acties tot gevolg hebben dat er een verschil zal zijn op
het vlak van gebruikte schijfruimte , beschrijft het dat
verschil. Bijvoorbeeld, “100MB schijfruimte zal worden
gebruikt. ”
|
%v | Huidige versie | 14 | Neen |
Geeft de huidige geïnstalleerde versie van het pakket weer, of
<geen> als het pakket momenteel niet
geïnstalleerd is.
|
%V | Kandidaatversie | 14 | Neen |
Geeft de versie van het pakket weer die zou geïnstalleerd worden mocht men
er de opdracht +) voor uitvoeren of
<geen> als het pakket momenteel niet
beschikbaar is.
| → (
%Z | Verschil in grootte | 9 | Neen | Geeft weer hoeveel bijkomende ruimte gebruikt zal worden of hoeveel ruimte er vrijgemaakt zal worden bij het installeren, opwaarderen of verwijderen van een pakket. |
De hiërarchie wordt opgebouwd aan de hand van een
groeperingsbeleid: regels die aangeven hoe de
hiërarchie opgebouwd moet worden. Het groeperingsbeleid beschrijft een
“opeenvolging” van regels. Elke regel kan pakketten weglaten,
sub-hiërarchieën van pakketten maken of de boomstructuur op een andere
manier bewerken. De configuratie-items Aptitude::UI::Default-Grouping
en Aptitude::UI::Default-Preview-Grouping
stellen het groeperingsbeleid in voor respectievelijk nieuw aangemaakte
pakketlijsten en voorafbeeldingen. U kunt het groeperingsbeleid voor de
huidige pakketlijst instellen door op
G te drukken.
Het groeperingsbeleid wordt omschreven in een lijst met door komma's
gescheiden regels:
.
Elke regel1
,regel2
,...
regel
bestaat uit de naam van de regel,
eventueel gevolgd door argumenten: bijvoorbeeld, versions
of section(subdir)
. Of argumenten nodig zijn en hoeveel
er nodig (of toegelaten) zijn, hangt af van het type regel.
Een regel kan de slotregel of niet de slotregel zijn. Een regel die niet de slotregel is, zal een pakket verwerken door een deel van de hiërarchie te genereren en het pakket dan overdragen aan een volgende regel. Een regel die de slotregel is daarentegen, zal ook een deel van de boomstructuur genereren (doorgaans items die bij het pakkethoren), maar zal het pakket niet aan een volgende regel doorgeven. Indien er geen slotregel opgegeven werd, zal aptitude de standaardregel gebruiken, die erin bestaat de standaard “pakketitems” aan te maken.
actie
Groepeert pakketten volgens de actie die voor hen gepland is; pakketten die niet opgewaardeerd kunnen worden en ongewijzigd zullen blijven, worden genegeerd. Dit is het soort groepering dat gebruikt wordt voor de boomstructuur van de voorafbeeldingen.
architectuur
Groepeert pakketten volgens hun architectuur.
deps
Dit is een slotregel.
Maakt standaard pakketitems aan die uitvouwbaar zijn om de vereisten van het pakket te tonen.
filter(patroon
)
Neem enkel pakketten op waarvan ten minste een versie beantwoordt aan
patroon
.
Indien patroon
“ontbreekt”, worden
geen pakketten weggelaten. Dit is een functionaliteit met het oog op
neerwaartse compatibiliteit en kan in de toekomst verwijderd worden.
firstchar[(modus
)]
Groepeert pakketten op basis van de eerste letter van hun naam.
Eigenlijk is het, om precies te zijn, niet altijd de eerste letter -- voor
pakketten die met lib*
beginnen, is de groepsnaam
liba
, libb
, ... zoals op een Debian
FTP-site.
modus
kan een van de volgende zijn:
binary
Het groeperen gebeurt op basis van de naam van het binaire pakket. Dit is
het standaardgedrag als geen modus
opgegeven
werd.
Voorbeeld 2.7. Groeperingsrichtlijn firstchar
of
firstchar(binary)
Als we het broncodepakket dpkg
als voorbeeld nemen, dan
zouden de binaire pakketten dselect
,
dpkg
en dpkg-dev
gegroepeerd worden
onder d
, terwijl libdpkg-dev
en
libdpkg-perl
onder de groep libd
geplaatst zouden worden.
source
Het groeperen gebeurt op basis van de naam van het broncodepakket.
Het kan bijvoorbeeld nuttig zijn om bij het bekijken van pakketten die
afkomstig zijn van hetzelfde broncodepakket (groeperingsrichtlijn source) binnen een grote verzameling
(bijvoorbeeld: alle geïnstalleerde pakketten, alle opwaardeerbare pakketten,
alle pakketten uit de sectie "main") een intermediair groeperingsniveau toe
te voegen. Op die manier kan men bijvoorbeeld de hiërarchie op de FTP-site
nabootsen (probeer eens de groepering:
"section(topdir),firstchar(source),source"
).
Voorbeeld 2.8. Groeperingsrichtlijn firstchar(source)
Met opnieuw het broncodepakket dpkg
als voorbeeld, zouden
hierdoor alle binaire pakketten, dselect
,
dpkg
, dpkg-dev
,
libdpkg-dev
en libdpkg-perl
,
gegroepeerd worden onder d
.
pattern(patroon
[=>titel
] [{richtlijn
}] [, ...])
Een aanpasbare groeperingsrichtlijn. Elke versie van elk pakket wordt
getoetst aan het/de opgegeven patro(o)n
(en). De
eerste overeenkomst die gevonden wordt, wordt gebruikt om aan het pakket een
titel
toe te kennen. Daarna worden de pakketten
gegroepeerd volgens hun titel
. Als een tekenreeks
in de vorm van \N
in de titel
voorkomt, zal die vervangen worden door de Nde gevonden overeenkomst. Indien
er geen titel
opgegeven is, wordt verondersteld
dat het \1
is. Merk op dat pakketten die met geen enkel
patroon
overeenkomen, helemaal niet in de
boomstructuur zullen voorkomen.
Voorbeeld 2.9. Het gebruik van patroon
om pakketten volgens
pakketbeheerder te groeperen
pattern(
?maintainer
() => \1)
Het bovenstaande voorbeeld zal pakketten groeperen op basis van het veld
Maintainer (pakketbeheerder). De richtlijn
pattern(
zal hetzelfde effect hebben,
aangezien een ontbrekende ?maintainer
())titel
standaard de
waarde \1
heeft.
In plaats van op =>
, mag
een richtlijn ook eindigen op titel
||
. Dit geeft aan dat
pakketten die beantwoorden aan het overeenkomstige
patroon
in de boomstructuur op hetzelfde niveau
opgenomen zullen worden als de groepering pattern
en niet
in sub-bomen geplaatst zullen worden.
Voorbeeld 2.10.
Het gebruik van pattern
met enkele pakketten die op het
bovenste niveau geplaatst worden.
Het bovenstaande voorbeeld plaatst pakketten die verwijderd zullen worden in
een sub-boom en alle andere pakketten op het huidige niveau in groepen
overeenkomstig de beleidsrichtlijnen die op patroon
volgen.
Standaard worden alle pakketten die overeenkomen met een patroon,
gegroepeerd volgens de regels die het beleid van patroon
bepalen. Om voor sommige pakketten een andere richtlijn op te geven, moet u
de richtlijn tussen accolades ({}
) plaatsen na de titel
van de groep, na de ||
of na het patroon indien geen van
beide voorgaande gebruikt werd. Bijvoorbeeld:
De richtlijn uit het bovenstaande voorbeeld heeft de volgende effecten:
Pakketten die verwijderd zullen worden, worden in een sub-boom geplaatst met als titel “Pakketten die verwijderd worden”. Het groeperingsbeleid voor deze sub-boom is leeg, waardoor de pakketten in een vlakke lijst geplaatst worden.
Pakketten die geïnstalleerd zullen worden, worden in een sub-boom geplaatst
met als titel Pakketten die geïnstalleerd worden
en
gegroepeerd volgens de richtlijnen die aan patroon
beantwoorden.
Alle overige pakketten worden in de boomstructuur op het hoogste niveau geplaatst en volgens hun status gegroepeerd.
Zie de paragraaf met de naam “Zoekpatronen” voor meer informatie over de
indeling van patroon
.
prioriteit
Groepeert pakketten op basis van hun prioriteit.
section[(modus
[,passthrough])]
Groepeert pakketten volgens het veld Section (sectie).
modus
kan een van de volgende zijn:
none
Groepering gebaseerd op het volledige veld Section (sectie), zodat
categorieën zoals “non-free/games” gemaakt worden. Dit is het
standaardgedrag als geen modus
opgegeven werd.
topdir
Groepering gebaseerd op het deel van het veld Section (sectie) dat voor het
eerste /
-teken komt. Indien dit deel van de sectie niet
herkend wordt of indien er geen /
is, zal in de plaats
daarvan het eerste item uit de lijst Aptitude::Sections::Top-Sections
gebruikt worden.
subdir
Groepering gebaseerd op het deel van het veld Section (sectie) dat volgt op
het eerste /
-teken, indien het in de lijst Aptitude::Sections::Top-Sections
voorkomt. Indien dit niet het geval is of indien er geen
/
voorkomt, wordt in plaats daarvan gegroepeerd op basis
van het volledige veld Section.
subdirs
Groepering gebaseerd op het deel van het veld Section (sectie) na het eerste
/
-teken, indien het deel van het veld dat eraan
voorafgaat, voorkomt in de lijst Aptitude::Sections::Top-Sections
.
Indien dit niet het geval is, of indien er geen /
voorkomt, zal het volledige veld gebruikt worden. Indien er meerdere
/
-tekens voorkomen in het deel van het veld dat gebruikt
wordt, zal een hiërarchie van groepen gemaakt worden. Indien bijvoorbeeld
“games
” geen deel uitmaakt van
Aptitude::Sections::Top-Sections
,
zal een pakket met een sectie “games/arcade
”
geplaatst worden onder de hoofding van het hoogste niveau
“games
”, in een sub-boom met als naam
“arcade
”.
Indien passthrough
vermeld werd, zullen pakketten die om
een of andere reden niet echt tot een sectie behoren (bijvoorbeeld virtuele
pakketten), onmiddellijk doorgegeven worden naar het volgende
groeperingsniveau, zonder dat ze eerst in subcategorieën geplaatst worden.
status
Groepeert pakketten in de volgende categorieën:
Veiligheidsupdates
Opwaardeerbaar
Nieuw
Geïnstalleerd
Niet geïnstalleerd
Verouderd en lokaal aangemaakt
Virtueel
Broncode
Groepeert pakketten op basis van de naam van het broncodepakket.
tag[(aspect
)]
Groepeert pakketten op basis van de informatie die in de Debian
package-bestanden onder Tag opgeslagen is. Indien
aspect
opgegeven werd, zullen enkel categorieën
die met dat aspect overeenkomen, weergegeven worden en pakketten waarbij dat
aspect ontbreekt, zullen verborgen worden. Anders zullen alle pakketten
minstens eens weergegeven worden (waarbij pakketten zonder categorisering
apart vermeld worden van pakketten die wel in categorieën ondergebracht
werden).
Zie voor meer informatie over debtags http://debtags.alioth.debian.org.
taak
Maakt een boomstructuur met de naam “Taken” aan die de
beschikbare taken bevat (informatie over taken wordt uit
debian-tasks.desc
uit het pakket
tasksel
opgehaald). De categorieën die aangemaakt
worden door de regel die na task
volgt, bevinden zich op
hetzelfde niveau als Taken.
versies
Dit is een slotregel.
Maakt standaard pakketitems aan die de pakketversie weergeven als ze uitgevouwen worden.
Standaard worden pakketten in de pakketlijst of in de uitvoer van
aptitude search
op
naam gesorteerd. Het is nochtans vaak nuttig om ze te sorteren volgens
andere criteria (bijvoorbeeld pakketgrootte). Dit is mogelijk in aptitude
door het sorteringsbeleid aan te passen.
Zoals het in het vorige onderdeel
beschreven groeperingsbeleid, bestaat ook het sorteringsbeleid uit een door
komma's gescheiden lijst van elementen. Elk element uit de lijst is de naam
van een sorteringsrichtlijn. Indien pakketten op basis van de eerste
richtlijn “gelijk” zijn, wordt de tweede richtlijn gebruikt om
ze te sorteren en zo verder. Een tilde-teken (~
) voor de
richtlijn keert de gewone betekenis ervan om. Bijvoorbeeld,
priority,~name
zal pakketten op basis van prioriteit
sorteren, maar pakketten met dezelfde prioriteit zullen op basis van hun
naam in omgekeerde volgorde geplaatst worden.
Om voor een actieve pakketlijst het sorteringsbeleid te veranderen, moet u
op S drukken. Om voor alle pakketlijsten het standaard
sorteringsbeleid aan te passen, moet u de configuratieoptie Aptitude::UI::Default-Sorting
instellen. Om voor aptitude
search
het sorteringsbeleid aan te passen, moet u de
commandoregeloptie --sort
gebruiken.
De beschikbare richtlijnen zijn:
installsize
Sorteert pakketten volgens de geschatte schijfruimte die ze na installatie gebruiken.
installsizechange
Sorteert pakketten op basis van het verschil in schijfgebruik na installatie (de geschatte hoeveelheid schijfruimte die na installatie gebruikt wordt), waarbij de huidige versie (als die geïnstalleerd is) vergeleken wordt met de versie die kandidaat is voor installatie, opwaardering of verwijdering.
debsize
Sorteert pakketten op basis van de pakketgrootte.
name
Sorteert pakketten op naam.
priority
Sorteert pakketten volgens prioriteit.
version
Sorteert pakketten op basis van hun versienummer.
[19] Momenteel wordt merktekens geven niet ondersteund. Deze stuurcode is voor toekomstig gebruik bedoeld.