Como iniciar o programa X11 na inicialização e fazer com que ele execute scripts personalizados quando a sessão X é fechada?

0

Eu preciso executar um script no final de cada sessão de usuário e este parece ser a melhor maneira de fazer isso. Eu não tenho nenhuma experiência em fazer programas X11, então, exatamente como eu faço isso?

    
por Dudemcman 11.06.2013 / 17:29

1 resposta

1

A resposta dependerá de qual gerenciador de exibição (se houver) é usado para iniciar o X. Por exemplo, se o ambiente desktop Gnome for iniciado, provavelmente o Gnome Display Manager iniciou o X. Se o KDE, então o KDE Display Manager provavelmente fez isso.

Depois que eu soube qual gerenciador de exibição está sendo usado, eu consultaria a documentação para esse gerenciador de exibição específico para ver se ele menciona uma maneira de fazer o que você quer. Caso contrário, prosseguirei com as linhas descritas em seu link - mas isso envolve saber qual "sistema de inicialização" está sendo usado. Por exemplo, o Ubuntu e a Red Hat usam o Upstart; Arch Linux e Fedora usam o systemd; Debian (eu acho) usa o init do SysV.

A maneira mais fácil é modificar seu sistema para que ele inicialize no modo de texto e, conseqüentemente, para o usuário adquirir o hábito de usar startx para iniciar o X. Eu não sei se essa solução é aceitável, mas Essa prática costumava ser bastante comum em meados dos anos 2000 (a última vez que eu executei o Linux) e mais cedo. Então você acabou de chamar seu script no final de ~ / .xinitrc. Bem, é um pouco mais complicado do que isso: a última linha desse arquivo geralmente está no formato exec gnome-session , em que gnome-session pode ser qualquer programa. você mudaria exec gnome-session para gnome-session (livre-se do exec em outras palavras) e adicionaria a linha que chama seu script depois disso.

    
por 11.06.2013 / 18:41