From 9574a9102a12d27a8ef78abf6570c4e09abc7816 Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Sun, 26 Aug 2012 13:37:43 +0200 Subject: Use hardware activation for systemd service Make the systemd service trigger on the addition of /dev/virtio-ports/com.redhat.spice.0 Signed-off-by: Hans de Goede --- Makefile.am | 6 +++++- data/70-spice-vdagentd.rules | 1 + data/spice-vdagentd.service | 5 +---- data/spice-vdagentd.target | 2 ++ 4 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 data/70-spice-vdagentd.rules create mode 100644 data/spice-vdagentd.target diff --git a/Makefile.am b/Makefile.am index d9083f7..8ad5287 100644 --- a/Makefile.am +++ b/Makefile.am @@ -56,7 +56,11 @@ endif if INIT_SCRIPT_SYSTEMD systemdunitdir = $(SYSTEMDSYSTEMUNITDIR) -systemdunit_DATA = $(top_srcdir)/data/spice-vdagentd.service +systemdunit_DATA = \ + $(top_srcdir)/data/spice-vdagentd.service \ + $(top_srcdir)/data/spice-vdagentd.target +udevrulesdir = /lib/udev/rules.d +udevrules_DATA = $(top_srcdir)/data/70-spice-vdagentd.rules endif EXTRA_DIST = \ diff --git a/data/70-spice-vdagentd.rules b/data/70-spice-vdagentd.rules new file mode 100644 index 0000000..a1785ba --- /dev/null +++ b/data/70-spice-vdagentd.rules @@ -0,0 +1 @@ +ACTION=="add", SUBSYSTEM=="virtio-ports", ENV{DEVLINKS}=="/dev/virtio-ports/com.redhat.spice.0", ENV{SYSTEMD_WANTS}="spice-vdagentd.target" diff --git a/data/spice-vdagentd.service b/data/spice-vdagentd.service index d301fa0..4da7b44 100644 --- a/data/spice-vdagentd.service +++ b/data/spice-vdagentd.service @@ -5,9 +5,6 @@ After=dbus.target # TODO we should use: #Requires=spice-vdagentd.socket -# On systems without virtio spice channel, don't start -ConditionPathExists=/dev/virtio-ports/com.redhat.spice.0 - [Service] EnvironmentFile=-/etc/sysconfig/spice-vdagentd ExecStartPre=/bin/rm -f /var/run/spice-vdagentd/spice-vdagent-sock @@ -16,4 +13,4 @@ PIDFile=/var/run/spice-vdagentd/spice-vdagentd.pid PrivateTmp=true [Install] -WantedBy=multi-user.target +WantedBy=spice-vdagentd.target diff --git a/data/spice-vdagentd.target b/data/spice-vdagentd.target new file mode 100644 index 0000000..1f74931 --- /dev/null +++ b/data/spice-vdagentd.target @@ -0,0 +1,2 @@ +[Unit] +Description=Agent daemon for Spice guests -- cgit