[gvfs] Add a corresponding systemd user service for every D-Bus session service



commit dc7040d7f8b81658817b0a633092f85a4f4963fd
Author: Simon McVittie <simon mcvittie collabora co uk>
Date:   Tue Sep 29 20:33:31 2015 +0100

    Add a corresponding systemd user service for every D-Bus session service
    
    When using "systemd --user" in conjunction with "dbus-daemon --session
    --systemd-activation", this ensures that each daemon is correctly placed
    in its own cgroup, instead of being treated as part of dbus.service.
    
    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=755760

 daemon/Makefile.am                                 |    8 ++++++-
 daemon/gvfs-daemon.service.in                      |    7 ++++++
 daemon/org.gtk.vfs.Daemon.service.in               |    1 +
 metadata/Makefile.am                               |    6 +++++
 metadata/gvfs-metadata.service.in                  |    7 ++++++
 metadata/org.gtk.vfs.Metadata.service.in           |    1 +
 monitor/afc/Makefile.am                            |   23 +++++++++++++++----
 monitor/afc/gvfs-afc-volume-monitor.service.in     |    7 ++++++
 .../afc/org.gtk.vfs.AfcVolumeMonitor.service.in    |    1 +
 monitor/gdu/Makefile.am                            |   22 ++++++++++++++++--
 monitor/gdu/gvfs-gdu-volume-monitor.service.in     |    7 ++++++
 .../gdu/org.gtk.vfs.GduVolumeMonitor.service.in    |    1 +
 monitor/goa/Makefile.am                            |   22 +++++++++++++++---
 monitor/goa/gvfs-goa-volume-monitor.service.in     |    7 ++++++
 .../goa/org.gtk.vfs.GoaVolumeMonitor.service.in    |    1 +
 monitor/gphoto2/Makefile.am                        |   23 +++++++++++++++++--
 .../gphoto2/gvfs-gphoto2-volume-monitor.service.in |    7 ++++++
 .../org.gtk.vfs.GPhoto2VolumeMonitor.service.in    |    1 +
 monitor/hal/Makefile.am                            |   23 +++++++++++++++++--
 monitor/hal/gvfs-hal-volume-monitor.service.in     |    7 ++++++
 .../hal/org.gtk.vfs.HalVolumeMonitor.service.in    |    1 +
 monitor/mtp/Makefile.am                            |   22 ++++++++++++++++--
 monitor/mtp/gvfs-mtp-volume-monitor.service.in     |    7 ++++++
 .../mtp/org.gtk.vfs.MTPVolumeMonitor.service.in    |    1 +
 monitor/udisks2/Makefile.am                        |   23 +++++++++++++++++--
 .../udisks2/gvfs-udisks2-volume-monitor.service.in |    7 ++++++
 .../org.gtk.vfs.UDisks2VolumeMonitor.service.in    |    1 +
 27 files changed, 219 insertions(+), 25 deletions(-)
---
diff --git a/daemon/Makefile.am b/daemon/Makefile.am
index da3d728..79113c7 100644
--- a/daemon/Makefile.am
+++ b/daemon/Makefile.am
@@ -31,7 +31,7 @@ gvfs_gschemas_convert =
 gvfs_gschemas_dist =
 gvfs_gschemas_convert_dist =
 
-# D-BUS service file
+# D-Bus and systemd service files
 %.service: %.service.in ../config.log
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
@@ -39,6 +39,10 @@ servicedir = $(DBUS_SERVICE_DIR)
 service_in_files = org.gtk.vfs.Daemon.service.in
 service_DATA = org.gtk.vfs.Daemon.service
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-daemon.service.in
+systemd_user_DATA = gvfs-daemon.service
+
 %.mount: %.mount.in ../config.log
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
@@ -137,6 +141,7 @@ noinst_DATA = $(mount_DATA:.mount=.localmount)
 
 EXTRA_DIST =                           \
        $(service_in_files)             \
+       $(systemd_user_in_files)        \
        $(mount_in_files)               \
        $(gvfs_gschemas_dist)           \
        $(gvfs_gschemas_convert_dist)   \
