The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Install/de/Portage
This is a template that is used as part of the Installation instructions which covers: an introduction to Portage. Templates are being used to allow multiple variant install guides that use most of the same re-usable parts.
Einführung in Portage
Portage, der Paketmanager für Funtoo Linux hat einen Befehl emerge
welcher benutzt wird um Pakete aus ihrem Quellcode zu bauen und zu installieren. Dabei sorgt es auch dafür das alle Abhänigkeiten eines Pakets aufgelöst werden.
emerge wird folgerndermaßen aufgerufen:
(chroot) # emerge paketname
Wenn ein Paket auf diese Weise installiert wird, speichert Portage den Paketnamen in der Datei /var/lib/portage/world
ab. Da du das Paket explizit, per Paketname installiert hast geht Portage davon aus, dass du es auch un Zukunft auf dem laufdenen Stand haben möchtest.
Das Paket wird somit Teil deines Systems. world
ist dabei ein sogenanntes Set. Dadruch das alle Pakete dem world
Set hinzuguegt werden kannst du dein gesamtes System mit dem folgenden Kommando aktualisieren:
(chroot) # emerge --sync (chroot) # emerge -auDN @world
Hierbei handelt es sich um den "offiziellen" Weg dein Funtoo Linux System zu aktualisieren.
Zuerst aktualisieren wir den gesamten Portage tree. Im Portage tree befinden sich alle ebuilds, welches Skripte sind die emerge beschreiben was genau getan werden muss um ein Paket zu installieren. Bei Funtoo Linux wird der Tree in einem git repository gespeichert. Dies ist um einiges schneller als rsync.
Danach sagen wir emerge dass das gesammte System (das world
Set) aktualisiert werden soll.
Hier eine Aufschlüsselung der verwendeten Optionen:
a
- zeige uns was emerged werden soll, und frage (englisch: ask) uns ob wir einverstanden sindu
- aktualisiere (englisch: update) die Pakete, aber emerge sie nicht falls eine keine Aenderungen gibtD
- Beachte den kompletten Abhängigkeitsbaum beim aktualisieren. In anderen Worten: Mache ein "tiefes" (englisch: deep) UpdateN
- Aktualisiere alle Pakete welche ein neues (englisch: new) bzw. geänderte USE flags haben
Du solltest auch von Zeit zu Zeit die Option --with-bdeps=y
mitübergeben. Das dient dazu auch alle build Abhängigkeiten zu aktualisieren.
Manchmal möchten wir auch ein Paket installieren es aber nicht zum world
Set hinzufügen. Zum Beispiel wenn du das Paket nur temporär installieren möchtest, oder das Paket nur eine Abhängigkeit eines anderen ist. In diesem Fall wird emerge
folgendermaß en aufgerufen:
(chroot) # emerge -1 paketname
Fortgeschrittene Benutzer, und alle die es werden wollen, sollten für weitere Informationen die Emerge wiki Seite lesen.
Aktualisieren von world
Jetzt ist eine gute Zeit um das gesammte System zu aktualisieren. Am besten vor dem ersten Neustart.
(chroot) # emerge --sync (chroot) # emerge -auDN @world
emerge
gibt manchmal wichtige Meldungen aus. Lies diese! Besonders nachdem zu perl oder python aktualisiert hast