DNF5-SPECS(7)

NAMN
dnf5-specs — Mönsterspecifikation

BESKRIVNING

Olika mönstermatchningsregler för argument i *-spec-form är definierade för åtgärder med varje enhetstyp i DNF5. I detta avsnitt beskrivs och förklaras alla regler i detalj, med exempel.

GLOB:AR

Mönsterspecifikationen stöder samma glob-mönstermatchning som skalet gör. Följande mönster stödjs:

    *   Matchar godtyckligt antal tecken.

    ?   Matchar ett godtyckligt tecken.

    []  Matchar vilken som helst av de ingående tecknen. Ett par av tecken separerade med ett bindestreck anger ett intervalluttryck; alla tecken som kommer mellan dessa två tecken inklusive tecknen själva, matchas. Om det första tecknet efter [ är ett ! eller ett ^ så matchas alla tecken som inte ingår.

Obs: krullparenteser ({}) stödjs inte. Man kan ändå använda dem i skal som stödjer dem och låta skalet göra expansionen, men om de citeras eller skyddas kommer DNF5 inte att expandera dem.

PAKET

Många kommandon tar en <paketspecifikations*>-parameter som väljer ett paket för åtgärden. Beroende på kommandot matchas <paketspecifikations*>-argumentet mot:

    •   NEVRA [N] eller skiftlägesokänslig NEVRA [NI]

    •   Tillhandahåller [P]

    •   Tillhandahåller fil [F]

    •   Binärer [B]

sekventiellt tills en matchning hittas.

Till exempel matchas <paketspecifikation-NP> först mot NEVRA:n och om inget matchande NEVRA hittas matchas den mot tillhandahållanden.

När du filtrerar tillhandahållande (provides) [P] kan användaren ange ytterligare begränsningsregler för att matcha argumenten. Grundläggande versionsjämförelser kan användas för detta ändamål (=, >, <, >=, <=), som detta <tillhandahållande> >= <version>, där argumentet <version> är på formatet [EPOK:]VERSION[-UTGÅVA] så som det anges i avsnittet om NEVRA-matchning.

För att bygga mer komplexa tillhandahållandeuttryck stödjs en funktion med rika beroenden. Den omges alltid av parenteser och booleska operatorer och nästning kan användas, t.ex. (<tillhandahållande1> or (<tillhandahållande2> and <tillhandahållande3>)). För mer information, se RPM booleska beroenden.

  NEVRA-matchning

Varje paket kan identifieras unikt av NEVRA-strängen. Den består av 5 delar information:

    Namn
        Paketnamn.

    Epok
        Epoknummer.
        Det är inte alltid med.

        Epoknumret åsidosätter annan versionskontroll, så det kan användas för att tvinga en paketuppgradering framför någon annan.

    Version
        Versionssträng.
        Den är inte strikt numerisk.
        Den är avsedd att matcha mjukvaruversionen uppströms.

    Utgåva (release)
        Utgåvesträng.

        Den är en information om det specifika paketbygget, vanligtvis ett nummer som öka för nyare byggen. Den är inte kopplat till mjukvaran uppströms.

    Arkitektur
        Målarkitektursträng.
        Definierar processortypen paketet är avsett att installeras på.

        Det kan också vara ett paket som innehåller källfiler (src) eller ett arkitekturoberoende paket (noarch).

Vid matchning mot NEVRA stödjs partiell matchning. DNF5 försöker matcha specifikationen mot följande lista med NEVRA-former (i fallande prioritetsordning):

        NAMN-[EPOK:]VERSION-UTGÅVA.ARK
        NAME.ARK
        NAMN
        NAME-[EPOK:]VERSION-UTGÅVA
        NAMN-[EPOK:]VERSION

Observera att namn i allmänhet kan innehålla bindestreck (t.ex. paket-med-streck).

Den första formen som matchar några paket används och de återstående formerna prövas inte. Om ingen av formerna matchar något paket, görs ett försök att matcha <paketspecifikation> mot fullständiga paket NEVRA:n. Detta är endast relevant om glob:ar finns i <paketspecifikation>.

Man kan ange glob:ar som en del av någon av de fem NEVRA-komponenterna. Man kan även ange ett glob-mönster som skall matchas över flera NEVRA-komponenter (med andra ord, matcha över NEVRA-separatorerna). I så fall måste man dock skriva specifikationen så att den matchar paketets fullständiga NEVRA, eftersom det inte är möjligt att dela upp en sådan specifikation i NEVRA-former.

  Matchning av filtillhandahållanden

Om en spec börjar med antingen / eller */ anses den som ett potentiellt filtillhandahållande.

  Binärer som matchar

Huruvida paketbinärer skall betraktas under matchning. Kontrollerar om en given spec är en binär i /usr/bin/ eller /usr/sbin/.

COMPS

<gruppspecifikation>``|``<miljöspecifikation> låter en välja grupper|miljöer som en viss operation ska arbeta på. Det är en skiftlägesokänslig sträng (som stöder glob:ningstecken) som matchas mot en grupps|miljös kanoniska namn och namn översatt till den aktuella LC_MESSAGES-lokalen (om möjligt).

Comps-specifikationer har prefixet @ för kommandon som också accepterar paket-specifikationer. Se till exempel dnf5-install(8), Installationskommando <#install-command-ref-label>.

Kommandona group och environment accepterar båda <gruppspecifikation> och <miljöspecifikation>, men föredrar respektive motsvarande typ om både grupper och miljöer matchar det givna argumentet. Andra kommandon som accepterar båda typerna påverkar både grupper och miljöer.

MODULER

<modulspecifikation> låter en välja moduler eller profiler som en viss åtgärd skall arbeta på.

Eftersom en NEVRA-matchningsform inte är tillräcklig för moduler identifieras de unikt av formatet NSVCA (NAMN:STRÖM:VERSION:KONTEXT:ARK/PROFIL). Följande partiella former stödjs:

        NAMN
        NAMN:STRÖM
        NAMN:STRÖM:VERSION
        NAMN:STRÖM:VERSION:KONTEXT
        Alla ovanstående kombinationer med ::ARK (t.ex. NAMN::ARK)
        NAMN:STRÖM:VERSION:KONTEXT:ARK
        All above combinations with /PROFILE (e.g. NAMN/PROFILE)

Om strömmen inte anges används den aktiverade eller standardströmmen, i den ordningen. Om profilen inte anges används systemets standardprofil eller profilen ”default”.

TRANSAKTIONER

<transaktionsspecifikation> kan vara på en av flera former. Om det är ett heltal anger den ett transaktions-ID. Att ange last är detsamma som att ange ID för den senaste transaktionen. Den sista formen är last-<avstånd>, där <avstånd> är ett positivt heltal. Den anger den avstånd:e transaktionen som föregår den senaste transaktionen.

SE ÄVEN

    RPM booleska beroenden:
        <https://rpm-software-management.github.io/rpm/manual/boolean_dependencies.html>

Upphovsman
Se AUTHORS.md i dnf5 källkodsdistribution.

Copyright
Medarbetare i dnf5-projektet.

ÖVERSÄTTNING
Den svenska översättningen av denna manualsida skapades av Göran Uddeborg <goeran@uddeborg.se>

Denna översättning är fri dokumentation; läs GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) eller senare för upphovsrättsvillkor. Vi tar INGET ANSVAR.

Om du hittar fel i översättningen av denna manualsida, skicka ett mail till Tp-sv@listor.tp-sv.se.