table of contents
| DNF5.CONF-VENDORPOLICY-V1_1(5) | dnf5 | DNF5.CONF-VENDORPOLICY-V1_1(5) |
NUME¶
dnf5.conf-vendorpolicy-v1_1 - referință fișier pentru politica de schimbare a furnizorului DNF5 - v1.1
DESCRIERE¶
Acest document descrie structura și sintaxa fișierelor de configurare ale politicii de schimbare a furnizorului DNF5, care utilizează formatul versiunea 1.1.
Pentru informații generale despre fișierele de politici privind schimbarea furnizorului, consultați Referința fișierelor de politici privind schimbarea furnizorului DNF5 <#dnf5-vendor-change-policy-label>.
STRUCTURA FIȘIERULUI¶
Câmpuri obligatorii¶
- version
- Șir
Versiunea formatului fișierului de configurare.
Pentru acest format, trebuie să fie stabilită la „1.1”.
Acest câmp este obligatoriu și trebuie specificat la nivelul superior al fișierului TOML.
Exemplu:
version = '1.1'
Notă:
Dacă fișierul nu conține liste de furnizori, acesta va fi încărcat și versiunea sa va fi validată, dar nu va defini nicio regulă și nu va influența comportamentul gestionarului de furnizori.
Definiția listei furnizorilor¶
Următoarele liste de furnizori pot fi utilizate pentru a defini corespondențele între furnizori. Toate listele sunt opționale și pot fi combinate în mod liber. Toate condițiile sunt evaluate împreună.
- [[outgoing_vendors]]
- Matrice de tabele
Lista furnizorilor de la care sunt permise modificările (furnizori de pachete de ieșire).
- [[incoming_vendors]]
- Matrice de tabele
Lista furnizorilor de la care sunt permise modificările (furnizori de pachete de intrare).
- [[equivalent_vendors]]
- Matrice de tabele
Lista furnizorilor care sunt echivalenți între ei. Se permit schimbări în ambele sensuri între toți furnizorii din această listă.
Notă:
Important:
- Furnizorul pachetului care urmează să fie eliminat (cel instalat) este menționat în outgoing_vendors sau equivalent_vendors (sau lipsesc atât outgoing_vendors, cât și equivalent_vendors, ceea ce permite orice furnizor)
- Furnizorul pachetului (nou) din lista „incoming” este menționat în incoming_vendors sau equivalent_vendors (sau ambele liste, incoming_vendors și equivalent_vendors, lipsesc, ceea ce permite orice furnizor)
Câmpuri de introducere a datelor furnizorului¶
Fiecare intrare din [[outgoing_vendors]], [[incoming_vendors]] sau [[equivalent_vendors]] poate conține următoarele câmpuri:
- vendor
- Șir
Câmp obligatoriu.
Numele furnizorului sau modelul pentru potrivire.
- comparator
- Șir
Câmp opțional.
Metoda de comparare care trebuie utilizată la compararea șirurilor de caractere ale furnizorilor.
Implicit: "EXACT"
Valorile acceptate:
- "EXACT" - potrivire exactă (se ține cont de diferența dintre majuscule și minuscule)
- "IEXACT" - potrivire exactă (NU se ține cont de diferența dintre majuscule și minuscule)
- "GLOB" - model global (se ține cont de diferența dintre majuscule și minuscule)
- "IGLOB" - model global (NU se ține cont de diferența dintre majuscule și minuscule)
- "REGEX" - expresie regulată (se ține cont de diferența dintre majuscule și minuscule)
- "IREGEX" - expresie regulată (NU se ține cont de diferența dintre majuscule și minuscule)
- "CONTAINS" - conține șirul (se ține cont de diferența dintre majuscule și minuscule)
- "ICONTAINS" - conține șirul (NU se ține cont de diferența dintre majuscule și minuscule)
- "STARTSWITH" - începe cu (se ține cont de diferența dintre majuscule și minuscule)
- "ISTARTSWITH" - începe cu (NU se ține cont de diferența dintre majuscule și minuscule)
- "ENDSWITH" - se termină cu (se ține cont de diferența dintre majuscule și minuscule)
- "IENDSWITH" - se termină cu (sNU e ține cont de diferența dintre majuscule și minuscule)
- "NOT_EXACT", "NOT_IEXACT", "NOT_GLOB", "NOT_IGLOB", "NOT_CONTAINS", "NOT_ICONTAINS" - variantele negate
- exclude
- Boolean
Câmp opțional.
Dacă true, furnizorul este exclus din regulă. Acest lucru este util pentru definirea excepțiilor de la reguli mai generale. Regulile (înregistrările furnizorilor) sunt procesate în ordinea în care sunt definite. Aceasta înseamnă că o regulă de excludere trebuie să apară înaintea regulilor din care furnizorul trebuie exclus.
Implicit: false
FILTRAREA PACHETELOR¶
Politicile privind schimbarea furnizorului pot fi restricționate în continuare, astfel încât să se aplice numai anumitor pachete, prin utilizarea filtrelor de pachete. Acestea sunt opționale și permit un control detaliat asupra pachetelor cărora li se permite schimbarea furnizorului.
- [[outgoing_packages]]
- Matrice de tabele
Lista filtrelor de pachete care restricționează pachetele de ieșire (instalate) cărora li se permite să schimbe furnizorul. Dacă este omisă, tuturor pachetelor li se permite să schimbe furnizorul actual.
- [[incoming_packages]]
- Matrice de tabele
Lista filtrelor de pachete care restricționează pachetele (noi) primite care pot fi instalate cu o schimbare a furnizorului. Dacă este omisă, toate pachetele pot fi instalate, indiferent de furnizor.
Câmpuri de introducere a datelor pentru filtrarea pachetelor¶
Fiecare intrare din [[outgoing_packages]] sau [[incoming_packages]] poate conține:
- filters
- Matrice de tabele
Câmp obligatoriu.
Lista condițiilor de filtrare care trebuie îndeplinite în totalitate pentru ca pachetul să fie vizat de această regulă. Fiecare filtru este un tabel cu următoarele câmpuri:
- filter
- Șir
Câmp obligatoriu.
Atributul pachetului pe care se aplică filtrarea.
Valorile acceptate:
- "name" - numele pachetului
- "source_name" - numele pachetului sursă
- "evr" - șirul „Epoch-Version-Release”
- "epoch" - numărul epocii
- "version" - șirul versiunii
- "release" - șirul lansării
- "arch" - arhitectura pachetului
- "repoid" - ID-ul depozitului
- "cmdline_repo" - dacă pachetul provine dintr-un depozit accesibil prin linia de comandă (boolean)
- value
- Șir
Câmp obligatoriu.
Valoarea cu care trebuie să se facă comparația.
- Pentru filtrul cmdline_repo, folosiți „true”/„1” sau „false”/„0”
- Pentru filtrul epoch, utilizați un șir numeric (de exemplu, „0”, „1”)
- Pentru celelalte filtre, utilizați valorile corespunzătoare ale șirurilor de caractere
- comparator
- Șir
Câmp opțional.
Metoda de comparare(potrivire) care trebuie utilizată.
Implicit: "EXACT"
Pentru filtrele bazate pe șiruri de caractere (name, source_name , arch, repoid):
Aceleași valori ca pentru comparatorul furnizorului: EXACT, NOT_EXACT, IEXACT, NOT_IEXACT, CONTAINS, NOT_CONTAINS, ICONTAINS, NOT_ICONTAINS, STARTSWITH, ISTARTSWITH, ENDSWITH, IENDSWITH, REGEX, IREGEX, GLOB, NOT_GLOB, IGLOB, NOT_IGLOB
Pentru filtrele bazate pe versiune (evr, epoch, version, release):
- "EXACT" - egal cu
- "NOT_EXACT" - neegal cu
- "GT" - mai mare decât
- "GTE" - mai mare sau egal cu
- "LT" - mai mic decât
- "LTE" - mai mic sau egal cu
Notă:
Notă:
- exclude
- Boolean
Câmp opțional.
Dacă este true, pachetele care corespund filtrelor sunt excluse din regulă. Acest lucru este util pentru definirea excepțiilor. Regulile de excludere trebuie să apară înaintea regulilor din care trebuie excluse pachetele.
Implicit: false
EXEMPLE¶
Exemplul 1: Permite schimbarea de la „Furnizorul A” la „Furnizorul B”¶
Acest exemplu ilustrează configurația minimă necesară, care permite trecerea de la „Furnizorul A” la „Furnizorul B”, dar nu și invers.
version = '1.1' [[outgoing_vendors]] vendor = 'FurnizorA' [[incoming_vendors]] vendor = 'FurnizorB'
Exemplul 2: Permite schimbarea oricărui furnizor cu „Furnizorul meu de încredere”¶
Acest exemplu ilustrează permisiunea de a schimba furnizorul cu „Furnizorul meu de încredere”, dar nu și invers. Lipsa elementului outgoing_vendors înseamnă că orice furnizor este permis.
version = '1.1' [[incoming_vendors]] vendor = 'Furnizorul meu de încredere'
Exemplul 3: Furnizori echivalenți¶
Acest exemplu ilustrează relații de echivalență reciprocă între furnizori, care permit schimbări în ambele sensuri.
version = '1.1' # Toți furnizorii de mai jos sunt echivalenți [[equivalent_vendors]] vendor = 'Fedora Project' [[equivalent_vendors]] vendor = 'Red Hat' comparator = 'ISTARTSWITH' [[equivalent_vendors]] vendor = 'CentOS' comparator = 'ISTARTSWITH'
Exemplul 4: Furnizori echivalenți cu o excludere¶
Acest exemplu prezintă o politică privind furnizorii pentru furnizorii asociați cu SUSE, cu o excepție pentru openSUSE Build Service.
version = '1.1' # Toți furnizorii de mai jos sunt echivalenți între ei, cu excepția celor excluși [[equivalent_vendors]] vendor = 'openSUSE Build Service' comparator = 'ISTARTSWITH' exclude = true [[equivalent_vendors]] vendor = 'SUSE' comparator = 'ISTARTSWITH' [[equivalent_vendors]] vendor = 'openSUSE' comparator = 'ISTARTSWITH'
Exemplul 5: Combinarea furnizorilor echivalenți cu furnizorii noi¶
Acest exemplu ilustrează combinarea equivalent_vendors cu incoming_vendors, o funcționalitate introdusă în versiunea „1.1”. „Primul furnizor” și „Al doilea furnizor” sunt echivalente între ele, iar ambele pot fi înlocuite cu „Al treilea furnizor”.
version = '1.1' [[equivalent_vendors]] vendor = 'Primul furnizor' [[equivalent_vendors]] vendor = 'Al doilea furnizor' [[incoming_vendors]] vendor = 'Al treilea furnizor'
Exemplul 6: Permite pachetele pentru linia de comandă de la orice furnizor¶
Acest exemplu permite instalarea pachetelor din depozitul din linia de comandă al oricărui furnizor, ocolind restricțiile impuse furnizorului.
version = '1.1' [[incoming_packages]] filters = [
{ filter = 'cmdline_repo', value = 'true' } ]
Exemplul 7: Pachete pentru linia de comandă cu excluderi¶
Acest exemplu permite instalarea pachetelor din depozitul din linia de comandă de la orice furnizor, cu excepția pachetelor ale căror nume încep cu „pachetul-meu”.
version = '1.1' [[incoming_packages]] filters = [
{ filter = 'name', value = 'pachetul-meu', comparator = 'STARTSWITH' } ] exclude = true [[incoming_packages]] filters = [
{ filter = 'cmdline_repo', value = 'true' } ]
Exemplul 8: Permite trecerea de la orice furnizor la unul specific prin filtrarea pachetelor¶
Acest exemplu permite schimbarea furnizorului cu „Furnizorul meu”, dar numai pentru pachetele primite al căror nume de pachet sursă este „pachetul-meu” și a căror versiune este mai mare sau egală cu „2.0”.
version = '1.1' [[incoming_packages]] filters = [
{ filter = 'source_name', value = 'pachetul-meu' },
{ filter = 'version', value = '2.0', comparator = 'GTE' } ] [[incoming_vendors]] vendor = 'Furnizorul meu'
CONSULTAȚI ȘI¶
- Referință fișier Politica de schimbare a furnizorului DNF5 <#dnf5-vendor-change-policy-label>
- Referință fișier Politica de schimbare a furnizorului DNF5 - v1.0 <#dnf5-vendor-change-policy-v1-0-label>
- dnf5-conf(5), Referință configurare DNF5 <#dnf5-conf-label>
Autor¶
A se vedea AUTHORS.md în distribuția sursei dnf5.
Drepturi de autor¶
Contribuitori la proiectul dnf5.
TRADUCERE¶
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.
| 19 februarie 2026 |