Como criar um iniciador personalizado para aplicativos de terminal?

30

Eu tenho alguns aplicativos de linha de comando (e servidores remotos) para os quais desejo criar lançadores individuais no iniciador do Unity, como faço isso?

Jorge Castro
fonte

Respostas:

30

É possível usar ativadores personalizados para aplicativos de terminal, o que pode ser muito útil para aplicativos como irssi e mutt.

É importante lembrar que você deseja especificar uma classe de gerenciador de janelas diferente para o terminal usando o --classargumento; caso contrário, depois de iniciar seu aplicativo pelo Launcher, ele aparecerá com todos os outros terminais e você não poderá usar um atalho de teclado superkey com ele.

Por exemplo, para criar um iniciador para efetuar login em outro servidor, você pode usar algo como o seguinte para um arquivo .desktop (veja acima como obter isso no Iniciador):

[Desktop Entry]
Version=1.0
Name=My Server
Comment=Login to my server
Exec=gnome-terminal --disable-factory --sm-client-disable --class=MyServer -x ssh -t myserver.example.com
StartupWMClass=MyServer
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=utilities-terminal
StartupNotify=true

Depois de criar este arquivo .desktop (você pode chamá-lo de myserver.desktop), basta arrastar e soltar no seu iniciador.

Adaptado de:

Aqui está um exemplo de como eu fiz isso para meus servidores pessoais em casa:

[Desktop Entry]
Version=1.0
Name=Remote Servers
Comment=Login to my servers
Exec=gnome-terminal --disable-factory --sm-client-disable --class=remoteserver
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=utilities-terminal
StartupNotify=true
StartupWMClass=RemoteServers
X-Ayatana-Desktop-Shortcuts=Server1;Server2;Server3;

[Server1 Shortcut Group]
Name=SSH into bondigas.local
Exec=gnome-terminal --disable-factory --sm-client-disable  --class=remoteserver -x ssh -t bondigas.local
TargetEnvironment=Unity

[Server2 Shortcut Group]
Name=SSH into xbmc.local
Exec=gnome-terminal --disable-factory --sm-client-disable --class=remoteserver -x ssh -t xbmc.local
TargetEnvironment=Unity

[Server3 Shortcut Group]
Name=SSH into miggytop.local
Exec=gnome-terminal --disable-factory --sm-client-disable --class=remoteserver -x ssh -t miggytop.local
TargetEnvironment=Unity

O que acaba com isso:

insira a descrição da imagem aqui

Jorge Castro
fonte
1
+1 para isso: " A única coisa a lembrar é que você vai querer especificar uma classe de gerenciador de janelas diferente para o terminal usando o argumento --class ... "
jahroy
--disable-fábrica já não é suportado em 3.14.1
sergiusens
Depois de bloquear o Launcher, clique com o botão direito do mouse no ícone.
km1 16/06
1
A solução não funciona mais no Ubuntu 15.10 e superior; as opções foram removidas tristemente.
Fih
@ Eles ainda estão documentados, mas não funcionam. Bug do Debian # 238145 , bug do Launchpad # 1453991 .
Tgr
1

Clico com o botão direito na área de trabalho, clique em "criar iniciador", preencha os campos de arquivo apropriados e arraste o iniciador criado para o dock.

Chris Bauer
fonte
Não funciona na 11.10. Não existe a opção "Criar iniciador".
Timmmm
0

O arquivo armazenado usr/share/applications/blender.desktoppode ser:

[Desktop Entry]
Name=Blender_terminal
Comment=Blender_terminal
Exec=gnome-terminal -x sh -c "cd /home/user/Software/blender_270a &&./blender"
Icon=/home/user/Software/blender_270a/icons/48x48/apps/blender.png
Terminal=false
Type=Application
X-Ayatana-Desktop-Shortcuts=Blender1;Blender2;

[Blender1 Shortcut Group]
Name=Blender
Exec=/home/user/Software/blender_270a/blender
TargetEnvironment=Unity
user2996731
fonte