udisks: auto enable systemd service 77/9177/1
authorMatt Ranostay <matt.ranostay@konsulko.com>
Fri, 21 Apr 2017 03:00:01 +0000 (06:00 +0300)
committerMatt Ranostay <matt.ranostay@konsulko.com>
Sat, 22 Apr 2017 00:42:34 +0000 (00:42 +0000)
MediaPlayer needs udisks to be running on startup to
detect media removal

Bug-AGL: SPEC-483
Change-Id: I57389d3af8f4d2600baa2b24d437646ed1c7414e
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
recipes-support/udisks/files/org.freedesktop.UDisks.conf [new file with mode: 0644]
recipes-support/udisks/files/udisks.service [new file with mode: 0644]
recipes-support/udisks/udisks_1.0.5.bbappend [new file with mode: 0644]

diff --git a/recipes-support/udisks/files/org.freedesktop.UDisks.conf b/recipes-support/udisks/files/org.freedesktop.UDisks.conf
new file mode 100644 (file)
index 0000000..0098b94
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- -->
+
+<!DOCTYPE busconfig PUBLIC
+ "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+  <!-- Only root can own the service -->
+  <policy user="root">
+    <allow own="org.freedesktop.UDisks"/>
+  </policy>
+
+  <policy context="default">
+    <allow send_destination="org.freedesktop.UDisks"/>
+
+    <allow send_destination="org.freedesktop.UDisks"
+           send_interface="org.freedesktop.DBus.Properties"/>
+    <allow send_destination="org.freedesktop.UDisks"
+           send_interface="org.freedesktop.DBus.Introspectable"/>
+    <allow send_destination="org.freedesktop.UDisks"
+           send_interface="org.freedesktop.UDisks"/>
+    <allow send_destination="org.freedesktop.UDisks"
+           send_interface="org.freedesktop.UDisks.Device"/>
+    <allow send_destination="org.freedesktop.UDisks"
+           send_interface="org.freedesktop.UDisks.Adapter"/>
+    <allow send_destination="org.freedesktop.UDisks"
+           send_interface="org.freedesktop.UDisks.Expander"/>
+    <allow send_destination="org.freedesktop.UDisks"
+           send_interface="org.freedesktop.UDisks.Port"/>
+    <allow receive_sender="org.freedesktop.UDisks" receive_type="signal"
+           receive_interface="org.freedesktop.UDisks"/>
+  </policy>
+</busconfig>
diff --git a/recipes-support/udisks/files/udisks.service b/recipes-support/udisks/files/udisks.service
new file mode 100644 (file)
index 0000000..75df55b
--- /dev/null
@@ -0,0 +1,11 @@
+[Unit]
+Description=Disk Manager (legacy version)
+Documentation=man:udisks(7)
+
+[Service]
+Type=dbus
+BusName=org.freedesktop.UDisks
+ExecStart=/usr/libexec/udisks-daemon --no-debug
+
+[Install]
+WantedBy=default.target
diff --git a/recipes-support/udisks/udisks_1.0.5.bbappend b/recipes-support/udisks/udisks_1.0.5.bbappend
new file mode 100644 (file)
index 0000000..2c6b11c
--- /dev/null
@@ -0,0 +1,14 @@
+SRC_URI += "file://org.freedesktop.UDisks.conf \
+            file://udisks.service \
+           "
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+
+SYSTEMD_AUTO_ENABLE = "enable"
+
+do_install_append () {
+    install -d ${D}${sysconfdir}/dbus-1/system.d
+    install -m 644 ${WORKDIR}/org.freedesktop.UDisks.conf ${D}${sysconfdir}/dbus-1/system.d/
+
+    install -d ${D}${base_libdir}/systemd/system
+    install -m 0644 ${WORKDIR}/udisks.service ${D}${base_libdir}/systemd/system
+}