Inhaltsverzeichnis

Package Manager - Informationsartikel

Auch uns ist bewusst, dass es ziemlich nervig sein kann, alle Programme einzeln zu aktualisieren. Eventuell übersiehst du ein Programm.
Aus diesem Grund möchten wir dir das Konzept der Package Manager näher bringen. Mit einem Package Manager kannst du Software effizienter installieren, aktualisieren und deinstallieren.

Ein Hinweis zum Begriff Package Manager

Wir benutzen den Begriff Package Manager, weil die meisten Informationen zu dem Thema in englischer Sprache verfügbar sind. Im deutschen Sprachraum wird häufig von der Paketverwaltung gesprochen/geschrieben.

Was sind Package Manager?

Package Manager erleichtern dir die Verwaltung von Programmen auf deinem Computer. Dabei ist es wichtig, zwei Typen von Package Managern zu unterscheiden:

Wir gehen hier nur auf Package Manager innerhalb des Betriebssystems ein.

Wahrscheinlich benutzt du schon längst Package Manager, ohne es zu wissen. Hier ein paar Beispiele:

Packages, Packages! Was ist überhaupt ein Package?!

Zunächst müssen wir dir sagen, dass es mehrere Bedeutungen für das Wort Software Package gibt.
Oft wird die Microsoft Office Suite oder LibreOffice als Software Package verstanden, weil sie verschiedene Programme enthalten. Diese Art von Software Packages meinen wir an dieser Stelle nicht!

Im Kontext von Package Managern verstehen wir „Package“ auf einer kleineren Ebene. Hier geht es darum, dass du ein Programm installieren möchtest, dass dann aber zusäzliche Programme benötigt, damit es funktioniert. Zum Beispiel benötigt der Quelltext-Editor „Visual Studio Code“ von Microsoft zusätzlich noch ein Framework namens „DotNet“. Ohne dieses Framework würde Visual Studio Code nicht funktionieren. Ein Package Manager wird automatisch diese Framework mitinstallieren, es sei denn, es ist bereits installiert.
Ein Package enthählt also Informationen, über notwendig benötigte Software, die für ein Programm notwendig ist. Die notwendig benötigte Software wird auch Abhängkeit genannt. In unserem Beispiel mit „Visual Studio Code“ ist das Framework „DotNet“ eine solche Abhängigkeit, da Visual Studio Code nicht ohne das Framework funktioniert. Daher kommt es vor, dass du nur ein Programm installieren möchtest, der Manager aber am Ende mehr Packages installiert. Dabei handelt es sich dann um diese zusätzlichen Abhängigkeiten.

Vor- und Nachteile von Package Managern

Package Manager sind nicht der heilige Gral der Softwareverwaltung. Sie sind nicht fehlerfrei, aber sie nehmen dir eine menge Arbeit ab. Wir denken, dass die Vorteile überwiegen.

Die Vorteile

Auf der Seite Hackernoon findest du weitere Vorteile von Package Managern in englischer Sprache.

Die Nachteile

Wie arbeiten Package Manager?

Package Manager sind System-Level-Anwendungen. Das bedeutet, dass nicht du die Installation durchführst, sondern der Package Manager. Statt dich durch Fenster durchzuklicken und Pfadangaben auszuwählen, übernimmt das der Package Manager für dich. Dabei werden (meistens, unserer Erfahrung nach aber immer) keine überflüssigen Programme installiert. Vielleicht hast du schonmal aus Versehen eine Toolbar für deinen Browser oder sogar einen neuen installiert, weil zu zu schnell auf weiter geklickt hast. Bei einem Package Manager wird soetwas nicht mitinstalliert.
Package Manager werden über die Kommandozeile / das Terminal , also über Textbefehle gesteuert. Oft gibt es aber auch ein Package, das dir eine grafische Benutzeroberfläche (GUI) für deinen Package Manager installiert.

Installation (stark vereinfacht)

Die Installation von Packages läuft folgendermaßen ab:

  1. Du gibst im Terminal den Befehl ein, ein Programm zu installieren.
  2. Der Package Manager verbindet sich mit der Serverdatenbank und sucht nach dem Package und läd es herunter.
  3. Wenn es heruntergeladen ist, fragt er dich, ob du es installieren möchtest.
  4. Wenn du das bestätigst, installiert der Manager das Paket für dich. Bei den meisten Packages wirst du keine Installationsfenster sehen, sondern nur sehen, wie dein Terminal neue Zeilen schreibt.
  5. Nach der Installation wird dir bestätigt werden, was installiert wurde.

