¿Cómo hago un lanzador personalizado para aplicaciones de terminal?

30

Tengo algunas aplicaciones de línea de comandos (y servidores remotos) para los que quiero hacer lanzadores individuales en el iniciador de Unity, ¿cómo hago eso?

Jorge Castro
fuente

Respuestas:

30

Se pueden utilizar lanzadores personalizados para aplicaciones de terminal, que pueden ser muy útiles para aplicaciones como irssi y mutt.

Lo que debe recordar es que querrá especificar una clase diferente de administrador de ventanas para el terminal usando el --classargumento, de lo contrario, después de iniciar su aplicación a través del Iniciador, aparecerá con todos sus otros terminales y no podrá usar un atajo de teclado superkey con él.

Por ejemplo, para crear un iniciador para iniciar sesión en otro servidor, puede usar algo como lo siguiente para un archivo .desktop (consulte más arriba para saber cómo ingresar esto al 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

Después de crear este archivo .desktop (puede nombrarlo como myserver.desktop), simplemente puede arrastrarlo y soltarlo en su iniciador.

Adaptado de:

Aquí hay un ejemplo de cómo lo hice para mis servidores personales en 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

Lo que termina con esto:

ingrese la descripción de la imagen aquí

Jorge Castro
fuente
1
+1 para esto: " Lo que debe recordar es que querrá especificar una clase diferente de administrador de ventanas para el terminal utilizando el argumento --class ... "
jahroy
--disable-factory ya no es compatible con 3.14.1
sergiusens
Después de bloquear al Iniciador, haga clic derecho en el icono.
km1
1
La solución ya no funciona en Ubuntu 15.10 y superior, las opciones se eliminaron tristemente.
Fih
@Fih todavía están documentados pero no funcionan. Error de Debian # 238145 , error de Launchpad # 1453991 .
Tgr
1

Hago clic derecho en el escritorio, hago clic en "crear lanzador", relleno los campos de archivo apropiados y luego arrastro el lanzador creado al dock.

Chris Bauer
fuente
No funciona en 11.10. No existe la opción "Crear iniciador".
Timmmm
0

El archivo almacenado en usr/share/applications/blender.desktoppodría 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
usuario2996731
fuente