There are .desktop files in Linux that are used to populate application lists and launchers. This is separate from grabbing a list of all executables in $PATH.
Specifically, it has more metadata like human-readable application names, icons and categories.
There are paths for system-level applications. But the user can also add .desktop files in their $HOME directory. In my system, the path for user-local .desktop files is ~/.local/share/applications/.