Der Paketmanager apt macht es normalerweise ganz einfach: Werfe ihm eine Liste von Paketen vor, die installiert oder aktualisiert werden sollen, und apt sortiert sich selbst aus, was in welcher Reihenfolge erledigt werden soll. Dieses Konfliktauflösungssystem (und jetzt dieses Wort dreimal schnell hintereinander sagen…) kann in manchen Fällen aber auch daneben liegen. Dann hat man die Möglichkeit, manuell einzugreifen.

In unserem speziellen Fall war die Aufgabe, ein Raspberry Pi OS zu aktualisieren, von Bookworm auf Trixie (die Codenamen für Debian, von dem Raspberry Pi OS abgeleitet ist). Dabei zeigte sich jedoch, dass sich die Pakete pi-greeter und raspberry-ui-mods in die Quere kamen. Denn beide enthalten die Datei /usr/share/xgreeters/pi-greeter-labwc.desktop. Dadurch schlägt die Installation von pi-greeter fehl, wenn raspberry-ui-mods schon installiert ist, weil der genannte Dateipfad sozusagen schon “belegt” ist.

raspberry-ui-mods ist obsolet und sollte eigentlich entfernt werden, bevor pi-greeter installiert wird. In unserem Fall kam apt aber zur Meinung, das andersherum machen zu wollen, und lief in ein Problem.

Die Lösung? Man kann in der Liste der Pakete ausdrücklich festlegen, dass ein Paket installiert bzw. entfernt werden soll. Dazu fügt man ans Ende des Paketnamens ein Pluszeichen bzw. ein Minuszeichen an. Das kann dann beispielsweise so aussehen:

apt full-upgrade raspberry-ui-mods-

Der Hinweis, dass raspberry-ui-mods doch bitte entfernt werden soll, war schon genug, um apt in die richtig Richtung zu schubsen.

Wir wollen aber nicht verschweigen, dass das nur ein Hilfsmittel für den Ausnahmefall sein sollte. Denn in den aller-allermeisten Fällen ist apt sehr gut darin, die passende Reihenfolge auszuknobeln. Man sollte schon gute Gründe haben und wissen was man tut, wenn man dem Paketmanager hier dazwischenpfuscht.