I am running Debian (Stretch) with XFCE and many applications do not appear in the menu (in my case Whisker Menu). As an example, I often run remote sessions using VNC and at the moment I can only start the VNC viewer from the terminal. Ideally it would have an icon/item so that not only it would be visible in the menu, but I could also select it as a 'favourite' (easy-to-reach) item in the Whisker Menu.

Sticking with the example case, the VNC viewer is from an 'official' package:

$ sudo apt --reinstall install tigervnc-viewer
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 1 not upgraded.
Need to get 168 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://mirrorservice.org/sites/ftp.debian.org/debian stretch/main amd64 tigervnc-viewer amd64 1.7.0+dfsg-7 [168 kB]
Fetched 168 kB in 0s (642 kB/s)         
(Reading database ... 669847 files and directories currently installed.)
Preparing to unpack .../tigervnc-viewer_1.7.0+dfsg-7_amd64.deb ...
Unpacking tigervnc-viewer (1.7.0+dfsg-7) over (1.7.0+dfsg-7) ...
Processing triggers for man-db ( ...
Setting up tigervnc-viewer (1.7.0+dfsg-7) ...

so is there a way to have it as an 'official' application in the Whisker Menu?


Basically, those menu items are .desktop files. The usual paths are:


To continue with your exemple:

[workstation] user ~ >cat /usr/share/applications/vncviewer.desktop 
[Desktop Entry]
Name=TigerVNC Viewer
Comment=Connect to VNC server and display remote desktop
StartupWMClass=TigerVNC Viewer: Connection Details

I suggest you first check if those .desktop files are well created.

If not stored in the same path, you can search for those with the following command: find / -name '*.desktop'

If you don't find those files, you can create those using the template from my vncviewer.desktop

  • Thanks! Hmm, coincidentally your example file looks just like the one in tigervnc's github repository... Odd that that's not in the Debian package? Too bad there's not a more 'automated' way to do this. – alle_meije Nov 9 '18 at 11:33
  • That's the default structure of .desktop files. – Kevin Lemaire Oct 21 '20 at 11:18

You've to create .desktop file in /usr/share/applications directory if the entry is targeted to all user or in $HOME/.local/share/applications directory if the menu entry is just for you

Open your text editor and type something like the following:

[Desktop Entry]

What to change in the above template:

  • Name: put here the name of the application. This will be displayed in the menu
  • Exec: path to the executable file. For example /opt/clion-2016.2/bin/clion.sh
  • Icon: path to the icon file. Example: /opt/clion-2016.2/bin/clion.svg
  • Categories: semicolon-separated list of categories as Audio Video Network etc...

I recommand to open the other .desktop files to see as example how they have been made there are many iformation as the PATH of the icon directories or as the categories used as well


I used 'menulibre' to modify the XFCE Whisker Menu in MX Linux 19 and it worked great! You can easily add/modify/remove 'Categories' (called directories in this tool), and add/remove applications, and move them between the categories. Install 'menulibre' from the MX Package Installer or Synaptic. It will be called 'Menu Editor' in the Menu.


menulibre helped me find this, thanks B.Yancy!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.