Gentoo Logo

Avertisment : Acest manual a fost înlocuit cu o versiune mai nouă şi nu mai este întreţinut.


[ << ] [ < ] [ Acasă ] [ > ] [ >> ]


2. Indicatori USE

Conţinut:

2.a. Ce sunt indicatorii USE?

Ideeile din spatele indicatorilor USE

Când instalaţi Gentoo (sau orice altă distribuţie, sau chiar sistem de operare din acel punct de vedere) faceţi alegerile în funcţie de mediul în care lucraţi. O serie de setări pentru un server diferă de setul de setări pentru o staţie de lucru. O staţie de lucru destinată jocurilor diferă de o staţie de lucru pentru prelucrări 3D.

Aceasta nu este adevărat numai pentru alegerea pachetelor pe care le doriţi instalate, dar şi ce caracteristici ar trebui să suporte un anumit pachet. Dacă nu aveţi nevoie de OpenGL, de ce să vă obosiţi să instalaţi OpenGL şi suport OpenGL pentru majoritatea pachetelor? Dacă nu doriţi să utilizaţi KDE, v-aţi obosi să vă compilaţi pachetele cu suport KDE dacă acele pachete funcţionează fără probleme şi fără acel suport?

Pentru a ajuta utilizatorii să decidă ce să instaleze/activeze şi ce nu, am dorit ca ei să îşi specifice mediul într-un mod facil. Aceasta obligă utilizatorii să decidă ceea ce doresc cu adevărat şi să faciliteze procesul Portage, sistemul nostru de administrare a pachetelor, în luarea deciziilor utile.

Definirea unui indicator USE

Vă prezentăm indicatorii USE. Un astfel de indicator este un cuvânt cheie ce reprezintă suport şi informaţii despre dependenţe relativ la un anumit concept. Dacă definiţi un anumit indicator USE, Portage va memora faptul ca doriţi suport pentru cuvântul cheie ales. Bineînţeles, aceasta modifică şi informaţia relativă la dependenţe pentru un pachet.

Să aruncăm o privire la un exemplu specific: cuvântul cheie kde. Dacă nu aveţi acest cuvânt cheie în variabila dvs. USE, toate pachetele ce conţin suport opţional pentru KDE vor fi compilate fără suport KDE. Toate pachetele ce au ca dependenţă optională KDE vor fi instalate fără a instala librăriile KDE (ca dependenţă). Dacă aţi definit cuvântul cheie kde, atunci acele pachete vor fi compilate cu suport KDE, şi librăriile KDE vor fi instalate ca dependenţă.

Prin definirea corectă a cuvintelor cheie, veţi obţine un sistem construit specific nevoilor dvs.

Ce indicatori USE există?

Există două tipuri de indicatori USE: indicatori USE globali şi locali.

  • Un indicator USE global este utilizat de mai multe pachete, la nivel de sistem. Acesta este ceea ce cei mai mulţi dintre utilizatori văd ca indicatori USE.
  • Un indicator USE local este utilizat de către un singur pachet pentru a efectua decizii specifice pachetului.

O listă a indicatorilor USE globali poate fi găsită online sau local în /usr/portage/profiles/use.desc.

O listă locală de indicatori USE este disponibilă în /usr/portage/profiles/use.local.desc.

2.b. Utilizarea indicatorilor USE

Declararea permanentă a indicatorilor USE

Sperăm că sunteţi convinşi de importanţa indicatorilor USE şi vă vom informa cu privire la modul de declarare a indicatorilor USE.

Aşa cum am menţionat anterior, toţi indicatorii USE sunt declaraţi în variabila USE. Pentru a înlesni activitatea utilizatorilor, deja oferim o setare USE implicită. Această setare este o colecţie de indicatori USE care noi credem ca sunt în general folosiţi de către utilizatorii Gentoo. Această setare implicită este definită în fişierele make.defaults din profilul dvs.

Profilul luat în considerare de către sistemul dvs. este indicat de link-ul simbolic /etc/make.profile. Fiecare profil funcţionează peste altul mai larg, rezultatul fiind, deci, suma tuturor profilelor. Cel mai superior profil este profilul base (/usr/portage/profiles/base).

Să aruncăm o privire asupra acestei setări implicite pentru profilul 2004.3:

Cod 2.1: Variabila USE cumulată din make.defaults pentru profilul 2004.3

(Acesta este un exemplu şi este posibil să se fi schimbat ulterior)
USE="x86 oss apm arts avi berkdb bitmap-fonts crypt cups encode fortran f77
     foomaticdb gdbm gif gpm gtk imlib jpeg kde gnome libg++ libwww mad
     mikmod motif mpeg ncurses nls oggvorbis opengl pam pdflib png python qt
     quicktime readline sdl spell ssl svga tcpd truetype X xml2 xmms xv zlib"

