Skip to content

Raspberry Pi - Raspbian Update auf Buster und Kioskmodus mit Chrome anpassen

Nicht nur ein neuer Raspberry Pi 4 hat vor kurzem das Licht der Welt erblickt, auch die bekannte Distribution Raspbian, welche auf den Minirechnern gerne läuft, wurde auf Debian Buster umgestellt.

Das neue Betriebssystem hat ein neues Theme erhalten und die üblichen Softwareaktualisierungen.
Nicht mehr dabei ist der Legacy Grafiktreiber Stack, dafür wurde auf Mesa V3 Treiber umgeschwenkt.
Ein Update auf die neue Version ist schnell gemacht, aber auch mir Vorsicht zu genießen, es wird eine Neuinstallation empfohlen.

raspberrypi


Update auf Raspbian (Buster)

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo sed -i 's/stretch/buster/g' /etc/apt/sources.list
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Ich empfehle dringend ein Backup der wichtigen Daten zu ziehen.
Nach einem Testupdate konnte ich das System zwar noch booten, hatte außer einem Mauszeiger kein Bild. SSH funktionierte. Ich habe es allerdings nicht weiterverfolgt, da ich die Anzeigeneinstellungen händisch gesetzt hatte.

Da Debian Buster Tools mitbringt, welche nicht unterstützt werden, könnt ihr diese wieder deinstallieren.

sudo apt purge timidity lxmusic gnome-disk-utility deluge-gtk evince wicd wicd-gtk clipit usermode gucharmap gnome-system-tools pavucontrol


Kioskmodus unter Raspbian 

Was nach dem Update schnell klar war. Der Kiosk Modus mit Chromium ist defekt und muss repariert werden. Das geht allerdings schnell, denn es haben sich nur Pfade geändert.

Anders als noch bei den alten Raspbian Systemen ist das Verzeichnis /home/pi/.config/lxsession/LXDE-pi/autostart des Pi Nutzers nicht mehr vorhanden.
Alternativ kann einfach die globale Konfiguration unter /etc/xdg/lxsession/LXDE-pi/autostart angepasst werden, um den Vollbildmodus von Chromium 74 automatisch zu starten.

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
# Bildschirmschoner deaktivieren
#@xscreensaver -no-splash
@point-rpi

@xset s off
@xset -dpms
@xset s noblank
#Autostart Chromium Vollbild-Kiosk
@chromium-browser --noerrordialogs --incognito --kiosk https://kiosk.itrig.de


 

HowTo - Einen eigenen SuperTuxKart Server im LAN aufsetzen und gegen Freunde zocken

Vor kurzem wurde eine neue SuperTuxKart Version veröffentlicht.

Wie schon aus der Beta bekannt war, bringt diese neue Version neben diversen Verbesserungen eine Netzwerkunterstützung mit.

Daneben sorgen ca. 20 Rennstrecken und verschiedene Spielmodi für Abwechslung. Der Funracer ist natürlich OpenSource und so hat jeder die Möglichkeit seinen eigenen Server zu betreiben.

Alle Infos findet ihr in den Release Notes.

SuperTuxKart1
Genau diese Netzwerkunterstützung will ich im Folgenden näher anschauen, denn für einen eigenen Server reicht bereits ein RaspberryPi aus.


Eigenen SuperTuxKart Server fürs LAN bauen

Als Basis dient ein Ubuntu 16.04 LTS oder ein Raspbian System, der Vorgang ist jeweils gleich.

Zunächst müssen ein paar Pakete installiert werden, damit der Build auch gelingt.

sudo apt-get install build-essential cmake libbluetooth-dev \
libcurl4-openssl-dev libenet-dev libfreetype6-dev libfribidi-dev \
libgl1-mesa-dev libglew-dev libjpeg-dev libogg-dev libopenal-dev libpng-dev \
libssl-dev libvorbis-dev libxrandr-dev libx11-dev nettle-dev pkg-config zlib1g-dev git subversion

Als nächstes werden die Installationsdateien auf das lokale System geladen.

cd /opt
sudo mkdir stk-code
sudo mkdir stk-asset
git clone https://github.com/supertuxkart/stk-code stk-code
svn co https://svn.code.sf.net/p/supertuxkart/code/stk-assets stk-assets

Der letzte Schritt kann etwas Zeit benötigen, da mehrere 100MB geladen werden müssen.

cd stk-code
sudo mkdir cmake_build
cd cmake_build/
sudo cmake .. -DSERVER_ONLY=ON
sudo make -j$(nproc)

Nun heißt es etwas warten, denn je nach CPU Leistung, kann dies etwas dauern...

stk-server

Schwups ist der fertige Server erstellt, ihr könnt ihn nun bereits ausprobieren oder systemweit mit sudo make install installieren.

Danach findet ihr den installierten Server unter /usr/local/bin/supertuxkart.


In unserem Fall starten wir den Server testweise direkt.

cd bin/

./supertuxkart --lan-server=test --network-console

stk-server-start

[info   ] GrandPrixManager: Loading Grand Prix files from ../../data/grandprix/
[info   ] GrandPrixManager: Loading Grand Prix files from /home/xyz/.local/share/supertuxkart/grandprix/
Fri Apr 26 20:25:41 2019 [info   ] STKHost: Host initialized.
Fri Apr 26 20:25:41 2019 [info   ] STKHost: Server port is 2759
Fri Apr 26 20:25:41 2019 [info   ] main: Creating a LAN server 'test'.
Fri Apr 26 20:25:41 2019 [info   ] ServerLobby: Reset server to initial state.
Fri Apr 26 20:25:41 2019 [info   ] ProtocolManager: A 11ServerLobby protocol has been started.
Fri Apr 26 20:25:41 2019 [info   ] STKHost: Listening has been started.

