Come disattivare lo schermo (DPMS) insieme alla sessione di blocco in KDE?


25

Prima di tutto, sono consapevole che qui viene posta una domanda simile per GNOME: "Disattiva la retroilluminazione del laptop quando si blocca lo schermo" .

Obbiettivo

Vorrei spegnere lo schermo al blocco della sessione per motivi di risparmio energetico.

Problema reale

Bloccare lo schermo su Kubuntu (KDE) inevitabilmente fa scattare lo screensaver per quanto posso vedere. Non esiste alcuna opzione di salvaschermo oltre a "Schermo vuoto" insieme al colore di sfondo impostato su nero che si avvicina al mio obiettivo. Cancella lo schermo, ma non spegne lo schermo. La retroilluminazione dello schermo sarà ancora attiva e non risparmierà energia.

Soluzione alternativa

Una soluzione alternativa tramite uno script + tasto di scelta rapida è possibile, tuttavia, è solo una soluzione poiché non si attiva in tutti i modi per bloccare la sessione. Pertanto, penso che dovrebbe essere possibile farlo in modo più elegante, ad esempio fornendo questa opzione nella finestra di dialogo di configurazione dello screensaver di KDE.

La soluzione alternativa che sto utilizzando è la seguente. Uno script che blocca lo schermo e spegne lo schermo:

#!/bin/bash

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

e lasciarlo funzionare con un tasto di scelta rapida tramite una voce di menu personalizzata. Funziona.

Ecco perché lo considero una soluzione alternativa piuttosto che una soluzione. Non funziona per altri modi per attivare il blocco della sessione.

Le mie attuali domande

Devo toccare / patchare la fonte di KDE?

  • In caso contrario, quali sono le mie opzioni?
  • Se è così,
    • qualcuno potrebbe indicarmi dove posso iniziare?
    • quale pensi sia il posto consigliato nella GUI per la configurazione?

Sto usando Kubuntu 12.04 e sono disposto ad aggiornare a KDE 4.9 o in attesa della versione 12.10.

Risposte:


20

Ho trovato un modo per KDE 4 (fino a Ubuntu 14.10). Per KDE 5 vedi altre risposte.

  1. Vai a Impostazioni di sistemaApplicazione e Sistema NotificheGestisci Notifiche .

  2. Seleziona Screen Saver come Origine evento

  3. Individua e seleziona lo schermo bloccato

  4. aggiungi questo comando all'evento:

    xset dpms force off
    

inserisci qui la descrizione dell'immagine

Spegnerà tutti i display ogni volta che viene bloccato.


Questo è semplicemente DOLCE e intelligente. Il trucco è pensare a "Screen Saver" nel contesto del blocco dello schermo.
gertvdijk,

Per gli utenti di Kubuntu 15.04 - questo approccio sembra colpire un bug in cui il demone KDE si arresta completamente, portando con sé l'intera sessione ... :-(
gertvdijk,

@gertvdijk Hmm. Potrebbe essere necessario verificarlo, sono ancora in 14.04 e funziona per me. Anche se l'ho lentamente esteso a circa mezza dozzina di cose diverse che accadono quando blocco / sblocco.
Qualcuno da qualche parte il

xset dpms force standbysembra essere molto affidabile e non ha bisogno del sleep 1 ; xset dpms force offtrucco.
Alan Thompson,

@AlanThompson, sleep 1è solo che se si utilizza un mouse per fare clic su un pulsante, si ha il tempo di lasciar andare il mouse e smettere di muoversi prima che il display si spenga. Altrimenti, può riattivare immediatamente il display, il che potrebbe significare che è necessario inserire la password prima di poter bloccare nuovamente il display. Non sono sicuro di dove abbia raccomandato l'uso sleep 1, però.
Someone Somewhere,

16

Confermato: eseguendo il comando: /bin/sleep 1 ; /usr/bin/xset dpms force offall'interno della schermata la notifica bloccata funziona per Plasmashell 5.10.

Vai a: Impostazioni di sistema> Notifiche> Origine evento "Screen Saver":

Notifiche - Impostazioni di sistema


3

Una possibile soluzione è passare a xscreensaver . La pagina man in realtà viene fornita con le istruzioni.

