Это рабочий сценарий того, что вы хотите сделать:
#!/bin/bash
while true; do
sleep 59m
zenity --question --text "Are you using the pc (click anything)?"&
zenity_id=$!
#the user has 1 minute to answer, otherwise PC will shut down
sleep 1m
if kill $zenity_id 2> /dev/null; then
#zenity was still running, shutdown the pc
dbus-send --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.RequestShutdown
fi
done
Каждый раз в час появляется всплывающее окно с вопросом: «Вы все еще здесь?», если пользователь нажимает на что-то, то он не выключается еще на один час (через час появляется всплывающее окно), но если более 1 минуты проходит без взаимодействия с диалоговым окном, компьютер автоматически отключается. Чтобы запустить это при запуске, создайте файл с указанным выше кодом и сделайте его выполнимым (щелкните правой кнопкой мыши-> свойства-> разрешения-> разрешить выполнение файла как программы) и нажмите кнопку питания в правом верхнем углу экрана, выберите запускающие приложения и добавьте этот скрипт.