diff options
Diffstat (limited to 'recipes-connectivity/bluez5')
-rw-r--r-- | recipes-connectivity/bluez5/bluez5/bluetooth.conf | 39 | ||||
-rw-r--r-- | recipes-connectivity/bluez5/bluez5/bluetooth.service | 21 | ||||
-rw-r--r-- | recipes-connectivity/bluez5/bluez5/obex.service | 10 | ||||
-rw-r--r-- | recipes-connectivity/bluez5/bluez5/tmpdir.conf | 2 | ||||
-rw-r--r-- | recipes-connectivity/bluez5/bluez5_%.bbappend | 1 | ||||
-rw-r--r-- | recipes-connectivity/bluez5/bluez5_agldemo.inc | 24 |
6 files changed, 97 insertions, 0 deletions
diff --git a/recipes-connectivity/bluez5/bluez5/bluetooth.conf b/recipes-connectivity/bluez5/bluez5/bluetooth.conf new file mode 100644 index 000000000..1f2762de7 --- /dev/null +++ b/recipes-connectivity/bluez5/bluez5/bluetooth.conf @@ -0,0 +1,39 @@ +<!-- This configuration file specifies the required security policies + for Bluetooth core daemon to work. --> + +<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" + "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> +<busconfig> + + <!-- ../system.conf have denied everything, so we just punch some holes --> + + <policy user="root"> + <allow own="org.bluez"/> + <allow send_destination="org.bluez"/> + <allow send_interface="org.bluez.Agent1"/> + <allow send_interface="org.bluez.MediaEndpoint1"/> + <allow send_interface="org.bluez.MediaPlayer1"/> + <allow send_interface="org.bluez.ThermometerWatcher1"/> + <allow send_interface="org.bluez.AlertAgent1"/> + <allow send_interface="org.bluez.Profile1"/> + <allow send_interface="org.bluez.HeartRateWatcher1"/> + <allow send_interface="org.bluez.CyclingSpeedWatcher1"/> + <allow send_interface="org.bluez.GattCharacteristic1"/> + <allow send_interface="org.bluez.GattDescriptor1"/> + <allow send_interface="org.freedesktop.DBus.ObjectManager"/> + <allow send_interface="org.freedesktop.DBus.Properties"/> + <allow receive_type="signal" receive_sender="org.bluez" receive_interface="org.freedesktop.DBus.Properties"/> + <allow receive_type="signal" receive_sender="org.bluez" receive_interface="org.freedesktop.DBus.ObjectManager"/> + </policy> + + <policy at_console="true"> + <allow send_destination="org.bluez"/> + </policy> + + <!-- allow users of lp group (printing subsystem) to + communicate with bluetoothd --> + <policy group="lp"> + <allow send_destination="org.bluez"/> + </policy> + +</busconfig> diff --git a/recipes-connectivity/bluez5/bluez5/bluetooth.service b/recipes-connectivity/bluez5/bluez5/bluetooth.service new file mode 100644 index 000000000..8ae83bd48 --- /dev/null +++ b/recipes-connectivity/bluez5/bluez5/bluetooth.service @@ -0,0 +1,21 @@ +[Unit] +Description=Bluetooth service +Documentation=man:bluetoothd(8) +ConditionPathIsDirectory=/sys/class/bluetooth + +[Service] +Type=dbus +BusName=org.bluez +ExecStartPre=-/usr/bin/hciconfig hci0 aclmtu 930:10 +ExecStart=/usr/libexec/bluetooth/bluetoothd +NotifyAccess=main +#WatchdogSec=10 +#Restart=on-failure +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +LimitNPROC=1 +ProtectHome=true +ProtectSystem=full + +[Install] +WantedBy=bluetooth.target +Alias=dbus-org.bluez.service diff --git a/recipes-connectivity/bluez5/bluez5/obex.service b/recipes-connectivity/bluez5/bluez5/obex.service new file mode 100644 index 000000000..87ffff6ae --- /dev/null +++ b/recipes-connectivity/bluez5/bluez5/obex.service @@ -0,0 +1,10 @@ +[Unit] +Description=Bluetooth OBEX service + +[Service] +Type=dbus +BusName=org.bluez.obex +ExecStart=/usr/libexec/bluetooth/obexd --root=/var/volatile/tmp + +[Install] +Alias=dbus-org.bluez.obex.service diff --git a/recipes-connectivity/bluez5/bluez5/tmpdir.conf b/recipes-connectivity/bluez5/bluez5/tmpdir.conf new file mode 100644 index 000000000..8545d76ec --- /dev/null +++ b/recipes-connectivity/bluez5/bluez5/tmpdir.conf @@ -0,0 +1,2 @@ +[Service] +Environment="TMPDIR=/run/user/%U/usrshr" diff --git a/recipes-connectivity/bluez5/bluez5_%.bbappend b/recipes-connectivity/bluez5/bluez5_%.bbappend new file mode 100644 index 000000000..18e694989 --- /dev/null +++ b/recipes-connectivity/bluez5/bluez5_%.bbappend @@ -0,0 +1 @@ +require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'bluez5_agldemo.inc', '', d)} diff --git a/recipes-connectivity/bluez5/bluez5_agldemo.inc b/recipes-connectivity/bluez5/bluez5_agldemo.inc new file mode 100644 index 000000000..0e9cd62c1 --- /dev/null +++ b/recipes-connectivity/bluez5/bluez5_agldemo.inc @@ -0,0 +1,24 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/bluez5:" +SRC_URI_append = " \ + file://bluetooth.conf \ + file://tmpdir.conf \ + file://obex.service \ + file://bluetooth.service \ +" + +FILES_${PN}_append = " ${systemd_user_unitdir}/obex.service.d/tmpdir.conf" + +do_install_append() { + install -m 0644 ${WORKDIR}/bluetooth.conf ${D}${sysconfdir}/dbus-1/system.d/bluetooth.conf + + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + mkdir -p ${D}${systemd_user_unitdir}/obex.service.d + + install -m 0644 ${WORKDIR}/obex.service ${D}${systemd_user_unitdir} + install -m 0644 ${WORKDIR}/tmpdir.conf ${D}${systemd_user_unitdir}/obex.service.d/tmpdir.conf + mkdir -p ${D}/etc/systemd/user + ln -sf ${systemd_user_unitdir}/obex.service ${D}/etc/systemd/user/dbus-org.bluez.obex.service + mkdir -p ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/bluetooth.service ${D}${systemd_system_unitdir} + fi +} |