[gnome-settings-daemon/wip/laney/systemd-user: 1/2] plugins: Add systemd user service files for all the plugins
- From: Iain Lane <iainl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-settings-daemon/wip/laney/systemd-user: 1/2] plugins: Add systemd user service files for all the plugins
- Date: Wed, 17 Jan 2018 17:43:07 +0000 (UTC)
commit a2e848c9087725fa00d55ea96741708445369c99
Author: Iain Lane <iain orangesquash org uk>
Date: Tue Jan 16 11:21:48 2018 +0000
plugins: Add systemd user service files for all the plugins
Using the facility added in the previous commit, we can add systemd user
service files for all plugins and know when they have started up.
For simplicity, we create a target which gnome-session can start to
activate all of g-s-d's plugins.
All units are practically identical, except for
- the media-keys and sound plugins wait for PulseAudio to start
This is heavily based on a patch originally by Bastien Nocera
<hadess hadess net>
Makefile.am | 2 ++
configure.ac | 11 +++++++++++
data/Makefile.am | 4 ++++
data/gnome-settings-daemon.target | 3 +++
plugins/a11y-keyboard/Makefile.am | 10 ++++++++++
plugins/a11y-keyboard/gsd-a11y-keyboard.service.in | 13 +++++++++++++
plugins/a11y-settings/Makefile.am | 16 +++++++++++++---
plugins/a11y-settings/gsd-a11y-settings.service.in | 13 +++++++++++++
plugins/clipboard/Makefile.am | 10 ++++++++++
plugins/clipboard/gsd-clipboard.service.in | 13 +++++++++++++
plugins/color/Makefile.am | 10 ++++++++++
plugins/color/gsd-color.service.in | 13 +++++++++++++
plugins/datetime/Makefile.am | 16 +++++++++++++---
plugins/datetime/gsd-datetime.service.in | 13 +++++++++++++
plugins/dummy/Makefile.am | 11 ++++++++++-
plugins/dummy/gsd-dummy.service.in | 13 +++++++++++++
plugins/housekeeping/Makefile.am | 18 +++++++++++++++---
plugins/housekeeping/gsd-housekeeping.service.in | 13 +++++++++++++
plugins/keyboard/Makefile.am | 10 ++++++++++
plugins/keyboard/gsd-keyboard.service.in | 13 +++++++++++++
plugins/media-keys/Makefile.am | 16 +++++++++++++---
plugins/media-keys/gsd-media-keys.service.in | 14 ++++++++++++++
plugins/mouse/Makefile.am | 13 ++++++++++---
plugins/mouse/gsd-mouse.service.in | 13 +++++++++++++
plugins/power/Makefile.am | 9 +++++++++
plugins/power/gsd-power.service.in | 13 +++++++++++++
plugins/print-notifications/Makefile.am | 16 +++++++++++++---
.../gsd-print-notifications.service.in | 13 +++++++++++++
plugins/rfkill/Makefile.am | 13 ++++++++++---
plugins/rfkill/gsd-rfkill.service.in | 13 +++++++++++++
plugins/screensaver-proxy/Makefile.am | 13 ++++++++++---
.../gsd-screensaver-proxy.service.in | 13 +++++++++++++
plugins/sharing/Makefile.am | 13 ++++++++++---
plugins/sharing/gsd-sharing.service.in | 13 +++++++++++++
plugins/smartcard/Makefile.am | 16 +++++++++++++---
plugins/smartcard/gsd-smartcard.service.in | 13 +++++++++++++
plugins/sound/Makefile.am | 16 +++++++++++++---
plugins/sound/gsd-sound.service.in | 14 ++++++++++++++
plugins/wacom/Makefile.am | 10 +++++++++-
plugins/wacom/gsd-wacom.service.in | 13 +++++++++++++
plugins/xsettings/Makefile.am | 10 ++++++++++
plugins/xsettings/gsd-xsettings.service.in | 13 +++++++++++++
42 files changed, 480 insertions(+), 35 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index 096c245..20c7901 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -8,6 +8,8 @@ SUBDIRS = \
tests \
$(NULL)
+AM_DISTCHECK_CONFIGURE_FLAGS = --with-systemduserunitdir='$${libdir}/systemd/user-distcheck'
+
# Honor aclocal flags
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
diff --git a/configure.ac b/configure.ac
index 454ddba..5027b10 100644
--- a/configure.ac
+++ b/configure.ac
@@ -104,6 +104,17 @@ else
fi
AM_CONDITIONAL(HAVE_GUDEV, test x$have_gudev = xyes)
+dnl ==========================================================================
+dnl systemd user unit directory
+PKG_CHECK_EXISTS([systemd],, [AC_MSG_ERROR([systemd development headers not found])])
+AC_ARG_WITH([systemduserunitdir],
+ AS_HELP_STRING([--with-systemduserunitdir=DIR], [Directory for systemd user service files]),
+ [],
+ [with_systemduserunitdir=$($PKG_CONFIG --variable=systemduserunitdir systemd)])
+if test x$with_systemduserunitdir != xno; then
+ AC_SUBST([systemduserunitdir], [$with_systemduserunitdir])
+fi
+
dnl ---------------------------------------------------------------------------
dnl - ALSA integration (default enabled)
dnl ---------------------------------------------------------------------------
diff --git a/data/Makefile.am b/data/Makefile.am
index 06fd2b3..b93cbb9 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -29,12 +29,16 @@ pkgconfig_DATA = gnome-settings-daemon.pc
@INTLTOOL_XML_NOMERGE_RULE@
+unitdir = $(systemduserunitdir)
+unit_DATA = gnome-settings-daemon.target
+
EXTRA_DIST = \
$(convert_DATA) \
$(gsettings_SCHEMAS:.xml=.xml.in.in) \
$(gsettings_ENUM_FILES) \
gnome-settings-daemon.pc.in \
$(api_DATA) \
+ $(unit_DATA) \
$(NULL)
DISTCLEANFILES = \
diff --git a/data/gnome-settings-daemon.target b/data/gnome-settings-daemon.target
new file mode 100644
index 0000000..baa7d54
--- /dev/null
+++ b/data/gnome-settings-daemon.target
@@ -0,0 +1,3 @@
+[Unit]
+Description=GNOME Settings daemon
+StopWhenUnneeded=yes
diff --git a/plugins/a11y-keyboard/Makefile.am b/plugins/a11y-keyboard/Makefile.am
index e57e882..ac5649e 100644
--- a/plugins/a11y-keyboard/Makefile.am
+++ b/plugins/a11y-keyboard/Makefile.am
@@ -29,14 +29,24 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.A11yKeyboard.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-a11y-keyboard.service.in
+unit_DATA = gsd-a11y-keyboard.service
+
+gsd-a11y-keyboard.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
$(desktop_in_files) \
+ $(unit_in_files) \
$(NULL)
CLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
DISTCLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
diff --git a/plugins/a11y-keyboard/gsd-a11y-keyboard.service.in
b/plugins/a11y-keyboard/gsd-a11y-keyboard.service.in
new file mode 100644
index 0000000..f4a2613
--- /dev/null
+++ b/plugins/a11y-keyboard/gsd-a11y-keyboard.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Keyboard accessibility
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-a11y-keyboard
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/a11y-settings/Makefile.am b/plugins/a11y-settings/Makefile.am
index d27e7c2..d617420 100644
--- a/plugins/a11y-settings/Makefile.am
+++ b/plugins/a11y-settings/Makefile.am
@@ -27,11 +27,21 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.A11ySettings.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-a11y-settings.service.in
+unit_DATA = gsd-a11y-settings.service
+
+gsd-a11y-settings.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
- $(desktop_in_files)
+ $(desktop_in_files) \
+ $(unit_in_files)
CLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
DISTCLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
diff --git a/plugins/a11y-settings/gsd-a11y-settings.service.in
b/plugins/a11y-settings/gsd-a11y-settings.service.in
new file mode 100644
index 0000000..2dc5844
--- /dev/null
+++ b/plugins/a11y-settings/gsd-a11y-settings.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Accessibility settings
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-a11y-settings
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/clipboard/Makefile.am b/plugins/clipboard/Makefile.am
index d27e712..8189428 100644
--- a/plugins/clipboard/Makefile.am
+++ b/plugins/clipboard/Makefile.am
@@ -36,14 +36,24 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Clipboard.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-clipboard.service.in
+unit_DATA = gsd-clipboard.service
+
+gsd-clipboard.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
$(desktop_in_files) \
+ $(unit_in_files) \
$(NULL)
CLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
DISTCLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
diff --git a/plugins/clipboard/gsd-clipboard.service.in b/plugins/clipboard/gsd-clipboard.service.in
new file mode 100644
index 0000000..867d185
--- /dev/null
+++ b/plugins/clipboard/gsd-clipboard.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Clipboard handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-clipboard
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/color/Makefile.am b/plugins/color/Makefile.am
index ef56daf..b128214 100644
--- a/plugins/color/Makefile.am
+++ b/plugins/color/Makefile.am
@@ -85,13 +85,23 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Color.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-color.service.in
+unit_DATA = gsd-color.service
+
+gsd-color.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
$(desktop_in_files) \
+ $(unit_in_files) \
test-data/Lenovo-T61-Internal.bin \
test-data/LG-L225W-External.bin
CLEANFILES += \
+ $(unit_DATA) \
$(desktop_DATA)
DISTCLEANFILES = \
+ $(unit_DATA) \
$(desktop_DATA)
diff --git a/plugins/color/gsd-color.service.in b/plugins/color/gsd-color.service.in
new file mode 100644
index 0000000..b3ede2e
--- /dev/null
+++ b/plugins/color/gsd-color.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Color management
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-color
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/datetime/Makefile.am b/plugins/datetime/Makefile.am
index 48ba891..79879ae 100644
--- a/plugins/datetime/Makefile.am
+++ b/plugins/datetime/Makefile.am
@@ -50,12 +50,22 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Datetime.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-datetime.service.in
+unit_DATA = gsd-datetime.service
+
+gsd-datetime.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
timedated1-interface.xml \
- $(desktop_in_files)
+ $(desktop_in_files) \
+ $(unit_in_files)
CLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
DISTCLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
diff --git a/plugins/datetime/gsd-datetime.service.in b/plugins/datetime/gsd-datetime.service.in
new file mode 100644
index 0000000..6d0e3d0
--- /dev/null
+++ b/plugins/datetime/gsd-datetime.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Date & Time handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-datetime
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/dummy/Makefile.am b/plugins/dummy/Makefile.am
index 229515b..4e72a41 100644
--- a/plugins/dummy/Makefile.am
+++ b/plugins/dummy/Makefile.am
@@ -23,25 +23,34 @@ gsd_dummy_LDADD = \
$(DUMMY_LIBS)
desktopdir = $(sysconfdir)/xdg/autostart
+unitdir = $(systemduserunitdir)
desktop_DATA =
+unit_DATA =
if !SMARTCARD_SUPPORT
desktop_DATA += org.gnome.SettingsDaemon.Smartcard.desktop
+unit_DATA += gsd-smartcard.service
endif
if !HAVE_WACOM
desktop_DATA += org.gnome.SettingsDaemon.Wacom.desktop
+unit_DATA += gsd-wacom.service
endif
if !BUILD_PRINT_NOTIFICATIONS
desktop_DATA += org.gnome.SettingsDaemon.PrintNotifications.desktop
+unit_DATA += gsd-print-notifications.service
endif
if !BUILD_RFKILL
desktop_DATA += org.gnome.SettingsDaemon.Rfkill.desktop
+unit_DATA += gsd-rfkill.service
endif
%.desktop: org.gnome.SettingsDaemon.Dummy.desktop.in Makefile
$(AM_V_GEN) PLUGINNAME=`echo $@ | sed 's,.desktop,,'` && sed -e "s|\@pluginname\@|$$PLUGINNAME|" -e
"s|\@libexecdir\@|$(libexecdir)|" $< > $@
-EXTRA_DIST = org.gnome.SettingsDaemon.Dummy.desktop.in
+%.service: gsd-dummy.service.in Makefile
+ $(AM_V_GEN) PLUGINNAME=`echo $@ | sed 's,.service,,'` && sed -e "s|\@pluginname\@|$$PLUGINNAME|" -e
"s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
+EXTRA_DIST = org.gnome.SettingsDaemon.Dummy.desktop.in gsd-dummy.service.in
CLEANFILES = $(NULL)
diff --git a/plugins/dummy/gsd-dummy.service.in b/plugins/dummy/gsd-dummy.service.in
new file mode 100644
index 0000000..f118379
--- /dev/null
+++ b/plugins/dummy/gsd-dummy.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=GNOME Settings Daemon dummy replacement plugin (@pluginname@)
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-dummy --dummy-name=@pluginname@
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/housekeeping/Makefile.am b/plugins/housekeeping/Makefile.am
index 3841edf..01beab8 100644
--- a/plugins/housekeeping/Makefile.am
+++ b/plugins/housekeeping/Makefile.am
@@ -60,8 +60,20 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Housekeeping.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
-EXTRA_DIST = $(desktop_in_files)
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-housekeeping.service.in
+unit_DATA = gsd-housekeeping.service
-CLEANFILES = $(desktop_DATA)
+gsd-housekeeping.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
+EXTRA_DIST = \
+ $(desktop_in_files) \
+ $(unit_in_files)
+CLEANFILES = \
+ $(desktop_DATA) \
+ $(unit_DATA)
-DISTCLEANFILES = $(desktop_DATA)
+DISTCLEANFILES = \
+ $(desktop_DATA) \
+ $(unit_DATA)
diff --git a/plugins/housekeeping/gsd-housekeeping.service.in
b/plugins/housekeeping/gsd-housekeeping.service.in
new file mode 100644
index 0000000..602ae66
--- /dev/null
+++ b/plugins/housekeeping/gsd-housekeeping.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Housekeeping
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-housekeeping
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/keyboard/Makefile.am b/plugins/keyboard/Makefile.am
index e4e6dfe..0036e95 100644
--- a/plugins/keyboard/Makefile.am
+++ b/plugins/keyboard/Makefile.am
@@ -34,14 +34,24 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Keyboard.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-keyboard.service.in
+unit_DATA = gsd-keyboard.service
+
+gsd-keyboard.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
$(desktop_in_files) \
+ $(unit_in_files) \
$(NULL)
CLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
DISTCLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
diff --git a/plugins/keyboard/gsd-keyboard.service.in b/plugins/keyboard/gsd-keyboard.service.in
new file mode 100644
index 0000000..f01c488
--- /dev/null
+++ b/plugins/keyboard/gsd-keyboard.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Keyboard handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-keyboard
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/media-keys/Makefile.am b/plugins/media-keys/Makefile.am
index 6f7d88f..1b26e5a 100644
--- a/plugins/media-keys/Makefile.am
+++ b/plugins/media-keys/Makefile.am
@@ -34,6 +34,13 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.MediaKeys.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-media-keys.service.in
+unit_DATA = gsd-media-keys.service
+
+gsd-media-keys.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
libexec_PROGRAMS = gsd-media-keys
gsd_media_keys_SOURCES = \
@@ -80,11 +87,14 @@ EXTRA_DIST = \
README.media-keys-API \
org.gnome.ShellKeyGrabber.xml \
$(plugin_in_files) \
- $(desktop_in_files)
+ $(desktop_in_files) \
+ $(unit_in_files)
CLEANFILES = \
$(BUILT_SOURCES) \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
DISTCLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
diff --git a/plugins/media-keys/gsd-media-keys.service.in b/plugins/media-keys/gsd-media-keys.service.in
new file mode 100644
index 0000000..4f53b48
--- /dev/null
+++ b/plugins/media-keys/gsd-media-keys.service.in
@@ -0,0 +1,14 @@
+[Unit]
+Description=Media keys handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+Requires=pulseaudio.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-media-keys
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/mouse/Makefile.am b/plugins/mouse/Makefile.am
index fa095c3..5f7fc34 100644
--- a/plugins/mouse/Makefile.am
+++ b/plugins/mouse/Makefile.am
@@ -7,6 +7,13 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Mouse.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-mouse.service.in
+unit_DATA = gsd-mouse.service
+
+gsd-mouse.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
libexec_PROGRAMS = gsd-locate-pointer
gsd_locate_pointer_SOURCES = \
@@ -45,6 +52,6 @@ gsd_mouse_LDADD = \
$(MOUSE_LIBS) \
$(LIBM)
-EXTRA_DIST = $(desktop_in_files)
-CLEANFILES = $(desktop_DATA)
-DISTCLEANFILES = $(desktop_DATA)
+EXTRA_DIST = $(desktop_in_files) $(unit_in_files)
+CLEANFILES = $(desktop_DATA) $(unit_DATA)
+DISTCLEANFILES = $(desktop_DATA) $(unit_DATA)
diff --git a/plugins/mouse/gsd-mouse.service.in b/plugins/mouse/gsd-mouse.service.in
new file mode 100644
index 0000000..2bbe1cf
--- /dev/null
+++ b/plugins/mouse/gsd-mouse.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Mouse handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-mouse
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/power/Makefile.am b/plugins/power/Makefile.am
index 94606ad..daff826 100644
--- a/plugins/power/Makefile.am
+++ b/plugins/power/Makefile.am
@@ -9,6 +9,13 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Power.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-power.service.in
+unit_DATA = gsd-power.service
+
+gsd-power.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
org.gnome.settings-daemon.plugins.power.policy.in: org.gnome.settings-daemon.plugins.power.policy.in.in
Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
@@ -60,6 +67,7 @@ gsd_power_LDADD = \
EXTRA_DIST = \
$(desktop_in_files) \
+ $(unit_in_files) \
$(gsd_backlight_helper_SOURCES) \
$(NULL)
@@ -125,6 +133,7 @@ clean-local:
CLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
org.gnome.settings-daemon.plugins.power.policy \
org.gnome.settings-daemon.plugins.power.policy.in \
$(GSD_POWER_ENUM_FILES) \
diff --git a/plugins/power/gsd-power.service.in b/plugins/power/gsd-power.service.in
new file mode 100644
index 0000000..729a30a
--- /dev/null
+++ b/plugins/power/gsd-power.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Power management handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-power
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/print-notifications/Makefile.am b/plugins/print-notifications/Makefile.am
index e845f1f..20cb81b 100644
--- a/plugins/print-notifications/Makefile.am
+++ b/plugins/print-notifications/Makefile.am
@@ -7,6 +7,13 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.PrintNotifications.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-print-notifications.service.in
+unit_DATA = gsd-print-notifications.service
+
+gsd-print-notifications.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
libexec_PROGRAMS = gsd-printer
gsd_printer_SOURCES = \
@@ -48,10 +55,13 @@ gsd_print_notifications_LDADD = \
$(PRINT_NOTIFICATIONS_LIBS)
EXTRA_DIST = \
- $(desktop_in_files)
+ $(desktop_in_files) \
+ $(unit_in_files)
CLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
DISTCLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
diff --git a/plugins/print-notifications/gsd-print-notifications.service.in
b/plugins/print-notifications/gsd-print-notifications.service.in
new file mode 100644
index 0000000..1e9e044
--- /dev/null
+++ b/plugins/print-notifications/gsd-print-notifications.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Print notifications
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-print-notifications
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/rfkill/Makefile.am b/plugins/rfkill/Makefile.am
index 3c5ec47..91795de 100644
--- a/plugins/rfkill/Makefile.am
+++ b/plugins/rfkill/Makefile.am
@@ -33,6 +33,13 @@ org.gnome.SettingsDaemon.Rfkill.desktop: $(desktop_in_files) Makefile
udevrulesdir = $(prefix)/lib/udev/rules.d
udevrules_DATA = 61-gnome-settings-daemon-rfkill.rules
-EXTRA_DIST = $(udevrules_DATA) $(desktop_in_files)
-CLEANFILES = $(desktop_DATA)
-DISTCLEANFILES = $(desktop_DATA)
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-rfkill.service.in
+unit_DATA = gsd-rfkill.service
+
+gsd-rfkill.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
+EXTRA_DIST = $(udevrules_DATA) $(desktop_in_files) $(unit_in_files)
+CLEANFILES = $(desktop_DATA) $(unit_DATA)
+DISTCLEANFILES = $(desktop_DATA) $(unit_DATA)
diff --git a/plugins/rfkill/gsd-rfkill.service.in b/plugins/rfkill/gsd-rfkill.service.in
new file mode 100644
index 0000000..66b3e4c
--- /dev/null
+++ b/plugins/rfkill/gsd-rfkill.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=RFKill handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-rfkill
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/screensaver-proxy/Makefile.am b/plugins/screensaver-proxy/Makefile.am
index 3c9de44..d07a482 100644
--- a/plugins/screensaver-proxy/Makefile.am
+++ b/plugins/screensaver-proxy/Makefile.am
@@ -32,8 +32,15 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.ScreensaverProxy.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
-EXTRA_DIST = $(desktop_in_files)
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-screensaver-proxy.service.in
+unit_DATA = gsd-screensaver-proxy.service
-CLEANFILES = $(desktop_DATA)
+gsd-screensaver-proxy.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
+EXTRA_DIST = $(desktop_in_files) $(unit_in_files)
+
+CLEANFILES = $(desktop_DATA) $(unit_DATA)
-DISTCLEANFILES = $(desktop_DATA)
+DISTCLEANFILES = $(desktop_DATA) $(unit_DATA)
diff --git a/plugins/screensaver-proxy/gsd-screensaver-proxy.service.in
b/plugins/screensaver-proxy/gsd-screensaver-proxy.service.in
new file mode 100644
index 0000000..7215ee8
--- /dev/null
+++ b/plugins/screensaver-proxy/gsd-screensaver-proxy.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Freedesktop screensaver handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-screensaver-proxy
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/sharing/Makefile.am b/plugins/sharing/Makefile.am
index 3fae49e..39cd433 100644
--- a/plugins/sharing/Makefile.am
+++ b/plugins/sharing/Makefile.am
@@ -28,6 +28,13 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Sharing.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
-EXTRA_DIST = $(desktop_in_files)
-CLEANFILES = $(desktop_DATA)
-DISTCLEANFILES = $(desktop_DATA)
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-sharing.service.in
+unit_DATA = gsd-sharing.service
+
+gsd-sharing.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
+EXTRA_DIST = $(desktop_in_files) $(unit_in_files)
+CLEANFILES = $(desktop_DATA) $(unit_DATA)
+DISTCLEANFILES = $(desktop_DATA) $(unit_DATA)
diff --git a/plugins/sharing/gsd-sharing.service.in b/plugins/sharing/gsd-sharing.service.in
new file mode 100644
index 0000000..8752cc5
--- /dev/null
+++ b/plugins/sharing/gsd-sharing.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Sharing handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-rfkill
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/smartcard/Makefile.am b/plugins/smartcard/Makefile.am
index 4a2951a..206c3d5 100644
--- a/plugins/smartcard/Makefile.am
+++ b/plugins/smartcard/Makefile.am
@@ -62,16 +62,26 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Smartcard.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-smartcard.service.in
+unit_DATA = gsd-smartcard.service
+
+gsd-smartcard.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
gsd-smartcard-enum-types.c.in \
gsd-smartcard-enum-types.h.in \
org.gnome.SettingsDaemon.Smartcard.xml \
- $(desktop_in_files)
+ $(desktop_in_files) \
+ $(unit_in_files)
CLEANFILES = \
$(BUILT_SOURCES) \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
DISTCLEANFILES = \
$(BUILT_SOURCES) \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
diff --git a/plugins/smartcard/gsd-smartcard.service.in b/plugins/smartcard/gsd-smartcard.service.in
new file mode 100644
index 0000000..14cbb53
--- /dev/null
+++ b/plugins/smartcard/gsd-smartcard.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Smartcard handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-smartcard
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/sound/Makefile.am b/plugins/sound/Makefile.am
index 472bdbf..371b318 100644
--- a/plugins/sound/Makefile.am
+++ b/plugins/sound/Makefile.am
@@ -27,11 +27,21 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Sound.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-sound.service.in
+unit_DATA = gsd-sound.service
+
+gsd-sound.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
- $(desktop_in_files)
+ $(desktop_in_files) \
+ $(unit_in_Files)
CLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
DISTCLEANFILES = \
- $(desktop_DATA)
+ $(desktop_DATA) \
+ $(unit_DATA)
diff --git a/plugins/sound/gsd-sound.service.in b/plugins/sound/gsd-sound.service.in
new file mode 100644
index 0000000..d8dbdf7
--- /dev/null
+++ b/plugins/sound/gsd-sound.service.in
@@ -0,0 +1,14 @@
+[Unit]
+Description=Sound sample caching handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+Requires=pulseaudio.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-sound
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/wacom/Makefile.am b/plugins/wacom/Makefile.am
index 1637a19..687f99a 100644
--- a/plugins/wacom/Makefile.am
+++ b/plugins/wacom/Makefile.am
@@ -66,8 +66,16 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.Wacom.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
-EXTRA_DIST += $(desktop_in_files)
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-wacom.service.in
+unit_DATA = gsd-wacom.service
+
+gsd-wacom.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
+EXTRA_DIST += $(desktop_in_files) $(unit_in_files)
CLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
org.gnome.settings-daemon.plugins.wacom.policy \
org.gnome.settings-daemon.plugins.wacom.policy.in
diff --git a/plugins/wacom/gsd-wacom.service.in b/plugins/wacom/gsd-wacom.service.in
new file mode 100644
index 0000000..6042213
--- /dev/null
+++ b/plugins/wacom/gsd-wacom.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=Wacom handling
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-wacom
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
diff --git a/plugins/xsettings/Makefile.am b/plugins/xsettings/Makefile.am
index 0e9d4bf..54b0c91 100644
--- a/plugins/xsettings/Makefile.am
+++ b/plugins/xsettings/Makefile.am
@@ -93,15 +93,25 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
org.gnome.SettingsDaemon.XSettings.desktop: $(desktop_in_files) Makefile
$(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+unitdir = $(systemduserunitdir)
+unit_in_files = gsd-xsettings.service.in
+unit_DATA = gsd-xsettings.service
+
+gsd-xsettings.service: $(unit_in_files) Makefile
+ $(AM_V_GEN) sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+
EXTRA_DIST = \
README.xsettings \
$(desktop_in_files) \
+ $(unit_in_Files) \
$(NULL)
CLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
DISTCLEANFILES = \
$(desktop_DATA) \
+ $(unit_DATA) \
$(NULL)
diff --git a/plugins/xsettings/gsd-xsettings.service.in b/plugins/xsettings/gsd-xsettings.service.in
new file mode 100644
index 0000000..c0f4092
--- /dev/null
+++ b/plugins/xsettings/gsd-xsettings.service.in
@@ -0,0 +1,13 @@
+[Unit]
+Description=XSettings
+PartOf=graphical-session.target
+After=gnome-session.service graphical-session-pre.service
+
+[Service]
+Type=notify
+NotifyAccess=main
+ExecStart=@libexecdir@/gsd-xsettings
+Restart=on-failure
+
+[Install]
+WantedBy=gnome-settings-daemon.target
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]