slackpkg+: Repositories und Paketverwaltung in Slackware erweitern
28.09.2026 Zuletzt aktualisiert: 07.09.2026 9 Min. Lesezeit
Slackware verfolgt bei der Paketverwaltung einen bewusst konservativen Ansatz. Das Basissystem besteht aus sorgfältig zusammengestellten offiziellen Paketen, während zusätzliche Software häufig über separate Quellen oder durch eigene Builds bereitgestellt wird.
Wer Slackware64 15.0 intensiver nutzt, stößt deshalb schnell auf slackpkg+.
slackpkg+ erweitert den klassischen Paketmanager slackpkg um die Fähigkeit, zusätzliche Paket-Repositories einzubinden und gemeinsam mit dem offiziellen Slackware-Repository zu verwalten. Besonders interessant ist das für Multilib, AlienBOBs Pakete, zusätzliche Desktop-Komponenten und eigene Paketquellen.
Was ist slackpkg+?
slackpkg+ ist kein vollständig eigenständiger Paketmanager. Es handelt sich um eine Erweiterung für Slackwares slackpkg.
Die gewohnten Befehle bleiben erhalten:
slackpkg update
slackpkg install paket
slackpkg upgrade-all
slackpkg remove paket
slackpkg+ erweitert dabei insbesondere die Paketquellen, aus denen slackpkg seine Informationen bezieht.
Ohne Erweiterung arbeitet slackpkg hauptsächlich mit den offiziellen Slackware-Repositories.
Mit slackpkg+ kann beispielsweise folgende Struktur entstehen:
flowchart TD
A[slackpkg] --> B[slackpkg+]
B --> C[Slackware]
B --> D[Multilib]
B --> E[AlienBOB]
C --> F[offiziell]
D --> G["32 Bit"]
E --> H[Zusatzpakete]Dadurch erhält man eine einheitliche Oberfläche für Pakete aus unterschiedlichen Quellen.
Warum ist das für Slackware interessant?
Slackware hat kein zentrales Repository-Modell wie Debian oder Fedora.
Das ist Absicht.
Das offizielle Slackware-System soll überschaubar, stabil und vorhersehbar bleiben. Viele zusätzliche Programme werden deshalb außerhalb des eigentlichen Slackware-Baums angeboten.
Ein typisches System könnte beispielsweise folgende Quellen benötigen:
Slackware64 15.0
Slackware64 15.0 patches
Multilib
AlienBOB
eigenes Repository
Ohne slackpkg+ müsste man diese Quellen separat verwalten.
Mit slackpkg+ können sie in die Paketverwaltung integriert werden.
Die zentrale Konfigurationsdatei
Die wichtigste Datei ist:
/etc/slackpkg/slackpkgplus.conf
Dort werden unter anderem zusätzliche Repositorys definiert.
Das grundlegende Schema sieht beispielsweise so aus:
SLACKPKGPLUS=on
MIRRORPLUS['repository']=https://example.org/path/
Der Name repository ist dabei frei wählbar.
Beispielsweise:
MIRRORPLUS['multilib']=https://...
Anschließend kennt slackpkg+ dieses Repository unter dem Namen multilib.
Die eigentliche URL sollte immer aus der Dokumentation beziehungsweise vom Betreiber des jeweiligen Repositorys übernommen werden. Gerade bei Multilib ist es sinnvoll, die für die verwendete Slackware-Version passende Quelle zu verwenden.
Repositorys sind nicht alle gleich
Ein wichtiger Punkt beim Einsatz von slackpkg+ ist, dass zusätzliche Repositorys unterschiedliche Aufgaben haben können.
Man kann beispielsweise unterscheiden zwischen:
Offizielle Slackware-Pakete
Diese stammen direkt aus dem Slackware-Projekt:
slackware64-15.0/
patches/
Sie bilden die Grundlage des Systems.
Multilib
Multilib ergänzt Slackware64 um 32-Bit-Unterstützung.
Dort findet man unter anderem:
gcc-*multilib*
glibc-*multilib*
sowie kompatible 32-Bit-Pakete.
AlienBOB
AlienBOB stellt zahlreiche zusätzliche Slackware-Pakete bereit, die nicht Bestandteil der offiziellen Distribution sind.
Dazu gehören unter anderem größere Anwendungen und Paketsammlungen für bestimmte Anwendungsfälle.
Eigene Repositorys
Administratoren können auch eigene Paketquellen betreiben.
Das ist beispielsweise interessant für:
- selbst gebaute Pakete
- interne Software
- angepasste SlackBuilds
- Pakete für mehrere eigene Rechner
Repository-Prioritäten
Eines der wichtigsten Features von slackpkg+ ist:
PKGS_PRIORITY
Warum braucht man das?
Angenommen, im offiziellen Slackware-Repository befindet sich:
foo-1.0-x86_64-1
und ein zusätzliches Repository enthält:
foo-1.1-x86_64-1
Welches Paket soll slackpkg verwenden?
Genau dafür gibt es Prioritäten.
Eine beispielhafte Konfiguration:
PKGS_PRIORITY=( myrepo multilib )
bedeutet sinngemäß:
flowchart TD
A[myrepo] --> B[multilib]
B --> C[Slackware]Ein Paket aus myrepo hat also Vorrang vor einem gleichnamigen Paket aus den nachfolgenden Quellen.
Warum Multilib ein gutes Beispiel ist
Multilib demonstriert sehr gut, warum Prioritäten notwendig sind.
Bei Slackware64 15.0 existieren offizielle Pakete für beispielsweise:
gcc
glibc
Multilib stellt für bestimmte Komponenten eigene Varianten bereit.
Diese müssen gegenüber den normalen Slackware-Paketen korrekt behandelt werden.
Ohne eine entsprechende Priorisierung besteht die Gefahr, dass ein späteres Update wieder die offizielle Slackware-Variante installiert.
Das wäre insbesondere bei zentralen Komponenten wie glibc und GCC problematisch.
Mit slackpkg+ lässt sich die gewünschte Paketquelle priorisieren.
Paketquellen gezielt aktivieren
Es ist nicht zwingend sinnvoll, jedes konfigurierte Repository permanent für jede Operation zu verwenden.
slackpkg+ bietet deshalb Mechanismen, um Repositorys gezielt einzubeziehen.
Das ist bei einer größeren Konfiguration sinnvoll:
flowchart TD
A[Slackware] --> B[Multilib]
A --> C[AlienBOB]
A --> D["eigenes Repo"]
A --> E["experimentelles Repo"]Je mehr Quellen gleichzeitig aktiv sind, desto wichtiger wird es, genau zu wissen, welches Repository welche Pakete bereitstellt.
Das Grundprinzip sollte daher lauten:
So viele Quellen wie nötig, aber so wenige wie möglich.
Paketlisten aktualisieren
Nach Änderungen an den Repositorys müssen die Paketinformationen aktualisiert werden.
Typischerweise beginnt man mit:
slackpkg update
Bei Quellen, die eine eigene GPG-Signatur-Infrastruktur verwenden, kann zusätzlich ein GPG-Schritt erforderlich sein, beispielsweise:
slackpkg update gpg
Anschließend:
slackpkg update
Danach kennt slackpkg+ die Pakete aus den aktivierten Quellen.
Pakete suchen
Ein großer Vorteil ist die einheitliche Suche.
Zum Beispiel:
slackpkg search vlc
oder:
slackpkg search wine
Die Ergebnisse können dabei Pakete aus mehreren Quellen enthalten.
Das ist deutlich komfortabler als mehrere Websites oder Verzeichnisse manuell durchsuchen zu müssen.
Pakete installieren
Ist ein Paket verfügbar, kann es wie gewohnt installiert werden:
slackpkg install paketname
Beispielsweise:
slackpkg install foo
slackpkg+ übernimmt dabei die Auswahl aus den konfigurierten Paketquellen entsprechend den definierten Regeln.
Wichtig ist allerdings:
slackpkg+ ist kein klassischer Dependency Solver.
Das ist einer der größten Unterschiede zu Paketmanagern wie apt oder dnf.
Keine automatische Abhängigkeitsauflösung
Slackware-Pakete enthalten Informationen über ihren Inhalt, aber Slackware verfolgt traditionell nicht das gleiche automatische Abhängigkeitsmodell wie Debian oder Fedora.
Das bedeutet:
slackpkg install foo
bedeutet nicht automatisch:
flowchart TD
A[foo] --> B["dependency A → installieren"]
A --> C["dependency B → installieren"]
A --> D["dependency C → installieren"]Der Administrator bleibt für die Konsistenz seines Systems verantwortlich.
Das ist keine Schwäche, die slackpkg+ beheben soll.
Es ist vielmehr Teil der Slackware-Philosophie.
upgrade-all
Der wohl wichtigste Befehl im täglichen Betrieb ist:
slackpkg upgrade-all
Damit kann das System nach verfügbaren Aktualisierungen durchsucht werden.
In einer Konfiguration mit mehreren Repositories kann das beispielsweise bedeuten:
Slackware patches
+
Multilib updates
+
zusätzliche Repositorys
werden gemeinsam berücksichtigt.
Gerade für Multilib ist das sehr praktisch, weil man dadurch die zusätzlichen Pakete nicht ständig manuell überprüfen muss.
Vorsicht bei mehreren Repositories
Mehr Repositorys bedeuten nicht automatisch ein besseres System.
Nehmen wir an, drei Quellen enthalten jeweils ein Paket:
Slackware foo-1.0
Repository A foo-1.1
Repository B foo-2.0
Ohne klare Prioritäten ist möglicherweise nicht sofort ersichtlich, welche Version letztendlich verwendet werden soll.
Noch problematischer wird es, wenn Repository B eine eigene Variante von Bibliotheken bereitstellt, die von anderen Paketen erwartet wird.
Deshalb sollte man bei slackpkg+ immer die Frage stellen:
Welche Quelle ist für dieses Paket die Autorität?
PKGS_PRIORITY
Eine häufige Fehlkonfiguration besteht darin, pauschal ein großes Repository an die erste Stelle zu setzen.
Beispielsweise:
PKGS_PRIORITY=( huge-third-party-repo )
Das kann dazu führen, dass dieses Repository nicht nur die gewünschten Zusatzprogramme liefert, sondern auch Pakete ersetzt, die eigentlich aus Slackware stammen sollten.
Besser ist eine bewusst geplante Struktur.
Zum Beispiel:
PKGS_PRIORITY=(
multilib
myrepo
)
wenn genau diese beiden Quellen Vorrang benötigen.
Dabei sollte man die Dokumentation des jeweiligen Repository-Betreibers beachten. Manche Repositorys empfehlen bestimmte Prioritäten oder spezielle Konfigurationsoptionen.
Das Zusammenspiel mit Slackware64 15.0
Eine sinnvolle Konfiguration für einen Slackware64-15.0-Desktop könnte konzeptionell so aussehen:
flowchart TD
A["Slackware64 15.0"] --> B[slackpkg]
A --> C[slackpkg+]
C --> D["Slackware patches"]
C --> E[Multilib]
C --> F[AlienBOB]
D --> G[Paketverwaltung]
E --> G
F --> GDas Basissystem bleibt Slackware.
slackpkg+ sitzt darüber und vermittelt zwischen slackpkg und den zusätzlichen Quellen.
Multilib und slackpkg+ gemeinsam
Diese Kombination ist wahrscheinlich einer der bekanntesten Anwendungsfälle.
Ein Slackware64-15.0-System kann beispielsweise enthalten:
64-Bit Slackware
+
Multilib GCC/glibc
+
compat32 libraries
slackpkg+ kann dabei helfen, die Multilib-Pakete als zusätzliche Quelle zu verwalten.
Das reduziert insbesondere den manuellen Aufwand bei Updates.
Allerdings sollte man bei Multilib besonders sorgfältig arbeiten, weil glibc und GCC zentrale Komponenten des Systems sind.
Ein blindes:
slackpkg upgrade-all
ist daher kein Ersatz dafür, zu verstehen, welche Repositorys konfiguriert sind und welche Pakete sie bereitstellen.
Eigene Paketquellen
Eine der interessantesten Möglichkeiten von slackpkg+ ist die Verwendung eigener Repositorys.
Ein Administrator könnte beispielsweise einen internen Paketbestand aufbauen:
/srv/slackware/packages/
Darin könnten sich befinden:
company-tools
monitoring-agent
custom-kernel
internal-libraries
Mehrere Slackware-Rechner könnten anschließend auf dasselbe Repository zugreifen.
Damit wird aus slackpkg+ nicht nur ein Werkzeug für Desktop-Anwender, sondern auch ein interessantes Werkzeug für die Administration mehrerer Slackware-Systeme.
slackpkg+ und SlackBuilds.org sind unterschiedliche Dinge
Hier kommt es häufig zu Missverständnissen.
SlackBuilds.org stellt hauptsächlich Build-Skripte bereit.
Das Konzept lautet:
flowchart TD
A[SlackBuild] --> B[Quellcode]
B --> C["lokales Bauen"]
C --> D["Slackware-Paket"]slackpkg+ arbeitet dagegen primär mit bereits vorhandenen Paket-Repositories.
Das Konzept lautet:
flowchart TD
A[Repository] --> B["fertiges Paket"]
B --> C[slackpkg+]
C --> D[Installation]Die beiden Systeme können sich ergänzen.
Ein Administrator kann beispielsweise ein Paket mit einem SlackBuild bauen und anschließend das erzeugte Paket in ein eigenes Repository aufnehmen.
Was slackpkg+ nicht ersetzen soll
slackpkg+ ist kein universeller Ersatz für alle Slackware-Werkzeuge.
Ein typischer Werkzeugkasten kann weiterhin aus mehreren Komponenten bestehen:
flowchart LR
A[slackpkg] --> A1["offizielles Slackware-System"]
B[slackpkg+] --> B1["zusätzliche Binär-Repositories"]
C[installpkg] --> C1["einzelnes lokales Paket installieren"]
D[upgradepkg] --> D1["lokales Paket aktualisieren"]
E[removepkg] --> E1["Paket entfernen"]
F["sbopkg / SlackBuilds.org"] --> F1["Software aus Quellen bauen"]
G[pkgtools] --> G1["grundlegende Paketverwaltung"]Jedes Werkzeug erfüllt einen anderen Zweck.
Warum slackpkg+ gut zur Slackware-Philosophie passt
Auf den ersten Blick könnte slackpkg+ wie ein Schritt weg von Slackwares Philosophie wirken.
Tatsächlich ist eher das Gegenteil der Fall.
Slackware sagt nicht:
Es darf nur Software aus dem offiziellen Repository installiert werden.
Die Philosophie ist vielmehr:
Der Administrator entscheidet, welche Software auf seinem System landet.
slackpkg+ macht diese Entscheidung lediglich komfortabler.
Der Administrator entscheidet weiterhin:
- Welche Repositorys werden verwendet?
- Welche Quelle bekommt Priorität?
- Welche Pakete werden installiert?
- Welche Pakete werden aktualisiert?
- Welche zusätzlichen Softwarequellen sind vertrauenswürdig?
Das Repository-Modell bleibt damit transparent.
Sicherheitsaspekt: Repositorys sind Vertrauensbeziehungen
Ein zusätzlicher Paketbestand ist nicht nur eine technische Quelle.
Er ist auch eine Vertrauensbeziehung.
Wenn ein Repository aktiviert wird, erlaubt man seinem Betreiber faktisch, Software auf dem eigenen System bereitzustellen.
Deshalb sollte man Repositorys nicht wahllos hinzufügen.
Besonders wichtig sind:
- vertrauenswürdiger Betreiber
- passende Slackware-Version
- Paket-Signaturen
- nachvollziehbare Herkunft
- klare Dokumentation
- regelmäßige Pflege
Gerade bei Systempaketen sollte man nicht einfach mehrere Repositorys kombinieren, ohne ihre gegenseitige Kompatibilität zu prüfen.
Eine gute Grundstrategie
Für Slackware64 15.0 ist eine konservative Strategie sinnvoll:
flowchart TD
A["1. Slackware offiziell"] --> B["2. Slackware patches"]
B --> C["3. Multilib, falls benötigt"]
C --> D["4. wenige ausgewählte Zusatz-Repositories"]
D --> E["5. eigene Pakete"]Nicht jedes interessante Repository muss dauerhaft aktiviert werden.
Je kleiner und übersichtlicher die Paketlandschaft bleibt, desto einfacher ist es, ein Slackware-System langfristig zu warten.
Fazit
slackpkg+ erweitert Slackwares klassische Paketverwaltung um ein Repository-Modell, ohne die grundlegende Slackware-Philosophie aufzugeben.
Die wichtigsten Konzepte sind:
flowchart TD
A[slackpkg] --> B[slackpkg+]
B --> C["offizielle Slackware-Pakete"]
B --> D[Multilib]
B --> E["zusätzliche Binär-Repositories"]
B --> F["eigene Paketquellen"]Besonders mächtig sind dabei:
MIRRORPLUSPKGS_PRIORITY- Repository-Signaturen
- die Integration mit
slackpkg - die gemeinsame Aktualisierung mehrerer Paketquellen
Für Slackware64 15.0 ist slackpkg+ besonders interessant, wenn ein System über das reine Slackware-Basissystem hinausgeht – etwa durch Multilib, AlienBOB-Pakete oder eigene Pakete.
Der wichtigste Grundsatz bleibt jedoch:
slackpkg+ macht mehrere Repositorys bequem verwaltbar – es macht sie nicht automatisch kompatibel.
Gerade deshalb sollte man bei Slackware nicht möglichst viele Paketquellen aktivieren, sondern eine kleine, bewusst ausgewählte und klar priorisierte Repository-Landschaft pflegen.