From b164fa622f951deebd6d85a8026cbccabed9a7ed Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 9 Mar 2016 14:37:49 +1000 Subject: [PATCH] Change to a dbus-activated service We don't shut down once activated but that doesn't mean we need to run when never requested. Signed-off-by: Peter Hutterer Reviewed-by: David Herrmann --- .gitignore | 1 + Makefile.am | 10 ++++++++-- configure.ac | 8 ++++++++ dbus/org.freedesktop.ratbag1.service.in | 5 +++++ ratbagd.service.in | 2 +- 5 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 dbus/org.freedesktop.ratbag1.service.in diff --git a/.gitignore b/.gitignore index 74154a6a..a6ef9a28 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,4 @@ ratbagctl stamp-* ratbagd.service ratbagctl +org.freedesktop.ratbag1.service diff --git a/Makefile.am b/Makefile.am index 4f0e327c..89307737 100644 --- a/Makefile.am +++ b/Makefile.am @@ -86,8 +86,14 @@ unit_DATA = ratbagd.service $(unit_DATA): $(unit_DATA).in $(AM_V_GEN)$(SED) -e 's|__BIN_PREFIX__|$(bindir)|g' < $< > $@ -EXTRA_DIST += ratbagd.service.in -BUILT_SOURCES += ratbagd.service +dbusdir = $(DBUS_SYSTEM_SERVICES_DIR) +dbus_DATA = dbus/org.freedesktop.ratbag1.service + +$(dbus_DATA): $(dbus_DATA).in + $(AM_V_GEN)$(SED) -e 's|__BIN_PREFIX__|$(bindir)|g' < $< > $@ + +EXTRA_DIST += ratbagd.service.in dbus/org.freedesktop.ratbag1.service.in +BUILT_SOURCES += ratbagd.service dbus/org.freedesktop.ratbag1.service # ------------------------------------------------------------------------------ # python module diff --git a/configure.ac b/configure.ac index fd8f8c0f..08ff8e16 100644 --- a/configure.ac +++ b/configure.ac @@ -133,6 +133,14 @@ AC_ARG_WITH([systemd-unit-dir], SYSTEMD_UNIT_DIR=${unitdir} AC_SUBST(SYSTEMD_UNIT_DIR) +AC_ARG_WITH([dbus-root-dir], + AS_HELP_STRING([--with-dbus-root-dir=DIR], + [dbus service directory [[default=$datadir/dbus-1]]]), + [unitdir="$withval"], + [unitdir="$datadir/dbus-1"]) +DBUS_SYSTEM_SERVICES_DIR="${datadir}/system-services" +AC_SUBST(DBUS_SYSTEM_SERVICES_DIR) + # ------------------------------------------------------------------------------ # report diff --git a/dbus/org.freedesktop.ratbag1.service.in b/dbus/org.freedesktop.ratbag1.service.in new file mode 100644 index 00000000..712bbfb2 --- /dev/null +++ b/dbus/org.freedesktop.ratbag1.service.in @@ -0,0 +1,5 @@ +[D-BUS Service] +Name=org.freedesktop.ratbag1 +Exec=__BIN_PREFIX__/ratbagd +User=root +SystemdService=dbus-org.freedesktop.ratbag1.service diff --git a/ratbagd.service.in b/ratbagd.service.in index ef9b7342..600ab8c0 100644 --- a/ratbagd.service.in +++ b/ratbagd.service.in @@ -8,4 +8,4 @@ ExecStart=__BIN_PREFIX__/ratbagd Restart=on-abort [Install] -WantedBy=multi-user.target +Alias=dbus-org.freedesktop.ratbag1.service