When you install an application on Ubuntu from a package, among other things that take place, one of the steps is to install launchers. These launchers come in the form of .desktop files, and look similar to MS Windows installation config files:
These files are usually installed under '/usr/share/applications', but may also appear under '~/.local/applications' which is ideal for user specific launchers. In my case, instead of installing the latest version of Blender from a package, I have a custom Blender launcher which is based upon the .desktop file included with the downloaded copy of Blender 2.80, except for these changes (in '~/local/applications/blender.desktop'):
Most desktop environment software such as the GNOME Shell follow the FreeDesktop standard and react to the creation of new deskop entries. More information about the Desktop Entry Specification can be read here: https://specifications.freedesktop.org/desktop-entry-spec/latest/.
GNOME Shell also supports additional application actions, so, for example. when you click the Firefox launcher, it shows the sub menu items "Open a New Window" and "Open a New Private Window". These actions are defined as follows in the firefox.desktop file below (skipping the locale specific strings). The format for setting defining these actions are explained here: https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s11.html
[Desktop Action new-window]Share on Twitter Share on Facebook
Name=Open a New Window
[Desktop Action new-private-window]
Name=Open a New Private Window