diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -113,17 +113,7 @@ configure_file(config-workspace.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-workspace.h) configure_file(config-unix.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-unix.h ) configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h) -configure_file(plasma.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/plasma.desktop) -install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/plasma.desktop - DESTINATION ${KDE_INSTALL_DATADIR}/xsessions -) - -configure_file(plasmawayland.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/plasmawayland.desktop) -install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/plasmawayland.desktop - DESTINATION ${KDE_INSTALL_DATADIR}/wayland-sessions -) +add_subdirectory(login-sessions) plasma_install_package(lookandfeel org.kde.breeze.desktop look-and-feel lookandfeel) diff --git a/login-sessions/CMakeLists.txt b/login-sessions/CMakeLists.txt new file mode 100644 --- /dev/null +++ b/login-sessions/CMakeLists.txt @@ -0,0 +1,19 @@ +## For Plasma end users + +configure_file(plasma.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/plasma.desktop) +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/plasma.desktop + DESTINATION ${KDE_INSTALL_DATADIR}/xsessions +) + +configure_file(plasmawayland.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/plasmawayland.desktop) +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/plasmawayland.desktop + DESTINATION ${KDE_INSTALL_DATADIR}/wayland-sessions +) + +## For Plasma developers +configure_file(startplasma-dev.sh.cmake ${CMAKE_CURRENT_BINARY_DIR}/startplasma-dev.sh) +configure_file(plasmax11-dev.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/plasmax11-dev.desktop) +configure_file(plasmawayland-dev.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/plasmawayland-dev.desktop) +configure_file(install-sessions.sh.cmake ${CMAKE_CURRENT_BINARY_DIR}/install-sessions.sh) diff --git a/login-sessions/install-sessions.sh.cmake b/login-sessions/install-sessions.sh.cmake new file mode 100755 --- /dev/null +++ b/login-sessions/install-sessions.sh.cmake @@ -0,0 +1,7 @@ +#!/bin/sh +set -e + +install @CMAKE_CURRENT_BINARY_DIR@/plasmax11-dev.desktop /usr/share/xsessions/ +install @CMAKE_CURRENT_BINARY_DIR@/plasmawayland-dev.desktop /usr/share/wayland-sessions/ +install @CMAKE_BINARY_DIR@/prefix.sh @CMAKE_INSTALL_FULL_LIBEXECDIR@/plasma-dev-prefix.sh +install @CMAKE_CURRENT_BINARY_DIR@/startplasma-dev.sh @CMAKE_INSTALL_FULL_LIBEXECDIR@ diff --git a/plasma.desktop.cmake b/login-sessions/plasma.desktop.cmake rename from plasma.desktop.cmake rename to login-sessions/plasma.desktop.cmake diff --git a/login-sessions/plasmawayland-dev.desktop.cmake b/login-sessions/plasmawayland-dev.desktop.cmake new file mode 100644 --- /dev/null +++ b/login-sessions/plasmawayland-dev.desktop.cmake @@ -0,0 +1,6 @@ +[Desktop Entry] +Exec=@CMAKE_INSTALL_FULL_LIBEXECDIR@/startplasma-dev.sh -wayland +DesktopNames=KDE +Name=Plasma (Development ${CMAKE_INSTALL_FULL_BINDIR}) +Comment=Plasma by KDE +X-KDE-PluginInfo-Version=${PROJECT_VERSION} diff --git a/plasmawayland.desktop.cmake b/login-sessions/plasmawayland.desktop.cmake rename from plasmawayland.desktop.cmake rename to login-sessions/plasmawayland.desktop.cmake diff --git a/login-sessions/plasmax11-dev.desktop.cmake b/login-sessions/plasmax11-dev.desktop.cmake new file mode 100644 --- /dev/null +++ b/login-sessions/plasmax11-dev.desktop.cmake @@ -0,0 +1,7 @@ +[Desktop Entry] +Type=XSession +Exec=@CMAKE_INSTALL_FULL_LIBEXECDIR@/startplasma-dev.sh -x11 +DesktopNames=KDE +Name=Plasma (Development ${CMAKE_INSTALL_FULL_BINDIR}) +Comment=Plasma by KDE +X-KDE-PluginInfo-Version=${PROJECT_VERSION} diff --git a/login-sessions/startplasma-dev.sh.cmake b/login-sessions/startplasma-dev.sh.cmake new file mode 100755 --- /dev/null +++ b/login-sessions/startplasma-dev.sh.cmake @@ -0,0 +1,5 @@ +#!/bin/bash + +source @CMAKE_INSTALL_FULL_LIBEXECDIR@/plasma-dev-prefix.sh + +startplasma$@