Como executar um script Bash ao usar um login gráfico na área de trabalho

2

Estou executando o desktop MATE no Arch Linux, e tenho um script que executo:

  • Configura o MATE para funcionar com vários monitores
  • Conecta o PC à internet
  • Altera a velocidade do meu mouse

Eu tenho que executar manualmente este script toda vez que eu fizer login graficamente. Como posso fazer isso automaticamente? Eu tentei o seguinte:

  • Colocando o script em um arquivo ~/.profile . Nada aconteceu.
  • Colocando o script em um arquivo ~/.initrc . Nada aconteceu.
  • Colocando o script em um arquivo ~/.xsession . Nada aconteceu.
  • O
  • systemd não funcionará porque, até onde eu sei, ele tenta executar as funções do script cedo demais. Ele deve ser executado somente quando o usuário tiver efetuado login, não durante a inicialização.

Editar : O script também requer privilégios de root!

    
por Spenser Truex 17.07.2016 / 01:32

3 respostas

1

Graças a um comentário feito por @JorneymanGeek, pude usar o aplicativo MATE autostart para fazer o que eu preciso. Resolvi problemas que envolvem a necessidade de colocar uma senha usando NOPASSWD em visudo , o que me permite chamar sudo COMMAND na linha de comando sem usar uma senha.

Isso geralmente é uma má ideia, mas funciona.

    
por 20.07.2016 / 02:29
0

Às vezes, você pode (nem sempre) usar ~/.xsession para conseguir o que deseja. Isso geralmente é muito dependente do sistema e você pode ter que cavar através do script de inicialização do seu sistema. Consulte este Unix & Pergunta do Linux Stack Exchange para mais detalhes

    
por 17.07.2016 / 05:59
0

Você pode colocá-lo em:

  • ~/.bashrc (será executado após todos os aplicativos serem inicializados)
  • /etc/rc.local (executará o AS ROOT depois que todos os serviços estiverem em execução, mas antes de você fazer logon com seu nome de usuário)
por 18.07.2016 / 19:08