Try adding a PATH=/home/werecat/Grayjay
line to your .desktop file. Without it the application will run with your home directory as your working-directory…and there the data files are missing (Why you need to copy them to your home). The path entry makes the program work in /home/werecat/Grayjay where the data directories actually are.
Edit: That is assuming when you started it manually you did a cd Grayjay
and a ./Grayjay
or similar. So you changed your working directory there first before starting it. If that is not the case ignore my post ;)
Just to make this clear (Sorry if it’s unnecessary, but maybe still useful info for others)…Path= lines in .desktop files are not related at all to the $PATH environment variables. They do something completely different (And yes, picking Path as key was a terrible choice in my view). Path= lines in .desktop files change the current working directory…they do about the same as a
cd <directory>
in a shell.They do not change where a .desktop file looks for executables…only indirectly if a executable runs another file relative to the current directory or looks for images/icons/audio/other data relative to the current working directory.
And I have no clue why it doesn’t work with TryExec…the desktop file spec doesn’t mention anything about that :( ( https://specifications.freedesktop.org/desktop-entry-spec/latest/recognized-keys.html )