Jak wyłączyć ekran (DPMS) wraz z blokowaniem sesji w KDE?

25

Po pierwsze, wiem, że podobne pytanie dotyczy GNOME: „Wyłącz podświetlenie laptopa podczas blokowania ekranu” .

Cel

Chciałbym wyłączyć ekran po zablokowaniu sesji z powodów oszczędzania energii.

Rzeczywisty problem

Zablokowanie ekranu w Kubuntu (KDE) nieuchronnie uruchamia wygaszacz ekranu, o ile widzę. Nie ma innej opcji wygaszacza ekranu niż „Pusty ekran” wraz z kolorem tła ustawionym na czarny, który jest blisko mojego celu. Czyści ekran, ale go nie wyłącza . Podświetlenie ekranu będzie nadal włączone i nie będzie oszczędzać energii.

Bieżące obejście

Możliwe jest obejście za pomocą skryptu + skrótu, ale jest to tylko obejście, ponieważ nie uruchamia się na wszystkie sposoby, aby zablokować sesję. Dlatego myślę, że powinno być możliwe wykonanie tego bardziej elegancko, na przykład poprzez udostępnienie tej opcji w oknie dialogowym konfiguracji wygaszacza ekranu KDE.

Obejście, którego teraz używam, jest następujące. Skrypt blokujący ekran i wyłączający ekran:

#!/bin/bash

qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock
xset dpms force standby

i pozwól mu działać z klawiszem skrótu poprzez niestandardową pozycję menu. To działa.

Oto dlaczego uważam, że to rozwiązanie, a nie rozwiązanie. Nie działa w przypadku innych sposobów wyzwalania blokowania sesji.

Moje aktualne pytania

Czy muszę dotykać / łatać źródło KDE?

  • Jeśli nie, jakie są moje opcje?
  • W takim razie,
    • czy ktoś mógłby wskazać mi, gdzie mogę zacząć?
    • Jak myślisz, jakie jest zalecane miejsce w GUI do konfiguracji?

Korzystam z Kubuntu 12.04 i jestem skłonny zaktualizować do KDE 4.9 lub czekam na wydanie 12.10.

gertvdijk
źródło

Odpowiedzi:

20

Znaleziono sposób dla KDE 4 (do Ubuntu 14.10). W przypadku KDE 5 zobacz inne odpowiedzi.

  1. Idź do Ustawienia systemuaplikacji i powiadomień systemowychzarządzać powiadomieniami .

  2. Wybierz Wygaszacz ekranu jako Źródło zdarzenia

  3. Znajdź i wybierz Zablokowany ekran

  4. dodaj to polecenie do zdarzenia:

    xset dpms force off
    

wprowadź opis zdjęcia tutaj

Wyłączy wszystkie wyświetlacze za każdym razem, gdy zostanie zablokowane.

