Отключаем переход экрана в ждущий режим, пока активен flashplugin

Все мы иногда посматриваем видосы на youtube и на прочих видео сервисах, и приходится сталкиваться с проблемой screensaver'a ну или перехода монитора в ждущий режим. По началу я использовал caffeine, да и в Arch'e была идея его установить, но он захотел с собой потащить кучу ненужного хлама(зависимостей). Немного погуглив, я нашел годное решение.


Оказывается, нам нужен небольшой скрипт, который будет смотреть есть ли flashplugin в процессах и искать окна открытые на полный экран. В awesome есть более красивое решение [https://www.linux.org.ru/forum/desktop/10729260].
Ну а теперь наш скрипт:
disable_dpms.sh
#!/bin/bash
dpmsOff()
{
    xset s off
	xset -dpms
}
dpmsOn()
{
    xset s on
    xset +dpms
}

checkScreen()
{
    #FullScreen window detect
    win_id_list=`xprop -root _NET_CLIENT_LIST | sed -e 's/.*\#//g' | sed 's/\,/ /g'`
    for win_id in $win_id_list
    do
        #get windows state
        WinFullScreen=`DISPLAY=:0 xprop -id $win_id | grep _NET_WM_STATE_FULLSCREEN`
        if [[ "$WinFullScreen" = *NET_WM_STATE_FULLSCREEN* ]];then
            return 1
        fi
    done
    #flashplayer detect
    if [ -n "`pgrep -f flashplayer.so`" ] || [ -n "`pgrep -f pepperflash.so`" ] ;then
        return 1
	fi
    return 0
}


while pgrep -f "Xorg" > /dev/null; do
    checkScreen
    result=$?
    if [[ $result -eq 1 ]]; then
        dpmsOff
    else
        dpmsOn
    fi
    sleep 60
done

Ссылка на github https://github.com/clsv/disable_dpms/blob/master/disable_dpms.sh
Делаем его запускаемым chmod +x disable_dpms.sh и добавляем в автозагрузку, и теперь выключение экрана не помешает просмотру видео.

Комментарии ()

    Авторизация

    GitHubGoogleVkontakteYandex
    Есть вопрос или предложение пиши в Telegram @cloudsv

    MTProto прokси для Telegram

    Прямой эфир

    Diego mont 25 мая 2023, 07:04
    Полезные боты в Telegram 2
    cloudsv 24 апреля 2023, 17:56
    Обновление Scala Rider G4 52
    cloudsv 12 ноября 2022, 19:16
    Установка и настройка minidlna 3
    cloudsv 03 ноября 2022, 03:42
    Настройка прокси mtproto для Telegram 52
    cloudsv 03 января 2022, 10:50
    Let's Encrypt это легко и просто 4
    cloudsv 10 сентября 2020, 13:17
    MySQL Workbench падает при подключении 2
    cloudsv 05 августа 2020, 11:57
    Мне вчера стукнуло 34 4
    cloudsv 07 августа 2023, 22:56
    Linux Asus ROG x13 flow 2022 GV301RE и Linux 0
    cloudsv 15 апреля 2023, 16:23
    Linux Уведомление о смены workspace в X11 Linux 0
    cloudsv 17 октября 2020, 09:55
    Linux Отключить DHCP IPv6 в systemd 0
    cloudsv 30 июля 2020, 21:54
    О жизни Мне вчера стукнуло 34 4
    cloudsv 15 апреля 2020, 15:45
    Linux Основные hotkeys редактора Vim 0
    cloudsv 01 октября 2019, 08:00
    Linux Локальный редирект порта в Linux 0
    cloudsv 25 августа 2019, 16:14
    О жизни Социальная сеть от Яндекса Aura 0
    cloudsv 30 июля 2019, 21:34
    О жизни 33 year old 0
    cloudsv 25 июня 2019, 18:29
    Telegram Полезные боты в Telegram 2