pulseaudio: Run as system-wide instance instead of per-user

Submitted by Joel A Fernandes on July 7, 2011, 5:29 a.m.

Details

Message ID 1310016563-8871-1-git-send-email-agnel.joel@gmail.com
State New, archived
Headers show

Commit Message

Joel A Fernandes July 7, 2011, 5:29 a.m.
* Pulseaudio running as per-user is opening audio devices and blocking everyone else from getting access
  to the device. The problem is it doesn't even seem to be allowing applications to connect to it, this
  patch starts it up in system mode instead which is tested and known to work

Signed-off-by: Joel A Fernandes <agnel.joel@gmail.com>
---
 .../pulseaudio-system-mode-startup.sh              |    4 ++++
 recipes/pulseaudio/pulseaudio_0.9.22.bb            |   15 +++++++++++++++
 2 files changed, 19 insertions(+), 0 deletions(-)
 create mode 100755 recipes/pulseaudio/pulseaudio-0.9.21/pulseaudio-system-mode-startup.sh

Patch hide | download patch | download mbox

diff --git a/recipes/pulseaudio/pulseaudio-0.9.21/pulseaudio-system-mode-startup.sh b/recipes/pulseaudio/pulseaudio-0.9.21/pulseaudio-system-mode-startup.sh
new file mode 100755
index 0000000..528ceb9
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.21/pulseaudio-system-mode-startup.sh
@@ -0,0 +1,4 @@ 
+#!/bin/sh
+
+echo "Starting Pulseaudio in system mode.."
+pulseaudio --log-target=syslog --system
diff --git a/recipes/pulseaudio/pulseaudio_0.9.22.bb b/recipes/pulseaudio/pulseaudio_0.9.22.bb
index 2368829..6d3adc4 100644
--- a/recipes/pulseaudio/pulseaudio_0.9.22.bb
+++ b/recipes/pulseaudio/pulseaudio_0.9.22.bb
@@ -12,6 +12,10 @@  FILESPATHPKG =. "pulseaudio-0.9.21:"
 
 inherit gettext
 
+inherit update-rc.d
+INITSCRIPT_NAME = "pulseaudio.sh"
+INITSCRIPT_PARAMS = "start 99 2 3 4 5 ."
+
 #SRC_URI += "\
 #  file://buildfix.patch \
 #  file://autoconf_version.patch \
@@ -27,6 +31,7 @@  SRC_URI += "\
   file://armv4+v5asm.patch \
   file://fixbluezbuild.patch \
   file://ubacktrace.patch \
+  file://pulseaudio-system-mode-startup.sh \
 "
 
 #do_compile_prepend() {
@@ -37,3 +42,13 @@  SRC_URI += "\
 
 SRC_URI[md5sum] = "ca85ab470669b05e100861654cf5eb3c"
 SRC_URI[sha256sum] = "c6019324395117a258c048a6db5e9734551cc2c61dc35b46403ff00d64be55f0"
+
+do_install_append() {
+  # init script to start pulseaudio system-wide
+  install -d ${D}/${sysconfdir}/init.d/
+  install -m 0755 ${WORKDIR}/pulseaudio-system-mode-startup.sh ${D}/${sysconfdir}/init.d/pulseaudio.sh
+
+  # Disable startup of pulseaudio as a per-user instance
+  chmod -x ${D}/${bindir}/start-pulseaudio-x11
+}
+