Reputation: 21
I’m trying to access the org.PulseAudio.Core1 D-Bus interface, but it doesn’t seem to be exposed properly. I’m running PulseAudio as a systemd user service, and while PulseAudio itself is working fine, the org.PulseAudio.Core1 interface is missing from the D-Bus object tree. Instead, I only see the following:
└─ /org
├─ /org/freedesktop
│ └─ /org/freedesktop/ReserveDevice1
│ └─ /org/freedesktop/ReserveDevice1/Audio0
└─ /org/pulseaudio
└─ /org/pulseaudio/server_lookup1
The module-dbus-protocol is loaded, and PulseAudio is running without errors. However, the org.PulseAudio.Core1 interface is not accessible, even though the logs indicate that it exists:
Feb 26 19:13:16 home pulseaudio[582]: Interface org.PulseAudio.Core1.Client added for object /org/pulseaudio/core1/client20
This suggests that the interface is being created but not properly exposed or registered on the D-Bus.
[Unit]
Description=Sound Service
Requires=pulseaudio.socket
ConditionUser=!root
[Service]
ExecStart=/usr/bin/pulseaudio --daemonize=no --log-target=journal
LockPersonality=yes
MemoryDenyWriteExecute=yes
NoNewPrivileges=yes
Restart=on-failure
RestrictNamespaces=yes
SystemCallArchitectures=native
SystemCallFilter=@system-service
Type=notify
UMask=0077
Slice=session.slice
[Install]
Also=pulseaudio.socket
WantedBy=default.target
[Unit]
After=dbus.socket
[Service]
Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%U/bus
Environment=PULSE_DBUS_SERVER=unix:path=/run/user/%U/pulse/dbus-socket
ExecStart=
ExecStart=/usr/bin/pulseaudio --daemonize=no --log-level=4 --log-target=journal
D-Bus Configuration
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy context="default">
<allow own="org.PulseAudio1"/>
<allow send_destination="org.PulseAudio1"/>
<allow receive_sender="org.PulseAudio1"/>
</policy>
</busconfig>
[D-BUS Service]
Name=org.PulseAudio1
Exec=/usr/bin/pulseaudio --daemonize=no
SystemdService=pulseaudio.service
Verified module-dbus-protocol
is loaded:
pactl list modules
.pactl load-module module-dbus-protocol
.Checked D-Bus object paths:
busctl --user tree org.PulseAudio1
to list objects, but /org/pulseaudio/core1
is missing.Ran PulseAudio manually:
pulseaudio --daemonize=no --log-level=4 --log-target=journal
. The issue persists.Checked D-Bus environment variables:
DBUS_SESSION_BUS_ADDRESS
is set correctly, as well as PULSE_DBUS_SERVER
and PULSE_RUNTIME_PATH
org.PulseAudio.Core1
interface not being exposed, even though the logs indicate it exists?org.PulseAudio.Core1
interface when running PulseAudio as a systemd user service?org.PulseAudio.Core1
interface.Did some further jorunalctl digging and found this
Feb 27 14:43:20 home pulseaudio[2322]: Interface org.PulseAudio.Core1 added for object /org/pulseaudio/core1
it 100% adds it but somehow i am unable to find it in busctl or access any information from it
Upvotes: 1
Views: 34