From d90092b6f2d57728bdb61adfde56d4b593050277 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Tue, 19 Jul 2016 09:49:49 +0200 Subject: Adding a systemd user session unit --- data/CMakeLists.txt | 30 ++++++++++++++++++++++++++++++ data/indicator-display.override | 1 + data/indicator-display.service.in | 7 +++++++ debian/control | 3 +++ 4 files changed, 41 insertions(+) create mode 100644 data/indicator-display.override create mode 100644 data/indicator-display.service.in diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt index 7edaa44..4fbb925 100644 --- a/data/CMakeLists.txt +++ b/data/CMakeLists.txt @@ -59,6 +59,36 @@ install (FILES "${UPSTART_XDG_AUTOSTART_FILE}" DESTINATION "${UPSTART_XDG_AUTOSTART_DIR}" RENAME "${XDG_AUTOSTART_NAME}") +## +## Systemd Unit File +## + +# where to install +pkg_get_variable(SYSTEMD_USER_DIR systemd systemduserunitdir) +message (STATUS "${SYSTEMD_USER_DIR} is the systemd user unit file install dir") + +set (SYSTEMD_USER_NAME "${CMAKE_PROJECT_NAME}.service") +set (SYSTEMD_USER_FILE "${CMAKE_CURRENT_BINARY_DIR}/${SYSTEMD_USER_NAME}") +set (SYSTEMD_USER_FILE_IN "${CMAKE_CURRENT_SOURCE_DIR}/${SYSTEMD_USER_NAME}.in") + +# build it +set (pkglibexecdir "${CMAKE_INSTALL_FULL_PKGLIBEXECDIR}") +configure_file ("${SYSTEMD_USER_FILE_IN}" "${SYSTEMD_USER_FILE}") + +# install it +install (FILES "${SYSTEMD_USER_FILE}" + DESTINATION "${SYSTEMD_USER_DIR}") + +## +## Upstart systemd override Job File +## + +set (UPSTART_SYSTEMD_OVERRIDE_DIR "${CMAKE_INSTALL_FULL_DATADIR}/upstart/systemd-session/upstart") +message (STATUS "${UPSTART_SYSTEMD_OVERRIDE_DIR} is the Upstart override Job File for systemd dir") + +install (FILES "${CMAKE_CURRENT_SOURCE_DIR}/${CMAKE_PROJECT_NAME}.override" + DESTINATION "${UPSTART_SYSTEMD_OVERRIDE_DIR}") + ## ## Unity Indicator File ## diff --git a/data/indicator-display.override b/data/indicator-display.override new file mode 100644 index 0000000..2905494 --- /dev/null +++ b/data/indicator-display.override @@ -0,0 +1 @@ +manual diff --git a/data/indicator-display.service.in b/data/indicator-display.service.in new file mode 100644 index 0000000..78e38ad --- /dev/null +++ b/data/indicator-display.service.in @@ -0,0 +1,7 @@ +[Unit] +Description=Indicator Display Backend +PartOf=graphical-session.target +After=indicators-pre.target + +[Service] +ExecStart=@pkglibexecdir@/indicator-display-service diff --git a/debian/control b/debian/control index 90e2590..65950a2 100644 --- a/debian/control +++ b/debian/control @@ -23,6 +23,8 @@ Build-Depends: cmake, # for packaging debhelper (>= 9), dh-translations, +# for systemd unit + systemd, Standards-Version: 3.9.5 Homepage: http://launchpad.net/indicator-display/ X-Ubuntu-Use-Langpack: yes @@ -36,5 +38,6 @@ Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, gsettings-ubuntu-schemas (>= 0.0.2+14.10.20140813), + indicator-common, Description: Collection of small indicators Indicators too small to merit separate codebases, such as Rotation Lock -- cgit v1.2.3