diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,6 +21,7 @@ include(FeatureSummary) include(ECMOptionalAddSubdirectory) include(ECMQtDeclareLoggingCategory) +include(ECMQueryQmake) include(KDEPackageAppTemplates) include(KDEClangFormat) @@ -139,6 +140,9 @@ add_definitions(-DQT_NO_URL_CAST_FROM_STRING) +# locate qdbus in the Qt path because not every distro makes a symlink at /usr/bin/qdbus +query_qmake(QtBinariesDir QT_INSTALL_BINS) + add_subdirectory(doc) add_subdirectory(libkworkspace) add_subdirectory(libdbusmenuqt) diff --git a/wallpapers/image/CMakeLists.txt b/wallpapers/image/CMakeLists.txt --- a/wallpapers/image/CMakeLists.txt +++ b/wallpapers/image/CMakeLists.txt @@ -36,7 +36,8 @@ install(FILES qmldir DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/plasma/wallpapers/image) -install(FILES wallpaper.knsrc DESTINATION ${KDE_INSTALL_KNSRCDIR}) +configure_file(wallpaper.knsrc.cmake ${CMAKE_CURRENT_BINARY_DIR}/wallpaper.knsrc) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/wallpaper.knsrc DESTINATION ${KDE_INSTALL_KNSRCDIR}) plasma_install_package(imagepackage org.kde.image wallpapers wallpaper) plasma_install_package(slideshowpackage org.kde.slideshow wallpapers wallpaper) diff --git a/wallpapers/image/wallpaper.knsrc b/wallpapers/image/wallpaper.knsrc.cmake rename from wallpapers/image/wallpaper.knsrc rename to wallpapers/image/wallpaper.knsrc.cmake --- a/wallpapers/image/wallpaper.knsrc +++ b/wallpapers/image/wallpaper.knsrc.cmake @@ -46,4 +46,4 @@ StandardResource=wallpaper Uncompress=archive -AdoptionCommand=qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript 'for (var i in desktops()) { d = desktops()[i]; d.wallpaperPlugin = "org.kde.image"; d.currentConfigGroup = ["Wallpaper", "org.kde.image", "General"]; d.writeConfig("Image", "%f") }' +AdoptionCommand=@QtBinariesDir@/qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript 'for (var i in desktops()) { d = desktops()[i]; d.wallpaperPlugin = "org.kde.image"; d.currentConfigGroup = ["Wallpaper", "org.kde.image", "General"]; d.writeConfig("Image", "%f") }'