Executando o Gnome 3.28. Estou tendo problemas com o apagamento da tela. Mais especificamente, a tela não fica em branco e não consigo mais descobrir como fazê-la ficar em branco de forma consistente. (Algum tempo, anos atrás, eliminei completamente o apagamento da tela e não tenho mais ideia de como fiz isso.) Ao longo disso, quando me refiro ao apagamento, quero/prefiro especificamente o comportamento de desligamento do DPMS.
Definir "Tela em branco" na seção "Power" das preferências do gnome não faz nada. xset q
retorna o seguinte:
DPMS (Energy Star):
Standby: 0 Suspend: 0 Off: 0
DPMS is Enabled
Monitor is On
Posso ativar o apagamento de tela usando xset dpms 1200 2400 4800
. Isso funciona. No entanto, executar qualquer aplicativo que use dbus para solicitar a inibição do apagamento da tela (como o Youtube no Chrome) faz com que o daemon de configurações de energia do gnome defina esses valores de volta para zero e nunca os devolva.
Rastreando o que está acontecendo, iniciando, digamos, o YouTube, envia uma inhibit
solicitação ao SessionManager:
method call time=1533650079.657788 sender=:1.1216 -> destination=org.gnome.SessionManager serial=3 path=/org/gnome/SessionManager; interface=org.gnome.SessionManager; member=Inhibit
string "/usr/bin/google-chrome-stable"
uint32 0
string "Playing video"
uint32 12
signal time=1533650079.659445 sender=:1.14 -> destination=(null destination) serial=10679 path=/org/gnome/SessionManager; interface=org.gnome.SessionManager; member=InhibitorAdded
object path "/org/gnome/SessionManager/Inhibitor975"
method return time=1533650079.659468 sender=:1.14 -> destination=:1.1216 serial=10680 reply_serial=3
uint32 754926118
signal time=1533650079.659475 sender=:1.14 -> destination=(null destination) serial=10681 path=/org/gnome/SessionManager; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
string "org.gnome.SessionManager"
array [
dict entry(
string "InhibitedActions"
variant uint32 12
)
]
array [
]
Isso faz com que o gsd-power
daemon peça ao mutter para desligar o modo de economia de energia:
method call time=1533650079.666562 sender=:1.36 -> destination=:1.16 serial=182 path=/org/gnome/Mutter/DisplayConfig; interface=org.freedesktop.DBus.Properties; member=Set
string "org.gnome.Mutter.DisplayConfig"
string "PowerSaveMode"
variant int32 0
que funciona, zerando as configurações do DPMS. Quando fecho a sessão do YouTube, recebo uma solicitação de desinibição correspondente:
method call time=1533650081.283611 sender=:1.1216 -> destination=org.gnome.SessionManager serial=4 path=/org/gnome/SessionManager; interface=org.gnome.SessionManager; member=Uninhibit
uint32 754926118
signal time=1533650081.286730 sender=:1.14 -> destination=(null destination) serial=10690 path=/org/gnome/SessionManager; interface=org.gnome.SessionManager; member=InhibitorRemoved
object path "/org/gnome/SessionManager/Inhibitor975"
method call time=1533650081.286768 sender=:1.14 -> destination=org.freedesktop.DBus serial=10691 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',path='/org/freedesktop/DBus',arg0=':1.1216'"
method return time=1533650081.286778 sender=org.freedesktop.DBus -> destination=:1.14 serial=3032 reply_serial=10691
method return time=1533650081.286784 sender=:1.14 -> destination=:1.1216 serial=10692 reply_serial=4
signal time=1533650081.286789 sender=:1.14 -> destination=(null destination) serial=10693 path=/org/gnome/SessionManager; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
string "org.gnome.SessionManager"
array [
dict entry(
string "InhibitedActions"
variant uint32 4
)
]
array [
]
Mas nada diz ao mutter para ativar novamente o modo de economia de energia. O que normalmente deveria fazer isso e o que pode impedir que isso aconteça?
Responder1
Você ativou o gdm porque sem bloquear a tela não haverá escurecimento.
O problema é que o gdm está lendo org.gnome.SessionManager.Presence como gnome-scrennsaver anterior, portanto, enviar mensagens para murmurar é falso porque a redefinição dos temporizadores deve ser feita apenas uma vez.
O escurecimento é feito desligando a força do dpms ou não dependendo dos temporizadores do dpms
abraço, ROBERTO