@@ -148,6 +153,7 @@ DISTCLEANFILES = $(mount_DATA) $(noinst_DATA)
 CLEANFILES =                                   \
        $(gsettings__enum_file)                 \
        $(service_DATA)                         \
+       $(systemd_user_DATA)                    \
        *.gschema.valid
 
 noinst_PROGRAMS =                              \
diff --git a/daemon/gvfs-daemon.service.in b/daemon/gvfs-daemon.service.in
new file mode 100644
index 0000000..9f4abb5
--- /dev/null
+++ b/daemon/gvfs-daemon.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service
+
+[Service]
+ExecStart= libexecdir@/gvfsd
+Type=dbus
+BusName=org.gtk.vfs.Daemon
diff --git a/daemon/org.gtk.vfs.Daemon.service.in b/daemon/org.gtk.vfs.Daemon.service.in
index 00fe531..fc25c3a 100644
--- a/daemon/org.gtk.vfs.Daemon.service.in
+++ b/daemon/org.gtk.vfs.Daemon.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.Daemon
 Exec= libexecdir@/gvfsd
+SystemdService=gvfs-daemon.service
diff --git a/metadata/Makefile.am b/metadata/Makefile.am
index 9490cd6..e15e40e 100644
--- a/metadata/Makefile.am
+++ b/metadata/Makefile.am
@@ -72,12 +72,18 @@ servicedir = $(DBUS_SERVICE_DIR)
 service_in_files = org.gtk.vfs.Metadata.service.in
 service_DATA = org.gtk.vfs.Metadata.service
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-metadata.service.in
+systemd_user_DATA = gvfs-metadata.service
+
 EXTRA_DIST =                           \
        $(service_in_files)             \
+       $(systemd_user_in_files)        \
        dbus-interface.xml              \
        $(NULL)
 
 CLEANFILES =                           \
        $(dbus_built_sources)           \
        $(service_DATA)                 \
+       $(systemd_user_DATA)            \
        $(NULL)
diff --git a/metadata/gvfs-metadata.service.in b/metadata/gvfs-metadata.service.in
new file mode 100644
index 0000000..323728f
--- /dev/null
+++ b/metadata/gvfs-metadata.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem metadata service
+
+[Service]
+ExecStart= libexecdir@/gvfsd-metadata
+Type=dbus
+BusName=org.gtk.vfs.Metadata
diff --git a/metadata/org.gtk.vfs.Metadata.service.in b/metadata/org.gtk.vfs.Metadata.service.in
index 9893237..40d4235 100644
--- a/metadata/org.gtk.vfs.Metadata.service.in
+++ b/metadata/org.gtk.vfs.Metadata.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.Metadata
 Exec= libexecdir@/gvfsd-metadata
+SystemdService=gvfs-metadata.service
diff --git a/monitor/afc/Makefile.am b/monitor/afc/Makefile.am
index 0be5f12..bde7a90 100644
--- a/monitor/afc/Makefile.am
+++ b/monitor/afc/Makefile.am
@@ -35,13 +35,26 @@ servicedir = $(datadir)/dbus-1/services
 service_in_files = org.gtk.vfs.AfcVolumeMonitor.service.in
 service_DATA = $(service_in_files:.service.in=.service)
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-afc-volume-monitor.service.in
+systemd_user_DATA = $(systemd_user_in_files:.service.in=.service)
+
 $(service_DATA): $(service_in_files) Makefile
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-clean-local:
-       rm -f *~ *.loT $(BUILT_SOURCES) $(service_DATA)
-
-DISTCLEANFILES = $(service_DATA)
+$(systemd_user_DATA): $(systemd_user_in_files) Makefile
+       $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-EXTRA_DIST = $(service_in_files) afc.monitor
+CLEANFILES = \
+       *~ \
+       *.loT \
+       $(BUILT_SOURCES) \
+       $(service_DATA) \
+       $(systemd_user_DATA) \
+       $(NULL)
 
