Seit gestern ist die neue Version von Raspberry Pi OS auf der Basis von Debian 12 (»Bookworm«) verfügbar. Diese Version ist Voraussetzung für den Raspberry Pi 5, läuft aber natürlich auch auf älteren Raspberry Pis. Ich habe meine Tests auf einem Pi 5 sowie einem Pi 400 durchgeführt.
Auf den ersten Blick sieht der Desktop auf der Basis von LXDE nahezu unverändert aus. Aber dieser Eindruck täuscht erheblich: Raspberry Pi OS verwendet jetzt Wayland, PipeWire und den NetworkManager.
Wayland für Pi 4 und 5, Abschied von X in Raten
Auf aktuellen Raspberry-Pi-Modellen (Pi 4, Pi 400, Pi 5) kommt nun standardmäßig Wayland statt xorg als Fundament für das Grafiksystem zum Einsatz.
pi5$ echo $XDG_SESSION_TYPE
wayland
Das ist ein großer Schritt, weil dafür viele Komponenten verändert bzw. hinzugefügt werden mussten:
- Compositor: Wayfire
- Panel/Desktop-Shell: wf-panel-pi
Zusammen mit dem Panel mussten auch die diversen Plugins für das Menü, die Bluetooth- und WLAN-Konfiguration, Lautstärkeeinstellung usw. neu implementiert werden.
Der Wayland-Umstieg ist mit den von anderen Desktop-Systemen bekannten Einschränkungen bzw. Kinderkrankheiten verbunden: Fernwartung, Screenshots usw. zicken bzw. funktionieren gar nicht. Auf das Thema VNC und Remote Desktop gehe ich hier in einem eigenen Artikel ein. Zum Erstellen von Screenshots verwenden Sie am besten das Kommando grim
(siehe Projektseite). Gimp und scrot
liefern lediglich schwarze Bilder, shutter stürzt ab.
Ältere Raspberry-Pi-Modelle (Pi 3, Zero etc.) verwenden aufgrund von Performance-Problemen weiterhin xorg. Aber auch bei diesen Modellen ist in Zukunft der Wechsel zu Wayland geplant.
Audio-System PipeWire
Nach Fedora, Ubuntu & Co. verwendet nun auch Raspberry Pi OS das neue PipeWire-Audiosystem. Es ersetzt PulseAudio. Für die Desktop-Nutzung der Audio-Funktionen sollten sich dadurch nichts ändern. Wenn Sie Audio-Funktionen per Script steuern möchten, müssen Sie sich an die neuen pw-xxx
-Kommandos gewöhnen (siehe https://docs.pipewire.org/page_tools.html).
Netzwerkkonfiguration mit dem NetworkManager
Ähnlich wie beim Audio-System passt sich Raspberry Pi OS auch bei der Netzwerkkonfiguration den anderen Distributionen an und verwendet nun den NetworkManager als Backend. dhcpcd
hat ausgedient. Wiederum ist von der Änderung an der Oberfläche nicht viel zu sehen. Die Konfigurationswerkzeuge zur Herstellung einer WLAN-Verbindung sehen ähnlich aus wie bisher. Allerdings gibt es nun diverse neue Funktionen, z.B. zur Herstellung von VPN-Verbindungen. Änderung ergeben sich auch, wenn Sie die Netzwerkkonfiguration per Script verändern möchten. Das wichtigste neue Kommando ist nmcli
. Die Konfigurationsdateien werden in /etc/NetworkManager
gespeichert. WLAN-Passwörter landen in /etc/NetworkManager/system-connections/*.conf
.
Bei meinen Tests traten im Zusammenspiel mit dem Raspberry Pi Imager bei der Vorweg-Konfiguration (z.B. für Headless-Systeme) noch Fehler auf. Es ist aber zu erwarten/hoffen, dass diese bald gelöst sein werden.
Webbrowser: Firefox oder Chromium?
In der Vergangenheit galt Chromium als Default-Webbrowser für Raspberry Pi OS. In Kooperation mit Mozilla wurde nun auch Firefox besser an die Hardware- und Software-Eigenheiten angepasst und wird nun als gleichwertige Alternative angeboten. Standardmäßig sind beide Programme installiert. Den Default-Webbrowser können Sie im Programm Raspberry-Pi-Konfiguration festlegen.
Mathematica
Aus nostalgischen Gründen bin ich ein großer Fan von Mathematica und finde es fantastisch, dass das Programm Raspberry-Pi-OS-Anwendern kostenlos zur Verfügung steht. Das gilt auch für die neue Version von Raspberry Pi OS — aber aktuell nicht auf dem Pi 5. Dort erscheint beim Start der Hinweis, dass ein Lizenzcode erforderlich ist. Anscheinend soll dieses Problem Update 9.11.2023: Mit den neuesten Updates funktioniert nun auch Mathematica wieder — und zwar schneller denn je!
noch behoben werden. Die Raspberry Pi Foundation wartet diesbezüglich auf ein Update von Wolfram (Quelle).
Versionsnummern
Dank des neuen Fundaments auf der Basis von Debian 12 haben sich viele Versionsnummern geändert:
Basis Desktop Programmierung Server
--------------- ------------------ -------------- --------------
Kernel 6.1 Gimp 2.10 bash 5.2 Apache 2.4
glibc 2.36 LibreOffice 7.4 gcc 12.2 CUPS 2.4
Mesa 23.2 LXDE 11 Java 17 MariaDB 10.11
Systemd 247 VLC 3.0 PHP 8.2 OpenSSH 9.2
X-Server 21.1 Python 3.11 Samba 4.17
Wayland 1.21
Python-Module
Bisher war es unter Python gebräuchlich, Zusatzmodule einfach mit pip
bzw. pip3
zu installieren. In aktuellen Python-Versionen ist das nicht mehr erwünscht und führt zu einem Fehler:
$ pip install --user matplotlib
error: externally-managed-environment
This environment is externally managed
To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.
If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.
For more information visit http://rptl.io/venv
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
Es gibt zwei Auswege:
- Einer besteht darin, das entsprechende Paket aus dem Raspberry Pi OS Repository zu installieren. Für das obige Beispiel würde das richtige Kommande
sudo apt install python3-matplotlib
lauten. -
Der andere Lösungsweg setzt voraus, dass Sie für ihr Python-Projekt eine virtuelle Umgebung verwenden (siehe auch https://www.raspberrypi.com/documentation/computers/os.html#python-on-raspberry-pi).
Der geänderte Umgang mit Python-Modulen hat übrigens nichts mit Raspberry Pi OS zu tun, sondern ist eine von der Python-Entwicklergemeinde vorgegebene Änderung, die alle modernen Linux-Distributionen betrifft.
32 oder 64-Bit?
Auf https://www.raspberrypi.com/software/operating-systems sowie im Programm Raspberry Pi Imager wird nach wie vor die 32-Bit-Version von Raspberry Pi OS empfohlen. Die 64-Bit-Version ist dort nur die zweite Option.
Ich habe meine Tests dagegen mit der 64-Bit-Version durchgeführt, die für Pi-Modelle mit mehr als 2 GByte zweckmäßiger ist, einzelnen Prozessen mehr RAM zuordnen kann und etwas mehr Geschwindigkeit verspricht.
Interessanterweise kommt je nach Raspberry-Pi-Modell eine unterschiedliche Pagesize zum Einsatz: 16 kByte auf dem Raspberry Pi 5 aber wie bisher 4 kByte auf dem Raspberry Pi 400.
pi5$ getconf PAGESIZE
16384
pi400$ getconf PAGESIZE
4096
Die 16-kByte-Pagesize ist übrigens zu manchen Programmen inkompatibel. Unter anderem kann deswegen Geekbench 6.2 nicht in der 64-Bit-Version von Raspberry Pi OS ausgeführt werden.
Lüftersteuerung
Der Raspberry Pi 5 enthält eine Buchse zum Anschluss eines CPU-Lüfters. Raspberry Pi OS kümmert sich darum, den Lüfter nur nach Bedarf einzuschalten, und auch dann dynamisch (also nur in der erforderlichen Drehzahl). Im Leerlaufbetrieb bleibt der Raspberry Pi 5 lautlos.
Upgrade
Ein Upgrade eines bereits installierten Raspberry Pi OS »Bullseye« auf Version »Bookworm« ist theoretisch durch eine Veränderung der Paketquellen möglich (siehe z.B. hier im Raspberry-Pi-Forum). Diese Vorgehensweise wird aber explizit nicht unterstützt und führt nach meinen eigenen Erfahrungen oft zu massiven Problemen. Wenn Sie die aktuelle Version von Raspberry Pi OS nutzen möchten, müssen Sie also eine SD-Karte neu damit einrichten. Das hat natürlich den Nachteil, dass Sie alle Konfigurationsarbeiten wiederholen und ggfs. Ihre eigenen Projekte bzw. Ihren Code manuell übertragen und womöglich auch adaptieren müssen.
Quellen/Links
- https://www.raspberrypi.com/news/bookworm-the-new-version-of-raspberry-pi-os
- https://www.raspberrypi.com/software/operating-systems
- https://www.raspberrypi.com/documentation/computers/os.html
- https://www.raspberrypi.com/documentation/computers/os.html#python-on-raspberry-pi
- https://www.phoronix.com/news/Raspberry-Pi-OS-Bookworm
- https://kofler.info/remote-desktop-und-raspberry-pi-os-bookworm/
Meine erste Erfahrung mit Bookworm ist eher ernüchternd: Weder die 32- noch die 64-Bit-Version liefen stabil. Bei der
Verwendung von »synaptic« flog ich immer wieder aus meinem User-Account. Von weiteren Versuchen nehme ich erst einmal
Abstand. Da muß wohl noch einiges reifen.