#!/bin/bash # SeniorNet Kiosk — install script # Run as: sudo bash install.sh set -e echo "=== Installing packages ===" apt-get update apt-get install -y python3-pyqt5 unclutter xorg openbox lightdm \ fonts-noto-color-emoji python3-pip xinput xdotool # Install websocket-client pip3 install websocket-client --break-system-packages # Install Google Chrome if ! command -v google-chrome &>/dev/null; then echo "=== Installing Google Chrome ===" wget -q https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb apt-get install -y ./google-chrome-stable_current_amd64.deb rm google-chrome-stable_current_amd64.deb fi echo "=== Copying config files ===" SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" # LightDM auto-login mkdir -p /etc/lightdm/lightdm.conf.d cp "$SCRIPT_DIR/system-config/lightdm-50-kiosk.conf" \ /etc/lightdm/lightdm.conf.d/50-kiosk.conf # Openbox autostart mkdir -p /home/jgitta/.config/openbox cp "$SCRIPT_DIR/system-config/openbox-autostart" \ /home/jgitta/.config/openbox/autostart chown jgitta:jgitta /home/jgitta/.config/openbox/autostart # Xorg hardening mkdir -p /etc/X11/xorg.conf.d cp "$SCRIPT_DIR/system-config/xorg-50-kiosk-hardening.conf" \ /etc/X11/xorg.conf.d/50-kiosk-hardening.conf # Home screen (source in repo → served outside repo at file:///home/jgitta/kiosk-home/) mkdir -p /home/jgitta/kiosk-home cp "$SCRIPT_DIR/home-screen-index.html" /home/jgitta/kiosk-home/index.html chown jgitta:jgitta /home/jgitta/kiosk-home/index.html # Disable unused virtual consoles for i in 2 3 4 5 6; do systemctl disable getty@tty$i 2>/dev/null || true done echo "=== Setting ownership ===" chown -R jgitta:jgitta /home/jgitta/kiosk-browser /home/jgitta/kiosk-home echo "=== Done! Reboot to start the kiosk. ==="