Bug 327405

Summary: No desktop file installed for marble-qt in Qt-only build
Product: [Applications] marble Reporter: Bernhard Beschow <shentey>
Component: generalAssignee: marble-bugs
Status: RESOLVED FIXED    
Severity: normal CC: auxsvr, christiandehne, nafees.technocool, nienhueser, thiago
Priority: NOR    
Version: 1.7 (KDE 4.12)   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In: 1.7.0 (KDE 4.12.0)

Description Bernhard Beschow 2013-11-10 11:41:56 UTC
No .desktop files are installed for marble-qt (on desktop) and marble-mobile (on Maemo5). So in a Qt-only build there is no desktop file installed at all to start marble.

Reproducible: Always

Steps to Reproduce:
1. Build and install Marble in Qt-only mode
Actual Results:  
No desktop files are installed to start marble-qt

Expected Results:  
marble-qt and possibly marble-mobile should have their own .desktop files
Comment 1 Bernhard Beschow 2013-11-23 16:27:51 UTC
Git commit 0a88e37a10f083335a8e28df584e27d85a99eec3 by Bernhard Beschow.
Committed on 08/11/2013 at 21:49.
Pushed by beschow into branch 'master'.

install a .desktop file for each Marble variant (Qt, Mobile, KDE)

It's technically possible to install all .desktop files in parallel.
However, since all files have the same user-visible content, multiple seemingly identical entries will appear in the XDG menu which will start different variants of Marble.
Hence, we need to rely on packagers to select the appropriate .desktop files for the packaged Marble binaries.
REVIEW: 114054

M  +2    -0    src/apps/marble-mobile/CMakeLists.txt
A  +94   -0    src/apps/marble-mobile/marble-mobile.desktop
M  +2    -0    src/apps/marble-qt/CMakeLists.txt
A  +95   -0    src/apps/marble-qt/marble-qt.desktop

http://commits.kde.org/marble/0a88e37a10f083335a8e28df584e27d85a99eec3
Comment 2 Bernhard Beschow 2013-11-23 16:41:56 UTC
Git commit ce1ab4a9203578e634be1e2926e8c7ee03109ad9 by Bernhard Beschow.
Committed on 08/11/2013 at 21:49.
Pushed by beschow into branch 'KDE/4.12'.

install a .desktop file for each Marble variant (Qt, Mobile, KDE)

It's technically possible to install all .desktop files in parallel.
However, since all files have the same user-visible content, multiple seemingly identical entries will appear in the XDG menu which will start different variants of Marble.
Hence, we need to rely on packagers to select the appropriate .desktop files for the packaged Marble binaries.
(cherry picked from commit 0a88e37a10f083335a8e28df584e27d85a99eec3)
REVIEW: 114054
FIXED-IN: 1.7.0 (KDE 4.12.0)

M  +2    -0    src/apps/marble-mobile/CMakeLists.txt
A  +94   -0    src/apps/marble-mobile/marble-mobile.desktop
M  +2    -0    src/apps/marble-qt/CMakeLists.txt
A  +95   -0    src/apps/marble-qt/marble-qt.desktop

http://commits.kde.org/marble/ce1ab4a9203578e634be1e2926e8c7ee03109ad9
Comment 3 Thiago Macieira 2013-11-27 21:20:09 UTC
This commit broke the build for Qt-only Mac build.

CMake Error at src/apps/marble-qt/CMakeLists.txt:80 (install):
  install PROGRAMS given no DESTINATION!


CMake Error at src/apps/marble-mobile/CMakeLists.txt:27 (install):
  install PROGRAMS given no DESTINATION!


CMake Error at src/apps/marble-touch/CMakeLists.txt:40 (install):
  install PROGRAMS given no DESTINATION!


The variable APPS_INSTALL_DIR is not initialised for that case.
Comment 4 Dennis Nienhüser 2013-11-28 22:21:52 UTC
Thanks for reporting.

Mohammed, can you chime in? :-)
Comment 5 Bernhard Beschow 2013-11-30 13:30:03 UTC
Git commit 63bce6898862535aa7efa5109835cbb684548380 by Bernhard Beschow.
Committed on 30/11/2013 at 13:29.
Pushed by beschow into branch 'master'.

