-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RFC] create pipewire-session-manager alternative group #46960
base: master
Are you sure you want to change the base?
Conversation
this is a more proper place for it. still includes a symlink to /usr/share/examples/... so users don't get bitten by this change
also move wireplumber config to pipewire.conf.avail, as it seems to be the proper place. /usr/share/examples/... remains as a symlink for backcompat
This won't cause two WirePlumber instances to run if people followed the instructions as they exist now... the move will instead just break the symlink. We should confirm that PipeWire will operate with the configured alternative in place and a dead link. It will cause double WirePlumber instances if somebody manually copied or otherwise created the file. I guess that either situation merits an The alternative is a good idea in general, although |
no it won't, as I added a symlink from the old location to the new location. |
ef8d778
to
cc4cc7f
Compare
I overlooked that... If PipeWire survives the broken symlink, it might be better to just break it and let the alternative take effect. |
Btw, exec condition statements are also a thing. Idk if it is also possible to use this to prevent the file from getting exec'd multiple times if the file was symlinked multiple times. |
Yeah, the conditional execution could work. Here's how I start the pulse server and wireplumber from my user's config directory:
I'd have to test it, but based on how it's documented switching the files to this shouldn't launch wireplumber or the pulse server if they're already running, even if it's the same file getting symlinked multiple times. |
I tested this PR on pipewire version 0.3.84 with the conditional execution statements included. Unfortunately, conditional execution does not work the way I thought it did. If wireplumber is started in a file in The mechanics of how those work aren't especially well documented. Given this section in the man page for
I don't think this behavior would be supported by upstream. However, given the persistent confusion around pipewire I would still support automatically starting wireplumber with the alternatives line and breaking the link, since that does work. Also, since |
Pull Requests become stale 90 days after last activity and are closed 14 days after that. If this pull request is still relevant bump it or assign it. |
also moves pipewire/wireplumber configs to
/usr/share/pipewire/pipewire.conf.avail
, which seems like the upstream-compatible place.Pros
Cons
noextract=/usr/share/pipewire/pipewire.conf.avail/10-wireplumber.conf
(maybe masking the config with an empty10-session-manager.conf
in a higher priority config location would work?)10-wireplumber.conf
, which does not seem to cause issues aside from having 1 that spews errors forever (is this worth an INSTALL.msg?)Testing the changes
needs associated documentation adjustment
cc: @cinerea0 @ahesford @paper42