diff --git a/kded/CMakeLists.txt b/kded/CMakeLists.txt index 7560ae3c2..98304e4eb 100644 --- a/kded/CMakeLists.txt +++ b/kded/CMakeLists.txt @@ -3,14 +3,25 @@ include_directories(${CMAKE_SOURCE_DIR}) add_definitions(-DTRANSLATION_DOMAIN="kdeconnect-kded") configure_file(config-kded.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kded.h) -add_library(kded_kdeconnect MODULE kded.cpp) -target_link_libraries(kded_kdeconnect KF5::Service KF5::DBusAddons) -install(TARGETS kded_kdeconnect DESTINATION ${PLUGIN_INSTALL_DIR}) -install(FILES kdeconnect.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kded) add_executable(kdeconnectd kdeconnectd.cpp) target_link_libraries(kdeconnectd kdeconnectcore KF5::DBusAddons KF5::ConfigWidgets) + +set(NEW_DAEMON_STARTUP_DESC "WIP: Start kdeconnectd without kded") +option(WITH_AUTOSTART NEW_DAEMON_STARTUP_DESC Off) +add_feature_info(WITH_AUTOSTART WITH_AUTOSTART NEW_DAEMON_STARTUP_DESC) + +if (NOT WITH_AUTOSTART) + add_library(kded_kdeconnect MODULE kded.cpp) + target_link_libraries(kded_kdeconnect KF5::Service KF5::DBusAddons) + install(TARGETS kded_kdeconnect DESTINATION ${PLUGIN_INSTALL_DIR}) + install(FILES kdeconnect.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kded) +else() + configure_file(kdeconnectd.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/kdeconnectd.desktop) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kdeconnectd.desktop DESTINATION ${AUTOSTART_INSTALL_DIR}) +endif() + install(TARGETS kdeconnectd DESTINATION ${LIBEXEC_INSTALL_DIR}) include(DbusActivationMacros) -dbus_add_activation_service(org.kde.kdeconnect.service.in) +dbus_add_activation_service(org.kde.kdeconnect.service.in) \ No newline at end of file diff --git a/kded/kdeconnectd.desktop.cmake b/kded/kdeconnectd.desktop.cmake new file mode 100644 index 000000000..15a560337 --- /dev/null +++ b/kded/kdeconnectd.desktop.cmake @@ -0,0 +1,10 @@ +[Desktop Entry] +Type=Service +Exec=${CMAKE_INSTALL_PREFIX}/${LIBEXEC_INSTALL_DIR}/kdeconnectd +X-KDE-StartupNotify=false +X-KDE-autostart-phase=0 +X-GNOME-Autostart-enabled=true +OnlyShowIn=KDE;GNOME;Unity;XFCE +NoDisplay=true + +Name=KDEConnect daemon \ No newline at end of file