#!/bin/sh

# Kill any existing pipewire instance to restore sound
pkill -u "${USER}" -fx /usr/bin/pipewire 1>/dev/null 2>&1
pkill -u "${USER}" -fx /usr/bin/pipewire-pulse 1>/dev/null 2>&1
pkill -u "${USER}" -fx /usr/bin/wireplumber 1>/dev/null 2>&1

# Start pipewire
[ -x /usr/bin/pipewire ] && exec /usr/bin/pipewire &

# Wait for pipewire to start before attempting to start related daemons
while [ "$(pgrep -f /usr/bin/pipewire)" = "" ]; do
        sleep 1
done

# Start pipewire-pulse, replacement for the PulseAudio daemon
[ -f "/usr/share/pipewire/pipewire-pulse.conf" ] && exec /usr/bin/pipewire-pulse &

# Start wireplumber, replacement for pipewire-media-session 
[ -x /usr/bin/wireplumber ] && exec /usr/bin/wireplumber &

