Serie: Arch für alle - Paketverwaltung

  Ralf Hersel   Lesezeit: 9 Minuten  🗪 4 Kommentare

In dieser Serie möchte ich Arch Linux allen Distro-Suchenden nahelegen.

serie: arch für alle - paketverwaltung

In der Einleitung im ersten Artikel, der Installation im zweiten Beitrag und der Konfiguration im dritten Teil, geht es heute um die Paketverwaltung bei Arch-Linux. Die Installation der Distribution hat uns zwei Paketmanager beschert, den Arch-eigenen pacman und GNOME-Software als Bestandteil der GNOME-Desktopumgebung. Man mag sich über zwei Anwendungen für die Software-Installation freuen, tatsächlich sehe ich das als Nachteil. Du möchtest lieber eine Anwendung haben, die sich um sämtliche Pakete auf dem System kümmert. Ansonsten sind Doppelspurigkeit und Inkonsistenzen vorprogrammiert.

Obwohl pacman ein sehr guter und schneller Paketmanager ist, kümmert sich die CLI-Anwendung nur um native Arch-Pakete entsprechend der bereitgestellten (konfigurierten) Repositories. Von Paketformaten wie deb, flatpak, snap oder Paketen aus dem AUR (Arch-User-Repository) hat pacman keine Ahnung. Um zu sehen, wie pacman vom Installer konfiguriert wurde, lohnt sich ein Blick in seine Konfigurationsdatei: sudo nano /etc/pacman.conf. Darin findet ihr zwei interessante Einträge:

#ParallelDownloads = 5

Hier lohnt es sich, den # am Anfang zu entfernen, um parallele Download von Pakete einzuschalten. Damit erhöht sich die Geschwindigkeit von Installationen und Updates massiv.

Um zu erfahren, welche Repositories verwendet werden, scrollt ihr nach unten bis zum Abschnitt REPOSITORIES. Dort seht ihr, dass [core] und [extra] eingeschaltet sind, während die [test-repos] sowie [multilib] ausgeschaltet sind. Diese Einstellung könnt ihr so belassen. Wer sich näher über die Bedeutung informieren möchte, kann es hier nachlesen. Nun empfehle ich einen Blick in die Datei /etc/pacman.d/mirrorlist zu werfen. Falls ihr ausschliesslich Server aus eurem Land seht, habt ihr bei der Installation alles richtig gemacht. Wobei sich das nicht so pauschal sagen lässt. Es kann sein, dass ausländische Server besser für euch geeignet sind. Um das herauszufinden, kann man folgendes machen:

Aktualisiert die Arch-Pakete mit (wundert euch nicht über den seltsamen Befehl, dazu komme ich später):

sudo pacman -Syu

Installiert das Paket reflector:

sudo pacman -S reflector

Dieses Programm sucht nach den schnellsten Mirror-Servern in den angegebenen Ländern. So wird es ausgeführt:

sudo reflector --country 'Germany,Switzerland,Austria' --latest 5 --age 2 --fastest 5 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
oder
sudo reflector --country '' --latest 5 --age 2 --fastest 5 --protocol https --sort rate --save /etc/pacman.d/mirrorlist

Falls ihr den Country-Eintrag leer lasst, werden die weltweit schnellsten Server verwendet.

Das Standard-Repository von Arch enthält Tausende von Paketen. Das Arch User Repository (AUR) enthält viele weitere Anwendungen, die von Benutzern eingereicht wurden. Das stellt zwar ein gewisses Risiko dar, ist in manchen Fällen aber unabdingbar, wie wir gleich sehen werden. Um Pakete aus dem AUR installieren zu können, wird ein AUR-Helper wie yay, paru oder picaur benötigt. Yay wird so installiert:

sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

Jetzt könnt ihr mit yay -S [Paketname] auch Anwendungen aus dem AUR installieren.

An dieser Stelle möchte ich einen Witz einschieben, der meine Meinung zu dieser Folge der Artikel-Serie wiedergibt:

Wenn ihr einen gesunden Smoothie mixen wollte, nehmt ihr eine Handvoll Brokoli, ein paar Baslikumblätter und etwas Wirsing. Das püriert ihr mit einem Mixer und füllt die Mischung mit Ziegenmilch auf. Zum Schluss garniert ihr euren Smoothie mit geriebenen Mandeln. Dann schüttet ihr die Brühe in die Toilette und macht euch ein Bier auf.

Die Bedienung von pacman (und auch yay) ist etwas kryptisch. Statt der intuitiven Kommandos install, remove, update usw., wie man sie von anderen Paketmanagern (apt, pamac) kennt, verwendet Arch seltsame Parameter. Hier ist eine Übersetzungshilfe:

Install:                     sudo pacman -S Paketname
Remove:                      sudo pacman -R Paketname
Update:                      sudo pacman -Syu
List all installed packages: pacman -Q
Search a installed package:  pacman -Q 'Paketname'

Neben pacman und yay hat uns die Installation von GNOME auch die Anwendung GNOME Software beschert.