Dieses Flussdiagramm verdeutlicht den Unterschied einer Installation unter Windows mit einem Package Manager und ohne einen.

Updates

Beim Updaten von Software gibst du an, welche Packages du aktualisieren möchtest. Dann verbindet sich der Package Manager mit dem Server und gleicht die Versionsnummern ab. Gibt es ein Update, fragt dich der Manager, ob du es installieren möchtest.

Dieses Flussdiagramm verdeutlicht den Unterschied eines Updates unter Windows mit einem Package Manager und ohne einen.

Deinstallation

Die Deinstallation läuft ähnlich ab, nur dass der Package Manager keine Serververbindung benötigt.
Dieses Flussdiagramm verdeutlicht den Unterschied einer Deinstallation unter Windows mit einem Package Manager und ohne einen.

Wie verwendest du einen Package Manager?

  1. Beschäftige dich in Ruhe mit den verschiedenen Package Managern, die es für dein Betriebssytem gibt und wäge ab, welcher für dich infrage kommt!
    • Überprüfe, welche Software, du installieren möchtest und ob der entsprechende Package Manager diese installieren kann.
  2. Wenn du deine Wahl getroffen hast, installiere den Package Manager.
  3. Deinstalliere die Programme, die du mit dem Package Manager später installieren möchtest.
  4. Installiere die Software-Packages, die du brauchst.
  5. Wenn du Software aktualisieren oder deinstallieren möchtest, die du mit einem Package Manager installiert hast, empfehlen wir dir, sie auch nur mit dem Package Manager zu aktualisieren oder zu deinstallieren!

Detaillierter Softwarecheck vor der Installation

Hier erklären wir dir noch einmal Schritt für Schritt, wie du vorgehst, wenn du einen Package Manager installiert hast und mit ihm Software installieren möchtest.

  1. Ist das Programm, das ich installieren möchte, überhaupt bei dem gewählten Package Manager verfügbar?
    • Lautet die Antwort Nein, musst bzw. kannst du nichts weiter machen.
    • Lautet die Antwort Ja, stelle dir Frage 2.
  2. Ist das Programm bereits auf deinem PC installiert?
    • Wenn es nicht installiert ist, kannst du es mit deinem Package Manager installieren.
    • Ist das Programm bereits installiert, solltest du dir die nächste Frage stellen:
  3. Wie wurde das Programm installiert? Hast du es mit deinem Package Manager installiert oder mithilfe einer Installationsdatei oder einem einzelnen Download?
    • Wenn du das Programm mit dem Package Manager installiert hast, brauchst du nichts weiterzumachen.
    • Wenn du das Programm nicht dem Package Manager installiert wurde, solltest du die Schritte 4 und 5 durchführen.
  4. Das Programm auf dem üblichen Wege deinstallieren.
  5. Das Programm mit deinem Package Manager installieren.

Dieses Flussdiagramm veranschaulicht den Softwarecheck bei der Installation:

Flussdiagramm des Softwarechecks

Erläuterung zum Flussdiagramm des Softwarechecks
Die Pfeile im Bild sind Entscheidungspfeile:

Package Manager für verschiedene Betriebssyteme

Für die meisten Betriebssysteme gibt es verschiedene Package Manager, die verschiedene Features mitbringen. Auf mobile Betriebssysteme gehen wir hier nicht ein.

Ausführliches Beispiel für einen Packamanger: Chocolatey (unter Windows)

Chocolatey ist ein OpenSource-Package Manager für Windows. Eine Anleitung in unserem Artikel Chocolatey (Windows).

Was soll ich jetzt wie machen? (Fazit)

Was du aus den Informationenen dieses Artikels machst, bleibt dir überlassen.
Wir empfehlen:

  1. Auf jeden Fall: Software regelmäßig auf Updates prüfen (Auch auf Mobilgeräten!).
  2. Für noch mehr Sicherheit: Überlege dir, ob du nicht einen Package Manager verwenden möchtest.

Woher kommen die Packages für Package Manager?

Kurz gesagt: Der Package Manager verbindet sich mit dem sog. repository (zu deutsch:Lager oder Depot). Dort werden Meta-Informationen zu einzelnen Packages abgerufen. Unter anderem auch die Dependencies (deutsch: Abhängigkeiten) von Packages.

Zum Weiterlesen (zu den Themen Package Manager und Repository)
Deutschsprachige Links:
Das Wiki openSUSE erklärt dir, wie Package Manager genau arbeiten.
Auf openSUSE findest du auch eine Erklärung dazu, was ein Repository ist.

Links in english:
The openSUSE wiki explains exactly how package managers work.
On Quora you can find an explanation of what a package repository is.