+EXTRA_DIST = \
+       $(service_in_files) \
+       $(systemd_user_in_files) \
+       $(remote_volume_monitors_DATA) \
+       $(NULL)
diff --git a/monitor/afc/gvfs-afc-volume-monitor.service.in b/monitor/afc/gvfs-afc-volume-monitor.service.in
new file mode 100644
index 0000000..14fbed8
--- /dev/null
+++ b/monitor/afc/gvfs-afc-volume-monitor.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service - Apple File Conduit monitor
+
+[Service]
+ExecStart= libexecdir@/gvfs-afc-volume-monitor
+Type=dbus
+BusName=org.gtk.vfs.AfcVolumeMonitor
diff --git a/monitor/afc/org.gtk.vfs.AfcVolumeMonitor.service.in 
b/monitor/afc/org.gtk.vfs.AfcVolumeMonitor.service.in
index 40e84f2..297eea3 100644
--- a/monitor/afc/org.gtk.vfs.AfcVolumeMonitor.service.in
+++ b/monitor/afc/org.gtk.vfs.AfcVolumeMonitor.service.in
@@ -1,4 +1,5 @@
 [D-BUS Service]
 Name=org.gtk.vfs.AfcVolumeMonitor
 Exec= libexecdir@/gvfs-afc-volume-monitor
+SystemdService=gvfs-afc-volume-monitor.service
 
diff --git a/monitor/gdu/Makefile.am b/monitor/gdu/Makefile.am
index e483b94..0c5c4e8 100644
--- a/monitor/gdu/Makefile.am
+++ b/monitor/gdu/Makefile.am
@@ -43,10 +43,26 @@ servicedir       = $(datadir)/dbus-1/services
 service_in_files = org.gtk.vfs.GduVolumeMonitor.service.in
 service_DATA     = $(service_in_files:.service.in=.service)
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-gdu-volume-monitor.service.in
+systemd_user_DATA = $(systemd_user_in_files:.service.in=.service)
+
 $(service_DATA): $(service_in_files) Makefile
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-clean-local:
-       rm -f *~ *.loT $(BUILT_SOURCES) $(service_DATA)
+$(systemd_user_DATA): $(systemd_user_in_files) Makefile
+       $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-EXTRA_DIST = $(service_in_files) gdu.monitor
+CLEANFILES = \
+       *~ \
+       *.loT \
+       $(BUILT_SOURCES) \
+       $(service_DATA) \
+       $(systemd_user_DATA) \
+       $(NULL)
+
+EXTRA_DIST = \
+       $(service_in_files) \
+       $(systemd_user_in_files) \
+       $(remote_volume_monitors_DATA) \
+       $(NULL)
diff --git a/monitor/gdu/gvfs-gdu-volume-monitor.service.in b/monitor/gdu/gvfs-gdu-volume-monitor.service.in
new file mode 100644
index 0000000..f25309d
--- /dev/null
+++ b/monitor/gdu/gvfs-gdu-volume-monitor.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service - GNOME Disk Utility monitor
+
+[Service]
+ExecStart= libexecdir@/gvfs-gdu-volume-monitor
+Type=dbus
+BusName=org.gtk.vfs.GduVolumeMonitor
diff --git a/monitor/gdu/org.gtk.vfs.GduVolumeMonitor.service.in 
b/monitor/gdu/org.gtk.vfs.GduVolumeMonitor.service.in
index f053491..be73c45 100644
--- a/monitor/gdu/org.gtk.vfs.GduVolumeMonitor.service.in
+++ b/monitor/gdu/org.gtk.vfs.GduVolumeMonitor.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.GduVolumeMonitor
 Exec= libexecdir@/gvfs-gdu-volume-monitor
