mirror of
https://github.com/6091528/kioskmonitor.git
synced 2026-08-08 03:52:34 +02:00
first commint
This commit is contained in:
+65
@@ -0,0 +1,65 @@
|
||||
# Konfiguracja sway dla kiosku dwuekranowego
|
||||
# Plik docelowy: /home/kiosk/.config/sway/config
|
||||
#
|
||||
# Nazwy wyjść wideo wykryj BEZ uruchomionego sway (działa zawsze jako root):
|
||||
# for p in /sys/class/drm/card*-*; do echo "$(basename $p | sed 's/card[0-9]*-//'): $(cat $p/status)"; done
|
||||
#
|
||||
# lub gdy sway/kiosk JUŻ działa:
|
||||
# WAYLAND_DISPLAY=wayland-0 XDG_RUNTIME_DIR=/run/kiosk wlr-randr
|
||||
#
|
||||
# Wpisz właściwe nazwy poniżej:
|
||||
|
||||
set $OUTPUT_LEFT DP-1
|
||||
set $OUTPUT_RIGHT HDMI-1
|
||||
|
||||
# --- Wyjścia wideo ---
|
||||
output * bg #000000 solid_color
|
||||
|
||||
# Opcjonalnie: rotacja per-wyjście (odkomentuj jeśli wymagana)
|
||||
# output $OUTPUT_LEFT transform 270
|
||||
# output $OUTPUT_RIGHT transform 270
|
||||
|
||||
# Przypisanie workspace do ekranów
|
||||
workspace 1 output $OUTPUT_LEFT
|
||||
workspace 2 output $OUTPUT_RIGHT
|
||||
|
||||
# --- Przypisanie aplikacji do workspaces ---
|
||||
# Chromium (prawy ekran — workspace 2)
|
||||
# --app=URL generuje app_id: "chrome-<hash>-Default" — używamy regex
|
||||
assign [app_id="~^chrome"] workspace 2
|
||||
for_window [app_id="~^chrome"] move to workspace 2, fullscreen enable
|
||||
|
||||
# Prezentacja LibreOffice Impress (lewy ekran — workspace 1)
|
||||
# LO zawsze otwiera się na workspace 1 — assign to potwierdza
|
||||
assign [app_id="soffice"] workspace 1
|
||||
assign [class="libreoffice-impress"] workspace 1
|
||||
for_window [app_id="soffice"] fullscreen enable
|
||||
for_window [class="libreoffice-impress"] fullscreen enable
|
||||
# Jeśli powyższe nie działają, sprawdź rzeczywistą klasę:
|
||||
# WAYLAND_DISPLAY=wayland-0 XDG_RUNTIME_DIR=/run/kiosk swaymsg -t get_tree | grep -E 'app_id|class'
|
||||
|
||||
# --- Wygląd ---
|
||||
default_border none
|
||||
default_floating_border none
|
||||
hide_edge_borders both
|
||||
|
||||
# Ukryj kursor — niewidoczny motyw XCursor (1x1 px, całkowicie przezroczysty)
|
||||
# Działa niezależnie od pozycji kursora i bez dodatkowych pakietów.
|
||||
# Plik binarny XCursor tworzony przez printf przy każdym starcie sway.
|
||||
# Jeśli motyw nie zdąży załadować się przed pierwszym rysowaniem → hide_cursor 1 jako fallback.
|
||||
seat * hide_cursor 1
|
||||
seat * xcursor_theme blank 1
|
||||
exec_always bash -c '
|
||||
D=/home/kiosk/.icons/blank/cursors
|
||||
mkdir -p "$D"
|
||||
# 68-bajtowy XCursor: 1x1 px, hotspot 0,0, ARGB 0x00000000
|
||||
for n in left_ptr default pointer crosshair text watch wait move size_all fleur; do
|
||||
printf "\x58\x63\x75\x72\x10\x00\x00\x00\x00\x00\x01\x00\x01\x00\x00\x00\x02\x00\xfd\xff\x01\x00\x00\x00\x1c\x00\x00\x00\x24\x00\x00\x00\x02\x00\xfd\xff\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x00\x00\x00\x00\x00\x00\x00" > "$D/$n"
|
||||
done
|
||||
printf "[Icon Theme]\nName=blank\n" > /home/kiosk/.icons/blank/index.theme'
|
||||
|
||||
# Wygaszanie ekranów przy uśpieniu (bez -w: ignoruje inhibitory Chromium)
|
||||
exec swayidle before-sleep "wlopm --off '*'"
|
||||
|
||||
# Uruchom skrypt kiosku
|
||||
exec /home/kiosk/kiosk-manager.sh
|
||||
Reference in New Issue
Block a user