don't attempt to install .desktop files on platforms that don't support them

M  +3    -2    src/apps/marble-mobile/CMakeLists.txt
M  +3    -2    src/apps/marble-qt/CMakeLists.txt
M  +3    -1    src/apps/marble-touch/CMakeLists.txt

http://commits.kde.org/marble/63bce6898862535aa7efa5109835cbb684548380
Comment 6 Bernhard Beschow 2013-11-30 13:32:31 UTC
Git commit 7ab9e931af2810ebd55c3aacd4de376ff57c45a3 by Bernhard Beschow.
Committed on 30/11/2013 at 13:29.
Pushed by beschow into branch 'KDE/4.12'.

don't attempt to install .desktop files on platforms that don't support them
(cherry picked from commit 63bce6898862535aa7efa5109835cbb684548380)

M  +3    -2    src/apps/marble-mobile/CMakeLists.txt
M  +3    -2    src/apps/marble-qt/CMakeLists.txt
M  +3    -1    src/apps/marble-touch/CMakeLists.txt

http://commits.kde.org/marble/7ab9e931af2810ebd55c3aacd4de376ff57c45a3
Comment 7 Andrea Scarpino 2014-02-08 16:24:03 UTC
Why you don't read MOBILE and QTONLY variables before you install the desktop file for that specific version?
e.g. if (MOBILE) install marble-mobile.desktop
Comment 8 auxsvr 2014-02-08 17:09:40 UTC
I'm not sure whether I should open a new report for this: on KDE 4.12.2, opensuse 12.3, there are 4 items in the kickoff menu named "marble" with identical information and icons, making selection among marble-kde, marble-qt, marble-touch and marble-mobile a matter of luck. Wouldn't it be preferable if, for example, the GenericName included a word to distinguish among the variants?
Comment 9 Dennis Nienhüser 2015-09-10 15:30:15 UTC
Git commit 407a29c460682beb68ddb3961138870a67c684d0 by Dennis Nienhüser.
Committed on 10/09/2015 at 15:27.
Pushed by nienhueser into branch 'master'.

Remove .desktop files and do not install now outdated applications

This affects the Maemo (marble-mobile) and MeeGo (marble-touch) apps.
Android (marble-maps) will replace them. Still compiling marble-mobile
and marble-touch though as they are useful for further development.
Related: bug 333838

M  +0    -4    src/apps/marble-mobile/CMakeLists.txt
D  +0    -99   src/apps/marble-mobile/marble-mobile.desktop
M  +0    -5    src/apps/marble-touch/CMakeLists.txt
D  +0    -99   src/apps/marble-touch/marble-touch.desktop

http://commits.kde.org/marble/407a29c460682beb68ddb3961138870a67c684d0
Comment 10 Dennis Nienhüser 2015-09-10 15:30:16 UTC
Git commit 489c0ec8a6a51813c4f9e7c87e2b088c34b32a63 by Dennis Nienhüser.
Committed on 10/09/2015 at 15:27.
Pushed by nienhueser into branch 'master'.

Add a .desktop file for marble-maps, limit installation

The app and .desktop file are only installed on ANDROID by default.
The cmake option MARBLE_INSTALL_ANDROID_APPS can be used to install
marble-maps on other targets as well.
Related: bug 333838

M  +6    -1    src/apps/marble-maps/CMakeLists.txt
A  +9    -0    src/apps/marble-maps/marble-maps.desktop

http://commits.kde.org/marble/489c0ec8a6a51813c4f9e7c87e2b088c34b32a63
Comment 11 Dennis Nienhüser 2015-09-10 15:30:17 UTC
Git commit e21bb08a6b9b04aa9c6bc17e9b74e2e8827e5aeb by Dennis Nienhüser.
Committed on 10/09/2015 at 15:27.
Pushed by nienhueser into branch 'master'.

Add Comment entries, distinguish Qt/KDE versions via their name
Related: bug 351972, bug 333838

M  +2    -1    src/apps/marble-kde/marble.desktop
M  +1    -0    src/apps/marble-maps/marble-maps.desktop
M  +1    -0    src/apps/marble-qt/marble-qt.desktop

http://commits.kde.org/marble/e21bb08a6b9b04aa9c6bc17e9b74e2e8827e5aeb