====== OpenHab Display ====== ===== Basisinstallation ===== * Kopieren des Rasbian Lite Images auf SD Karte * Erstellen der Datei ''ssh'' im ''boot'' Verzeichnis * Erster Login mit USB Tastatur mit ''pi'' und ''raspberry'' $ sudo -i $ adduser thomas $ addgroup thomas sudo $ logout * Login via ssh und dem Benutzer thomas $ sudo -i $ deluser pi $ apt update $ apt upgrade $ apt-get install vim $ update-alternatives --set editor /usr/bin/vim.basic $ dpkg-reconfigure tzdata * Root Shell farbig machen: $ vi ~/.bashrc >>> PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$ ' Ebenfalls aliase und export einkommentieren. Mit User thomas anmelden und in ''.bashrc'' ''force_color_prompts=true'' einkommentieren. * Falls der Bildschirm um 180Grad gedreht ist, die Zeile ''lcd_rotate=2'' an die Datei ''/boot/config.txt'' anfügen * X-Server installieren $ apt-get install xserver-xorg-core xserver-xorg-video-fbdev xserver-xorg-input-libinput x11-xserver-utils slim * Remove the mouse cursor $ apt-get install unclutter * Chromium Browser $ apt-get install chromium libgtk-3-0 libgles2 * Add user and configure Auto Login $ adduser --disabled-login openhab $ vi /etc/slim.conf default_user openhab auto_login yes $ vi /home/openhab/.xsession #!bin/bash /usr/bin/xscreensaver -no-splash & /usr/bin/redshift -l49.1:12.6 -b 0.5 & /usr/bin/xterm -e true sleep 1 /usr/bin/chromium --window-size=1910,1080 --noerrdialogs --disable --disable-translate --disable-infobars --disable-suggestions-service --disable-save-password-bubble --disable-internal-flash --disable-plugins-discovery --kiosk --touch-devices=6 --app=https:/pizza.binary.kitchen/basicui/app?sitemap=mainroom Die Geräte ID kann mit folgenden Befehlen herausgefunden werden: $ export DISPLAY=:0 $ sudo -u openhab xinput list use the following for the workshop display: #!bin/bash /usr/bin/xscreensaver -no-splash & /usr/bin/redshift -l49.1:12.6 -b 0.5 & /usr/bin/xterm -e true sleep 1 /usr/bin/chromium --window-size=800,480 --noerrdialogs --disable --disable-translate --disable-infobars --disable-suggestions-service --disable-save-password-bubble --disable-internal-flash --disable-plugins-discovery --kiosk --app=https:/pizza.binary.kitchen/basicui/app?sitemap=workshop * Blank Screen after timeout $ apt-get install xscreensaver * Run as root: $ export DISPLAY=:0 $ sudo -u openhab xscreensaver-demo And configure the screensaver with * Mode: Blank Screen Only * Blank after: 1 Minute * Power Management Enabled * Standby After 1 minutes * Suspend after 1 minutes * Off After 1 minutes $ sudo apt install xinput-calibrator $ export DISPLAY=:0 $ sudo -u openhab xinput_calibrator Paste the output to $ vi /etc/X11/Xsession.d/99-calibration.conf ===== Scripts installieren ===== $ vi /home/openhab/check_network.sh #!/bin/bash HAB_STATUS=0 while true do if curl -s --head https:/pizza.binary.kitchen/basicui/app?sitemap=mainroom | grep "200 OK" > /dev/null then if [ "$HAB_STATUS" -eq 0 ] then echo "Site Changed from Down to Up" HAB_STATUS=1 # Refresh Browser export DISPLAY=":0" WID=$(xdotool search --onlyvisible --class chromium|head -1) xdotool key ctrl+F5 fi else echo "Site Down" if [ "$HAB_STATUS" -eq 1] then echo "Site Changed from Up to Down" HAB_STATUS=0 fi fi sleep 60 done $ vi /home/openhab/refresh_chrome.sh #!/bin/sh export DISPLAY=":0" WID=$(xdotool search --onlyvisible --class chromium|head -1) xdotool key ctrl+F5 $ apt install xdotool $ chmod a+x /home/openhab/refresh_chrome.sh $ chmod a+x /home/openhab/check_network.sh $ crontab -e -u openhab 0 11 * * * /home/openhab/refresh_chrome.sh @reboot /home/openhab/check_network.sh ===== OverlayFS ===== $ cd $ apt install git $ git clone https://github.com/ghollingworth/overlayfs $ cd overlayfs $ sudo overlayfs.sh $ reboot ACHTUNG!!!! Nach jedem Kernel Update muss ''sudo overlayfs.sh'' erneut ausgeführt werden. Ansonsten bootet das System nicht mehr. Wenn dies doch geschieht, muss aus der ''cmdline.txt'' der Eintrag ''boot=overlay'' entfernt werden. ===== Wireless Config (Optional) ===== $ vi /etc/wpa_supplicant/wpa_supplicant.conf ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=DE network={ ssid="mqtt.binary-kitchen.de" psk="" }