După cum puteţi observa, variabila deja conţine destul de multe cuvinte cheie. Nu alteraţi fişierul make.defaults pentru a ajusta variabila USE în concordanţă cu nevoile dvs.: modificările în acest fişier vor fi suprascrise în momentul actualizării sistemului Portage!

Pentru a schimba această setare implicită, trebuie să adăugaţi sau să eliminaţi cuvinte cheie variabilei USE. Acest lucru se poate efectua global prin definirea variabilei USE în /etc/make.conf. În această variabilă, adăugaţi indicatorii USE adiţionali de care aveţi nevoie, sau eliminaţi indicatorii USE pe care nu-i doriţi. Această ultimă acţiune se efectuează prin prefixarea cuvântului cheie cu semnul minus ("-").

Spre exemplu, pentru a elimina suportul pentru KDE şi QT dar să adăugaţi suportul pentru ldap, următoarea setare USE poate fi definită în /etc/make.conf:

Cod 2.2: Un exemplu de setare USE în /etc/make.conf

USE="-kde -qt ldap"

Declararea indicatorilor USE individual pentru pachete

Uneori doriţi să declaraţi un anumit indicator USE pentru una (sau mai multe) aplicaţii, dar nu global pentru tot sistemul. Pentru aceasta, va trebui să creaţi directorul /etc/portage (dacă nu există, deja) şi să editaţi /etc/portage/package.use.

Spre exemplu, dacă nu doriţi ca berkdb suportat global dar îl doriţi pentru mysql, trebuie să adăugaţi:

Cod 2.3: exemplu /etc/portage/package.use

dev-db/mysql berkdb

Bineînţeles, Puteţi, de asemenea, să dezactivaţi indicatori USE pentru o anumită aplicaţie. Spre exemplu, dacă nu doriţi suport java în PHP:

Cod 2.4: a doilea exemplu /etc/portage/package.use

dev-php/php -java

Declararea temporară a indicatorilor USE

Uneori doriţi să setaţi un anumit indicator USE, doar o singură dată. În locul editării /etc/make.conf de două ori (pentru a seta şi a reseta modificările USE) puteţi doar să declaraţi variabila USE ca variabilă de mediu. Amintiţi-vă că, dacă reinstalaţi sau actualizaţi o aplicaţie (fie explicit sau ca urmare a unei actualizări a sistemului) modificările dvs. se vor pierde!

Ca exemplu, vom elimina temporar java din setarea USE în timpul instalării mozilla.

Cod 2.5: Utilizarea USE ca variabilă de mediu

# USE="-java" emerge mozilla

Indicatorii USE Automaţi

După ce anumite pachete sunt instalate, unii indicatori USE adiţionali vor fi activaţi automat pentru dvs. dacă nu îi dezactivaţi în mod explicit. Pentru a vizualiza o listă cu pachetele care furnizează indicatori USE, verificaţi /etc/make.profile/use.defaults şi fişierele use.defaults din profilele superioare:

Cod 2.6: Un scurt extras din /etc/make.profile/use.defaults

gnome           gnome-base/gnome
gtk             x11-libs/gtk+
qt              x11-libs/qt
kde             kde-base/kdebase
motif           x11-libs/openmotif

Precendenţă

Desigur, există o anume precendenţă asupra cărei setări are prioritate peste setarea USE. Nu doriţi declararea USE="-java" doar pentru a observa că java este definit oricum din cauza unei setări ce are o prioritate mai mare. Precedenţa pentru setarea USE este, ordonată după prioritate (primul are cea mai mică prioritate):

  1. Setarea USE implictă declarată în fişierele make.defaults conţinute în profilul dvs.
  2. Setarea USE moştenită dacă un pachet din use.defaults este instalat
  3. Setarea USE definită de utilizator în /etc/make.conf
  4. Setarea USE definită de utilizator în /etc/portage/package.use
  5. Setarea USE definită de utilizator ca variabilă de mediu

Pentru a vizualiza setarea USE finală aşa cum este interpretată de Portage, rulaţi emerge --info. Aceasta va afişa toate variabilele relevante (incluzând variabila USE) cu conţinutul utilizat de Portage.

Cod 2.7: Rularea emerge --info

# emerge --info

Adaptarea Întregului Sistem la Noii Indicatori USE

Dacă aţi modificat indicatorii USE şi doriţi să vă actualizaţi întregul sistem în scopul de a utiliza noii indicatori USE, utilizaţi opţiunea --newuse pentru emerge:

Cod 2.8: Recompilarea întregului sistem

# emerge --update --deep --newuse world

Apoi, rulaţi proprietarea depclean a Portage pentru a îndepărta dependenţele condiţionale ce au fost compilate pe sistemul "vechi" dar au fost scoase din uz de către noii indicatori USE.

