new file mode 100644
@@ -0,0 +1,14 @@
+[Unit]
+Description=Set PipeWire Default Audio Devices
+After=wireplumber.service
+Requires=wireplumber.service
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/set-audio-defaults.sh
+StandardOutput=append:/var/log/set-audio-defaults-output.log
+StandardError=append:/var/log/set-audio-defaults-error.log
+RemainAfterExit=yes
+
+[Install]
+WantedBy=multi-user.target
new file mode 100755
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+# Wait for WirePlumber to be ready
+for i in {1..30}; do
+ wpctl status &>/dev/null && break
+ sleep 1
+done
+
+# Additional delay for nodes to appear
+sleep 2
+
+# Find audio sink ID
+SINK_ID=$(pw-cli info alsa_audio_sink 2>/dev/null | head -n 1 | awk '{print $2}')
+if [[ -n "$SINK_ID" ]]; then
+ wpctl set-default "$SINK_ID"
+ echo "Set default sink to ID: $SINK_ID (alsa_audio_sink)"
+else
+ echo "Could not find alsa_audio_sink"
+fi
+
+# Find audio source ID
+SOURCE_ID=$(pw-cli info alsa_audio_source 2>/dev/null | head -n 1 | awk '{print $2}')
+if [[ -n "$SOURCE_ID" ]]; then
+ wpctl set-default "$SOURCE_ID"
+ echo "Set default source to ID: $SOURCE_ID (alsa_audio_source)"
+else
+ echo "Could not find alsa_audio_source"
+fi
+
+echo "Done"
new file mode 100644
@@ -0,0 +1,27 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+SRC_URI += " \
+ file://set-audio-defaults.sh \
+ file://set-audio-defaults.service \
+"
+
+inherit systemd
+
+do_install:append() {
+ # Install the script
+ install -d ${D}${bindir}
+ install -m 0755 ${WORKDIR}/sources/set-audio-defaults.sh ${D}${bindir}/
+
+ # Install the systemd service file
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/sources/set-audio-defaults.service ${D}${systemd_system_unitdir}/
+}
+
+RDEPENDS:${PN} += "bash"
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE:${PN} = "set-audio-defaults.service"
+SYSTEMD_AUTO_ENABLE:${PN} = "enable"
+
+FILES:${PN} += " \
+ ${bindir} \
+"
- Add set-audio-defaults.sh script for audio setup - Add set-audio-defaults.service systemd service - Add wireplumber_%.bbappend recipe extension Signed-off-by: Paresh Bhagat <p-bhagat@ti.com> --- .../wireplumber/set-audio-defaults.service | 14 +++++++++ .../wireplumber/set-audio-defaults.sh | 30 +++++++++++++++++++ .../wireplumber/wireplumber_%.bbappend | 27 +++++++++++++++++ 3 files changed, 71 insertions(+) create mode 100644 meta-arago-distro/recipes-multimedia/wireplumber/wireplumber/set-audio-defaults.service create mode 100755 meta-arago-distro/recipes-multimedia/wireplumber/wireplumber/set-audio-defaults.sh create mode 100644 meta-arago-distro/recipes-multimedia/wireplumber/wireplumber_%.bbappend