Pipewire ships with systemd user services, but there isn't anything for other init systems. So if you use a different init system, you get no sound! OpenRC supports user services now, so I've written some to fix that. I'm not sure how they'd interact with the systemd services on a systemd-using box, though (like systemd trying to load them and blowing up). Does anything special need to be done for that? And of course these scripts depend on openrc-run. Maybe it'd be better to put them into a new package or something. I'm including all three scripts here, but the other two are for pipewire-pulse and wireplumber. I figured it'd be better to include them all here in one place rather than filing three separate bug reports, but I can do separate reports on them if that'd be better. Also, I'm not very experienced with writing init scripts yet, so I don't know if what I've got here is any good. It works on our machines... but that might not mean much!
Debian's openrc package includes openrc-run so there isn't anything to worry about there. What is the exact path where these files need to be installed? Thank you, Jeremy Bíha
Perfect! I was worried more about like, if the openrc scripts were included in the base pipewire package, it might cause issues on non-openrc systems. If they're in a separate package (or if other init systems like systemd don't choke on loading an openrc init script), that's not an issue. But now that I think about it, it's not an issue anyway, since they're not in /etc/init.d/, they're in /etc/user/init.d/, so other init systems won't even try to load them. They go in /etc/user/init.d/. Then they can be enabled with 'rc-update --user add pipewire' etc., though that seems to be on a per-user basis, I'm not sure how to make it default for all users. That puts them in the 'default' runlevel. ...Hmm, looks like there isn't a way to enable those services by default but https://github.com/OpenRC/openrc/issues/935 looks relevant.
given the overall install base of openrc [1] (which is mostly non-existant), I do not think we should install those files in /etc by default and clutter everyones filesystem. I'd be fine with having them provided as example files in /usr/share/doc with a corresponding README. After all, using openrc and openrc for user service does require many manual steps anyway. Michael [1] https://qa.debian.org/popcon.php?package=openrc
Hi, +1, especially as conffiles persist even after a package gets uninstalled. (Purging is a separate, manual action.) Or in /usr/lib/openrc/user or something similar. I don't know whether openrc looks file in some such location though. However shipping random files in /usr is much less annoying that adding files to /etc. (/usr/lib/user is probably a bad name to grab by openrc, but so is /etc/user...) Ansgar
Am 08.12.25 um 18:45 schrieb Ansgar 🙀: That's a valid point. I find /etc/user a bad and questionable choice. Nowadays, this should be properly namespaced like say /etc/openrc/user. Even more reason to *not* ship this in the debian package by default. Michael