I'd like to try to use pipewire, pipewire-pulse and wireplumber services.
Then you could use them as root or change the owner of the processes, maybe ?
#!/sbin/openrc-run
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
PIPEWIRE_RUNTIME_DIR="/tmp/pipewire"
name="pipewire daemon"
description="Low-latency audio/video router and processor"
command=/usr/bin/pipewire
command_args="${pipewire_args}"
depend() {
use alsasound
}
start_pre() {
if [[ ! -e ${PIPEWIRE_RUNTIME_DIR} ]]; then
mkdir ${PIPEWIRE_RUNTIME_DIR}
fi
export PIPEWIRE_RUNTIME_DIR
}
With that:
rc-service pipewire start
pipewire | * Caching service dependencies ... [ ok ]
pipewire | * Starting pipewire daemon ...
pipewire |[E][03712.099859] spa.dbus | [ dbus.c: 349 impl_connection_get()] Failed to connect to session bus: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
pipewire |[E][03712.099913] mod.portal | [ module-portal.c: 346 pipewire__module_init()] Failed to connect to session bus: Input/output error
pipewire |[W][03712.100570] pw.context | [ context.c: 1391 pw_context_register_export_type()] context 0x557be6509d00: duplicate export type PipeWire:Interface:Metadata
pipewire |[E][03712.100581] pw.conf | [ conf.c: 594 load_module()] 0x557be6509d00: could not load mandatory module "libpipewire-module-metadata": File exists
pipewire |[E][03712.100868] default | [ pipewire.c: 125 main()] failed to create context: File exists
pipewire | * start-stop-daemon: failed to start `/usr/bin/pipewire'
pipewire | * Failed to start pipewire daemon [ !! ]
pipewire | * ERROR: pipewire failed to start
How can I fix pipewire service so that I can eventually use the others?