Di seguito è riportato il contorno

  1. Disabilita lo screen saver di KDE

    1. Menu K -> Computer -> Impostazioni di sistema -> Display e monitor -> Screen Saver
    2. Deseleziona Avvia automaticamente dopo
  2. Installa xscreensaver

    sudo apt-get install xscreensaver

  3. Creare ~/.kde/Autostart/xscreensaver.desktop

    Aggiungi le seguenti righe

    [Desktop Entry]
    Exec=xscreensaver
    Name=XScreenSaver
    Type=Application
    X-KDE-StartupNotify=false
    
  4. Sostituisci la schermata di blocco di KDE

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

    Aggiungi le seguenti righe in kscreenlocker

    #!/bin/sh
    xscreensaver-command -lock
    
  5. Utilizzare xscreensaver-demoper configurare dpms (no sudo)

    Configurare DPMS nella Advancescheda. Lo standby minimo è di 1 minuto.

    Tuttavia, puoi provare a renderlo meno modificandolo ~/.xscreensaverdopo la prima configurazione. Cerca dpmsStandby:nel file.

    Non sono sicuro che funzioni se dpmsStandby:viene modificato in 0:00:00. Sto testando con una VM e lo schermo nero è uguale.


Sei sicuro di sostituire kscreenlockerè una buona idea? Fa di più che bloccare lo schermo, leggere da kscreenlocker --help. A parte questo, è un buon suggerimento passare a Xscreensaver!
gertvdijk,

Mio male, avrei dovuto aggiungere che passare a Xscreensave sostituirà anche il tuo screen saver kde. A parte questo, non ci sono effetti collaterali. La kscreenlocker --helpsta mostrando come esso può essere utilizzato / call, funziona con schermo kde saver. Passare a xscreensaver è un problema per ora.
John Siu,

Per quanto riguarda la nuova versione di KDE puoi consultare questo post e questo post . Le persone con KDC 4.9 o 4.10 sembrano riscontrare alcuni fastidiosi problemi con dpms e in realtà vogliono disattivare la funzionalità. Quindi direi non aggiornare kde per ora.
John Siu,

3

A partire da KDE 5, la maggior parte delle soluzioni qui non funzionano più.

Ecco cosa ho scoperto che funziona (dal 28/09/2016), creare un documento di testo e in esso copiare e incollare il seguente codice:

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

e poi salvalo come "KDE5lockscreenanddpms.sh" Il nome non ha importanza, assicurati solo di avere .sh alla fine di esso. Quindi vai al punto in cui hai salvato con il tuo file manager, fai clic destro su di esso e apri proprietà> permessi> e rendilo eseguibile.

Ora puoi fare clic su di esso e verrà eseguito lo script che bloccherà lo schermo e dopo 0,5 secondi spegnerà il tuo monitor.

Ecco alcuni post con le informazioni su questi comandi.

KDE.org- sessione di blocco loginctl

Linux-apps.com - sleep 0,5 xset dpms force off


-1

Kde5 e XScreenSaver (5.34): fai clic sulla scheda , quindi attiva spuntandola e imposta i minuti come preferisci (o usa anche ).complex Advanceenergy managementpower-offquick power-off


Mmm, forse mi manca qualcosa ... Come raggiungere una finestra con la scheda "complessa"?
gertvdijk,

Intendevi commentare forse l'altra risposta XScreensaver? askubuntu.com/a/232844/88802
gertvdijk,

1
L'OP ha 4 anni e la versione di KDE è <4.9. La tua risposta dovrebbe affrontare le differenze.
WinEunuuchs2Unix

Il mio kde è in tedesco e "Komplex" sembra essere "Advance" in versione inglese. Inoltre, è debian, non ubuntu. Devo cancellare la mia risposta?
dr0i,

-2

Impostazioni di sistema / Personale / Light Locker (nel nuovo menu Whisker)


5
Puoi spiegare come funziona e cosa fa?
Kaz Wolfe,

-3

Su Kubuntu 14.04, vai semplicemente su Impostazioni di sistema - Power Mgmt. - disattiva Dim Screen e Screen Energy Saving nella scheda Risparmio Energetico.

Saluti!


E poi cosa? Non spegne il mio schermo (DPMS) durante il blocco. Quindi non risponde alla mia domanda.
gertvdijk,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.