[neon/backports-noble/wireplumber-noble/Neon/unstable] debian: backport wireplumber for pipewire compatability
Carlos De Maine
null at kde.org
Sun Sep 27 07:13:25 BST 2026
Git commit 9ad98e49ebdef47f4df0c671cf620de16e220f9c by Carlos De Maine.
Committed on 27/09/2026 at 06:13.
Pushed by carlosdem into branch 'Neon/unstable'.
backport wireplumber for pipewire compatability
A +19 -0 debian/NEWS
A +523 -0 debian/changelog
A +138 -0 debian/control
A +33 -0 debian/copyright
A +4 -0 debian/gbp.conf
A +1 -0 debian/gir1.2-wp-0.5.install
A +2 -0 debian/libwireplumber-0.5-0.install
A +624 -0 debian/libwireplumber-0.5-0.symbols
A +5 -0 debian/libwireplumber-0.5-dev.install
A +46 -0 debian/patches/Avoid-race-condition-during-shutdown.patch
A +25 -0 debian/patches/Remove-privacy-breach-documentation.patch
A +23 -0 debian/patches/Remove-service-alias.patch
A +3 -0 debian/patches/series
A +52 -0 debian/rules
A +17 -0 debian/salsa-ci.yml
A +1 -0 debian/source/format
A +30 -0 debian/tests/build
A +3 -0 debian/tests/control
A +18 -0 debian/upstream/metadata
A +4 -0 debian/watch
A +7 -0 debian/wireplumber-doc.doc-base
A +1 -0 debian/wireplumber-doc.install
A +1 -0 debian/wireplumber-system-services.install
A +17 -0 debian/wireplumber.README.Debian
A +1 -0 debian/wireplumber.docs
A +5 -0 debian/wireplumber.install
A +22 -0 debian/wireplumber.maintscript
https://invent.kde.org/neon/backports-noble/wireplumber-noble/-/commit/9ad98e49ebdef47f4df0c671cf620de16e220f9c
diff --git a/debian/NEWS b/debian/NEWS
new file mode 100644
index 0000000..fe3685e
--- /dev/null
+++ b/debian/NEWS
@@ -0,0 +1,19 @@
+wireplumber (0.5.1-1) experimental; urgency=medium
+
+ WirePlumber 0.5 was released with a new configuration system.
+ The new system is based on JSON instead of Lua which makes WirePlumber >= 0.5
+ incompatible with Lua conf files written for WirePlumber 0.4.
+ .
+ If only the default configuration (e.g the configuration shipped with the
+ Debian package) is used, then there is nothing to do.
+ .
+ If you use custom configuration files, you will have to manually update them
+ by following the migration guide. No automatic migration of old configuration
+ files is performed.
+ .
+ This guide is available at (after having installed "wireplumber-doc"):
+ /usr/share/doc/wireplumber/html/daemon/configuration/migration.html
+ or
+ https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/migration.html
+
+ -- Dylan Aïssi <daissi at debian.org> Sun, 31 Mar 2024 14:44:46 +0200
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..b58487c
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,523 @@
+wireplumber (0.5.10-3ubuntu1) questing; urgency=medium
+
+ * Add a speculative fix for a crash during wireplumber shutdown (LP: #2127049)
+
+ -- Charles <charles05 at canonical.com> Fri, 10 Oct 2025 07:43:18 +0100
+
+wireplumber (0.5.10-3) unstable; urgency=medium
+
+ * Adjust VCS fields in d/control and d/gbp.conf for unstable.
+ * Upload to unstable.
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 11 Aug 2025 08:58:28 +0200
+
+wireplumber (0.5.10-2) experimental; urgency=medium
+
+ * Install system-wide services in a new package (wireplumber-system-services).
+ (Closes: #1103237)
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 30 Jul 2025 10:46:58 +0200
+
+wireplumber (0.5.10-1) experimental; urgency=medium
+
+ * New upstream version
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 21 May 2025 10:17:37 +0200
+
+wireplumber (0.5.9-1) experimental; urgency=medium
+
+ * New upstream version
+ * Update symbols file with new symbols
+ * Adjust VCS fields in d/control and d/gbp.conf for experimental
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 19 May 2025 16:14:40 +0200
+
+wireplumber (0.5.8-2) unstable; urgency=medium
+
+ * Install zsh completions in /usr/share/zsh/vendor-completions/
+ See: /usr/share/doc/zsh/README.Debian.
+ * Standards-Version: 4.7.2 (no changes needed)
+
+ -- Dylan Aïssi <daissi at debian.org> Sat, 19 Apr 2025 09:10:54 +0200
+
+wireplumber (0.5.8-1) unstable; urgency=medium
+
+ [ Dylan Aïssi ]
+ * New upstream version
+ * Update symbols file
+ * Add some references in debian/upstream/metadata
+
+ [ Jeremy Bícha ]
+ * Opt into Ubuntu language packs (using dh-sequence-gnome)
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 07 Feb 2025 22:27:17 +0100
+
+wireplumber (0.5.7-1) unstable; urgency=medium
+
+ * New upstream version
+ * Add missing Build-Deps: gir1.2-gobject-2.0-dev and gir1.2-gio-2.0-dev.
+ dh_girepository warns about them.
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 02 Dec 2024 16:59:04 +0100
+
+wireplumber (0.5.6-3) unstable; urgency=medium
+
+ [ Helmut Grohne ]
+ * Improve cross building: (Closes: #1087705)
+ + Skip documentation in arch-only build.
+ * Add nogir build profile (using dh-exec).
+
+ [ Dylan Aïssi ]
+ * Test build profiles (nodoc and nogir) with salsa-ci.
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 18 Nov 2024 23:00:52 +0100
+
+wireplumber (0.5.6-2) unstable; urgency=medium
+
+ * Add dh-sequence-gir in Build-Deps to fill fields ${gir:*}
+ * dh_makeshlibs: ignore modules
+
+ -- Dylan Aïssi <daissi at debian.org> Sat, 02 Nov 2024 10:43:19 +0100
+
+wireplumber (0.5.6-1) unstable; urgency=medium
+
+ * New upstream version
+ * Update symbols file
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 06 Sep 2024 09:40:36 +0200
+
+wireplumber (0.5.5-1) unstable; urgency=medium
+
+ * New upstream version
+ - Fix crashes in the Bluetooth HSP/HFP autoswitch (Closes: #1074379)
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 28 Jun 2024 21:25:07 +0200
+
+wireplumber (0.5.4-1) unstable; urgency=medium
+
+ * New upstream version
+ * Update symbols file
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 26 Jun 2024 21:35:39 +0200
+
+wireplumber (0.5.3-1) unstable; urgency=medium
+
+ * New upstream version
+ * Update symbols file
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 03 Jun 2024 10:09:48 +0200
+
+wireplumber (0.5.2-3) unstable; urgency=medium
+
+ * Fix debian/watch
+ * Update tests dependencies: switch to libwireplumber-0.5-dev and pkgconf
+ * Update debian/tests/build to use wireplumber-0.5
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 10 May 2024 11:57:30 +0200
+
+wireplumber (0.5.2-2) unstable; urgency=medium
+
+ * Upload to unstable
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 06 May 2024 10:22:38 +0200
+
+wireplumber (0.5.2-1) experimental; urgency=medium
+
+ * New upstream version
+ * Standards-Version: 4.7.0 (no changes needed)
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 22 Apr 2024 18:25:04 +0200
+
+wireplumber (0.5.1-1) experimental; urgency=medium
+
+ * New upstream version
+ * Add asahi-audio << 2.0 in Breaks, see #1067660
+ * Add debian/NEWS to warn users about incompatible conf files
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 03 Apr 2024 10:45:11 +0200
+
+wireplumber (0.5.0-1) experimental; urgency=medium
+
+ * New upstream version
+ * Update symbols file
+ * Bump minimum pipewire to 1.0.2
+ * Bump minimum glib to 2.68
+ * Switch Build-Deps from systemd to systemd-dev (Closes: #1060497)
+ * Drop useless comments in debian/control
+ * Mark doxygen and python3-lxml as <!nodoc>
+ * Use pkgconf instead of the transitional pkg-config
+ * Update copyright file
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 18 Mar 2024 21:47:47 +0100
+
+wireplumber (0.4.90-1) experimental; urgency=medium
+
+ * New upstream version 0.4.90 (0.5.0 release candidate 1)
+ * Don't install conf files in /usr/share/pipewire/, it was reverted upstream
+ * Update symbols file
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 06 Mar 2024 10:16:36 +0100
+
+wireplumber (0.4.82-1) experimental; urgency=medium
+
+ * New upstream version 0.4.82 (0.5.0 pre-release 2)
+ * Update symbols file
+ * Refresh Remove-privacy-breach-documentation.patch
+
+ -- Dylan Aïssi <daissi at debian.org> Thu, 15 Feb 2024 11:24:41 +0100
+
+wireplumber (0.4.81-1) experimental; urgency=medium
+
+ * New upstream version: This is a preliminary release of WirePlumber 0.5.0.
+ * Install conf files in /usr/share/pipewire/
+ * Bump SONAME to libwireplumber-0.5
+ * Update symbols file
+ * Refresh patches
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 05 Jan 2024 11:40:34 +0100
+
+wireplumber (0.4.17-1) unstable; urgency=medium
+
+ * New upstream version
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 04 Dec 2023 10:18:53 +0100
+
+wireplumber (0.4.16-1) unstable; urgency=medium
+
+ [ Dylan Aïssi ]
+ * New upstream version
+ * Drop patch included in upstream release:
+ - policy-dsp: add ability to hide parent nodes
+ * Bump minimum pipewire to 0.3.68
+ * Update symbols file
+
+ [ Andreas Henriksson ]
+ * Use ${gir:Depends} and ${gir:Provides}
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 22 Nov 2023 17:59:06 +0100
+
+wireplumber (0.4.15-2) unstable; urgency=medium
+
+ * Team upload.
+ * Cherry-pick upstream patch for ability to hide parent nodes
+
+ -- Andreas Henriksson <andreas at fatal.se> Mon, 13 Nov 2023 18:14:25 +0100
+
+wireplumber (0.4.15-1) unstable; urgency=medium
+
+ [ Dylan Aïssi ]
+ * New upstream version
+ * Install zsh completions file
+ * Update symbols file
+
+ [ Lena Voytek ]
+ * d/control: Upgrade lua build dependency to 5.4
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 13 Oct 2023 12:06:12 +0200
+
+wireplumber (0.4.14-4) unstable; urgency=medium
+
+ * Wireplumber depends on 'default-dbus-session-bus | dbus-session-bus'
+ instead of dbus-user-session (Closes: #1040513)
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 07 Jul 2023 10:40:06 +0200
+
+wireplumber (0.4.14-3) unstable; urgency=medium
+
+ * Wireplumber depends on dbus-user-session (Closes: #1037513)
+ * Wireplumber suggests libspa-0.2-libcamera (Closes: #1037941)
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 03 Jul 2023 10:18:13 +0200
+
+wireplumber (0.4.14-2) unstable; urgency=medium
+
+ * Upload to unstable
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 12 Jun 2023 11:43:17 +0200
+
+wireplumber (0.4.14-1) experimental; urgency=medium
+
+ * New upstream version
+ * Install NEWS.rst only in the main wireplumber package (Closes: #1026099)
+ * Standards-Version: 4.6.2 (no changes needed)
+ * Upload to experimental because of the Bookworm freeze
+
+ -- Dylan Aïssi <daissi at debian.org> Thu, 09 Mar 2023 18:00:49 +0100
+
+wireplumber (0.4.13-1) unstable; urgency=medium
+
+ * New upstream version
+ * Set build options in debian/rules, to be sure they are correct
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 14 Dec 2022 10:35:15 +0100
+
+wireplumber (0.4.12-1) unstable; urgency=medium
+
+ [ Dylan Aïssi ]
+ * New upstream version
+ * Drop patches included in upstream release:
+ - fix_variable_name.patch
+ - eb406bdb: dbus: fix crash when trying to reconnect
+ - 37c839b9: policy-node: fix potential rescan loop
+ - 370b6929: m-si-link: don't wait for establish before activation
+ * Update symbols file
+
+ [ Debian Janitor ]
+ * Set upstream metadata fields: Bug-Database, Bug-Submit, Repository,
+ Repository-Browse.
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 05 Oct 2022 09:16:57 +0200
+
+wireplumber (0.4.11-5) unstable; urgency=medium
+
+ [ Debian Janitor ]
+ * Remove constraints unnecessary since buster (oldstable):
+ + Build-Depends: Drop versioned constraint on doxygen and pkg-config.
+
+ [ Dylan Aïssi ]
+ * Clarify relation between wireplumber and libspa-0.2-bluetooth
+ in wireplumber.README.Debian (Closes: #997862)
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 14 Sep 2022 16:20:52 +0200
+
+wireplumber (0.4.11-4) unstable; urgency=medium
+
+ * Build a new package wireplumber-doc (Closes: #1019285)
+ * Add patch removing service alias. This alias is only used to prevent
+ wireplumber and pipewire-media-session from being enabled at the same time.
+ This is already handled at the package level with a conflict between both,
+ thus we can safetly remove alias and avoid the issue with systemd.
+ (Closes: #997818)
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 12 Sep 2022 09:30:40 +0200
+
+wireplumber (0.4.11-3) unstable; urgency=medium
+
+ * Cherry-pick upstream recommended patches:
+ - 37c839b9: policy-node: fix potential rescan loop
+ - 370b6929: m-si-link: don't wait for establish before activation + cleanup links
+ (Closes: #1017397)
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 05 Sep 2022 11:16:08 +0200
+
+wireplumber (0.4.11-2) unstable; urgency=medium
+
+ * Cherry-pick upstream recommended patches:
+ - eb406bdb: dbus: fix crash when trying to reconnect (Closes: #1016104)
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 27 Jul 2022 13:45:30 +0200
+
+wireplumber (0.4.11-1) unstable; urgency=medium
+
+ * New upstream version
+ * Update symbols file
+ * Bump minimum pipewire to 0.3.52
+ * Add an upstream patch fixing issue with VMs
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 08 Jul 2022 14:20:54 +0200
+
+wireplumber (0.4.10-2) unstable; urgency=medium
+
+ [ Debian Janitor ]
+ * Avoid explicitly specifying -Wl,--as-needed linker flag.
+
+ [ Sebastien Bacher ]
+ * debian/tests:
+ - add a basic build autopkgtest for the library
+ * debian/control:
+ - libwireplumber-0.4-dev depends on libglib2.0-dev and libpipewire-0.3-dev,
+ those are required by the .pc
+ (Closes: #1011340)
+
+ [ Dylan Aïssi ]
+ * Add Conflicts and Replaces for pipewire-media-session
+ * Add Suggests for libspa-0.2-bluetooth
+ * Add myself in Uploaders
+ * Remove useless .dirs files
+ * Standards-Version: 4.6.1 (no changes needed)
+
+ -- Dylan Aïssi <daissi at debian.org> Tue, 31 May 2022 22:14:51 +0200
+
+wireplumber (0.4.10-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version
+ * Install new i18n files
+ * Update symbols file
+ * Bump meson version requirement to 0.59
+ * Update copyright file
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 11 May 2022 14:01:51 +0200
+
+wireplumber (0.4.9-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.9
+ * Drop patches included in upstream release:
+ - fix_va_list_APIs_for_different_arches.patch
+ - si-audio-adapter-relax-format-parsing.patch
+ * Bump minimum pipewire to 0.3.48
+ * Update symbols file
+ * Simplify debian/salsa-ci.yml
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 23 Mar 2022 10:03:02 +0100
+
+wireplumber (0.4.8-4) unstable; urgency=medium
+
+ * Team upload
+ * d/p/si-audio-adapter-relax-format-parsing.patch:
+ Add patch from upstream to fix interop with Pipewire 0.3.48
+ (Closes: #1007100)
+
+ -- Simon McVittie <smcv at debian.org> Fri, 11 Mar 2022 10:26:20 +0000
+
+wireplumber (0.4.8-3) unstable; urgency=medium
+
+ * Team upload.
+ * Add stricter dependency between wireplumber and libwireplumber-0.4-0
+ * Mark gir1.2-wp-0.4 as Multi-Arch: same
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 16 Feb 2022 16:33:32 +0100
+
+wireplumber (0.4.8-2) unstable; urgency=medium
+
+ * Team upload.
+ * Add an upstream patch to fix va_list APIs for different architectures
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 09 Feb 2022 18:09:12 +0100
+
+wireplumber (0.4.8-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.8
+ * Install the upstream changelog file NEWS.rst (Closes: #1003836)
+ * Update symbols file
+ * Bump minimum pipewire to 0.3.45
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 07 Feb 2022 23:21:05 +0100
+
+wireplumber (0.4.7-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.7
+
+ -- Dylan Aïssi <daissi at debian.org> Thu, 13 Jan 2022 11:06:07 +0100
+
+wireplumber (0.4.6-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.6
+ * Simplify debian/watch file
+ * Bump minimum pipewire to 0.3.43
+ * Update symbols file
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 10 Jan 2022 17:08:47 +0100
+
+wireplumber (0.4.5-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.5
+ * Update symbols file
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 17 Nov 2021 20:34:51 +0100
+
+wireplumber (0.4.4-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.4
+ * Update symbols file
+ * Bump meson version requirement to 0.56
+
+ -- Dylan Aïssi <daissi at debian.org> Mon, 18 Oct 2021 11:16:15 +0200
+
+wireplumber (0.4.3-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.3
+ * Drop patches included in upstream release:
+ - add_basic_check_for_nil_monitor.patch
+ - fix_object_constructors_to_fail_gracefully.patch
+ * Update symbols file
+ * Add libsystemd-dev to Build-Depends
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 08 Oct 2021 15:57:11 +0200
+
+wireplumber (0.4.2-5) unstable; urgency=medium
+
+ * Add upstream patches to prevent a failure to start when
+ the SPA plugin is not available (Closes: #994085)
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 15 Sep 2021 16:04:57 +0200
+
+wireplumber (0.4.2-4) unstable; urgency=medium
+
+ * Team upload.
+ * Wireplumber is ready for an upload to unstable.
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 01 Sep 2021 11:04:02 +0200
+
+wireplumber (0.4.2-3) experimental; urgency=medium
+
+ * Team upload.
+ * Really remove previous conffiles (Closes: #992604)
+ * Standards-Version: 4.6.0 (no changes needed)
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 27 Aug 2021 15:44:46 +0200
+
+wireplumber (0.4.2-2) experimental; urgency=medium
+
+ * Team upload.
+ * Remove conffiles that moved to /usr/share/wireplumber/ (Closes: #992604)
+ * Add missing lowest required PipeWire version in d/control.
+
+ -- Dylan Aïssi <daissi at debian.org> Tue, 24 Aug 2021 12:16:33 +0200
+
+wireplumber (0.4.2-1) experimental; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.2
+ * Conf files are now in /usr/share/wireplumber/ instead of /etc/wireplumber/
+ * Update symbols file
+ * Bump required PipeWire version to 0.3.32
+
+ -- Dylan Aïssi <daissi at debian.org> Fri, 20 Aug 2021 11:26:29 +0200
+
+wireplumber (0.4.1-1) experimental; urgency=medium
+
+ * Team upload.
+ * New upstream version 0.4.1
+ * Bump GLib requirement to 2.62
+ * Relaxe doxygen requirement to 1.8
+
+ -- Dylan Aïssi <daissi at debian.org> Thu, 22 Jul 2021 10:16:45 +0200
+
+wireplumber (0.4.0-1) experimental; urgency=medium
+
+ * Team upload.
+
+ [ Frederic Danis ]
+ * New upstream version 0.3.96
+ * debian: Stop disabling doc and force gobject-introspection
+ * d/patches: Remove merged patches
+ * d/control: Add recommends of pipewire-pulse
+ * debian: Update libwireplumber-0.4 symbols
+ * d/patches: meson: force the gir target to depend on wp-gtkdoc.h
+
+ [ Dylan Aïssi ]
+ * New upstream version 0.4.0
+ * Remove d/p/meson-force-the-gir-target-to-depend-on-wp-gtkdoc.h.patch,
+ applied upstream.
+ * Update symbols file
+ * Add a versioned dependency for gir1.2-wp-0.4
+
+ -- Dylan Aïssi <daissi at debian.org> Wed, 16 Jun 2021 12:09:12 +0200
+
+wireplumber (0.3.95-1) experimental; urgency=medium
+
+ [ Frederic Danis ]
+ * Initial release (Closes: #988143)
+
+ [ Sjoerd Simons ]
+ * Upload to experimental
+
+ -- Sjoerd Simons <sjoerd at debian.org> Tue, 18 May 2021 22:02:27 +0200
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..7dcc2aa
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,138 @@
+Source: wireplumber
+Section: libs
+Priority: optional
+Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers at alioth-lists.debian.net>
+Uploaders: Sjoerd Simons <sjoerd at debian.org>,
+ Dylan Aïssi <daissi at debian.org>
+Build-Depends: debhelper-compat (= 13),
+ dh-exec,
+ dh-sequence-gir,
+ dh-sequence-gnome,
+ doxygen <!nodoc>,
+ gir1.2-gio-2.0-dev <!nogir>,
+ gir1.2-gobject-2.0-dev <!nogir>,
+ gobject-introspection <!nogir>,
+ libgirepository1.0-dev <!nogir>,
+ libglib2.0-dev (>= 2.68),
+ liblua5.4-dev,
+ libpipewire-0.3-dev (>= 1.0.2),
+ libspa-0.2-dev,
+ libsystemd-dev,
+ meson (>= 0.59.0),
+ pkgconf,
+ systemd-dev,
+ dbus <!nocheck>,
+ pipewire (>= 1.0.2) <!nocheck>,
+ python3-lxml:native <!nogir>,
+Build-Depends-Indep:
+ python3-breathe <!nodoc>,
+ python3-sphinx <!nodoc>,
+ python3-sphinx-rtd-theme <!nodoc>,
+Standards-Version: 4.7.2
+Homepage: https://gitlab.freedesktop.org/pipewire/wireplumber
+Vcs-Browser: https://salsa.debian.org/utopia-team/wireplumber
+Vcs-Git: https://salsa.debian.org/utopia-team/wireplumber.git
+Rules-Requires-Root: no
+
+Package: libwireplumber-0.5-0
+Architecture: linux-any
+Multi-Arch: same
+Depends: ${misc:Depends},
+ ${shlibs:Depends},
+Description: Shared libraries for WirePlumber
+ WirePlumber is a modular session / policy manager for PipeWire and a
+ GObject-based high-level library that wraps PipeWire's API, providing
+ convenience for writing the daemon's modules as well as external tools for
+ managing PipeWire.
+ .
+ This package contains the shared library and plugins.
+
+Package: libwireplumber-0.5-dev
+Section: libdevel
+Architecture: linux-any
+Multi-Arch: same
+Depends: ${misc:Depends},
+ ${gir:Depends},
+ libglib2.0-dev,
+ libpipewire-0.3-dev,
+ libwireplumber-0.5-0 (= ${binary:Version}),
+ gir1.2-wp-0.5 (= ${binary:Version}),
+Provides: ${gir:Provides}
+Suggests: wireplumber-doc
+Description: Development files for WirePlumber
+ WirePlumber is a modular session / policy manager for PipeWire and a
+ GObject-based high-level library that wraps PipeWire's API, providing
+ convenience for writing the daemon's modules as well as external tools for
+ managing PipeWire.
+ .
+ This package contains the development files.
+
+Package: wireplumber
+Architecture: linux-any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ default-dbus-session-bus | dbus-session-bus,
+ libwireplumber-0.5-0 (= ${binary:Version}),
+ pipewire (>= 1.0.2),
+Recommends: pipewire-pulse
+Suggests: libspa-0.2-bluetooth,
+ libspa-0.2-libcamera,
+ wireplumber-doc
+Conflicts: pipewire-media-session
+Replaces: pipewire-media-session
+Breaks: asahi-audio (<< 2.0)
+Section: video
+Description: modular session / policy manager for PipeWire
+ WirePlumber is a modular session / policy manager for PipeWire and a
+ GObject-based high-level library that wraps PipeWire's API, providing
+ convenience for writing the daemon's modules as well as external tools for
+ managing PipeWire.
+ .
+ This package contains the WirePlumber daemon and command-line utilities.
+
+Package: wireplumber-system-services
+Architecture: all
+Depends: pipewire-system-services,
+ wireplumber,
+ ${misc:Depends},
+ ${shlibs:Depends},
+Description: modular session / policy manager for PipeWire (system services)
+ WirePlumber is a modular session / policy manager for PipeWire and a
+ GObject-based high-level library that wraps PipeWire's API, providing
+ convenience for writing the daemon's modules as well as external tools for
+ managing PipeWire.
+ .
+ This package contains the systemd system services. NOTE: This is NOT the
+ recommended way to use WirePlumber, but these services are provided for
+ specific use cases like embedded and accessibility.
+
+Package: wireplumber-doc
+Section: doc
+Build-Profiles: <!nodoc>
+Architecture: all
+Multi-Arch: foreign
+Depends: ${misc:Depends}
+Description: modular session / policy manager for PipeWire - documentation
+ WirePlumber is a modular session / policy manager for PipeWire and a
+ GObject-based high-level library that wraps PipeWire's API, providing
+ convenience for writing the daemon's modules as well as external tools for
+ managing PipeWire.
+ .
+ This package contains the WirePlumber documentation.
+
+Package: gir1.2-wp-0.5
+Section: introspection
+Architecture: linux-any
+Build-Profiles: <!nogir>
+Multi-Arch: same
+Depends: ${misc:Depends},
+ ${gir:Depends},
+ libwireplumber-0.5-0 (= ${binary:Version}),
+Provides: ${gir:Provides}
+Description: GObject introspection files for WirePlumber
+ WirePlumber is a modular session / policy manager for PipeWire and a
+ GObject-based high-level library that wraps PipeWire's API, providing
+ convenience for writing the daemon's modules as well as external tools for
+ managing PipeWire.
+ .
+ This package contains the GObject-introspection data in binary typelib format.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..9446b88
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,33 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: wireplumber
+Upstream-Contact: George Kiagiadakis <george.kiagiadakis at collabora.com>
+Source: https://gitlab.freedesktop.org/pipewire/wireplumber/
+
+Files: *
+Copyright: 2019-2024 Collabora Ltd.
+License: MIT
+
+Files: modules/module-lua-scripting/wplua/sandbox.lua
+Copyright: 2013 Enrique García Cota,
+ 2020 Collabora Ltd.
+License: MIT
+
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining a
+ copy of this software and associated documentation files (the "Software"),
+ to deal in the Software without restriction, including without limitation
+ the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ and/or sell copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following conditions:
+ .
+ The above copyright notice and this permission notice (including the next
+ paragraph) shall be included in all copies or substantial portions of the
+ Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 0000000..a81febb
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,4 @@
+[DEFAULT]
+debian-branch = debian/latest
+upstream-branch = upstream/latest
+upstream-tag = %(version)s
diff --git a/debian/gir1.2-wp-0.5.install b/debian/gir1.2-wp-0.5.install
new file mode 100644
index 0000000..066de77
--- /dev/null
+++ b/debian/gir1.2-wp-0.5.install
@@ -0,0 +1 @@
+/usr/lib/*/girepository-1.0
diff --git a/debian/libwireplumber-0.5-0.install b/debian/libwireplumber-0.5-0.install
new file mode 100644
index 0000000..4ed9bb4
--- /dev/null
+++ b/debian/libwireplumber-0.5-0.install
@@ -0,0 +1,2 @@
+usr/lib/*/lib*.so.*
+usr/lib/*/wireplumber-*/libwireplumber*.so
diff --git a/debian/libwireplumber-0.5-0.symbols b/debian/libwireplumber-0.5-0.symbols
new file mode 100644
index 0000000..fef1b21
--- /dev/null
+++ b/debian/libwireplumber-0.5-0.symbols
@@ -0,0 +1,624 @@
+libwireplumber-0.5.so.0 libwireplumber-0.5-0 #MINVER#
+* Build-Depends-Package: libwireplumber-0.5-dev
+ wp_async_event_hook_get_type at Base 0.4.81
+ wp_async_event_hook_new at Base 0.4.81
+ wp_base_dirs_find_file at Base 0.4.90
+ wp_base_dirs_flags_get_type at Base 0.4.90
+ wp_base_dirs_new_files_iterator at Base 0.4.90
+ wp_client_get_type at Base 0.3.95
+ wp_client_send_error at Base 0.4.4
+ wp_client_update_permissions at Base 0.3.95
+ wp_client_update_permissions_array at Base 0.3.95
+ wp_client_update_properties at Base 0.4.81
+ wp_component_loader_get_type at Base 0.3.95
+ wp_conf_close at Base 0.4.90
+ wp_conf_get_name at Base 0.4.90
+ wp_conf_get_section at Base 0.4.81
+ wp_conf_get_type at Base 0.4.81
+ wp_conf_is_open at Base 0.4.90
+ wp_conf_new at Base 0.4.90
+ wp_conf_new_open at Base 0.4.90
+ wp_conf_open at Base 0.4.90
+ wp_conf_parse_pw_context_sections at Base 0.4.90
+ wp_conf_section_update_props at Base 0.4.90
+ wp_constraint_type_get_type at Base 0.3.95
+ wp_constraint_verb_get_type at Base 0.3.95
+ wp_core_clone at Base 0.3.95
+ wp_core_connect at Base 0.3.95
+ wp_core_connect_fd at Base 0.5.6
+ wp_core_disconnect at Base 0.3.95
+ wp_core_features_get_type at Base 0.4.81
+ wp_core_find_object at Base 0.4.81
+ wp_core_get_conf at Base 0.4.90
+ wp_core_get_export_core at Base 0.4.81
+ wp_core_get_g_main_context at Base 0.3.95
+ wp_core_get_own_bound_id at Base 0.4.16
+ wp_core_get_properties at Base 0.3.95
+ wp_core_get_pw_context at Base 0.3.95
+ wp_core_get_pw_core at Base 0.3.95
+ wp_core_get_remote_cookie at Base 0.3.95
+ wp_core_get_remote_host_name at Base 0.3.95
+ wp_core_get_remote_name at Base 0.3.95
+ wp_core_get_remote_properties at Base 0.3.95
+ wp_core_get_remote_user_name at Base 0.3.95
+ wp_core_get_remote_version at Base 0.3.95
+ wp_core_get_type at Base 0.3.95
+ wp_core_get_vm_type at Base 0.4.11
+ wp_core_idle_add at Base 0.3.95
+ wp_core_idle_add_closure at Base 0.3.95
+ wp_core_install_object_manager at Base 0.3.95
+ wp_core_is_connected at Base 0.3.95
+ wp_core_load_component at Base 0.3.95
+ wp_core_load_component_finish at Base 0.4.81
+ wp_core_new at Base 0.3.95
+ wp_core_register_object at Base 0.4.81
+ wp_core_remove_object at Base 0.4.81
+ wp_core_sync at Base 0.3.95
+ wp_core_sync_closure at Base 0.4.6
+ wp_core_sync_finish at Base 0.3.95
+ wp_core_test_feature at Base 0.4.81
+ wp_core_timeout_add at Base 0.3.95
+ wp_core_timeout_add_closure at Base 0.3.95
+ wp_core_update_properties at Base 0.3.95
+ wp_device_get_type at Base 0.3.95
+ wp_device_new_from_factory at Base 0.3.95
+ wp_direction_get_type at Base 0.3.95
+ wp_domain_library_quark at Base 0.3.95
+ wp_event_collect_hooks at Base 0.4.81
+ wp_event_dispatcher_get_instance at Base 0.4.81
+ wp_event_dispatcher_get_type at Base 0.4.81
+ wp_event_dispatcher_new_hooks_iterator at Base 0.4.81
+ wp_event_dispatcher_push_event at Base 0.4.81
+ wp_event_dispatcher_register_hook at Base 0.4.81
+ wp_event_dispatcher_unregister_hook at Base 0.4.81
+ wp_event_get_cancellable at Base 0.4.81
+ wp_event_get_data at Base 0.4.81
+ wp_event_get_name at Base 0.4.81
+ wp_event_get_priority at Base 0.4.81
+ wp_event_get_properties at Base 0.4.81
+ wp_event_get_source at Base 0.4.81
+ wp_event_get_subject at Base 0.4.81
+ wp_event_get_type at Base 0.4.81
+ wp_event_hook_finish at Base 0.4.81
+ wp_event_hook_get_name at Base 0.4.81
+ wp_event_hook_get_runs_after_hooks at Base 0.4.81
+ wp_event_hook_get_runs_before_hooks at Base 0.4.81
+ wp_event_hook_get_type at Base 0.4.81
+ wp_event_hook_run at Base 0.4.81
+ wp_event_hook_runs_for_event at Base 0.4.81
+ wp_event_new at Base 0.4.81
+ wp_event_new_hooks_iterator at Base 0.4.81
+ wp_event_ref at Base 0.4.81
+ wp_event_set_data at Base 0.4.81
+ wp_event_stop_processing at Base 0.4.81
+ wp_event_unref at Base 0.4.81
+ wp_factory_get_type at Base 0.4.5
+ wp_feature_activation_transition_get_requested_features at Base 0.3.95
+ wp_feature_activation_transition_get_type at Base 0.3.95
+ wp_get_library_api_version at Base 0.4.12
+ wp_get_library_version at Base 0.4.12
+ wp_global_proxy_bind at Base 0.3.95
+ wp_global_proxy_get_global_properties at Base 0.3.95
+ wp_global_proxy_get_permissions at Base 0.3.95
+ wp_global_proxy_get_type at Base 0.3.95
+ wp_global_proxy_request_destroy at Base 0.3.95
+ wp_impl_metadata_get_type at Base 0.3.95
+ wp_impl_metadata_new at Base 0.3.95
+ wp_impl_metadata_new_full at Base 0.4.3
+ wp_impl_module_get_type at Base 0.4.2
+ wp_impl_module_load at Base 0.4.2
+ wp_impl_node_get_type at Base 0.3.95
+ wp_impl_node_new_from_pw_factory at Base 0.3.95
+ wp_impl_node_new_wrap at Base 0.3.95
+ wp_init at Base 0.3.95
+ wp_init_flags_get_type at Base 0.4.0
+ wp_interest_event_hook_add_interest at Base 0.4.81
+ wp_interest_event_hook_add_interest_full at Base 0.4.81
+ wp_interest_event_hook_get_type at Base 0.4.81
+ wp_interest_match_flags_get_type at Base 0.4.0
+ wp_interest_match_get_type at Base 0.4.0
+ wp_internal_comp_loader_get_type at Base 0.4.81
+ wp_iterator_fold at Base 0.3.95
+ wp_iterator_foreach at Base 0.3.95
+ wp_iterator_get_type at Base 0.3.95
+ wp_iterator_get_user_data at Base 0.3.95
+ wp_iterator_new at Base 0.3.95
+ wp_iterator_new_ptr_array at Base 0.3.95
+ wp_iterator_next at Base 0.3.95
+ wp_iterator_ref at Base 0.3.95
+ wp_iterator_reset at Base 0.3.95
+ wp_iterator_unref at Base 0.3.95
+ wp_json_utils_match_rules at Base 0.4.81
+ wp_json_utils_match_rules_update_properties at Base 0.4.81
+ wp_json_utils_merge_containers at Base 0.4.81
+ wp_library_error_enum_get_type at Base 0.3.95
+ wp_link_get_linked_object_ids at Base 0.3.95
+ wp_link_get_state at Base 0.4.11
+ wp_link_get_type at Base 0.3.95
+ wp_link_new_from_factory at Base 0.3.95
+ wp_link_state_get_type at Base 0.4.11
+ wp_log_checked at Base 0.4.81
+ wp_log_set_level at Base 0.4.82
+ wp_log_topic_flags_get_type at Base 0.5.0
+ wp_log_topic_init at Base 0.4.81
+ wp_log_topic_register at Base 0.4.82
+ wp_log_topic_unregister at Base 0.4.82
+ wp_log_writer_default at Base 0.3.95
+ wp_logt_checked at Base 0.5.3
+ wp_metadata_clear at Base 0.3.95
+ wp_metadata_features_get_type at Base 0.3.95
+ wp_metadata_find at Base 0.3.95
+ wp_metadata_get_type at Base 0.3.95
+ wp_metadata_item_get_key at Base 0.4.90
+ wp_metadata_item_get_subject at Base 0.4.90
+ wp_metadata_item_get_type at Base 0.4.90
+ wp_metadata_item_get_value at Base 0.4.90
+ wp_metadata_item_get_value_type at Base 0.4.90
+ wp_metadata_item_ref at Base 0.4.90
+ wp_metadata_item_unref at Base 0.4.90
+ wp_metadata_new_iterator at Base 0.3.95
+ wp_metadata_set at Base 0.3.95
+ wp_node_features_get_type at Base 0.3.95
+ wp_node_get_n_input_ports at Base 0.3.95
+ wp_node_get_n_output_ports at Base 0.3.95
+ wp_node_get_n_ports at Base 0.3.95
+ wp_node_get_state at Base 0.3.95
+ wp_node_get_type at Base 0.3.95
+ wp_node_lookup_port at Base 0.3.95
+ wp_node_lookup_port_full at Base 0.3.95
+ wp_node_new_from_factory at Base 0.3.95
+ wp_node_new_ports_filtered_iterator at Base 0.3.95
+ wp_node_new_ports_filtered_iterator_full at Base 0.3.95
+ wp_node_new_ports_iterator at Base 0.3.95
+ wp_node_send_command at Base 0.3.95
+ wp_node_state_get_type at Base 0.3.95
+ wp_object_abort_activation at Base 0.4.6
+ wp_object_activate at Base 0.3.95
+ wp_object_activate_closure at Base 0.3.95
+ wp_object_activate_finish at Base 0.3.95
+ wp_object_deactivate at Base 0.3.95
+ wp_object_get_active_features at Base 0.3.95
+ wp_object_get_core at Base 0.3.95
+ wp_object_get_id at Base 0.4.81
+ wp_object_get_supported_features at Base 0.3.95
+ wp_object_get_type at Base 0.3.95
+ wp_object_interest_add_constraint at Base 0.3.95
+ wp_object_interest_get_type at Base 0.3.95
+ wp_object_interest_matches at Base 0.3.95
+ wp_object_interest_matches_full at Base 0.3.95
+ wp_object_interest_new at Base 0.3.95
+ wp_object_interest_new_type at Base 0.3.95
+ wp_object_interest_new_valist at Base 0.3.95
+ wp_object_interest_ref at Base 0.3.95
+ wp_object_interest_unref at Base 0.3.95
+ wp_object_interest_validate at Base 0.3.95
+ wp_object_manager_add_interest at Base 0.3.95
+ wp_object_manager_add_interest_full at Base 0.3.95
+ wp_object_manager_get_n_objects at Base 0.3.95
+ wp_object_manager_get_type at Base 0.3.95
+ wp_object_manager_is_installed at Base 0.3.95
+ wp_object_manager_lookup at Base 0.3.95
+ wp_object_manager_lookup_full at Base 0.3.95
+ wp_object_manager_new at Base 0.3.95
+ wp_object_manager_new_filtered_iterator at Base 0.3.95
+ wp_object_manager_new_filtered_iterator_full at Base 0.3.95
+ wp_object_manager_new_iterator at Base 0.3.95
+ wp_object_manager_request_object_features at Base 0.3.95
+ wp_object_test_active_features at Base 0.4.81
+ wp_object_test_supported_features at Base 0.4.81
+ wp_object_update_features at Base 0.3.95
+ wp_pipewire_object_enum_params at Base 0.3.95
+ wp_pipewire_object_enum_params_finish at Base 0.3.95
+ wp_pipewire_object_enum_params_sync at Base 0.3.95
+ wp_pipewire_object_get_native_info at Base 0.3.95
+ wp_pipewire_object_get_param_info at Base 0.3.95
+ wp_pipewire_object_get_properties at Base 0.3.95
+ wp_pipewire_object_get_property at Base 0.3.95
+ wp_pipewire_object_get_type at Base 0.3.95
+ wp_pipewire_object_new_properties_iterator at Base 0.3.95
+ wp_pipewire_object_set_param at Base 0.3.95
+ wp_plugin_features_get_type at Base 0.3.95
+ wp_plugin_find at Base 0.3.95
+ wp_plugin_get_name at Base 0.3.95
+ wp_plugin_get_type at Base 0.3.95
+ wp_port_get_direction at Base 0.3.95
+ wp_port_get_type at Base 0.3.95
+ wp_proc_info_get_arg at Base 0.5.9
+ wp_proc_info_get_cgroup at Base 0.5.9
+ wp_proc_info_get_n_args at Base 0.5.9
+ wp_proc_info_get_parent_pid at Base 0.5.9
+ wp_proc_info_get_pid at Base 0.5.9
+ wp_proc_info_get_type at Base 0.5.9
+ wp_proc_info_ref at Base 0.5.9
+ wp_proc_info_unref at Base 0.5.9
+ wp_proc_utils_get_proc_info at Base 0.5.9
+ wp_properties_add at Base 0.3.95
+ wp_properties_add_from_dict at Base 0.3.95
+ wp_properties_add_keys at Base 0.3.95
+ wp_properties_add_keys_array at Base 0.3.95
+ wp_properties_add_keys_from_dict at Base 0.3.95
+ wp_properties_copy at Base 0.3.95
+ wp_properties_ensure_unique_owner at Base 0.3.95
+ wp_properties_get at Base 0.3.95
+ wp_properties_get_count at Base 0.4.10
+ wp_properties_get_type at Base 0.3.95
+ wp_properties_item_get_key at Base 0.4.2
+ wp_properties_item_get_type at Base 0.4.2
+ wp_properties_item_get_value at Base 0.4.2
+ wp_properties_item_ref at Base 0.4.2
+ wp_properties_item_unref at Base 0.4.2
+ wp_properties_matches at Base 0.3.95
+ wp_properties_new at Base 0.3.95
+ wp_properties_new_copy at Base 0.3.95
+ wp_properties_new_copy_dict at Base 0.3.95
+ wp_properties_new_empty at Base 0.3.95
+ wp_properties_new_iterator at Base 0.3.95
+ wp_properties_new_json at Base 0.4.81
+ wp_properties_new_string at Base 0.3.95
+ wp_properties_new_take at Base 0.3.95
+ wp_properties_new_valist at Base 0.3.95
+ wp_properties_new_wrap at Base 0.3.95
+ wp_properties_new_wrap_dict at Base 0.3.95
+ wp_properties_peek_dict at Base 0.3.95
+ wp_properties_ref at Base 0.3.95
+ wp_properties_set at Base 0.3.95
+ wp_properties_setf at Base 0.3.95
+ wp_properties_setf_valist at Base 0.3.95
+ wp_properties_sort at Base 0.3.95
+ wp_properties_to_pw_properties at Base 0.3.95
+ wp_properties_unref at Base 0.3.95
+ wp_properties_unref_and_take_pw_properties at Base 0.3.95
+ wp_properties_update at Base 0.3.95
+ wp_properties_update_from_dict at Base 0.3.95
+ wp_properties_update_from_json at Base 0.4.81
+ wp_properties_update_keys at Base 0.3.95
+ wp_properties_update_keys_array at Base 0.3.95
+ wp_properties_update_keys_from_dict at Base 0.3.95
+ wp_proxy_features_get_type at Base 0.3.95
+ wp_proxy_get_bound_id at Base 0.3.95
+ wp_proxy_get_interface_type at Base 0.3.95
+ wp_proxy_get_pw_proxy at Base 0.3.95
+ wp_proxy_get_type at Base 0.3.95
+ wp_proxy_set_pw_proxy at Base 0.3.95
+ wp_session_item_configure at Base 0.3.95
+ wp_session_item_features_get_type at Base 0.3.95
+ wp_session_item_get_associated_proxy at Base 0.3.95
+ wp_session_item_get_associated_proxy_id at Base 0.3.95
+ wp_session_item_get_properties at Base 0.3.95
+ wp_session_item_get_property at Base 0.3.96
+ wp_session_item_get_type at Base 0.3.95
+ wp_session_item_handle_proxy_destroyed at Base 0.3.95
+ wp_session_item_is_configured at Base 0.3.95
+ wp_session_item_make at Base 0.3.95
+ wp_session_item_register at Base 0.3.95
+ wp_session_item_remove at Base 0.3.95
+ wp_session_item_reset at Base 0.3.95
+ wp_session_item_set_properties at Base 0.3.95
+ wp_settings_delete at Base 0.4.90
+ wp_settings_delete_all at Base 0.4.90
+ wp_settings_features_get_type at Base 0.4.81
+ wp_settings_find at Base 0.4.82
+ wp_settings_get at Base 0.4.81
+ wp_settings_get_saved at Base 0.4.90
+ wp_settings_get_spec at Base 0.4.90
+ wp_settings_get_type at Base 0.4.81
+ wp_settings_item_get_key at Base 0.4.90
+ wp_settings_item_get_type at Base 0.4.90
+ wp_settings_item_get_value at Base 0.4.90
+ wp_settings_item_ref at Base 0.4.90
+ wp_settings_item_unref at Base 0.4.90
+ wp_settings_new at Base 0.4.82
+ wp_settings_new_iterator at Base 0.4.90
+ wp_settings_reset at Base 0.4.90
+ wp_settings_reset_all at Base 0.4.90
+ wp_settings_save at Base 0.4.90
+ wp_settings_save_all at Base 0.4.90
+ wp_settings_set at Base 0.4.90
+ wp_settings_spec_check_value at Base 0.4.90
+ wp_settings_spec_get_default_value at Base 0.4.90
+ wp_settings_spec_get_description at Base 0.4.90
+ wp_settings_spec_get_max_value at Base 0.4.90
+ wp_settings_spec_get_min_value at Base 0.4.90
+ wp_settings_spec_get_type at Base 0.4.90
+ wp_settings_spec_get_value_type at Base 0.4.90
+ wp_settings_spec_ref at Base 0.4.90
+ wp_settings_spec_type_get_type at Base 0.4.90
+ wp_settings_spec_unref at Base 0.4.90
+ wp_settings_subscribe at Base 0.4.81
+ wp_settings_subscribe_closure at Base 0.4.81
+ wp_settings_unsubscribe at Base 0.4.81
+ wp_si_acquisition_acquire at Base 0.3.95
+ wp_si_acquisition_acquire_finish at Base 0.3.95
+ wp_si_acquisition_get_type at Base 0.3.95
+ wp_si_acquisition_release at Base 0.3.95
+ wp_si_adapter_get_ports_format at Base 0.3.96
+ wp_si_adapter_get_ports_state at Base 0.4.10
+ wp_si_adapter_get_type at Base 0.3.96
+ wp_si_adapter_ports_state_get_type at Base 0.4.10
+ wp_si_adapter_set_ports_format at Base 0.3.96
+ wp_si_adapter_set_ports_format_finish at Base 0.3.96
+ wp_si_factory_construct at Base 0.3.95
+ wp_si_factory_find at Base 0.3.95
+ wp_si_factory_get_name at Base 0.3.95
+ wp_si_factory_get_type at Base 0.3.95
+ wp_si_factory_new_simple at Base 0.3.95
+ wp_si_link_get_in_item at Base 0.3.95
+ wp_si_link_get_out_item at Base 0.3.95
+ wp_si_link_get_properties at Base 0.3.95
+ wp_si_link_get_registration_info at Base 0.3.95
+ wp_si_link_get_type at Base 0.3.95
+ wp_si_linkable_get_acquisition at Base 0.3.96
+ wp_si_linkable_get_ports at Base 0.3.96
+ wp_si_linkable_get_type at Base 0.3.96
+ wp_simple_event_hook_get_type at Base 0.4.81
+ wp_simple_event_hook_new at Base 0.4.81
+ wp_spa_device_features_get_type at Base 0.3.95
+ wp_spa_device_get_managed_object at Base 0.3.95
+ wp_spa_device_get_properties at Base 0.3.95
+ wp_spa_device_get_type at Base 0.3.95
+ wp_spa_device_new_from_spa_factory at Base 0.3.95
+ wp_spa_device_new_managed_object_iterator at Base 0.4.11
+ wp_spa_device_new_wrap at Base 0.3.95
+ wp_spa_device_set_managed_pending at Base 0.5.8
+ wp_spa_device_store_managed_object at Base 0.3.95
+ wp_spa_dynamic_id_table_register at Base 0.3.95
+ wp_spa_dynamic_type_deinit at Base 0.3.95
+ wp_spa_dynamic_type_init at Base 0.3.95
+ wp_spa_dynamic_type_register at Base 0.3.95
+ wp_spa_id_table_find_value at Base 0.3.95
+ wp_spa_id_table_find_value_from_name at Base 0.3.95
+ wp_spa_id_table_find_value_from_short_name at Base 0.3.95
+ wp_spa_id_table_from_name at Base 0.3.95
+ wp_spa_id_table_get_type at Base 0.3.95
+ wp_spa_id_table_new_iterator at Base 0.3.95
+ wp_spa_id_value_array_get_item_type at Base 0.3.95
+ wp_spa_id_value_from_name at Base 0.3.95
+ wp_spa_id_value_from_number at Base 0.3.95
+ wp_spa_id_value_from_short_name at Base 0.3.95
+ wp_spa_id_value_get_type at Base 0.3.95
+ wp_spa_id_value_get_value_type at Base 0.3.95
+ wp_spa_id_value_name at Base 0.3.95
+ wp_spa_id_value_number at Base 0.3.95
+ wp_spa_id_value_short_name at Base 0.3.95
+ wp_spa_json_builder_add at Base 0.4.8
+ wp_spa_json_builder_add_boolean at Base 0.4.8
+ wp_spa_json_builder_add_float at Base 0.4.8
+ wp_spa_json_builder_add_from_string at Base 0.4.81
+ wp_spa_json_builder_add_from_stringn at Base 0.4.81
+ wp_spa_json_builder_add_int at Base 0.4.8
+ wp_spa_json_builder_add_json at Base 0.4.8
+ wp_spa_json_builder_add_null at Base 0.4.8
+ wp_spa_json_builder_add_property at Base 0.4.8
+ wp_spa_json_builder_add_string at Base 0.4.8
+ wp_spa_json_builder_add_valist at Base 0.4.8
+ wp_spa_json_builder_end at Base 0.4.8
+ wp_spa_json_builder_get_type at Base 0.4.8
+ wp_spa_json_builder_new_array at Base 0.4.8
+ wp_spa_json_builder_new_object at Base 0.4.8
+ wp_spa_json_builder_ref at Base 0.4.8
+ wp_spa_json_builder_unref at Base 0.4.8
+ wp_spa_json_copy at Base 0.4.8
+ wp_spa_json_ensure_unique_owner at Base 0.4.8
+ wp_spa_json_get_data at Base 0.4.8
+ wp_spa_json_get_size at Base 0.4.8
+ wp_spa_json_get_spa_json at Base 0.4.8
+ wp_spa_json_get_type at Base 0.4.8
+ wp_spa_json_is_array at Base 0.4.8
+ wp_spa_json_is_boolean at Base 0.4.8
+ wp_spa_json_is_container at Base 0.4.81
+ wp_spa_json_is_float at Base 0.4.8
+ wp_spa_json_is_int at Base 0.4.8
+ wp_spa_json_is_null at Base 0.4.8
+ wp_spa_json_is_object at Base 0.4.8
+ wp_spa_json_is_string at Base 0.4.8
+ wp_spa_json_is_unique_owner at Base 0.4.8
+ wp_spa_json_new_array at Base 0.4.8
+ wp_spa_json_new_array_valist at Base 0.4.8
+ wp_spa_json_new_boolean at Base 0.4.8
+ wp_spa_json_new_float at Base 0.4.8
+ wp_spa_json_new_from_string at Base 0.4.8
+ wp_spa_json_new_from_stringn at Base 0.4.10
+ wp_spa_json_new_int at Base 0.4.8
+ wp_spa_json_new_iterator at Base 0.4.8
+ wp_spa_json_new_null at Base 0.4.8
+ wp_spa_json_new_object at Base 0.4.8
+ wp_spa_json_new_object_valist at Base 0.4.8
+ wp_spa_json_new_string at Base 0.4.8
+ wp_spa_json_new_wrap at Base 0.4.8
+ wp_spa_json_new_wrap_string at Base 0.4.81
+ wp_spa_json_new_wrap_stringn at Base 0.4.81
+ wp_spa_json_object_get at Base 0.4.8
+ wp_spa_json_object_get_valist at Base 0.4.8
+ wp_spa_json_parse_array at Base 0.4.8
+ wp_spa_json_parse_array_valist at Base 0.4.8
+ wp_spa_json_parse_boolean at Base 0.4.8
+ wp_spa_json_parse_float at Base 0.4.8
+ wp_spa_json_parse_int at Base 0.4.8
+ wp_spa_json_parse_object at Base 0.4.8
+ wp_spa_json_parse_object_valist at Base 0.4.8
+ wp_spa_json_parse_string at Base 0.4.8
+ wp_spa_json_parser_end at Base 0.4.8
+ wp_spa_json_parser_get at Base 0.4.8
+ wp_spa_json_parser_get_boolean at Base 0.4.8
+ wp_spa_json_parser_get_float at Base 0.4.8
+ wp_spa_json_parser_get_int at Base 0.4.8
+ wp_spa_json_parser_get_json at Base 0.4.8
+ wp_spa_json_parser_get_null at Base 0.4.8
+ wp_spa_json_parser_get_string at Base 0.4.8
+ wp_spa_json_parser_get_type at Base 0.4.8
+ wp_spa_json_parser_get_valist at Base 0.4.8
+ wp_spa_json_parser_new_array at Base 0.4.8
+ wp_spa_json_parser_new_object at Base 0.4.8
+ wp_spa_json_parser_new_undefined at Base 0.4.90
+ wp_spa_json_parser_ref at Base 0.4.8
+ wp_spa_json_parser_unref at Base 0.4.8
+ wp_spa_json_ref at Base 0.4.8
+ wp_spa_json_to_string at Base 0.4.11
+ wp_spa_json_unref at Base 0.4.8
+ wp_spa_log_get_instance at Base 0.3.95
+ wp_spa_pod_builder_add at Base 0.3.95
+ wp_spa_pod_builder_add_boolean at Base 0.3.95
+ wp_spa_pod_builder_add_bytes at Base 0.3.95
+ wp_spa_pod_builder_add_control at Base 0.3.95
+ wp_spa_pod_builder_add_double at Base 0.3.95
+ wp_spa_pod_builder_add_fd at Base 0.3.95
+ wp_spa_pod_builder_add_float at Base 0.3.95
+ wp_spa_pod_builder_add_fraction at Base 0.3.95
+ wp_spa_pod_builder_add_id at Base 0.3.95
+ wp_spa_pod_builder_add_int at Base 0.3.95
+ wp_spa_pod_builder_add_long at Base 0.3.95
+ wp_spa_pod_builder_add_none at Base 0.3.95
+ wp_spa_pod_builder_add_pod at Base 0.3.95
+ wp_spa_pod_builder_add_pointer at Base 0.3.95
+ wp_spa_pod_builder_add_property at Base 0.3.95
+ wp_spa_pod_builder_add_property_id at Base 0.3.95
+ wp_spa_pod_builder_add_rectangle at Base 0.3.95
+ wp_spa_pod_builder_add_string at Base 0.3.95
+ wp_spa_pod_builder_add_valist at Base 0.3.95
+ wp_spa_pod_builder_end at Base 0.3.95
+ wp_spa_pod_builder_get_type at Base 0.3.95
+ wp_spa_pod_builder_new_array at Base 0.3.95
+ wp_spa_pod_builder_new_choice at Base 0.3.95
+ wp_spa_pod_builder_new_object at Base 0.3.95
+ wp_spa_pod_builder_new_sequence at Base 0.3.95
+ wp_spa_pod_builder_new_struct at Base 0.3.95
+ wp_spa_pod_builder_ref at Base 0.3.95
+ wp_spa_pod_builder_unref at Base 0.3.95
+ wp_spa_pod_copy at Base 0.3.95
+ wp_spa_pod_ensure_unique_owner at Base 0.3.95
+ wp_spa_pod_equal at Base 0.3.95
+ wp_spa_pod_filter at Base 0.4.4
+ wp_spa_pod_fixate at Base 0.4.4
+ wp_spa_pod_get_array_child at Base 0.3.95
+ wp_spa_pod_get_boolean at Base 0.3.95
+ wp_spa_pod_get_bytes at Base 0.3.95
+ wp_spa_pod_get_choice_child at Base 0.3.95
+ wp_spa_pod_get_choice_type at Base 0.3.95
+ wp_spa_pod_get_control at Base 0.3.95
+ wp_spa_pod_get_double at Base 0.3.95
+ wp_spa_pod_get_fd at Base 0.3.95
+ wp_spa_pod_get_float at Base 0.3.95
+ wp_spa_pod_get_fraction at Base 0.3.95
+ wp_spa_pod_get_id at Base 0.3.95
+ wp_spa_pod_get_int at Base 0.3.95
+ wp_spa_pod_get_long at Base 0.3.95
+ wp_spa_pod_get_object at Base 0.3.95
+ wp_spa_pod_get_object_valist at Base 0.3.95
+ wp_spa_pod_get_pointer at Base 0.3.95
+ wp_spa_pod_get_property at Base 0.3.95
+ wp_spa_pod_get_rectangle at Base 0.3.95
+ wp_spa_pod_get_spa_pod at Base 0.3.95
+ wp_spa_pod_get_spa_type at Base 0.3.95
+ wp_spa_pod_get_string at Base 0.3.95
+ wp_spa_pod_get_struct at Base 0.3.95
+ wp_spa_pod_get_struct_valist at Base 0.3.95
+ wp_spa_pod_get_type at Base 0.3.95
+ wp_spa_pod_is_array at Base 0.3.95
+ wp_spa_pod_is_boolean at Base 0.3.95
+ wp_spa_pod_is_bytes at Base 0.3.95
+ wp_spa_pod_is_choice at Base 0.3.95
+ wp_spa_pod_is_control at Base 0.3.95
+ wp_spa_pod_is_double at Base 0.3.95
+ wp_spa_pod_is_fd at Base 0.3.95
+ wp_spa_pod_is_float at Base 0.3.95
+ wp_spa_pod_is_fraction at Base 0.3.95
+ wp_spa_pod_is_id at Base 0.3.95
+ wp_spa_pod_is_int at Base 0.3.95
+ wp_spa_pod_is_long at Base 0.3.95
+ wp_spa_pod_is_none at Base 0.3.95
+ wp_spa_pod_is_object at Base 0.3.95
+ wp_spa_pod_is_pointer at Base 0.3.95
+ wp_spa_pod_is_property at Base 0.3.95
+ wp_spa_pod_is_rectangle at Base 0.3.95
+ wp_spa_pod_is_sequence at Base 0.3.95
+ wp_spa_pod_is_string at Base 0.3.95
+ wp_spa_pod_is_struct at Base 0.3.95
+ wp_spa_pod_is_unique_owner at Base 0.3.95
+ wp_spa_pod_new_boolean at Base 0.3.95
+ wp_spa_pod_new_bytes at Base 0.3.95
+ wp_spa_pod_new_choice at Base 0.3.95
+ wp_spa_pod_new_choice_valist at Base 0.3.95
+ wp_spa_pod_new_double at Base 0.3.95
+ wp_spa_pod_new_fd at Base 0.3.95
+ wp_spa_pod_new_float at Base 0.3.95
+ wp_spa_pod_new_fraction at Base 0.3.95
+ wp_spa_pod_new_id at Base 0.3.95
+ wp_spa_pod_new_int at Base 0.3.95
+ wp_spa_pod_new_iterator at Base 0.3.95
+ wp_spa_pod_new_long at Base 0.3.95
+ wp_spa_pod_new_none at Base 0.3.95
+ wp_spa_pod_new_object at Base 0.3.95
+ wp_spa_pod_new_object_valist at Base 0.3.95
+ wp_spa_pod_new_pointer at Base 0.3.95
+ wp_spa_pod_new_rectangle at Base 0.3.95
+ wp_spa_pod_new_sequence at Base 0.3.95
+ wp_spa_pod_new_sequence_valist at Base 0.3.95
+ wp_spa_pod_new_string at Base 0.3.95
+ wp_spa_pod_new_wrap at Base 0.3.95
+ wp_spa_pod_new_wrap_const at Base 0.3.95
+ wp_spa_pod_parser_end at Base 0.3.95
+ wp_spa_pod_parser_get at Base 0.3.95
+ wp_spa_pod_parser_get_boolean at Base 0.3.95
+ wp_spa_pod_parser_get_bytes at Base 0.3.95
+ wp_spa_pod_parser_get_double at Base 0.3.95
+ wp_spa_pod_parser_get_fd at Base 0.3.95
+ wp_spa_pod_parser_get_float at Base 0.3.95
+ wp_spa_pod_parser_get_fraction at Base 0.3.95
+ wp_spa_pod_parser_get_id at Base 0.3.95
+ wp_spa_pod_parser_get_int at Base 0.3.95
+ wp_spa_pod_parser_get_long at Base 0.3.95
+ wp_spa_pod_parser_get_pod at Base 0.3.95
+ wp_spa_pod_parser_get_pointer at Base 0.3.95
+ wp_spa_pod_parser_get_rectangle at Base 0.3.95
+ wp_spa_pod_parser_get_string at Base 0.3.95
+ wp_spa_pod_parser_get_type at Base 0.3.95
+ wp_spa_pod_parser_get_valist at Base 0.3.95
+ wp_spa_pod_parser_new_object at Base 0.3.95
+ wp_spa_pod_parser_new_struct at Base 0.3.95
+ wp_spa_pod_parser_ref at Base 0.3.95
+ wp_spa_pod_parser_unref at Base 0.3.95
+ wp_spa_pod_ref at Base 0.3.95
+ wp_spa_pod_set_boolean at Base 0.3.95
+ wp_spa_pod_set_double at Base 0.3.95
+ wp_spa_pod_set_fd at Base 0.3.95
+ wp_spa_pod_set_float at Base 0.3.95
+ wp_spa_pod_set_fraction at Base 0.3.95
+ wp_spa_pod_set_id at Base 0.3.95
+ wp_spa_pod_set_int at Base 0.3.95
+ wp_spa_pod_set_long at Base 0.3.95
+ wp_spa_pod_set_pod at Base 0.3.95
+ wp_spa_pod_set_pointer at Base 0.3.95
+ wp_spa_pod_set_rectangle at Base 0.3.95
+ wp_spa_pod_unref at Base 0.3.95
+ wp_spa_type_from_name at Base 0.3.95
+ wp_spa_type_get_object_id_values_table at Base 0.3.95
+ wp_spa_type_get_type at Base 0.3.95
+ wp_spa_type_get_values_table at Base 0.3.95
+ wp_spa_type_is_fundamental at Base 0.3.95
+ wp_spa_type_is_id at Base 0.3.95
+ wp_spa_type_is_object at Base 0.3.95
+ wp_spa_type_name at Base 0.3.95
+ wp_spa_type_parent at Base 0.3.95
+ wp_state_clear at Base 0.3.95
+ wp_state_get_location at Base 0.3.95
+ wp_state_get_name at Base 0.3.95
+ wp_state_get_type at Base 0.3.95
+ wp_state_load at Base 0.3.95
+ wp_state_new at Base 0.3.95
+ wp_state_save at Base 0.3.95
+ wp_state_save_after_timeout at Base 0.4.81
+ wp_transition_advance at Base 0.3.95
+ wp_transition_finish at Base 0.3.95
+ wp_transition_get_completed at Base 0.3.95
+ wp_transition_get_data at Base 0.3.95
+ wp_transition_get_source_object at Base 0.3.95
+ wp_transition_get_source_tag at Base 0.3.95
+ wp_transition_get_type at Base 0.3.95
+ wp_transition_had_error at Base 0.3.95
+ wp_transition_is_tagged at Base 0.3.95
+ wp_transition_new at Base 0.3.95
+ wp_transition_new_closure at Base 0.3.95
+ wp_transition_return_error at Base 0.3.95
+ wp_transition_set_data at Base 0.3.95
+ wp_transition_set_source_tag at Base 0.3.95
+ wp_transition_step_get_type at Base 0.3.95
diff --git a/debian/libwireplumber-0.5-dev.install b/debian/libwireplumber-0.5-dev.install
new file mode 100755
index 0000000..44b9a6c
--- /dev/null
+++ b/debian/libwireplumber-0.5-dev.install
@@ -0,0 +1,5 @@
+#!/usr/bin/dh-exec
+usr/include/wireplumber-*
+usr/lib/*/libwireplumber*.so
+usr/lib/*/pkgconfig/wireplumber*
+/usr/share/gir-1.0/*.gir <!nogir>
diff --git a/debian/patches/Avoid-race-condition-during-shutdown.patch b/debian/patches/Avoid-race-condition-during-shutdown.patch
new file mode 100644
index 0000000..cc71e80
--- /dev/null
+++ b/debian/patches/Avoid-race-condition-during-shutdown.patch
@@ -0,0 +1,46 @@
+From: Charles <charles05 at canonical.com>
+Date: Wed, 8 Oct 2025 10:49:48 +0100
+Subject: m-permissions-portal: Avoid race condition during shutdown
+Forwarded: https://gitlab.freedesktop.org/pipewire/wireplumber/-/merge_requests/748
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/2127049
+
+Attempts to workaround a race condition between daemon thread and
+GDBus worker thread during shutdown.
+
+I've not been able to get a symbolic backtrace yet or reproduce it
+myself, but the behaviour points to a threading bug. Hypothesis,
+
+Main thread (1, daemon thread) shuts down, unregistering its plugins.
+One of the plugins, module-permissions-portal, is triggered to
+shutdown.
+It tries to clear its GDBus connection handle without disconnecting
+its signal handlers.
+GDBus thread (2) is in the middle of writing a message on the same
+connection handle.
+Once finished, it also tries to clear its handle.
+The main thread has already taken the signal lock and the signal
+handler table ends up in an invalid state, triggering the assert.
+
+I believe this could happen since
+wp_portal_permissionstore_plugin_disable is not disconnecting its
+signal handlers before trying to clear its DBus object.
+
+See https://bugzilla.gnome.org/show_bug.cgi?id=730296 for more
+discussion about this assert in the Glib signal handling code.
+---
+ modules/module-portal-permissionstore.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/modules/module-portal-permissionstore.c b/modules/module-portal-permissionstore.c
+index ceb7cdb..47764d1 100644
+--- a/modules/module-portal-permissionstore.c
++++ b/modules/module-portal-permissionstore.c
+@@ -204,6 +204,8 @@ wp_portal_permissionstore_plugin_disable (WpPlugin * plugin)
+ WP_PORTAL_PERMISSIONSTORE_PLUGIN (plugin);
+
+ clear_signal (self);
++ if (self->dbus)
++ g_signal_handlers_disconnect_by_data (self->dbus, self);
+ g_clear_object (&self->dbus);
+
+ wp_object_update_features (WP_OBJECT (self), 0, WP_PLUGIN_FEATURE_ENABLED);
diff --git a/debian/patches/Remove-privacy-breach-documentation.patch b/debian/patches/Remove-privacy-breach-documentation.patch
new file mode 100644
index 0000000..68aa889
--- /dev/null
+++ b/debian/patches/Remove-privacy-breach-documentation.patch
@@ -0,0 +1,25 @@
+Description: Remove some privacy breaches in documentation
+Author: Dylan Aïssi <daissi at debian.org>
+Forwarded: not-needed
+
+--- a/README.rst
++++ b/README.rst
+@@ -1,18 +1,6 @@
+ WirePlumber
+ ===========
+
+-.. image:: https://gitlab.freedesktop.org/pipewire/wireplumber/badges/master/pipeline.svg
+- :alt: Pipeline status
+-
+-.. image:: https://scan.coverity.com/projects/21488/badge.svg
+- :alt: Coverity Scan Build Status
+-
+-.. image:: https://img.shields.io/badge/license-MIT-green
+- :alt: License
+-
+-.. image:: https://img.shields.io/badge/dynamic/json?color=informational&label=tag&query=%24%5B0%5D.name&url=https%3A%2F%2Fgitlab.freedesktop.org%2Fapi%2Fv4%2Fprojects%2F2941%2Frepository%2Ftags
+- :alt: Tag
+-
+ WirePlumber is a modular session / policy manager for
+ `PipeWire <https://pipewire.org>`_ and a GObject-based high-level library
+ that wraps PipeWire's API, providing convenience for writing the daemon's
diff --git a/debian/patches/Remove-service-alias.patch b/debian/patches/Remove-service-alias.patch
new file mode 100644
index 0000000..4414eb1
--- /dev/null
+++ b/debian/patches/Remove-service-alias.patch
@@ -0,0 +1,23 @@
+Description: Remove service alias that are only used to prevent
+ wireplumber and pipewire-media-session from being enabled at the same time.
+ This is already handled at the package level with a conflict between both,
+ thus we can safetly remove alias and avoid the issue with systemd.
+Bug: https://github.com/systemd/systemd/issues/23694
+Bug-Debian: https://bugs.debian.org/997818
+Author: Dylan Aïssi <daissi at debian.org>
+Forwarded: not-needed
+
+--- a/src/systemd/system/wireplumber.service.in
++++ b/src/systemd/system/wireplumber.service.in
+@@ -20,4 +20,3 @@
+
+ [Install]
+ WantedBy=pipewire.service
+-Alias=pipewire-session-manager.service
+--- a/src/systemd/user/wireplumber.service.in
++++ b/src/systemd/user/wireplumber.service.in
+@@ -18,4 +18,3 @@
+
+ [Install]
+ WantedBy=pipewire.service
+-Alias=pipewire-session-manager.service
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..85fe3ce
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,3 @@
+Remove-service-alias.patch
+Remove-privacy-breach-documentation.patch
+Avoid-race-condition-during-shutdown.patch
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..a8123ae
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,52 @@
+#!/usr/bin/make -f
+
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+export DEB_LDFLAGS_MAINT_APPEND = -Wl,-z,defs
+
+ifeq (,$(filter wireplumber-doc,$(shell dh_listpackages)))
+CONFIGURE_FLAGS = -Ddoc=disabled
+else
+CONFIGURE_FLAGS = -Ddoc=enabled
+endif
+ifeq (,$(filter nogir,$(DEB_BUILD_PROFILES)))
+CONFIGURE_FLAGS += -Dintrospection=enabled
+else
+CONFIGURE_FLAGS += -Dintrospection=disabled
+endif
+
+%:
+ dh $@ --buildsystem=meson
+
+override_dh_auto_configure:
+ dh_auto_configure -- \
+ -Dmodules=true \
+ -Ddaemon=true \
+ -Dtools=true \
+ -Dsystem-lua=true \
+ -Dsystemd=enabled \
+ -Dsystemd-system-service=true \
+ -Dsystemd-user-service=true \
+ -Dtests=true \
+ -Ddbus-tests=true \
+ $(CONFIGURE_FLAGS) \
+ $(NULL)
+
+override_dh_makeshlibs:
+ dh_makeshlibs \
+ --exclude=/usr/lib/$(DEB_HOST_MULTIARCH)/wireplumber-0.5 \
+ -- -c4
+
+# We only use dh-sequence-gnome so that Ubuntu
+# runs dh_translations
+override_dh_gnome:
+override_dh_gnome_clean:
+
+# Workaround for Ubuntu language pack issue
+execute_after_dh_translations:
+ ninja -C obj-$(DEB_HOST_GNU_TYPE) wireplumber-pot
+
+override_dh_installsystemd:
+ # The recommanded way to install wireplumber is using user services, but
+ # we install system services anyway for specific use cases (like embedded
+ # and accessibility) without enabling/starting them to avoid clashes.
+ dh_installsystemd -pwireplumber-system-services --no-enable --no-start
diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml
new file mode 100644
index 0000000..8c4a5ea
--- /dev/null
+++ b/debian/salsa-ci.yml
@@ -0,0 +1,17 @@
+---
+include:
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
+
+reprotest:
+ allow_failure: true
+
+variables:
+ SALSA_CI_ENABLE_BUILD_PACKAGE_PROFILES: 1
+
+test-build-profiles:
+ extends: .test-build-package-profiles
+ parallel:
+ matrix:
+ - BUILD_PROFILES: nodoc
+ - BUILD_PROFILES: nogir
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/tests/build b/debian/tests/build
new file mode 100644
index 0000000..f68bc84
--- /dev/null
+++ b/debian/tests/build
@@ -0,0 +1,30 @@
+#!/bin/sh
+# autopkgtest check: Build and run a program against libwireplumber, to verify that
+# the headers and pkg-config file are installed correctly
+
+set -e
+
+if [ -n "${DEB_HOST_GNU_TYPE:-}" ]; then
+ CROSS_COMPILE="$DEB_HOST_GNU_TYPE-"
+else
+ CROSS_COMPILE=
+fi
+
+cat <<EOF > libwireplumber_test.c
+#include <wp/wp.h>
+
+int main(void)
+{
+ wp_init (WP_INIT_ALL);
+ return 0;
+}
+EOF
+
+# deliberately word-splitting pkg-config output:
+# shellcheck disable=SC2046
+"${CROSS_COMPILE}gcc" -o libwireplumber_test libwireplumber_test.c \
+$("${CROSS_COMPILE}pkg-config" --cflags --libs wireplumber-0.5)
+echo "build: OK"
+[ -x libwireplumber_test ]
+./libwireplumber_test
+echo "run: OK"
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 0000000..a3f895e
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,3 @@
+Tests: build
+Depends: build-essential, pkgconf, libwireplumber-0.5-dev
+Restrictions: superficial
diff --git a/debian/upstream/metadata b/debian/upstream/metadata
new file mode 100644
index 0000000..feab998
--- /dev/null
+++ b/debian/upstream/metadata
@@ -0,0 +1,18 @@
+---
+Bug-Database: https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues
+Bug-Submit: https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/new
+Repository: https://gitlab.freedesktop.org/pipewire/wireplumber.git
+Repository-Browse: https://gitlab.freedesktop.org/pipewire/wireplumber
+Reference:
+ - Title: "Smart audio filters with WirePlumber 0.5"
+ Author: Julian Bouzas
+ Year: 2024
+ URL: https://www.collabora.com/news-and-blog/blog/2024/06/26/smart-audio-filters-with-wireplumber-0.5/
+ - Title: "What's the latest with WirePlumber?"
+ Author: George Kiagiadakis
+ Year: 2024
+ URL: https://www.collabora.com/news-and-blog/blog/2024/02/19/whats-the-latest-with-wireplumber/
+ - Title: "WirePlumber: Exploring Lua scripts with Event Dispatcher"
+ Author: Ashok Sidipotu
+ Year: 2023
+ URL: https://www.collabora.com/news-and-blog/blog/2023/10/30/wireplumber-exploring-lua-scripts-with-event-dispatcher/
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..fdbd6c9
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,4 @@
+version=4
+opts="searchmode=plain" \
+ https://gitlab.freedesktop.org/pipewire/@PACKAGE@/tags?sort=updated_desc \
+ -/archive/v?\d[\d.]+/@PACKAGE at -@ANY_VERSION@@ARCHIVE_EXT@
diff --git a/debian/wireplumber-doc.doc-base b/debian/wireplumber-doc.doc-base
new file mode 100644
index 0000000..7a314c1
--- /dev/null
+++ b/debian/wireplumber-doc.doc-base
@@ -0,0 +1,7 @@
+Document: wireplumber
+Title: WirePlumber
+Section: Sound
+
+Format: HTML
+Index: /usr/share/doc/wireplumber/html/index.html
+Files: /usr/share/doc/wireplumber/html/*.html
diff --git a/debian/wireplumber-doc.install b/debian/wireplumber-doc.install
new file mode 100644
index 0000000..7276ecd
--- /dev/null
+++ b/debian/wireplumber-doc.install
@@ -0,0 +1 @@
+usr/share/doc
diff --git a/debian/wireplumber-system-services.install b/debian/wireplumber-system-services.install
new file mode 100644
index 0000000..8efa80f
--- /dev/null
+++ b/debian/wireplumber-system-services.install
@@ -0,0 +1 @@
+usr/lib/systemd/system
diff --git a/debian/wireplumber.README.Debian b/debian/wireplumber.README.Debian
new file mode 100644
index 0000000..9d0ccf1
--- /dev/null
+++ b/debian/wireplumber.README.Debian
@@ -0,0 +1,17 @@
+Using PipeWire and WirePlumber with Bluetooth
+========================
+
+Install the libspa-0.2-bluetooth package to add Bluetooth support to pipewire
+and wireplumber.
+
+Pipewire (nor any other package) does not depend or recommend libspa-0.2-bluetooth
+as not all users are interested in Bluetooth support.
+The same apply to pulseaudio and pulseaudio-module-bluetooth:
+pulseaudio does not depend or recommend pulseaudio-module-bluetooth.
+
+However, pulseaudio-module-bluetooth and libspa-0.2-bluetooth are installed on
+a system through the dependency of a Desktop Environment. For example,
+with GNOME, the bluetooth plugin is pulled by the meta package gnome-core.
+
+Moreover, both pipewire-pulse and wireplumber packages already suggest
+to install the libspa-0.2-bluetooth package.
diff --git a/debian/wireplumber.docs b/debian/wireplumber.docs
new file mode 100644
index 0000000..711a5f7
--- /dev/null
+++ b/debian/wireplumber.docs
@@ -0,0 +1 @@
+NEWS.rst
diff --git a/debian/wireplumber.install b/debian/wireplumber.install
new file mode 100644
index 0000000..52b5be1
--- /dev/null
+++ b/debian/wireplumber.install
@@ -0,0 +1,5 @@
+usr/bin
+usr/lib/systemd/user
+usr/share/locale
+usr/share/wireplumber
+usr/share/zsh/site-functions/_wpctl /usr/share/zsh/vendor-completions/
diff --git a/debian/wireplumber.maintscript b/debian/wireplumber.maintscript
new file mode 100644
index 0000000..a0253ba
--- /dev/null
+++ b/debian/wireplumber.maintscript
@@ -0,0 +1,22 @@
+rm_conffile /etc/wireplumber/bluetooth.conf 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/bluetooth.lua.d/00-functions.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/bluetooth.lua.d/30-bluez-monitor.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/bluetooth.lua.d/50-bluez-config.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/bluetooth.lua.d/90-enable-all.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/common/00-functions.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.conf 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/00-functions.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/20-default-access.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/30-alsa-monitor.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/30-v4l2-monitor.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/40-device-defaults.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/50-alsa-config.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/50-default-access-config.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/50-v4l2-config.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/main.lua.d/90-enable-all.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/policy.conf 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/policy.lua.d/00-functions.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/policy.lua.d/10-default-policy.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/policy.lua.d/50-endpoints-config.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/policy.lua.d/90-enable-all.lua 0.4.2-3~ wireplumber
+rm_conffile /etc/wireplumber/wireplumber.conf 0.4.2-3~ wireplumber
More information about the Neon-commits
mailing list