GNOME Software ist so konfiguriert, dass damit nur Flatpaks von flathub.org verwaltet werden können. Falls man native Arch-Pakete, AUR-Pakete und Flatpaks verwenden möchte, hat man es mit zwei Situationen zu tun. Pamac und yay informieren nicht über ausstehende Aktualisierungen. Ich kann mich täuschen, habe jedoch bei meinen Arch-Installationen bisher noch keine Notifikationen gesehen. GNOME Software wird euch über Flatpak-Updates informieren. Man kann mit dieser Situation leben; optimal ist sie aber nicht.

Und jetzt kommt der Moment, in dem einem die Idee kommt, den Smoothie in den Ausguss zu schütten. Wie wäre es mit einer Paketverwaltung, die sich um alle Formate kümmert? Bühne frei für pamac, die Manjaro-Paketverwaltung. Und genau an dieser Stelle höre ich die Leserschaft raunen:

Dann kann ich mir ja gleich Manjaro installieren. Wozu soll ich diese Klimmzüge in Arch-Linux machen?

Ja und nein. Zwar bietet Manjaro mit pamac eine Paketverwaltung, die alles kann und auch sehr bequem und schnell ist, aber der Release-Zyklus und die Repositories sind ganz andere. Arch ist ein echtes Rolling-Linux, während Manjaro 'nur' semi-rolling ist. Man bezeichnet das auch als kuratiertes Rolling Release Modell. Im Gegensatz zu Arch, werden bei Manjaro die Pakete nicht direkt ausgespielt, sondern landen zuerst in den Unstable-, Testing-, Stable-Zweigen der Repositories. Diese sind nicht identisch mit den Arch-Repos!

Wer pamac in Arch-Linux als alleinige Paketverwaltung verwenden möchte, kann das machen. Dazu installiert man über yay das pamac-Paket. Aber Achtung, es ist ein Installations- und Build-Marathon:

yay -S pamac

Nach diesem harmlosen Befehl bricht die Installationshölle über euch herein, weshalb ich den exakten Ablauf hier nicht dokumentieren möchte. Achtet bitte genau auf die Auswahlen, die ihr trefft, sonst habt ihr ganz schnell Snap mit im Boot. Nach der ewig langen Installation präsentiert sich pamac benutzer- und einstellungsfreundlich:

Damit endet diese Serie über Arch-Linux. Ihr konntet die Grundlagen lesen, die Installation durchführen, das System konfigurieren und das Paketmanagement kennenlernen. Mit dem Arch-Installer ist Arch nicht viel schwieriger in Betrieb zu nehmen als andere GNU/Linux-Distributionen. Es gibt zwar ein wenig mehr zu tun als bei den Einsteiger-Distros, dafür bekommt man eine echte rollende Distribution, die sehr schnell läuft. Ausserdem bietet Arch einen Anreiz, sich etwas tiefer mit einem Linux-System zu beschäftigen. Wem das zu aufwändig ist, aber dennoch ein Arch-basiertes System verwenden möchte, kann Manjaro, EndeavourOS oder Garuda ausprobieren. Falls euch das zu einfach war, verweise ich auf Slackware und Gentoo.

Tags

Distro, Distribution, Arch, Arch-Linux, Paketverwaltung

kamome
Geschrieben von kamome am 31. Mai 2023 um 21:24

Für die KDE-Plasma-Nutzer – wäre Discover nicht eine gute Lösung? Oder ist das bei Arch auch eingeschränkt?

tuxnix
Geschrieben von tuxnix am 1. Juni 2023 um 20:29

Der AUR-Installationshelfer der im Gegensatz zu yay die Änderungen eines PKGBUID anzeigt heißt pikaur.

Der Befehl pacman -S git base-devel benötigt kein "--needed"

[--needed

    Do not reinstall the targets that are already up-to-date.]

Die Bedienung von pacman ist weder kryptisch noch seltsam und hat auch nicht mit

Brokoli oder Wirsing zu tun. Wer in der Lage ist, sein eingefahrenes Denkschema anzupassen wird von der Systematik sehr schnell überzeugt sein.

https://wiki.archlinux.de/title/Pacman

Für den KDE-Plasma-Nutzer – wäre dann auch noch das GUI-Tool Discover zu erwähnen.Und schliesslich wäre es auch nett zu erwähnen, dass man flatpak auch auf der Konsole verwalten kann.

Michael
Geschrieben von Michael am 5. Juni 2023 um 17:08

Ich selbst bevorzuge die manuelle Installation aus dem AUR auch für den langfristigen Einsatz. Das verhindert Wildwuchs und man denkt 2 Mal darüber nach, ob man dieses Paket wirklich braucht oder ob es bessere Alternativen gibt.

Paketmanger, die das AUR mit einbinden bieten zwar mehr komfort, aber häufig verliert man den Überblick, was man aus dem AUR bezieht.

Tealk
Geschrieben von Tealk am 9. Juni 2023 um 14:41

Die wichtigste Option in der /etc/pacman.conf fehlt im Beitrag: ILoveCandy