From: Claudio Cambra Date: Tue, 4 Jan 2022 21:53:44 +0000 (+0000) Subject: Add Flatpak patches to Dolphin depending on CMake definition X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/3abc4cfcd49df45c856e1b5f01da8de8f970ccb2 Add Flatpak patches to Dolphin depending on CMake definition When Dolphin gets packaged as a flatpak, this patch gets applied: https://invent.kde.org/packaging/flatpak-kde-applications/-/blob/master/dolphinpatch.patch That's not really an ideal solution, so this is probably a better idea -- to upstream the patches and apply them depending on a CMake definition --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 6ab68cc93..2f26ae85f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -175,13 +175,22 @@ install(FILES COMPONENT Devel ) -ecm_generate_dbus_service_file( - NAME org.freedesktop.FileManager1 - EXECUTABLE "${KDE_INSTALL_FULL_BINDIR}/dolphin --daemon" - SYSTEMD_SERVICE plasma-dolphin.service - DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR} - RENAME org.kde.dolphin.FileManager1.service -) +if(FLATPAK) + ecm_generate_dbus_service_file( + NAME org.freedesktop.FileManager1 + EXECUTABLE "${KDE_INSTALL_FULL_BINDIR}/dolphin --daemon" + SYSTEMD_SERVICE plasma-dolphin.service + DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR} + ) +else() + ecm_generate_dbus_service_file( + NAME org.freedesktop.FileManager1 + EXECUTABLE "${KDE_INSTALL_FULL_BINDIR}/dolphin --daemon" + SYSTEMD_SERVICE plasma-dolphin.service + DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR} + RENAME org.kde.dolphin.FileManager1.service + ) +endif() ecm_install_configured_files(INPUT plasma-dolphin.service.in DESTINATION ${SYSTEMD_USER_UNIT_INSTALL_DIR}) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index b97a5d7c0..651f021e6 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -340,6 +340,10 @@ target_sources(dolphin PRIVATE main.cpp ) +if(FLATPAK) + target_compile_definitions(dolphin PRIVATE FLATPAK) +endif() + # Sets the icon on Windows and OSX file(GLOB ICONS_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/icons/*system-file-manager.png") ecm_add_app_icon(dolphin_APPICON_SRCS ICONS ${ICONS_SRCS}) diff --git a/src/main.cpp b/src/main.cpp index cda28c80c..7a2d42ea5 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -154,7 +154,11 @@ int main(int argc, char **argv) QObject::connect(&app, &QGuiApplication::commitDataRequest, disableSessionManagement); QObject::connect(&app, &QGuiApplication::saveStateRequest, disableSessionManagement); +#ifdef FLATPAK + KDBusService dolphinDBusService(KDBusService::NoExitOnFailure); +#else KDBusService dolphinDBusService; +#endif DBusInterface interface; interface.setAsDaemon(); return app.exec();