Nun solltet ihr darauf achten, dass der Port 2759 im lokalen Netz erreichbar ist und Firewalls diesen nicht blockieren.

Ebenfalls ist es wichtig lokal einen Servernamen beim Start anzugeben, da der Server sonst nicht startet.

Zusätzlich wird unter /opt/stk-code/.config/supertuxkart/config-0.10/server_config.xml beim ersten Start eine Konfigurationsdatei angelegt, dort können weitere Einstellungen gesetzt werden.

Für unseren Server muss hier Nichts weiter angepasst werden.

Alternativ könnt ihr eure eigene Konfigurationsdatei beim Start auch gleich mitgeben

supertuxkart --server-config=your_config.xml --network-console

Ob der Server läuft lässt sich mit einem einfachen netstat -lnp oder via ss -ln herausfinden (Artikel).

SuperTuxKart auf eigenen Server spielen

Um auf dem eigenen Server gegeneinander zu spielen, müsst ihr euch zunächst das Spiel installieren, dieses findet ihr hier.


Nach dem Start müssen folgende Schritte durchgeführt werden, um auf den eigenen Server zu gelangen,

stk-server-gui

stk-server-lan

stk-server-findstk-server-test-srv

Alternativ kann auch ein Server direkt aus dem Programm heraus erstellt werden und somit quasi mit jedem PC. Ein kleiner RapsberryPi ist allerdings um einiges praktischer.

Sollte ein STK Server übers Internet erreichbar sein, muss zusätzlich ein STK Account angelegt werden. Dieser Account muss beim Serverstart angegeben werden. Weitere Tipps finden sich hier.

supertuxkart --init-user --login=your_registered_name --password=your_password

Viel Spaß

 

Raspberry Pi 3 Kiosk - Autologin unter Raspbian Jessie, Stretch oder Buster

Nachdem der Artikel über den Chromium Kiosk Modus für rege Diskussionen sorgt, möchte ich noch mal kurz auf den Autologin von Raspbian hinweisen.

Dieser funktioniert unter allen aktuellen Versionen, sowohl unter stable als auch beta mit dem Befehl 

sudo raspi-config

Danach muss im Menü unter Bootoptionen

Raspbian-desktop-autologin

der Bootmodus ausgewählt werden. In diesem Fall Desktop / CLI.

raspbian-autologin

Nun kann B4 Autologoin aktiviert werden und Raspbian meldet den User Pi automatisch an.

raspbian_autologinIch empfehle dringend das Standardpasswort des Pi Nutzers mit passwd zu ändern.

Update von Jessie auf Stretch

Falls auf ein neues System umgestellt werden soll, ist ein Update auf das aktuelle System Stretch (Buster ist noch Beta) möglich. Eine Neuinstallation ist aber meist der bessere Weg.

sudo apt-get update
sudo apt-get -y dist-upgrade
sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list
sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list.d/raspi.list
sudo apt-get update
sudo apt-get -y dist-upgrade

 

Raspberry Pi 3 Kiosk - Chromium Autostart im Vollbildmodus einrichten

Raspberry Pi und Raspbian bieten viele Einsatzmöglichkeiten. Eine davon ist der Betrieb in einem Kiosk Modus, Voraussetzung dafür ist der Start im Vollbildmodus. Das Thema hatte ich bereits auf dem Blog (siehe unten), somit seht das als einen aktualisierten Artikel an. In diesem Beispiel soll ein Browser eine Webseite oder Webapp automatisch im Vollbildmodus aufrufen 

Die hier verwendeten Einstellungen wurden auf einem RaspberryPi 3 mit Raspbian (Debian Jessie) getestet.

raspberrypi

Installation der benötigten Pakete

sudo apt-get install chromium-browser
sudo apt-get install unclutter

Letzteres Paket erlaubt es die Maus auzublenden.

Aktivieren des Vollbildmodus

Dieser lässt sich mit wenigen Anpassungen und einem Installalierten Chromium Browser realisieren.

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart
# Bildschirmschoner deaktivieren
#@xscreensaver -no-splash  
@xset s off
@xset -dpms
@xset s noblank

# lädt Chromium im Vollbild bei einem Neustart
@chromium-browser --incognito --kiosk https://itrig.de/kiosk  


Mauszeiger ausblenden

Die bestehende Datei muss lediglich um einen weiteren Befehl erweitert werden.

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

#ab Raspbian Buster/Raspberry Pi 4 befindet sich der Pfad hier.

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
@unclutter
@xset s off
@xset -dpms
@xset s noblank
@chromium-browser --incognito --kiosk https://itrig.de/kiosk 

Fazit

Die hier dargestellte Methode stellt eine von vielen dar, jedoch eine die relativ schnell zum Ziel führt. Weitere Methoden und Möglichkeiten hatte ich bereits im Artikel Kiosksysteme für Alle erwähnt.

[Update] Autostart verzögern

Eine Startverzögerung würde über ein Skript chromium_start.sh realisiert werden.

    #!/bin/bash
    #Chromium Startverzoegerung
    sleep 15
    chromium-browser --incognito --kiosk https://itrig.de/kiosk

und unter /home/pi/.config/lxsession/LXDE-pi/autostart aufrufen.

@/home/pi/chromium_start.sh

PS: Berechtigung chmod +x nicht vergessen

 

[Update2] Neuer Autostart Pfad unter Raspbian Buster

Das neue Raspbian, welches auf Debian Buster basiert und Raspberry Pi 4 unterstützt, hat neue Pfade.

So müssen die Chromium Einstellungen unter

/etc/xdg/lxsession/LXDE-pi/autostart 

gesetzt werden und nicht mehr im Home Ordner des Pi Nutzers wie ursprünglich beschrieben.