#!/bin/bash

writeToLog() {
    sudo echo "`date '+%F %X'` $1" >> /linuxcash/logs/current/terminal.log
}

if [ "$(lsb_release -c -s)" == "jammy" ]
then
    #На jammy ЛЮБОЙ дочерний процесс кидает SIGCHLD (17) по завершении. В итоге, если срубить кассу, перезапуска не будет, а лог будет бесконечно заполняться
    for sig in {1..31..1}
    do
        if [ $sig -ne 17 ]
        then
            trap "writeToLog 'FATAL Сессия Х была прервана с кодом $sig'" $sig
        fi
    done
else
    for sig in {1..31..1}
    do
        trap "writeToLog 'FATAL Сессия Х была прервана с кодом $sig'" $sig
    done
fi

writeToLog "INFO Старт X"
# сессию X11 надо стартовать из под юзера autologon
rm /home/autologon/.Xauthority*

sudo renice -n -20 $$
sudo ionice -c2 -n0 -p $$

sudo -E -u autologon startx -- :255