+SystemdService=gvfs-gdu-volume-monitor.service
diff --git a/monitor/goa/Makefile.am b/monitor/goa/Makefile.am
index 1928e2e..c1c45d9 100644
--- a/monitor/goa/Makefile.am
+++ b/monitor/goa/Makefile.am
@@ -35,12 +35,26 @@ servicedir = $(datadir)/dbus-1/services
 service_in_files = org.gtk.vfs.GoaVolumeMonitor.service.in
 service_DATA = $(service_in_files:.service.in=.service)
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-goa-volume-monitor.service.in
+systemd_user_DATA = $(systemd_user_in_files:.service.in=.service)
+
 $(service_DATA): $(service_in_files) Makefile
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-clean-local:
-       rm -f *~ *.loT $(BUILT_SOURCES) $(service_DATA)
+$(systemd_user_DATA): $(systemd_user_in_files) Makefile
+       $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-DISTCLEANFILES = $(service_DATA)
+CLEANFILES = \
+       *~ \
+       *.loT \
+       $(BUILT_SOURCES) \
+       $(service_DATA) \
+       $(systemd_user_DATA) \
+       $(NULL)
 
-EXTRA_DIST = $(service_in_files) goa.monitor
+EXTRA_DIST = \
+       $(service_in_files) \
+       $(systemd_user_in_files) \
+       $(remote_volume_monitors_DATA) \
+       $(NULL)
diff --git a/monitor/goa/gvfs-goa-volume-monitor.service.in b/monitor/goa/gvfs-goa-volume-monitor.service.in
new file mode 100644
index 0000000..803d89f
--- /dev/null
+++ b/monitor/goa/gvfs-goa-volume-monitor.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service - GNOME Online Accounts monitor
+
+[Service]
+ExecStart= libexecdir@/gvfs-goa-volume-monitor
+Type=dbus
+BusName=org.gtk.vfs.GoaVolumeMonitor
diff --git a/monitor/goa/org.gtk.vfs.GoaVolumeMonitor.service.in 
b/monitor/goa/org.gtk.vfs.GoaVolumeMonitor.service.in
index 4231821..c0f9d07 100644
--- a/monitor/goa/org.gtk.vfs.GoaVolumeMonitor.service.in
+++ b/monitor/goa/org.gtk.vfs.GoaVolumeMonitor.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.GoaVolumeMonitor
 Exec= libexecdir@/gvfs-goa-volume-monitor
+SystemdService=gvfs-goa-volume-monitor.service
diff --git a/monitor/gphoto2/Makefile.am b/monitor/gphoto2/Makefile.am
index 4a48bfe..723fbbc 100644
--- a/monitor/gphoto2/Makefile.am
+++ b/monitor/gphoto2/Makefile.am
@@ -77,10 +77,27 @@ servicedir       = $(datadir)/dbus-1/services
 service_in_files = org.gtk.vfs.GPhoto2VolumeMonitor.service.in
 service_DATA     = $(service_in_files:.service.in=.service)
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-gphoto2-volume-monitor.service.in
+systemd_user_DATA = $(systemd_user_in_files:.service.in=.service)
+
 $(service_DATA): $(service_in_files) Makefile
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-clean-local:
-       rm -f *~ *.loT $(BUILT_SOURCES) $(service_DATA)
+$(systemd_user_DATA): $(systemd_user_in_files) Makefile
+       $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-EXTRA_DIST = hal-marshal.list $(service_in_files) gphoto2.monitor
+CLEANFILES = \
+       *~ \
+       *.loT \
+       $(BUILT_SOURCES) \
+       $(service_DATA) \
+       $(systemd_user_DATA) \
+       $(NULL)
+
+EXTRA_DIST = \
+       hal-marshal.list \
+       $(service_in_files) \
+       $(systemd_user_in_files) \
+       $(remote_volume_monitors_DATA) \
+       $(NULL)
diff --git a/monitor/gphoto2/gvfs-gphoto2-volume-monitor.service.in 
b/monitor/gphoto2/gvfs-gphoto2-volume-monitor.service.in
new file mode 100644
index 0000000..c74253c
--- /dev/null
+++ b/monitor/gphoto2/gvfs-gphoto2-volume-monitor.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service - digital camera monitor
+
+[Service]
+ExecStart= libexecdir@/gvfs-gphoto2-volume-monitor
+Type=dbus
+BusName=org.gtk.vfs.GPhoto2VolumeMonitor
diff --git a/monitor/gphoto2/org.gtk.vfs.GPhoto2VolumeMonitor.service.in 
b/monitor/gphoto2/org.gtk.vfs.GPhoto2VolumeMonitor.service.in
index fae1347..5c02bc5 100644
--- a/monitor/gphoto2/org.gtk.vfs.GPhoto2VolumeMonitor.service.in
+++ b/monitor/gphoto2/org.gtk.vfs.GPhoto2VolumeMonitor.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.GPhoto2VolumeMonitor
 Exec= libexecdir@/gvfs-gphoto2-volume-monitor