Ktoś gdzieś
źródło
To jest po prostu SŁODKIE i sprytne. Sztuką jest myślenie o „wygaszaczu ekranu” w kontekście blokowania ekranu.
gertvdijk
Dla użytkowników Kubuntu 15.04 - to podejście wydaje się być trafieniem w błąd, w którym demon KDE ulega awarii całkowicie, zabierając ze sobą całą sesję ... :-(
gertvdijk
@gertvdijk Hmm. Może muszę to sprawdzić - wciąż mam 14.04 i to działa dla mnie. Chociaż powoli rozszerzyłem to na około pół tuzina różnych rzeczy, które zdarzają się, gdy blokuję / odblokowuję.
Ktoś gdzieś
xset dpms force standbywydaje się być bardzo niezawodny i nie potrzebuje sleep 1 ; xset dpms force offsztuczki.
Alan Thompson,
@AlanThompson, sleep 1jest tak, że jeśli używasz myszy do kliknięcia przycisku, masz czas, aby zwolnić mysz i przestać się poruszać, zanim ekran się wyłączy. W przeciwnym razie może on natychmiast obudzić wyświetlacz, co może oznaczać konieczność wprowadzenia hasła przed ponownym zablokowaniem wyświetlacza. Nie jestem jednak pewien, gdzie zalecałem używanie sleep 1.
Ktoś gdzieś
16

Potwierdzono: uruchomienie polecenia: /bin/sleep 1 ; /usr/bin/xset dpms force offna ekranie powiadomienie zablokowane działa dla Plasmashell 5.10.

Przejdź do: Ustawienia systemu> Powiadomienia> Źródło zdarzenia „Wygaszacz ekranu”:

Powiadomienia - Ustawienia systemowe

Michael Nealand
źródło
3

Jednym z możliwych rozwiązań jest przejście na xscreensaver . Strona man faktycznie pochodzi z instrukcją.

Poniżej znajduje się zarys

  1. Wyłącz wygaszacz ekranu KDE

    1. Menu K -> Komputer -> Ustawienia systemu -> Wyświetlacz i monitor -> Wygaszacz ekranu
    2. Odznacz Rozpocznij automatycznie po
  2. Zainstaluj xscreensaver

    sudo apt-get install xscreensaver

  3. Stwórz ~/.kde/Autostart/xscreensaver.desktop

    Dodaj do niego następujące linie

    [Desktop Entry]
    Exec=xscreensaver
    Name=XScreenSaver
    Type=Application
    X-KDE-StartupNotify=false
    
  4. Zamień ekran blokady KDE

    cd /usr/lib/kde4/libexec
    sudo mv kscreenlocker kscreenlocker.original
    sudo vim kscreenlocker
    

    Dodaj następujące wiersze do kscreenlocker

    #!/bin/sh
    xscreensaver-command -lock
    
  5. Służy xscreensaver-demodo konfigurowania dpms (bez sudo)

    Skonfiguruj DPMS na Advancekarcie. Minimalny czas gotowości wynosi 1 min.

    Możesz jednak spróbować zmniejszyć to, edytując ~/.xscreensaverpo pierwszej konfiguracji. Poszukaj dpmsStandby:w pliku.

    Nie jestem pewien, czy to zadziała, jeśli dpmsStandby:zostanie zmieniony na 0:00:00. Testuję na maszynie wirtualnej, a czarny ekran wygląda tak samo.

John Siu
źródło
Czy na pewno wymiana kscreenlockerjest dobrym pomysłem? Robi więcej niż blokowanie ekranu, czytanie z kscreenlocker --help. Poza tym dobrym pomysłem jest przejście do Xscreensaver!
gertvdijk
Szkoda, powinienem dodać, że przejście do Xscreensave faktycznie zastąpi również wygaszacz ekranu kde. Poza tym nie ma skutków ubocznych. kscreenlocker --helpPokazuje w jaki sposób może on być stosowany / call, to działa wygaszacz ekranu z KDE. Przejście do xscreensaver jest na razie obejściem.
John Siu
Jeśli chodzi o nowe wersje KDE, możesz sprawdzić ten post i ten post . Ludzie z KDC 4.9 lub 4.10 wydają się napotykać bardzo irytujący problem z dpms i faktycznie chcą wyłączyć tę funkcję. Powiedziałbym, że na razie nie aktualizuj KDE.
John Siu,
3

Począwszy od KDE 5, większość rozwiązań tutaj nie działa.

Oto, co według mnie działa (na 28.09.2016), utwórz dokument tekstowy, a następnie skopiuj i wklej następujący kod:

#!/bin/sh
sleep 0.5
loginctl lock-session
xset dpms force off

a następnie zapisz go jako „KDE5lockscreenanddpms.sh” Nazwa nie ma znaczenia, po prostu upewnij się, że masz .sh na końcu. Następnie przejdź do miejsca, w którym został zapisany za pomocą menedżera plików, kliknij go prawym przyciskiem myszy i otwórz właściwości> uprawnienia> i zrób to.

Teraz możesz go kliknąć, a skrypt uruchomi skrypt, który zablokuje ekran, a następnie po 0,5 s wyłączy monitor (y).

Oto kilka postów z informacjami o tych poleceniach.

KDE.org- loginctl lock-session

Linux-apps.com - uśpienie 0,5 xset dpms wymusza wyłączenie

ClementinePorcupine
źródło
-1

Kde5 i XScreenSaver (5.34): kliknij kartę , a następnie aktywuj , zaznaczając ją i ustaw minuty na podobne (lub użyj parzystego ).complex Advanceenergy managementpower-offquick power-off

dr0i
źródło
Hmm, brakuje mi czegoś ... Jak dostać się do okna z zakładką „skomplikowane”?
gertvdijk
Czy miałeś na myśli skomentowanie tego w innej odpowiedzi XScreenaver? askubuntu.com/a/232844/88802
gertvdijk
1
OP ma 4 lata, a wersja KDE <4.9. Twoja odpowiedź powinna uwzględniać różnice.
WinEunuuchs2Unix
Mój kde jest w języku niemieckim, a „Komplex” wydaje się być „Advance” w wersji angielskiej. Poza tym jest to debian, a nie ubuntu. Czy powinienem usunąć swoją odpowiedź?
dr0i
-2

Ustawienia systemowe / Osobiste / Light Locker (w nowym menu Whisker)

Brian Dobson
źródło
5
Czy możesz wyjaśnić, jak to działa i co robi?
Kaz Wolfe
-3

Na Kubuntu 14.04, po prostu przejdź do System Setting - Power Mgmt. - wyłącz Dim Screen i Screen Energy Saving w zakładce Energy Saving.

Twoje zdrowie!

Amar
źródło
I co wtedy? Nie wyłącza ekranu (DPMS) podczas blokowania. Więc to nie odpowiada na moje pytanie.
gertvdijk