Atenţie: Rularea emerge --depclean este o operaţie riscantă şi ar trebui să fie efectuată cu grijă. Verificaţi de cel puţin două ori listă afişată de pachete "vechi" pentru a vă asigura că nu vor fi şterse pachete necesare. În următorul exemplu vom adăuga parametrul -p pentru ca depclean doar să afişeze lista de pachete fără a le şterge.

Cod 2.9: Ştergerea pachetelor vechi

# emerge -p --depclean

Când operaţia depclean s-a terminat, rulaţi revdep-rebuild pentru a reconstrui aplicaţiile care sunt legate dinamic de obiectele partajate din pachetele şterse. revdep-rebuild este o componentă a pachetului gentoolkit; nu uitaţi să-l instalaţi, mai întâi.

Cod 2.10: Rularea revdep-rebuild

# revdep-rebuild

Când totul s-a terminat, sistemul dvs. va utiliza noile setări ale indicatorilor USE.

2.c. Indicatori USE specifice pachetelor

Vizualizarea indicatorilor USE disponibili

Să luăm ca exemplu mozilla: ce indicatori USE utilizează? Pentru a afla, utilizăm emerge cu opţiunile --pretend şi --verbose:

Cod 3.1: Vizualizarea indicatorilor USE utilizaţi

# emerge --pretend --verbose mozilla
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] www-client/mozilla-1.7.12-r2  USE="crypt gnome java mozsvg ssl
truetype xprint -debug -ipv6 -ldap -mozcalendar -mozdevelop -moznocompose
-moznoirc -moznomail -moznoxft -postgres -xinerama" 0 kB

emerge nu este singurul utilitar pentru această acţiune. De fapt, avem un utilitar dedicat informaţiilor despre pachete numit equery ce se află în pachetul gentoolkit. Mai întâi instalaţi gentoolkit:

Cod 3.2: Instalarea gentoolkit

# emerge gentoolkit

Acum, rulaţi equery cu argumentul uses pentru a vizualiza indicatorii USE ai unui pachet anume. Spre exemplu, pentru pachetul gnumeric:

Cod 3.3: Folosirea equery pentru a vizualiza indicatorii USE utilizaţi

# equery uses gnumeric
[ Colour Code : set unset ]
[ Legend      : (U) Col 1 - Current USE flags        ]
[             : (I) Col 2 - Installed With USE flags ]

 U I [ Found these USE variables in : app-office/gnumeric-1.2.0 ]
 - - libgda  : Adds GNU Data Access (CORBA wrapper) support for gnumeric
 - - gnomedb : unknown
 + + python  : Adds support/bindings for the Python language
 + + bonobo  : Adds support for gnome-base/bonobo (Gnome CORBA interfaces)

[ << ] [ < ] [ Acasă ] [ > ] [ >> ]


Imprimare

View all

Actualizat la 13 Ianuarie 2006

Această traducere nu mai este întreţinută

Sumar: Indicatorii USE sunt un aspect foarte important în Gentoo. În acest capitol, învăţaţi cum să manipulaţi indicatorii USE şi să înţelegeţi cum aceştia interacţionează cu sistemul dvs.

Sven Vermeulen
Autor

Roy Marples
Autor

Daniel Robbins
Autor

Chris Houser
Autor

Jerry Alexandratos
Autor

Seemant Kulleen
Dezvoltator Gentoo x86

Tavis Ormandy
Dezvoltator Gentoo Alpha

Jason Huebel
Dezvoltator Gentoo x86

Guy Martin
Dezvoltator Gentoo HPPA

Pieter Van den Abeele
Dezvoltator Gentoo PPC

Joe Kallar
Dezvoltator Gentoo SPARC

John P. Davis
Editor

Pierre-Henri Jondot
Editor

Eric Stockbridge
Editor

Rajiv Manglani
Editor

Jungmin Seo
Editor

Stoyan Zhekov
Editor

Jared Hudson
Editor

Colin Morey
Editor

Jorge Paulo
Editor

Carl Anderson
Editor

Jon Portnoy
Editor

Zack Gilburd
Editor

Jack Morgan
Editor

Benny Chuang
Editor

Erwin
Editor

Joshua Kinard
Editor

Tobias Scherbaum
Editor

Xavier Neys
Editor

Grant Goodyear
Corector

Gerald J. Normandin Jr.
Corector

Donnie Berkholz
Corector

Ken Nowack
Corector

Lars Weiler
Contribuitor

Alin Dobre
Translator Responsabil

Ion Mudreac
Translator

Teddy Drăguţă
Translator

Talos Teodor
Translator

Dragoş Toma
Translator

Muntean Alex
Translator

George Nistorică
Translator

Emil Sîrbu
Translator

Donate to support our development efforts.

Copyright 2001-2013 Gentoo Foundation, Inc. Questions, Comments? Contact us.