Em uma instalação atualizada do openSUSE Tumbleweed com o KDE, a execução xdg-screensaver lock
funciona (como em, a tela está bloqueada como se eu tivesse feito isso por meio da interface do usuário), mas retorna o código de saída 4, que de acordo com a página de manual significa "O Ação: falhou.". O que pode estar errado?
relate perguntas
-
Configurações do painel de desaparecimento do plasma do KDE
-
Não é possível fazer login novamente no ambiente de área de trabalho após executar "setxkbmap il" e fazer logout
-
Certo texto em fonte errada e desalinhado no Google Chrome
-
As janelas do complemento Firefox 57 falham ao pintar o conteúdo - apenas no Linux. Alguma solução alternativa do usuário?
-
Krename: como reiniciar a numeração para cada pasta?
Parece ser um pequeno bug dentro do script de shell usado para arquivos
xdg-screensaver
. Eu também tenhoopenSUSE Tumbleweed
e testei e obtive o mesmo código de saída. Provavelmente temos as mesmas versões e, portanto, o bug e a solução para esse problema funcionarão para ambos.O
xdg-screensaver
está no/usr/bin
diretório e você deve abri-lo/editá-lo usando:Para depurar o problema:
Ao redor da linha,
593
você verá esta seção:No meu caso (talvez o mesmo para você), a linha a ser executada é
screensaver_freedesktop "$1"
para que você possa ir para a função que está em torno de line741
. Nessa seção, você pode ver este código:Observe que todas as declarações de caso, como
suspend
têm no final da linha:result=$?
mas na declaração de casolock
, isso não está presente. Talvez os desenvolvedores tenham esquecido de adicionar essa linha. Portanto, a solução aqui é adicionar essa linha:Aliás, se você executar o comando:
e você depois imprime o código de saída com:
echo $?
você obterá0
o código de status. Isso significa que tudo funciona perfeitamente, mas o script errou a linharesult=$?
.A
result
variável é usada para o status de saída. Você pode ver nas últimas linhas do arquivo:E o que a função
exit_failure_operation_failed
faz: