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] pipewire: update, add virtual session manager to pull in wireplumber without build cycle #41868
Conversation
As per IRC discussion, we can avoid the rename and still break the cycle once #39868 is merged by declaring a |
I would prefer to avoid the renaming scheme if possible. Would the implementation of the alternate proposal make intuitive sense if you generally understand xbps templates? |
Also, I recommend adding the following patch, which would replace pipewire-media-session with wireplumber in the default configuration files: # Removes pipewire-media-session from default configs
diff --git a/src/daemon/meson.build b/src/daemon/meson.build
index 5d5914e4f4..85c1730427 100644
--- a/src/daemon/meson.build
+++ b/src/daemon/meson.build
@@ -9,7 +9,7 @@ pipewire_c_args = [
conf_config = configuration_data()
conf_config.set('VERSION', '"@0@"'.format(pipewire_version))
conf_config.set('PIPEWIRE_CONFIG_DIR', pipewire_configdir)
-conf_config.set('session_manager_path', pipewire_bindir / 'pipewire-media-session')
+conf_config.set('session_manager_path', pipewire_bindir / 'wireplumber')
conf_config.set('session_manager_args', '')
conf_config.set('pipewire_path', pipewire_bindir / 'pipewire')
conf_config.set('pipewire_pulse_path', pipewire_bindir / 'pipewire-pulse') |
This branch has been restructured to use a virtual package to break the pipewire-wireplumber build cycle that would otherwise appear. It should NOT be merged until #39868 is merged and we can add |
I am not inclined to pull a patch that modifies default paths which seem only to appear in comments. Upstream should fix these paths if necessary because they made the decision to abandon pipewire-media-session and render these paths obsolete. |
33eac22
to
78daff3
Compare
c02e990
to
29045a3
Compare
This dummy package will be the default provider for the the session manager pulled in by pipewire, breaking a build cycle.
Also provide a desktop file for convenient autostart. Continues work started in void-linux#38521.
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. |
Not stale yet! |
Implemented in 43889c8 |
pipewire will not work without a session manager; the previously included pipewire-media-session has long been deprecated and is now abandoned [1]. Making pipewire depend on wireplumber would create a cycle, so the cycle is broken with a rename and a new metapackage:
The rename is a violation of policy but allows existing pipewire users to see the new meta as an update that will pull in an updated real pipewire alongside the now-required wireplumber.
Continuing the work of #38521.
[1] https://gitlab.freedesktop.org/pipewire/media-session/-/releases/0.4.2