Introducing RoPieee - A RoonBridge-to-go image for the Raspberry Pi

@spockfish - this looks like a great project. I would love to have my extension included with it.

The README.md for my extension (https://github.com/pluggemi/roon-web-controller) includes a sample systemd unit file to start it - and it was written for and works on Arch Linux. The example unit file assumes a user name node with a home directory of /srv/node, but that could easily be tweaked.

I am using Arch Linux Arm on my Raspberry Pi and use the following setup to run a full screen web browser. Once I install Arch Linux Arm:
pacman -S xorg-server xorg-xinit xf86-video-fbdev xorg-xset matchbox-window-manager chromium

I use this custom systemd service file (/usr/lib/systemd/system/gui.service) to start up the browser at boot time, and to restart it automatically if it crashes:

[Unit]
Description = Starts Xorg as defined in /home/USERNAME/bin/gui.sh
After = systemd-user-sessions.service network.target
Conflicts=getty@tty7.service

[Service]
User = USERNAME
Group = USERGROUP
PAMName=login
Type = simple
TTYPath=/dev/tty7
ExecStart = /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /home/USERNAME/bin/gui.sh -- :0 -nolisten tcp vt7
Restart = always
StandardInput = tty

[Install]
WantedBy = multi-user.target

Which runs this script at /home/USERNAME/bin/gui.sh. The xset dpms command turns off the Raspberry Pi touchscreen after 60 seconds. And it wakes back up when tapped.

#!/bin/bash
export DISPLAY=":0"
xset dpms 60 60 60 &
matchbox-window-manager -use_titlebar no -use_cursor no &
/usr/bin/chromium --kiosk <URL TO EXTENSION>
2 Likes