Executa comandos após desbloquear a tela X (KDE)

5

Quando saio do trabalho, bloqueio minha máquina com ctrl + l para bloquear a tela. Quando volto, sempre esqueço de entrar no jabber. Existe uma maneira de executar um comando depois que a tela é desbloqueada? Isso está no KDE. Não tenho certeza se o mecanismo de bloqueio é um recurso do X ou um recurso do KDE, por isso não sei onde procurar.

    
por Falmarri 11.07.2011 / 18:22

2 respostas

2

Eu tinha o desejo de fazer o banshee (o tocador de música do Gnome) pausar / desparecer quando a tela estava bloqueada / desbloqueada. Eu encontrei um ticket no projeto do launchpad do banshee:

link

Alguém criou um script que notaria (via DBus) se a tela estava (des) bloqueada e acionaria o banshee para (des) pausar. Eu adicionei um pequeno ajuste a este script e tenho usado por um tempo. Eu adicionei minha cópia atualizada ao ticket.

Agora eu sei que isso não é exatamente o que você quer fazer. Mas você provavelmente poderia pegar esse script python (que já está detectando bloqueios / desbloqueios de tela) e alterá-lo um pouco para fazer o que você gostaria de fazer. É também meu entendimento que o protetor de tela do KDE suporta a mesma interface do DBus que o protetor de tela do gnome. Parece que a melhor documentação para o lado do KDE está aqui:

link

Boa sorte!

    
por 11.07.2011 / 18:43
2

Para o XScreenSaver, a solução é xscreensaver-command -watch

man xscreensaver-command contém um exemplo de script Perl para lidar com vários eventos de proteção de tela e bloqueio de tela, como BLANK, LOCK, UNBLANK etc.

Aqui está - o exemplo que liga e desliga o som com o protetor de tela:

       #!/usr/bin/perl

       my $blanked = 0;
       open (IN, "xscreensaver-command -watch |");
       while (<IN>) {
           if (m/^(BLANK|LOCK)/) {
               if (!$blanked) {
                   system "sound-off";
                   $blanked = 1;
               }
           } elsif (m/^UNBLANK/) {
               system "sound-on";
               $blanked = 0;
           }
       }

Não tenho certeza se o KDE usa o XScreenSaver.

    
por 14.11.2013 / 01:19