Brewtarget / brewtarget

Main brewtarget source code repository.
GNU General Public License v3.0
312 stars 134 forks source link

Desktop file and icon installed to wrong location on Linux #683

Closed Scimmia22 closed 1 year ago

Scimmia22 commented 1 year ago

The desktop file is being installed to ${installSubDir_data}/applications and the icon is being installed to ${installSubDir_data}/icons/hicolor/scalable/apps/. Since installSubDir_data is defined as share/${CMAKE_PROJECT_NAME}, they cannot be found by any desktop menu systems because of the 'brewtarget' subdir.

The menu specification requires desktop files be installed to $XDG_DATA_DIRS/applications/ with $XDG_DATA_DIRS defaulting to /usr/local/share/:/usr/share/. Similarly, icons should be in $XDG_DATA_DIRS/icons.

matty0ung commented 1 year ago

Hi, Thanks for the feedback. Could you give a bit of additional info? Are you installing from the deb, rpm or a source build? Which flavour of Linux are you on?

Scimmia22 commented 1 year ago

This is when packaging for Arch. Arch's build system simply does exactly what you tell it to, which is why I pointed out exactly why it's doing that. The distro is irrelevant here, that's where cmake is putting it.

matty0ung commented 1 year ago

Thanks. Sorry to ask you questions that you feel are obvious, but it does often help to have some context. If you know exactly what is wrong with the CMakeLists.txt file then we would welcome your PR.

Otherwise, I will take a look after I have done another few rounds with CMake to persuade it to package the Mac build properly. :smile:

matty0ung commented 1 year ago

I think I have a fix for the desktop file. Will look at the icon...

Scimmia22 commented 1 year ago

I do know what is wrong with CMakeLists.txt, but I don't know nearly enough cmake to know what the best way to fix it is. Do you just use things like ${installSubDir_data}/../applications? Does that even work in cmake? Do you define a new variable? Do you check $XDG_DATA_DIRS? I really don't know, which is why I thought it best to leave the fix to someone that has spent a lot more time with cmake than me.

matty0ung commented 1 year ago

OK, no worries. CMake can sometimes be rather frustrating to work with, and some aspects of it operate differently at different stages of the build (which is partly why I asked about packaging).

I think this fix is going to be easier than the Mac build one!

matty0ung commented 1 year ago

Closing now that release 3.0.4 is out. Please re-open if you continue to see the problem.