diff --git a/.gitignore b/.gitignore index 2480507cd..edc93be5d 100644 --- a/.gitignore +++ b/.gitignore @@ -37,6 +37,8 @@ Makefile /stamp-h1 /blueman/Constants.py /blueman/plugins/mechanism/Rfcomm.py +/data/configs/blueman-applet.service +/data/configs/blueman-mechanism.service /data/configs/org.blueman.Applet.service /data/configs/org.blueman.Mechanism.service /module/.deps diff --git a/CHANGELOG.md b/CHANGELOG.md index 4806e5f5e..e9be58f01 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ * Drop support for BlueZ 4 * Drop browse feature * Add title to status icon +* Add systemd service units (@smcv / Simon McVittie) ### Bugs fixed diff --git a/configure.ac b/configure.ac index 8c6a55f61..856d2589a 100644 --- a/configure.ac +++ b/configure.ac @@ -246,6 +246,8 @@ data/icons/main_icon/Makefile data/icons/pixmaps/Makefile data/ui/Makefile data/man/Makefile +data/configs/blueman-applet.service +data/configs/blueman-mechanism.service data/configs/org.blueman.Applet.service data/configs/org.blueman.Mechanism.service module/Makefile diff --git a/data/configs/Makefile.am b/data/configs/Makefile.am index 9e23dc2db..a3ce1c75b 100644 --- a/data/configs/Makefile.am +++ b/data/configs/Makefile.am @@ -7,6 +7,12 @@ dbus_services_DATA = org.blueman.Mechanism.service dbus_sessdir = $(datadir)/dbus-1/services dbus_sess_DATA = org.blueman.Applet.service +systemd_systemdir = $(prefix)/lib/systemd/system +systemd_system_DATA = blueman-mechanism.service + +systemd_userdir = $(prefix)/lib/systemd/user +systemd_user_DATA = blueman-applet.service + if HAVE_POLKIT @INTLTOOL_POLICY_RULE@ policykitdir = $(datadir)/polkit-1/actions @@ -14,12 +20,17 @@ policykit_in_files = org.blueman.policy.in policykit_DATA = $(policykit_in_files:.policy.in=.policy) endif -EXTRA_DIST = org.blueman.Mechanism.conf \ +EXTRA_DIST = \ + blueman-applet.service.in \ + blueman-mechanism.service.in \ + org.blueman.Mechanism.conf \ org.blueman.Applet.service.in \ org.blueman.Mechanism.service.in \ org.blueman.policy.in CLEANFILES = \ + blueman-applet.service \ + blueman-mechanism.service \ org.blueman.Mechanism.service \ org.blueman.policy \ org.blueman.Applet.service \ diff --git a/data/configs/blueman-applet.service.in b/data/configs/blueman-applet.service.in new file mode 100644 index 000000000..db8025c11 --- /dev/null +++ b/data/configs/blueman-applet.service.in @@ -0,0 +1,7 @@ +[Unit] +Description=Bluetooth management applet + +[Service] +Type=dbus +BusName=org.blueman.Applet +ExecStart=@BINDIR@/blueman-applet diff --git a/data/configs/blueman-mechanism.service.in b/data/configs/blueman-mechanism.service.in new file mode 100644 index 000000000..a236662f7 --- /dev/null +++ b/data/configs/blueman-mechanism.service.in @@ -0,0 +1,7 @@ +[Unit] +Description=Bluetooth management mechanism + +[Service] +Type=dbus +BusName=org.blueman.Mechanism +ExecStart=@LIBEXECDIR@/blueman-mechanism diff --git a/data/configs/org.blueman.Applet.service.in b/data/configs/org.blueman.Applet.service.in index 0ab2c4317..4124a4779 100644 --- a/data/configs/org.blueman.Applet.service.in +++ b/data/configs/org.blueman.Applet.service.in @@ -1,3 +1,4 @@ [D-BUS Service] Name=org.blueman.Applet Exec=@BINDIR@/blueman-applet +SystemdService=blueman-applet.service diff --git a/data/configs/org.blueman.Mechanism.service.in b/data/configs/org.blueman.Mechanism.service.in index 7b122c35c..e4fe6c316 100644 --- a/data/configs/org.blueman.Mechanism.service.in +++ b/data/configs/org.blueman.Mechanism.service.in @@ -2,3 +2,4 @@ Name=org.blueman.Mechanism Exec=@LIBEXECDIR@/blueman-mechanism User=root +SystemdService=blueman-mechanism.service