Ubuntu

#457

Nejdříve klasicky nainstalujeme Ubuntu server. Použijeme verzi Server (testováno na verzi 20.04.2), protože desktopová verze obsahuje mnoho balíčků, které vůbec nebudeme potřebovat.

Teď vytvoříme „desktopového“ uživatele:

adduser --disabled-password kiosk

Parametr --disabled-password zařídí, že uživatel se nebude moci přihlásit (lokálně ani na dálku).

Instalace balíčků

apt update
apt upgrade
apt install --no-install-recommends xserver-xorg x11-xserver-utils xinit openbox
apt install --no-install-recommends chromium-browser

Povolení autologinu

Vytvoříme soubor /etc/systemd/system/getty@tty1.service.d/autologin.conf:

mkdir -pv /etc/systemd/system/getty@tty1.service.d/
touch /etc/systemd/system/getty@tty1.service.d/autologin.conf

a naplníme ho následujícím obsahem:

[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin kiosk --noclear %I $TERM

Následně sputíme

systemctl enable getty@tty1.service

Nastavení grafického rozhraní

Na konec souboru /etc/xdg/openbox/autostart přidáme:

xset s off
xset s noblank
xset -dpms

# Start Chromium in kiosk mode
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/'Local State'
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/; s/"exit_type":"[^"]\+"/"exit_type":"Normal"/' ~/.config/chromium/Default/Preferences
chromium-browser --noerrdialogs --disable-infobars --enable-features=OverlayScrollbar --password-store=basic --incognito --disable-features=Translate --kiosk 'https://url-ktere-chceme-zobrazit'

Start grafického rozhraní

Na konec souboru /home/kiosk/.profile přidáme:

[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && startx -- -nocursor && logout

Nyní po restartu by měl počítač naběhnout do grafického rozhraní s webovou stránkou, kterou jsme vybrali.

Restart grafického prostředí kiosku

V případě, že je potřeba restartovat grafické prostředí kiosku, tak není třeba restartovat celý systém, ale stačí následující příkaz:

sudo kill -9 `pgrep -f /usr/bin/openbox`

Potlačení přepnutí do textových konzol

Vytvoříme soubor /usr/share/X11/xorg.conf.d/50-novtswitch.conf:

touch /usr/share/X11/xorg.conf.d/50-novtswitch.conf

a naplníme ho následujícím obsahem:

Section "ServerFlags"
Option "DontVTSwitch" "true"
EndSection

Potlačení více pracovních ploch

Pozn: Přepínání mezi více pracovními plochami funguje pomocí kláves Ctrl-Alt- nebo Ctrl+Alt+.

mcedit /etc/xdg/openbox/rc.xml

Vyhledejte řetezec <desktops> a upravte v této sekci parametr <number>4</number> na hodnotu 1.

Potlačení přepínání mezi aplikacemi

Pozn: Přepínání mezi aplikacemi funguje pomocí kláves Alt-Tab nebo Shift+Alt+Tab.

mcedit /etc/xdg/openbox/rc.xml

Vyhledejte řetezec Keybindings for window switching a upravte v této sekci parametry <keybind key= na například <keybind key="#A-Tab">.