+SystemdService=gvfs-gphoto2-volume-monitor.service
diff --git a/monitor/hal/Makefile.am b/monitor/hal/Makefile.am
index 5339565..888268f 100644
--- a/monitor/hal/Makefile.am
+++ b/monitor/hal/Makefile.am
@@ -56,10 +56,27 @@ servicedir       = $(datadir)/dbus-1/services
 service_in_files = org.gtk.vfs.HalVolumeMonitor.service.in
 service_DATA     = $(service_in_files:.service.in=.service)
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-hal-volume-monitor.service.in
+systemd_user_DATA = $(systemd_user_in_files:.service.in=.service)
+
 $(service_DATA): $(service_in_files) Makefile
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-clean-local:
-       rm -f *~ *.loT $(BUILT_SOURCES) $(service_DATA)
+$(systemd_user_DATA): $(systemd_user_in_files) Makefile
+       $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-EXTRA_DIST = hal-marshal.list $(service_in_files) hal.monitor
+CLEANFILES = \
+       *~ \
+       *.loT \
+       $(BUILT_SOURCES) \
+       $(service_DATA) \
+       $(systemd_user_DATA) \
+       $(NULL)
+
+EXTRA_DIST = \
+       hal-marshal.list \
+       $(service_in_files) \
+       $(systemd_user_in_files) \
+       $(remote_volume_monitors_DATA) \
+       $(NULL)
diff --git a/monitor/hal/gvfs-hal-volume-monitor.service.in b/monitor/hal/gvfs-hal-volume-monitor.service.in
new file mode 100644
index 0000000..58ed2c3
--- /dev/null
+++ b/monitor/hal/gvfs-hal-volume-monitor.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service - deprecated HAL monitor
+
+[Service]
+ExecStart= libexecdir@/gvfs-hal-volume-monitor
+Type=dbus
+BusName=org.gtk.vfs.HalVolumeMonitor
diff --git a/monitor/hal/org.gtk.vfs.HalVolumeMonitor.service.in 
b/monitor/hal/org.gtk.vfs.HalVolumeMonitor.service.in
index 41c2802..ac3ca80 100644
--- a/monitor/hal/org.gtk.vfs.HalVolumeMonitor.service.in
+++ b/monitor/hal/org.gtk.vfs.HalVolumeMonitor.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.HalVolumeMonitor
 Exec= libexecdir@/gvfs-hal-volume-monitor
+SystemdService=gvfs-hal-volume-monitor.service
diff --git a/monitor/mtp/Makefile.am b/monitor/mtp/Makefile.am
index 2796cbb..98e64b3 100644
--- a/monitor/mtp/Makefile.am
+++ b/monitor/mtp/Makefile.am
@@ -40,10 +40,26 @@ servicedir       = $(datadir)/dbus-1/services
 service_in_files = org.gtk.vfs.MTPVolumeMonitor.service.in
 service_DATA     = $(service_in_files:.service.in=.service)
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-mtp-volume-monitor.service.in
+systemd_user_DATA = $(systemd_user_in_files:.service.in=.service)
+
 $(service_DATA): $(service_in_files) Makefile
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-clean-local:
-       rm -f *~ *.loT $(service_DATA)
+$(systemd_user_DATA): $(systemd_user_in_files) Makefile
+       $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-EXTRA_DIST = $(service_in_files) mtp.monitor
+CLEANFILES = \
+       *~ \
+       *.loT \
+       $(BUILT_SOURCES) \
+       $(service_DATA) \
+       $(systemd_user_DATA) \
+       $(NULL)
+
+EXTRA_DIST = \
+       $(service_in_files) \
+       $(systemd_user_in_files) \
+       $(remote_volume_monitors_DATA) \
+       $(NULL)
diff --git a/monitor/mtp/gvfs-mtp-volume-monitor.service.in b/monitor/mtp/gvfs-mtp-volume-monitor.service.in
new file mode 100644
index 0000000..0ab3a4c
--- /dev/null
+++ b/monitor/mtp/gvfs-mtp-volume-monitor.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service - Media Transfer Protocol monitor
+
+[Service]
+ExecStart= libexecdir@/gvfs-mtp-volume-monitor
+Type=dbus
+BusName=org.gtk.vfs.MTPVolumeMonitor
diff --git a/monitor/mtp/org.gtk.vfs.MTPVolumeMonitor.service.in 
b/monitor/mtp/org.gtk.vfs.MTPVolumeMonitor.service.in
index 5cd8847..77620d2 100644
--- a/monitor/mtp/org.gtk.vfs.MTPVolumeMonitor.service.in
+++ b/monitor/mtp/org.gtk.vfs.MTPVolumeMonitor.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.MTPVolumeMonitor
 Exec= libexecdir@/gvfs-mtp-volume-monitor
