How do I create an application launcher without coding?
I want to create a launcher for an application that I just installed but whatever I searched was about creating a file with .desktop
extension, but I need another way to make this without any coding or typing.
I found Arronax but it doesn't work for me. that's not launching the desired application. Arronax can make .desktop
file visually by selecting needed parameters. Somebody suggest me something please.
Outside sources
What you need is gnome-desktop-item-edit
program. Basically it does the same thing - it creates a .desktop
file. Why ? Because launchers are .desktop
files, just pinned to launcher. Nothing more than that. Windows shortcuts are .lnk
files too by they way, they just don't show up as files with .lnk
extension, but if you ever mounted a Windows hard drive - you'll know.
The gnome-desktop-item-edit
command is still available if you install gnome-panel
or gnome-tweak-tool
.
Once you have it, you can use this command in terminal:
gnome-desktop-item-edit --create-new ~/Desktop
Homebrew
I've actually written a small script for that purpose before (because why not ? ). You can copy the code, save to file, and run whenever you want it. That simple !
#!/bin/bash
FORM=$(zenity --forms \ --title="Simple shortcut maker" --text="Create new .desktop file" \
--add-entry="Program Name" \
--add-entry="Command or path to file" \
--add-entry="Terminal app(true/false)" \
--add-entry="Icon (path)")
[ $? == 0 ] || exit 1
awk -F'|' -v home="$HOME" '{
FILE = home"/Desktop/"$1".desktop"
print "[Desktop Entry]" >> FILE
print "Type=Application" >> FILE
print "Name="$1 >> FILE
print "Exec="$2 >> FILE
print "Terminal="$3 >> FILE
if ($4 !~ /^[ ]*$/)
print "Icon="$4 >> FILE ;
system("chmod 755 " FILE);
}' <<< "$FORM"
And that's how it looks:
You will have .desktop
file in your Desktop folder, which you can later pin to launcher.
Note: the content about the gnome-desktop-item-edit is provided by fossfreedom's original answer, please upvote his good work !
Assuming your application is a GUI application, currently without a launcher, there is a simple way to let Unity create the launcher for you in ~/.local/share/applications
, after which you can move it to anywhere you like.
- Run the (GUI) application a single time from command line.
-
In the Launcher, right-click on the icon that appears, running the application, choose "lock to launcher"
Navigate to
~/.local/share/applications
, there you'll find your new launcher, created by Unity. Even the arguments you ran it with are included in the launcher. Since it is not executable yet, it will be iconless.- Make it executable (right-click in nautilus > permissions (tab), now you can move it to anywhere you like and double- click to start the application.
N.B. The name of a launcher which is not executable (yet) might differ from the name you saw in the Unity Launcher. If you doubt, simply sort the files in ~/.local/share/applications
by modification date, the latest edited file is your newly created launcher.