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 |
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):
-
Setarea USE implictă declarată în fişierele
make.defaults conţinute în profilul dvs.
-
Setarea USE moştenită dacă un pachet din use.defaults
este instalat
-
Setarea USE definită de utilizator în /etc/make.conf
-
Setarea USE definită de utilizator în
/etc/portage/package.use
-
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 ]
[ 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 ]
- - : Adds GNU Data Access (CORBA wrapper) support for gnumeric
- - : unknown
+ + python : Adds support/bindings for the Python language
+ + bonobo : Adds support for gnome-base/bonobo (Gnome CORBA interfaces)
|
[ << ]
[ < ]
[ Acasă ]
[ > ]
[ >> ]
Conţinutul acestui document este publicat sub licenţa Creative Commons -
Attribution / Share Alike.
|