From 4b7edabe31e15ecc5c9cd9567e2b7604aebd11a7 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Tue, 18 Dec 2012 11:19:08 -0500 Subject: [PATCH] Add a systemd unit file It's just better if we get activated via systemd rather than dbus. Various bits of configury/makefile taken from polkit. --- configure.ac | 9 +++++++++ data/Makefile.am | 9 +++++++++ data/fprintd.service.in | 8 ++++++++ data/net.reactivated.Fprint.service.in | 1 + 4 files changed, 27 insertions(+), 0 deletions(-) create mode 100644 data/fprintd.service.in diff --git a/configure.ac b/configure.ac index 22d9a67..23a7064 100644 --- a/configure.ac +++ b/configure.ac @@ -55,6 +55,15 @@ AM_CONDITIONAL(BUILD_MAN, test x"$POD2MAN" != "x") GTK_DOC_CHECK([1.3]) +AC_ARG_WITH([systemdsystemunitdir], + AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]), + [], + [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)]) +AS_IF([test "x$with_systemdsystemunitdir" != "xno"], [ + AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) +]) +AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$systemdsystemunitdir"]) + AS_AC_EXPAND(DATADIR, $datadir) DBUS_SERVICES_DIR="$DATADIR/dbus-1/services" diff --git a/data/Makefile.am b/data/Makefile.am index 38b3343..b2b2422 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -9,6 +9,15 @@ $(dbus_services_DATA): $(dbus_services_in_files) dbus_confdir = $(sysconfdir)/dbus-1/system.d dbus_conf_DATA = net.reactivated.Fprint.conf +systemdservice_in_files = fprintd.service.in + +if HAVE_SYSTEMD +systemdservicedir = $(systemdsystemunitdir) +systemdservice_DATA = $(systemdservice_in_files:.service.in=.service) +$(systemdservice_DATA): $(systemdservice_in_files) Makefile + @sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@ +endif + polkitdir = $(datadir)/polkit-1/actions polkit_in_files = net.reactivated.fprint.device.policy.in diff --git a/data/fprintd.service.in b/data/fprintd.service.in new file mode 100644 index 0000000..cbf88d4 --- /dev/null +++ b/data/fprintd.service.in @@ -0,0 +1,8 @@ +[Unit] +Description=Fingerprint Authentication Daemon +Documentation=man:fprintd(1) + +[Service] +Type=dbus +BusName=net.reactivated.Fprint +ExecStart=@libexecdir@/fprintd diff --git a/data/net.reactivated.Fprint.service.in b/data/net.reactivated.Fprint.service.in index a191a0a..8402e2e 100644 --- a/data/net.reactivated.Fprint.service.in +++ b/data/net.reactivated.Fprint.service.in @@ -2,3 +2,4 @@ Name=net.reactivated.Fprint Exec=@LIBEXECDIR@/fprintd User=root +SystemdService=fprintd.service -- 1.7.1