Disclaimer :
This handbook has been replaced by a newer version and is not maintained anymore.
|
[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
2. USE-asetukset
Content:
2.a. Mitä USE-asetukset ovat?
USE-asetusten tarkoitus
Gentoota (kuten muita distroja tai käyttöjärjestelmiäkin) asennettaessa tehdään
valintoja käyttöympäristön mukaan. Palvelimen asetukset ovat erilaiset kuin
työaseman ja pelikone näyttää erilaiselta kuin 3D-kehittäjän kone.
Tämä vaikuttaa paitsi asennettuihin paketteihin myös pakettien ominaisuuksiin.
Jos OpenGL:lle ei ole tarvetta, ei varmaankaan ole järkevää pitää kaikissa
sovelluksissa OpenGL-tukea mukana. Jos KDE ei ole käytössä, et varmasti
myöskään
halua kääntää KDE-tukea mukaan paketteihin, jotka eivät välttämättä sitä
tarvitse.
Auttaaksemme käyttäjiä valitsemaan asennettavat paketit ja aktivoitavat
toiminnallisuudet haluamme käyttäjän määrittelevän käyttöympäristönsä
yksinkertaisella tavalla. Käyttäjän tarvitsee valita mitä haluaa helpottaakseen
Portagea, paketinhallintajärjestelmäämme, tekemään järkeviä päätöksiä.
USE-asetusten määritelmä
Tutustukaamme USE-asetuksiin. Jokainen asetus on totuusarvoinen avainsana joka
sisältää tiedon jonkin käsitteen tuista ja riippuvuuksista. Valitessasi
USE-asetuksen kerrot Portagelle haluavasi tuen avainsanan tarkoitteelle. Tämä
tietenkin vaikuttaa paketin riippuvuustietoihinkin.
Tarkastelkaamme asioita esimerkin kde avulla. Jollei tätä avainsanaa
ole määritetty USE-muuttujissasi, kaikki paketit joissa on
valinnainen KDE-tuki kääntyvät ilman sitä. Samoin kaikki paketit
jotka vaihtoehtoisesti ovat riippuvaisia KDE:stä jättävät KDE:n
vaihtoehtoiset kirjastoriipuvuudet asentamatta. Jos taas
kde-avainsana on
määritelty, KDE-tuki käännetään mukaan ja KDE-kirjastot asennetaan
riippuvuuksien mukaan.
Oikein määritellyillä avainsanoilla saadaan aikaan järjestelmä joka on
tarkalleen räätälöity tarpeitasi varten.
Mitä USE-asetuksia on olemassa?
USE-asetuksia on kahta lajia: globaaleja ja paikallisia.
-
Globaalit USE-asetukset ovat useampien pakettien käytössä
järjesetelmänlaajuisesti. Näitä useimmat käyttäjät pitävät USE-asetuksin.
-
Paikalliset USE-asetukset ovat vain yhden paketin käytössä
pakettikohtaisia asetuksia varten.
Listaus käytössä olevista USE-asetuksista on saatavilla verkosta tai paikallisen järjestelmän
tiedostosta /usr/portage/profiles/use.desc.
Luettelo paikallisista USE-asetuksista on tiedostossa
/usr/portage/profiles/use.local.desc.
2.b. USE-asetusten käyttäminen
Pysyvien USE-asetusten määritteleminen
Nyt kun olet toivottavasti vakuuttunut USE-asetusten tärkeydestä, opastamme
USE-asetusten määrittelyssä.
Kuten aiemmin huomattiin, USE-asetukset määritellään USE-muuttujaan.
Helpottaaksemme käyttäjien tehtävää USE-asetusten valinnassa olemme valmiiksi
tarjonneet oletusasetuksia. Oletusasetuksiin on valittu kokoelma USEja
joita uskomme valtaosan Gentoon käyttäjistä käyttävän. Nämä oletukset
löytyvät profiilihakemistojen tiedostoista make.defaults. 2004.3
asetukset näyttivät tältä:
Code Listing 2.1: /usr/portage/profiles/default-linux/x86/2004.3/make.defaultsin koottu USE-muuttuja |
USE="x86 oss apm arts avi berkdb crypt cups encode foomaticdb gdbm gif gpm gtk
imlib jpeg kde gnome libg++ libwww mad mikmod motif mpeg ncurses nls
oggvorbis opengl pam pdflib png python qt3 qt4 quicktime readline sdl slang
spell ssl svga tcpd truetype X xml2 xmms xv zlib"
|
Voinet huomata että muuttujaan on jo määritelty aika monia avainsanoja.
Älä käytä mitään tiedostoja make.defaults
muuttaaksesi USE-asetuksia; nämä muutokset häviävät Portagen päivitysten
mukana!
Oletusasetusten muuttaamiseksi tulee poistaa avainsanoja
USE-muuttujasta. Järjestelmänlaajuisesti tämän voi tehdä muuttamalla
USE-muuttujaa tiedostossa /etc/make.conf. Tähän muuttujaan
voi lisätä tarvittuja USE-asetuksia tai poistaa niitä joita ei haluta,
poistaminen tapahtuu lisäämällä miinus ’-’ avainsanan eteen.
Jos esimerkiksi halutaan poistaa KDE- ja QT-tuki mutta lisätä ldap, merkitään
USE-muuttuja tiedostoon /etc/make.conf seuraavasti:
Code Listing 2.2: Esimerkki USE-asetuksesta tiedostossa /etc/make.conf |
USE="-kde -qt3 -qt4 ldap"
|
USE-asetusten määrittely pakettikohtaisesti
Joskus on järkevää määritellä jokin USE-asetus vain muutamalle paketille, muttei
suinkaan kaikille. Tällöin on parasta luoda hakemisto /etc/portage,
jollei sitä ole vielä, ja
lisätä hakemistoon tai tiedostoon /etc/portage/package.use.
Lisätietoja tästä löytyy ohjesivulta man portage. Seuraavat esimerkit
olettavat package.use-tiedoston.
Code Listing 2.3: /etc/portage/package.usen paikallinen asetuslisäys |
dev-db/mysql berkdb
|
On myös mahdollista poistaa joitain USE-asetuksia pakettikohtaisesti,
esimerkiksi poistetaan java PHP:stä:
Code Listing 2.4: /etc/portage/package.usen paikallinen asetuspoisto |
dev-php/php -java
|
Väliaikaisten USE-asetusten tekeminen
Joskus on tarve käyttää USE-muuttujaa vain kerran. Sen sijaan että tässä
tapauksessa joutuisi muokkaamaan tiedostoa /etc/make.conf kahdesti
(asetuksen lisäämiseksi ja poistamiseksi), voidaan USE-muuttuja määritellä
ympäristömuuttujana.
Esimerkkinä poistamme hetkellisesti javan USE-asetuksista Mozillan
asentamisen ajaksi.
Code Listing 2.5: USEn käyttäminen ympäristömuuttujalla |
# USE="-java" emerge seamonkey
|
Tärkeysjärjestys
Tietenkin näillä eri USE-muuttujilla on tietty prioriteettijärjestys, eikä
ole järkevää sanoa USE="-java" vain nähdäkseen että java
kuitenkin on päällä korkeampiarvoisen asetuksen takia.
Asetukset luetaan siis seuraavassa tärkeysjärjestyksessä
(ensimmäisenä vähiten tärkeä):
-
Oletusasetukset profiilin tiedostoissa make.defaults
-
käyttäjän määrittelemät asetukset tiedostossa /etc/make.conf
-
käyttäjän määrittelemät USE-asetukset ympäristömuuttujassa.
Nähdäksesi lopullisen USEn muodon käytä komentoa emerge info.
Se antaa listauksen kaikista Portagelle merkittävistä muuttujista (ml.
USE-asetukset) nykyisine sisältöineen.
Code Listing 2.6: emerge infon suorittaminen |
# emerge --info
|
Järjestelmä mukauttaminen uusiin USE-asetuksiin
Kokonainen järjestelmä pystytään päivittämään vastaamaan täysin muutettuja
USE-asetuksia emergen valitsimella --newuse:
Code Listing 2.7: Järjestelmän uudelleenkääntäminen |
# emerge --update --deep --newuse world
|
Seuraavaksi Portagen depclean-toiminnolla poistetaan ne vaihtoehtoiset
riippuvuudet mitkä kuuluivat vanhaan järjestelmääsi mutta eivät sisälly
nykyisiin USE-asetuksiin.
Warning:
emerge depclean on vaarallinen komento ja sitä käytettäessä on
noudatettava varovaisuutta. Varmista että annettu lista "vanhentuneista"
paketeista ei sisällä paketteja jotka ovatkin tarpeellisia. Seuraavassa
esimerkissä käytetään valitsinta -p listauksen tuottamiseen ilman
varsinaista poistotoimintoa.
|
Code Listing 2.8: Vanhentuneiden pakettien poisto |
# emerge -p --depclean
|
Depclean-toiminnon loputtua päivitä dynaamisesti äskettäin päivittyneitä
kirjastoja vastaan linkittyvät sovellukset komennolla revdep-rebuild.
Tämä komento on osa gentoolkit-pakettia, joten se pitää tietenkin
asentaa ennen käyttämistä.
Code Listing 2.9: Revdep-rebuildin suorittaminen |
# revdep-rebuild
|
Tämän jälkeen järjestelmä onkin täysin tuoreiden USE-asetusten mukainen.
2.c. Pakettikohtaiset USE-asetukset
Mahdollisten USE-asetusten tarkastelu
Otetaan esimerkiksi seamonkey, mitä USE-asetuksia se totteleekaan?
Selvittääksemme annamme komennolle emerge valitsimet --pretend
(teeskentelemme asennusta tekemättä mitään) ja --verbose (katselemme
monisanaista tulostetta):
Code Listing 3.1: USE-asetusten katselu |
# emerge --pretend --verbose seamonkey
These are the packages that I would merge, in order:
Calculating dependencies ...done!
[ebuild N ] net-www/seamonkey-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
|
emergen lisäksi on myös muita työkaluja tätä varten. Itse asiassa
equery on jopa pääasiallisesti tarkoitettu pakettien tiedon tarkasteluun.
Se sijaitsee gentoolkit-paketista. Ensin siis asennetaan
gentoolkit:
Code Listing 3.2: gentoolkitin asennus |
# emerge gentoolkit
|
Komento equery argumentilla uses näyttää nyt annetun paketin
USE-muuttujat. Esimerkiksi katsomme gnumericia:
Code Listing 3.3: Using equery to view used USE-flags |
# equery --nocolor uses =gnumeric-1.6.3 -a
[ Searching for packages matching =gnumeric-1.6.3... ]
[ Colour Code : set unset ]
[ Legend : Left column (U) - USE flags from make.conf ]
[ : Right column (I) - USE flags packages was installed with ]
[ Found these USE variables for app-office/gnumeric-1.6.3 ]
U I
- - debug : Enable extra debug codepaths, like asserts and extra output.
If you want to get meaningful backtraces see
http://www.gentoo.org/proj/en/qa/backtraces.xml.
- - gnome : Adds GNOME support
+ + python : Adds support/bindings for the Python language
- - static : !!do not set this during bootstrap!! Causes binaries to be
statically linked instead of dynamically
|
[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
The contents of this document, unless otherwise expressly stated, are licensed under the CC-BY-SA-2.5 license. The Gentoo Name and Logo Usage Guidelines apply.
|