Autoren:

Tobias Scherbaum
Editor
30. August 2004, Rev. 1.2

Neue Funktionen und Optionen in Portage 2.0.50

Portage 2.0.50 bringt zahlreiche neue Funktionen mit, die nützlichsten davon stellen wir Ihnen kurz vor. Wir gehen davon aus, dass Sie bisher nur ebuilds mit x86 Keyword benutzen.

Neue Funktionen und Optionen in Portage 2.0.50

1. Neue Konfigurationsdateien in /etc/portage

1.1 /etc/portage?

Voraussetzung für eine erfolreiche Nutzung der in diesem Howto vorgestellten Features ist, dass das /etc/portage Verzeichnis existiert. portage-2.0.50 legt dieses nicht an.

Befehlsauflistung  1.1: /etc/portage anlegen
# mkdir /etc/portage

1.2 /etc/portage/package.mask

Diese Konfigurationsdatei kann Pakete enthalten, die Sie nicht installieren möchten. Zum Beispiel setzen Sie apache-1.3.29-r1 ein, irgendein Paket möchte aber apache-2.0.48 installieren. Anstelle dieses Paket bei einem World Update jedes Mal manuell zu überspringen, können Sie alle Apache Versionen größer oder gleich 2.0 maskieren.

Befehlsauflistung  2.2: /etc/portage/package.mask Beispiel
# maskiert alle Versionen größer oder gleich apache-2.0
>=net-www/apache-2

Format:
- Kommentarzeilen beginnen mit einem #
- eine Paket pro Zeile

1.3 /etc/portage/package.unmask

Diese Konfigurationsdatei kann Pakete demaskieren, die in /usr/portage/profiles/package.mask maskiert sind. Ein gutes Beispiel sind die aktuellen Gimp 2.0-pre* Versionen, die alle maskiert sind.

Befehlsauflistung  3.3: /etc/portage/package.unmask Beispiel
# demaskiert alle Versionen größer oder gleich gimp-2.0
>=media-gfx/gimp-2.0

Format:
- Kommentarzeilen beginnen mit einem #
- eine Paket pro Zeile

Notiz
In der Regel hat es einen guten Grund warum Pakete in /usr/portage/profiles/package.mask maskiert sind. Mögliche Gründe sind bekannte Sicherheitslücken, dass das Programm seit laengerer Zeit nicht betreut wird oder das es sich um beta oder pre Versionen handelt.

1.4 /etc/portage/package.keywords

Notiz
Wenn Sie kde-3.3.0 (derzeit unter anderem als ~x86 gekeyworded) installieren möchten folgen Sie der folgenden Anleitung.

Wenn Sie obiges Beispiel angewandt haben, werden Sie feststellen, dass Sie gimp-2.0pre2* noch immer nicht installieren können. Der Grund: Das ~x86 Keyword. Bisher hätten Sie diese Version mit ACCEPT_KEYWORDS=~x86 emerge gimp installiert und wären bei dem nächsten World Update wieder darauf aufmerksam geworden. Seit portage-2.0.50 können Sie festlegen, welches Paket mit welchem Keyword Sie verwenden möchten.

Befehlsauflistung  4.4: /etc/portage/package.keywords Beispiel
# Portage soll immer die ~x86 Version von gimp benutzen
media-gfx/gimp ~x86

Format:
- Kommentarzeilen beginnen mit einem #
- eine Paket pro Zeile gefolgt von dem anzuwendenden Keyword

1.5 /etc/portage/package.use

In der package.use Datei können Sie USE Flags pro Paket festlegen. Wenn Sie zum Beispiel grundsätzlich keine optionale Dokumentation installiert haben möchten, setzen Sie das USE Flag -doc in /etc/make.conf. Jetzt möchten Sie aber zum gtk+ Paket die Dokumentation installieren; bisher haben Sie dazu folgendes Konstrukt bemüht: USE="docs" emerge gtk+.

Befehlsauflistung  5.5: /etc/portage/package.use Beispiel
# aktiviert das doc USE Flag für gtk+-2
=x11-libs/gtk+-2* doc

Format:
- Kommentarzeilen beginnen mit einem #
- eine Paket pro Zeile gefolgt von den anzuwendenden USE Flags

1.6 /etc/portage/mirrors

Immer wenn portage in einem ebuild auf eine URL im mirror:// Style trifft, schaut es zuerst in dieser Datei nach den Hosts. Wenn das Mirror Set nicht definiert ist, wird das globale Mirror File in /usr/portage/profiles/thirdpartymirrors gelesen. Zusätzlich können Sie einen speziellen Mirrortyp local definieren, diese Liste von Mirrors wird vor GENTOO_MIRRORS geprüft.

Befehlsauflistung  6.6: /etc/portage/mirrors Beispiel
# Mirror innerhalb des lokalen Netzwerk
local     ftp://192.168.0.3/mirrors/gentoo
# Auswahl eines nahegelegenen Mirror
first
sourceforge http://belnet.dl.sourceforge.net

Format:
- Kommentarzeilen beginnen mit einem #
- Mirror Typ gefolgt von einer Liste von Hosts

2. zuätzliche neue Optionen

2.1 --tree

Die --tree Option ermöglicht Ihnen in Kombination mit der --pretend Option eine genaue Analyse, welches Paket als Abhängigkeit welches Paketes mitinstalliert werden soll.

Befehlsauflistung  1.1: emerge kde -pv --tree Beispiel
# emerge kde -pv --tree

These are the packages that I would merge, in reverse order:

Calculating dependencies ...done!
[ebuild  N    ] kde-base/kde-3.2.0   [empty/missing/bad digest]
[ebuild  N    ]  kde-base/kdegames-3.2.0  -debug  8,867 kB
[ebuild  N    ]   media-libs/glut-3.7.1   2,479 kB
[ebuild  N    ]   app-text/xpdf-2.03  +motif  489 kB
[ebuild  N    ]    media-libs/t1lib-5.0.0-r2  +X -doc  1,595 kB
[ebuild  N    ]   media-libs/imlib-1.9.14-r1   731 kB
[ebuild  N    ]   dev-libs/fribidi-0.10.4   328 kB
[ebuild  N    ]  kde-base/kdeaddons-3.2.0  -esd +sdl +svga +xmms  1,281 kB
[ebuild  N    ]   kde-base/kdemultimedia-3.2.0  -alsa +encode -esd -gstreamer +gtk +motif \
  -nas +oggvorbis +slang -tcltk  4,778 kB
[ebuild  N    ]    media-libs/id3lib-3.8.3-r1   928 kB
[ebuild  N    ]    media-video/xanim-2.80.1-r4   618 kB
[ebuild  N    ]    media-libs/xine-lib-1_rc2  +X -aalib -alsa +arts +avi -directfb -dvd -esd \ 
  +gnome +nls +oggvorbis +sdl -speex  5,123 kB
[ebuild  N    ]     media-libs/xvid-0.9.1   457 kB
[ebuild  N    ]     media-libs/libfame-0.9.0   231 kB
[ebuild  N    ]     media-libs/flac-1.1.0  +X -sse +xmms  1,173 kB
[ebuild  N    ]     media-libs/win32codecs-0.90.1-r2  +quicktime  10,586 kB
[ebuild  N    ]     media-libs/divx4linux-20030428-r1   405 kB
[ebuild  N    ]      sys-libs/lib-compat-1.3   3,076 kB

(Die Ausgabe wurde der besseren Lesbarkeit halber etwas gekürzt.)


Kontakt | Impressum
Gentoo ® ist eine eingetragene Marke des Förderverein Gentoo e.V.