+SystemdService=gvfs-mtp-volume-monitor.service
diff --git a/monitor/udisks2/Makefile.am b/monitor/udisks2/Makefile.am
index 7dd347a..5c0a801 100644
--- a/monitor/udisks2/Makefile.am
+++ b/monitor/udisks2/Makefile.am
@@ -48,10 +48,27 @@ servicedir       = $(datadir)/dbus-1/services
 service_in_files = org.gtk.vfs.UDisks2VolumeMonitor.service.in
 service_DATA     = $(service_in_files:.service.in=.service)
 
+systemd_userdir = ${prefix}/lib/systemd/user
+systemd_user_in_files = gvfs-udisks2-volume-monitor.service.in
+systemd_user_DATA = $(systemd_user_in_files:.service.in=.service)
+
 $(service_DATA): $(service_in_files) Makefile
        $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-clean-local:
-       rm -f *~ *.loT $(BUILT_SOURCES) $(service_DATA)
+$(systemd_user_DATA): $(systemd_user_in_files) Makefile
+       $(AM_V_GEN) $(SED) -e "s|\ libexecdir\@|$(libexecdir)|" $< > $@
 
-EXTRA_DIST = $(service_in_files) udisks2.monitor what-is-shown.txt
+CLEANFILES = \
+       *~ \
+       *.loT \
+       $(BUILT_SOURCES) \
+       $(service_DATA) \
+       $(systemd_user_DATA) \
+       $(NULL)
+
+EXTRA_DIST = \
+       what-is-shown.txt \
+       $(service_in_files) \
+       $(systemd_user_in_files) \
+       $(remote_volume_monitors_DATA) \
+       $(NULL)
diff --git a/monitor/udisks2/gvfs-udisks2-volume-monitor.service.in 
b/monitor/udisks2/gvfs-udisks2-volume-monitor.service.in
new file mode 100644
index 0000000..65a639c
--- /dev/null
+++ b/monitor/udisks2/gvfs-udisks2-volume-monitor.service.in
@@ -0,0 +1,7 @@
+[Unit]
+Description=Virtual filesystem service - disk device monitor
+
+[Service]
+ExecStart= libexecdir@/gvfs-udisks2-volume-monitor
+Type=dbus
+BusName=org.gtk.vfs.UDisks2VolumeMonitor
diff --git a/monitor/udisks2/org.gtk.vfs.UDisks2VolumeMonitor.service.in 
b/monitor/udisks2/org.gtk.vfs.UDisks2VolumeMonitor.service.in
index 22a0bde..c3f2ef6 100644
--- a/monitor/udisks2/org.gtk.vfs.UDisks2VolumeMonitor.service.in
+++ b/monitor/udisks2/org.gtk.vfs.UDisks2VolumeMonitor.service.in
@@ -1,3 +1,4 @@
 [D-BUS Service]
 Name=org.gtk.vfs.UDisks2VolumeMonitor
 Exec= libexecdir@/gvfs-udisks2-volume-monitor
+SystemdService=gvfs-udisks2-volume-monitor.service


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]