DNF5-SPECS(7) dnf5 DNF5-SPECS(7)

dnf5-specs - specificații de modele

Pentru operarea cu fiecare tip de entitate din DNF5 sunt definite diferite reguli de potrivire a modelelor pentru argumentele în forma *-spec. În această secțiune, toate regulile sunt descrise și explicate în detaliu, cu exemple.

Specificația modelelor acceptă același tip de potrivire a modelelor globale ca și shell. Sunt acceptate următoarele modele:

*
Se potrivește cu orice număr de caractere.
?
Se potrivește cu orice caracter unic.
[]
Se potrivește cu oricare dintre caracterele incluse. O pereche de caractere separate de o cratimă denotă o expresie de interval; orice caracter care se află între aceste două caractere, inclusiv, se potrivește. Dacă primul caracter care urmează după [ este un ! sau un ^, atunci se potrivește orice caracter care nu este inclus.

Notă: Acoladele ({}) nu sunt acceptate. Le puteți utiliza în shell-uri care le acceptă și lăsați shell-ul să facă expansiunea, dar dacă sunt puse între ghilimele sau eludate, DNF5 nu le va extinde.

Multe comenzi au un parametru <*specificație-pachet> care selectează un pachet pentru operație. Argumentul <*specificație-pachet> este comparat cu NEVRA-urile pachetelor, furnizările și furnizările de fișiere.

  • NEVRA [N] sau ignorând diferenția majuscule/minuscule NEVRA [NI]
  • Provides [P] - (Furnizează)
  • Fișierul furnizează [F]
  • Binare [B]

secvențial până când se găsește o potrivire.

De exemplu, <NPE-specificație-pachet> se potrivește mai întâi cu NEVRA și, dacă nu se găsește niciun NEVRA corespunzător, se potrivește cu Provides.

Atunci când <specificație-pachet> este un nume de pachet sau o furnizare, utilizatorul poate furniza reguli de restricție suplimentare pentru potrivirea argumentelor. În acest scop, se pot utiliza comparații de versiuni de bază (=, >, <, >=, <=), astfel <specificație-pachet> >= <versiune>, unde argumentul <versiune> are formatul [EPOCH:]VERSION[-RELEASE], după cum se specifică în secțiunea Potrivirea NEVRA.

Pentru a construi expresii mai complexe, este de asemenea acceptată o funcție de dependențe mai complexă, care este întotdeauna inclusă în paranteze. Se pot utiliza operatori booleeni și imbricarea, de exemplu (<specificație1> sau (<specificație2> și <specificație3>)). Pentru mai multe informații, consultați RPM boolean dependencies.

Fiecare pachet poate fi identificat în mod unic prin șirul NEVRA. Acesta constă din 5 părți de informații:

Numele pachetului
Numărul epocii.
Acesta nu este întotdeauna inclus.

Numărul epocii prevalează asupra altor verificări de versiune, astfel încât poate fi folosit pentru a forța actualizarea pachetului în locul altuia.

Șirul de caractere al versiunii.
Nu este strict numerică.
Este destinat să corespundă versiunii software din amonte.
Șirul ediției.

It is an information about the particular package build, usually a number increased with the newer build. It is not connected with the upstream software.

Șir de caractere pentru arhitectura țintă.
Definește tipul de procesor pe care pachetul este destinat să fie instalat

Acesta poate fi, de asemenea, un pachet care conține fișiere sursă (src) sau un pachet independent de arhitectură (noarch).

La compararea cu formele NEVRA, este acceptată compararea parțială. DNF5 încearcă să compare specificația cu următoarea listă de forme NEVRA (în ordinea descrescătoare a priorității):

NAME-[EPOCH:]VERSION-RELEASE.ARCH
NAME.ARCH
NAME
NAME-[EPOCH:]VERSION-RELEASE
NAME-[EPOCH:]VERSION

Rețineți că name poate conține în general liniuțe (de exemplu, pachet-cu-liniuțe).

Primul format care corespunde oricărui pachet este utilizat, iar celelalte formate nu sunt încercate. Dacă niciunul dintre formate nu se potrivește cu niciun pachet, se încearcă potrivirea <specificație-pachetc> cu NEVRA-urile pachetelor complete. Acest lucru este relevant numai dacă „globs” (caracterele joker) sunt prezente în <specificație-pachet>.

Puteți specifica modele globale ca parte a oricăreia dintre cele cinci componente NEVRA. De asemenea, puteți specifica un model global pentru a se potrivi cu mai multe componente NEVRA (cu alte cuvinte, pentru a se potrivi cu separatorii NEVRA). Cu toate acestea, în acest caz, trebuie să scrieți specificația pentru a se potrivi cu NEVRA-urile pachetului complet, deoarece nu este posibilă divizarea unei astfel de specificații în formatele NEVRA.

Dacă o specificație începe fie cu /, fie cu */, aceasta este considerată ca un fișier potențial de furnizare.

Dacă să se ia în considerare binarele pachetelor în timpul potrivirii. Verifică dacă specificația dată este un binar în /usr/bin/ sau /usr/sbin/.

<specificație-grup>``|``<specificație-mediu> permite selectarea grupurilor| mediilor asupra cărora ar trebui să funcționeze o anumită operație. Este un șir de caractere insensibil la majuscule (care acceptă caractere joker) care este comparat cu un ID de grup's|mediu's ID, nume canonic și nume tradus în limba locală curentă LC_MESSAGES (dacă este posibil).

specificațiile comps sunt prefixate cu @ pentru comenzile care acceptă și specificațiile pachetelor. De exemplu, consultați dnf5-install(8), Comanda de instalare.

<specificație-modul> permite selectarea modulelor sau profilurilor pe care ar trebui să funcționeze o anumită operație.

Deoarece forma de corespondență NEVRA este insuficientă pentru module, acestea sunt identificate în mod unic prin formatul NSVCA (NAME:STREAM:VERSION:CONTEXT:ARCH/PROFILE). Formele parțiale acceptate sunt următoarele:

NAME
NAME:STREAM
NAME:STREAM:VERSION
NAME:STREAM:VERSION:CONTEXT
Toate combinațiile de mai sus cu ::ARCH (de exemplu. NAME::ARCH)
NAME:STREAM:VERSION:CONTEXT:ARCH
Toate combinațiile de mai sus cu /PROFILE (de exemplu. NAME/PROFILE)

În cazul în care fluxul nu este specificat, se utilizează fluxul activat sau fluxul implicit, în această ordine. În cazul în care profilul nu este specificat, se utilizează profilul implicit al sistemului sau profilul 'default'.

<spec-tranzacție> poate avea una dintre mai multe forme. Dacă este un număr întreg, acesta specifică un ID al tranzacției. Specificarea last este aceeași cu specificarea ID-ului celei mai recente tranzacții. Ultima formă este last-<poziția>, unde <poziția> este un număr întreg pozitiv. Aceasta specifică a n-lea poziție a tranzacției care precede cea mai recentă tranzacție.

A se vedea AUTHORS.md în distribuția sursei dnf5.

Contribuitori la proiectul dnf5.

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

25 august 2025