Lubuntu 17.10 - Removendo suspender, alternar usuário, opções de tela de bloqueio de "Shutdown" Launcher

0

Estou trabalhando em um quiosque Lubuntu que é totalmente controlado pelo controle remoto IR. Até agora, tudo funciona bem, exceto para reiniciar e desligar. Eu tenho duas perguntas relacionadas:

  1. Agora eu tenho 2 botões separados no controle remoto; um que execute poweroff no terminal e um que execute reboot . No entanto, eu acho isso desajeitado e preferiria ter um botão no remoto iniciar o "Shutdown" Launcher (o ícone de energia na parte inferior direita da área de trabalho no Lubuntu 17.10) o mesmo que aconteceria se você clicasse no botão com o mouse. Estou usando xbindkeys para executar meus comandos. Alguém sabe o comando do terminal ou tem um script para lançar o lançador "Shutdown"?

Edit: eu resolvi essa parte da questão. O comando em 17.10 é lxsession-default quit

  1. Quando "Logout Lubuntu 17.10 session?" pop-up aparece Quero que as únicas opções visíveis sejam Desligar, Reiniciar e Cancelar. Eu tentei muitas coisas de alguns threads antigos e versões mais antigas, mas não tive sucesso em remover nenhuma das opções.

Não está funcionando no 17.10:

  • gsettings set com.canonical.indicator.session suppress-logout-menuitem true

  • editando /usr/share/polkit-1/actions/org.freedesktop.login1.policy e definindo <allow_active>no</allow_active> nos respectivos itens

por P. Keating 01.03.2018 / 20:03

2 respostas

0

Portanto, depois de ler e pesquisar mais, não parece possível editar as opções da sessão de logout sem editar e recompilar o código-fonte. Então eu fiz a próxima melhor coisa; Eu usei python e tkinter para fazer o meu próprio programa GUI para desligar ou reiniciar o pc.

Realmente não foi difícil e eu sei que alguém poderia jogar isso juntos, mas eu vou postar aqui caso alguém esteja interessado ou porque possa ajudar alguém.

  1. Instale o python ( sudo apt-get install python )
  2. Instalar o tkinter ( sudo apt-get install python-tk )
  3. Instalar ocioso ( sudo apt-get install idle )
  4. Abrir ocioso ( idle )
  5. Arquivo - > Novo arquivo
  6. Cole o seguinte código:

#Test.py from Tkinter import * import os window = Tk() B1 = Button(window, text = "Shutdown", command = lambda: os.system('poweroff')) B2 = Button(window, text = "Reboot", command = lambda: os.system('reboot')) B3 = Button(window, text = "Quit", command = lambda: quit()) B1.pack() B2.pack() B3.pack() window.mainloop()

  1. Na nova janela em que o código foi colado, clique em Arquivo - > Salvar - > Digite o nome do arquivo
  2. Para invocar reinicialização e desligamento sem sudo privledges, você deve executar o seguinte sudo chmod a+s /sbin/poweroff e sudo chmod a+s /sbin/reboot . ** Cuidado e esteja avisado que isso permitirá que qualquer um reinicialize ou desligue sem privilégios de sudo, então tenha cuidado **
  3. O script
  4. pode ser executado no terminal da seguinte forma: python /dir/to/file/name.py

Espero que isso ajude alguém! Aqui está uma foto da saída (eu estarei trabalhando para fazer com que pareça bonito nos próximos dias).

Programa no centro da esquerda da tela

    
por P. Keating 04.03.2018 / 21:18
1

De link e link Eu tentaria criar ou editar o arquivo /etc/polkit-1/rules.d/10-auth.rules e incluindo o seguinte conteúdo:

polkit.addRule(function(action, subject) {
    if (action.id == "org.freedesktop.login1.suspend" ||
        action.id == "org.freedesktop.login1.suspend-multiple-sessions" ||
        action.id == "org.freedesktop.login1.hibernate" ||
        action.id == "org.freedesktop.login1.hibernate-multiple-sessions" ||
        action.id == "org.freedesktop.login1.lock-sessions"
        // switch user ?
        // logout ?
        ) {
        return polkit.Result.NO;
    }
    if (action.id == "org.freedesktop.login1.shutdown" ||
        action.id == "org.freedesktop.login1.reboot") {
        return polkit.Result.YES;
    }
});

No entanto, não consegui encontrar as ações para alternar usuário ou logout.

    
por Dan Poirier 03.03.2018 / 17:34