How do I make a custom launcher for terminal applications?

I have some command line applications (and remote servers) that I want to make individual launchers for on the Unity launcher, how do I do that?


Custom launchers for terminal applications can be used, which can be very useful for applications such as irssi and mutt.

The thing to remember is that you’ll want to specify a different window manager class for the terminal using the --class argument, otherwise after you start your application via the Launcher, it will show up with all your other terminals and you can’t use a superkey keyboard shortcut with it.

For example, to create a launcher to login to another server, you can use something like the following for a .desktop file (see above for how to get this into the Launcher):

[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

After you've created this .desktop file (you can name it something like myserver.desktop) you can just drag and drop it onto your launcher.

Adapted from:

  • http://penguindroppings.wordpress.com/2011/04/08/unity-and-me/

Here's an example of how I made it for my personal servers at home:

[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

Which ends up with this:

enter image description here


I right click on the desktop, click "create launcher", fill in the appropriate file fields, then drag the created launcher onto the dock.