# rtsp-streamer kiosk sway config # # Installed to /etc/rtsp-streamer/sway/config. sway is started on tty1 by the # autologin shell (see deploy/install.sh) and this config launches the video # wall daemon. The daemon inherits WAYLAND_DISPLAY and SWAYSOCK from sway, so # it can position mpv windows over the sway IPC. ### Appearance — a black, chromeless canvas for video tiles ### output * bg #000000 solid_color default_border none default_floating_border none titlebar_border_thickness 0 gaps inner 0 gaps outer 0 smart_borders no focus_follows_mouse no # Hide the pointer almost immediately; there is no keyboard/mouse on the TV. seat * hide_cursor 1 # Every mpv window should map borderless and floating so the daemon can place # it at an exact pixel rectangle. The daemon also sets this, belt-and-braces. for_window [app_id="mpv"] floating enable, border none ### Prevent the TV from blanking ### # We do NOT run swayidle, so sway will not blank the output on its own. If your # panel still sleeps, uncomment a keep-alive loop in a systemd timer instead. ### Launch the wall (supervised) ### # Run the daemon in a relaunch loop so it recovers on its own: if the daemon # ever crashes it comes straight back, and `rtsp-streamer restart` (in-place # re-exec) needs no help from here. The loop also means a clean daemon exit # reappears within ~2s instead of leaving a black screen until reboot. exec sh -c 'while :; do rtsp-streamer daemon --log info; sleep 2; done' ### Emergency escape hatches (handy while setting up over a keyboard) ### # Super+Return opens a terminal if one is installed; Super+Shift+Q exits sway. bindsym Mod4+Return exec (foot || alacritty || xterm) 2>/dev/null bindsym Mod4+Shift+q exit