roddhjav / apparmor.d

Full set of AppArmor profiles (~ 1500 profiles)
https://apparmor.pujol.io
GNU General Public License v2.0
444 stars 40 forks source link

Wireplumber breaks on reboot #399

Closed Stoppedpuma closed 2 weeks ago

Stoppedpuma commented 3 months ago

Enforcing the wireplumber profile causes only the dummy driver to be mapped on reboot. aa-log has no logs for some reason and journalctl only shows this: wireplumber[5151]: default: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner

I haven't tested with other pipewire related profiles so this could affect them as well.

roddhjav commented 3 months ago

This seems unrelated to apparmor: the profile already has access to org.freedesktop.UPower and this is not enforced on non Ubuntu distribution anyway.

Stoppedpuma commented 3 months ago

Setting the profile in complain mode fixes this, doesn't that make this an issue related to apparmor.d?

Stoppedpuma commented 3 months ago

This seems to just happen randomly with some profile in the make enforce profiles. No idea which ones as this seemed to happen randomly even when setting all pipewire related profiles and wireplumber set to complain, it just makes it possible to work correctly after a reboot. When I'm using my own list of enforced profiles I can't seem to reproduce this. Any ideas on where to go from here for debugging this? No logs are appearing anywhere besides the one I posted above.

roddhjav commented 3 months ago

Do you get any log from aa-log -s (even unrelated to wireplumber)?

Stoppedpuma commented 3 months ago

No

Stoppedpuma commented 3 months ago

It's also probably worth mentioning that I managed to get audio to work somehow by switching to TTY-2 and playing an audio file while using the make enforce profiles. I only managed to get this to work once but I also haven't tried it more than three or so times.

roddhjav commented 2 months ago

Hum, can you tell me more about you setup? Distribution, DE, how you enabled wireplumber?

Stoppedpuma commented 2 months ago

Arch Linux, Hyprland, Wireplumber starts through systemd service.

roddhjav commented 2 months ago

I have never tested Hyprland, so... I don't know, and I won't be able to test it anytime soon.

I am surprised that Hyprland even start with apparmor.d. Especially when aa-log/aa-log -s does not report anything.

Stoppedpuma commented 2 months ago

Turns out the profile causing this issue is systemd-logind, nothing to do with pipewire or wireplumber profiles.

roddhjav commented 2 months ago

Can you give me more: why do you think it is systemd-logind? any log?

Stoppedpuma commented 2 months ago

Still no logs unfortunately , I figured this out by setting every profile to enforce. Setting systemd-logind to complain fixes this.

odomingao commented 2 months ago

I'm also on Hyprland/Arch. I'd like to add that audio does work for me with systemd-logind on enforce, even though I also have the same error.

roddhjav commented 2 weeks ago

As it does not seems to be related to apparmor I am closing the issue.