Shell do Gnome: Execução do script de shell após o início da sessão?

8

Sou um usuário de longa data do KDE, nunca vi o GNOME, pois pode ser o Mandrake Linux 10 alguma coisa. Ontem dei uma olhada no GNOME Shell no Youtube e achei que valeria a pena dar uma olhada.

Realmente vale a pena, mas não consigo descobrir um momento.

Eu tenho um script de shell que costumava rodar em minhas instalações do KDE para computadores portáteis por muito tempo:

synclient |grep -E 'TapT|RightB|EdgeScr'|awk '{print $1}'|while read item; do synclient $item=0; done
synclient VertScrollDelta=-111
synclient HorizScrollDelta=1
synclient RightEdge=999999999
synclient TopEdge=0
synclient CircularScrolling=0
synclient BottomEdge=999999999
synclient RightButtonAreaLeft=9999999
synclient ClickFinger3=2
synclient HorizScrollDelta=0
synclient HorizTwoFingerScroll=0 

Isso desativa o clique com o botão direito do mouse, todos os toques, inverte as direções de rolagem, desativa a rolagem horizontal e outras coisas. O menu do touchpad, nem no KDE, nem no GNOME, não permite este tipo de configuração. (TBH, apenas Mac de todos os sistemas operacionais tem o gui para configurar o touchpad exatamente assim:)).

Eu não consigo descobrir como executar isso depois que a sessão do shell do gnome é iniciada? Eu já tentei isso sem resultados:

[1] % cat /home/neko/.config/autostart/script.desktop 
[Desktop Entry]
Name="Auto stuff"
GenericName="Auto startup stuff"
Comment="Synclient mostly"
Exec=/home/neko/bin/auto_stuff.sh
Terminal=false
Type=Application
X-Gnome-Autostart=true

Alguma outra sugestão, por favor? Obrigado.

    
por Mikhail Krutov 08.12.2014 / 22:18

2 respostas

6

Você pode usar o programa gnome-session-properties. Basta executá-lo a partir do seu prompt de shell (gnome-terminal):

$ gnome-session-properties

Isso abrirá uma GUI na qual você pode configurar (por exemplo, adicionar, editar, remover, ativar e desativar) programas de inicialização.

Agradável e fácil. Aproveite.

Update: Como notado por don_crissti (obrigado) nos comentários abaixo, a funcionalidade dos programas de inicialização gnome-session-properties migrou para gnome-tweak-tool desde o Gnome 3.12 (que é uma ótima ferramenta, mas um pouco mais confusa à medida que se concentra apenas muitas funções). Portanto, para as versões 3.12 e posteriores, este é o novo local para procurar.

OBS: E a propósito, usando esse método, você não precisa criar um arquivo .desktop , você pode simplesmente especificar a linha de comando do script /home/neko/bin/auto_stuff.sh que você criou (ou qualquer outro script ou comando que você queira) .

    
por 08.12.2014 / 23:23
1

Nos arquivos .desktop , o caso é significativo . O seguinte modelo funciona sob o Fedora 27 com o shell GNOME (ou seja, o valor Exec= é executado durante o início da sessão):

[Desktop Entry]
Encoding=UTF-8
Exec=/path/to/myscript arg1
Name=myscript
Comment=script some stuff
Terminal=false
OnlyShowIn=GNOME
Type=Application
StartupNotify=false
X-GNOME-Autostart-enabled=true

(a ser armazenado como $HOME/.config/autostart/myscript.desktop )

A principal diferença: você usou a chave X-Gnome-Autostart= em seu exemplo.

O OnlyShowIn= talvez não seja significativo para a funcionalidade autostart, mas eu não testei sem ele. Você pode listar vários ambientes de área de trabalho como este: OnlyShowIn=GNOME;LXDE;Unity; Consulte a variável de ambiente XDG_CURRENT_DESKTOP para verificar os valores corretos.

Se você quiser verificar se o seu script imprime qualquer mensagem de erro, você pode verificar journalctl --user , ou seja, o diário da sessão.

    
por 15.04.2018 / 23:00