diff options
55 files changed, 3024 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..25fb349 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,1075 @@ +pipewire (0.3.65-3+deb12u1) bookworm; urgency=medium + + * Use malloc_trim() when available to release memory (Closes: #1015915) + Cherry-pick upstream patches: + - 7e2f6757: impl-node: do malloc_trim() after destroying a node. + - 8680c74d: check if malloc_trim() is available. + + -- Dylan Aïssi <daissi@debian.org> Mon, 23 Oct 2023 10:47:23 +0200 + +pipewire (0.3.65-3) unstable; urgency=medium + + * pipewire-audio: add pulseaudio-module-bluetooth in Conflicts+Replaces + to help apt make a choice (Closes: #1031396) + + -- Dylan Aïssi <daissi@debian.org> Fri, 17 Feb 2023 16:10:28 +0100 + +pipewire (0.3.65-2) unstable; urgency=medium + + * pipewire-pulse: Add wireplumber or pipewire-media-session-pulseaudio + in Recommends. This is required to make sure a working session manager + is installed when pipewire-pulse is pulled by dependencies. + (Closes: #1029763) + + -- Dylan Aïssi <daissi@debian.org> Mon, 06 Feb 2023 10:01:33 +0100 + +pipewire (0.3.65-1) unstable; urgency=medium + + * New upstream release + * Drop reference to pipewire-media-session in pipewire.README.Debian + (Closes: #1029671) + * Drop patches included in upstream release: + - 1d9640af: fixes problems with stuttering with some custom configurations + - ccedf172: fixed bug in AVX optimizations causing crackling + - a979c0f4: fixes compilation issues with deprecated keys + - Reproducible_doxygen.patch + * Cherry-pick upstream recommended patches: + - fba7083f module-combine-stream was not installed + * Install new module-combine-stream in libpipewire-0.3-modules + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Fri, 27 Jan 2023 13:38:34 +0100 + +pipewire (0.3.64-4) unstable; urgency=medium + + * Source only upload to unstable for migration to testing + + -- Dylan Aïssi <daissi@debian.org> Tue, 24 Jan 2023 22:34:29 +0100 + +pipewire (0.3.64-3) experimental; urgency=medium + + * pipewire-pulse: do not recommend pipewire-alsa (Closes: #1029377) + * Build a new metapackage pipewire-audio depending on recommended pipewire + packages for a standard audio desktop use. Not knowing which packages + to install is a common source of bug reports. This metapackage should + help users to have a working configuration. + + -- Dylan Aïssi <daissi@debian.org> Tue, 24 Jan 2023 10:43:23 +0100 + +pipewire (0.3.64-2) unstable; urgency=medium + + * Cherry-pick upstream recommended patch: + - a979c0f4: fixes compilation issues with deprecated keys + + -- Dylan Aïssi <daissi@debian.org> Tue, 17 Jan 2023 18:07:23 +0100 + +pipewire (0.3.64-1) unstable; urgency=medium + + * New upstream release + * pipewire-pulse: recommends pipewire-alsa + When the pulseaudio package is installed, all sound are routed through + pulseaudio. PipeWire should mimic this behavior by adding the recommend + between pipewire-pulse and pipewire-alsa. Thus all sound are routed + through pipewire. + * Drop patches included in upstream release: + - c7b3ef0d: bluez5: backend-native: fix missing brace in CIND reply + - 624e265f: pulse-server: clear the drained state correctly + * Cherry-pick upstream recommended patches: + - 1d9640af: fixes problems with stuttering with some custom configurations + - ccedf172: fixed bug in AVX optimizations causing crackling + + -- Dylan Aïssi <daissi@debian.org> Tue, 17 Jan 2023 10:38:57 +0100 + +pipewire (0.3.63-4) unstable; urgency=medium + + [ Dylan Aïssi ] + * Upload to unstable + + [ Sam Hartman ] + * Cherry-pick upstream patch: + - Correctly manage pulse drain state, Closes: #1027762 + + -- Dylan Aïssi <daissi@debian.org> Tue, 10 Jan 2023 22:11:56 +0100 + +pipewire (0.3.63-3) experimental; urgency=medium + + * Patch doc/Doxyfile.in to make the build reproducible. + * Move libpipewire-module-x11-bell.so into its own package + libpipewire-0.3-modules-x11. This module is only useful with X11. + * pipewire-pulse: Demote pulseaudio-utils from Recommends to Suggests + pactl is not used anymore to load by default modules. Modules can now + be loaded using pulse.cmd. + * Standards-Version: 4.6.2 (no changes required) + + -- Dylan Aïssi <daissi@debian.org> Mon, 09 Jan 2023 18:10:15 +0100 + +pipewire (0.3.63-2) unstable; urgency=medium + + * Enable ModemManager in native backend in bluez5 spa plugin + (Closes: #1027131) + * Add modemmanager-dev in Build-Deps + * Make wireplumber take precedence over pipewire-media-session. + pipewire-media-session is dead upstream with no release since + Oct 2021. But keep it as an alternative to wireplumber because + it still works and make easier the use of pipewire for screen sharing + only (i.e. without using pipewire for audio). + * Cherry-pick upstream recommended patch: + - c7b3ef0d: bluez5: backend-native: fix missing brace in CIND reply + + -- Dylan Aïssi <daissi@debian.org> Fri, 06 Jan 2023 21:38:55 +0100 + +pipewire (0.3.63-1) unstable; urgency=medium + + * New upstream release + - pw-mon: recognize -N and -C as valid options (Closes: #1025900) + * Update symbols file + * Re-enable libcamera plugin for x32 + + -- Dylan Aïssi <daissi@debian.org> Thu, 15 Dec 2022 12:07:57 +0100 + +pipewire (0.3.62-1) unstable; urgency=medium + + * New upstream release + * Don't build the legacy volume SPA plugin, as per upstream: this + volume plugin was an experiment that's not really used anywhere. + * Disable libcamera plugin for m68k and x32, + because the libcamera minimum version is not available. + * Install upstream NEWS file in /usr/share/doc/pipewire instead of + /usr/share/doc/libpipewire-0.3-0/ to make it easier to find. + (Closes: #1024815) + + -- Dylan Aïssi <daissi@debian.org> Fri, 09 Dec 2022 14:03:00 +0100 + +pipewire (0.3.61-1) unstable; urgency=medium + + * New upstream release + - pulse-server: add a pulse.idle.timeout option. Clients that are + not sending any data will be paused so that the sinks can suspend + to save battery power (Closes: #1021483, #1022120) + * Drop patches included in upstream release: + - b720da77: pulse-server: also advance read pointer in underrun + - bf3516ba: To avoid crashes when switching profiles + - b46d8a8c: Make PipeWire in qemu work again + * pipewire-audio-client-libraries: depend on ${misc:Depends} + * pipewire-jack: drop lintian-overrides, not relevant anymore + * pipewire-libcamera: set minimum libcamera to 0.0.1 + * Drop debian/libspa-0.2-vulkan.install, not used + + -- Dylan Aïssi <daissi@debian.org> Thu, 24 Nov 2022 14:30:51 +0100 + +pipewire (0.3.60-3) unstable; urgency=medium + + * pipewire-libcamera: New package for libcamera plugin (Closes: #1024591) + + -- Dylan Aïssi <daissi@debian.org> Tue, 22 Nov 2022 10:45:04 +0100 + +pipewire (0.3.60-2) unstable; urgency=medium + + * Cherry-pick upstream recommended patches: + - bf3516ba: To avoid crashes when switching profiles + - b46d8a8c: Make PipeWire in qemu work again (Closes: #1024093) + * Add clarification regarding AAC support in pipewire.README.Debian + + -- Dylan Aïssi <daissi@debian.org> Thu, 17 Nov 2022 17:20:16 +0100 + +pipewire (0.3.60-1) unstable; urgency=medium + + * New upstream release + - Improve support of RealTek ALC4080 (Closes: #1021179) + * Cherry-pick upstream recommended patch: + - b720da77: pulse-server: also advance read pointer in underrun + * Add libopus-dev in Build-Deps + * Add liblc3-dev in Build-Deps + * Be sure the build option for bluez5 aptx codec is enabled + * pipewire-pulse: add pulseaudio-utils in Recommends instead + of Suggests (LP: #1993358) + * pipewire-alsa: install conf files in the right location + (Closes: #1023504, LP: #1975823) + * pipewire-alsa: conflict with pulseaudio. (Closes: #1013276) + As long as the pulseaudio package is installed, ALSA clients will output + via PulseAudio instead of PipeWire. This is due to the order of their + respective configs files in /etc/alsa/conf.d/. + * pipewire: depend on adduser (Closes: #1023758) + + -- Dylan Aïssi <daissi@debian.org> Fri, 11 Nov 2022 14:55:34 +0100 + +pipewire (0.3.59-1) unstable; urgency=medium + + * New upstream release + * Remove conflict between pipewire-pulse and pulseaudio to allow users + to switch from one to the other just by disabling/enabling services. + (Closes: #1020330, #1020903) + + -- Dylan Aïssi <daissi@debian.org> Fri, 30 Sep 2022 15:04:20 +0200 + +pipewire (0.3.58-2) unstable; urgency=medium + + * Mention to install pipewire-alsa and pipewire-jack + in README.Debian (Closes: #1019971) + * Add debian/pipewire-alsa.TODO + * Patch pipewire-pulse.service to be sure it is started + after a session manager (Closes: #1019944) + Because of a bug in the way systemd handles aliases, they have been removed + in wireplumber and pipewire-media-session services to avoid a conflict. + This change needs to be reflected in the pipewire-pulse service to be sure + it is started after a session manager, otherwise pipewire-pulse doesn't + see any devices. + + -- Dylan Aïssi <daissi@debian.org> Fri, 23 Sep 2022 11:01:16 +0200 + +pipewire (0.3.58-1) unstable; urgency=medium + + [ Dylan Aïssi ] + * New upstream release + - Fix crackling sound if pavucontrol is open (Closes: #1019888) + * Create a pipewire group and define real-time priority limits + (Closes: #1011399) + * Add suggestion to install wireplumber in pipewire.README.Debian + * Clarify relation between pipewire and libspa-0.2-bluetooth in + pipewire.README.Debian (Closes: #998220, #1011035) + * Remove reference to experimental status of pipewire for audio + + [ Sebastien Bacher ] + * Let pipewire-pulse conflicts on pulseaudio + (Closes: #1013276, LP: #1975823) + + -- Dylan Aïssi <daissi@debian.org> Fri, 16 Sep 2022 15:41:31 +0200 + +pipewire (0.3.57-1) unstable; urgency=medium + + * New upstream release + * Drop patches included in upstream release: + - aaa015d0: avb: fix compilation on big endian + - 1a5ec445: avb: fix compilation on big endian + - f857fd46: avb: fix compilation on big endian + * Don't install filter-chain.service for now. + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Mon, 05 Sep 2022 09:57:50 +0200 + +pipewire (0.3.56-1) unstable; urgency=medium + + * New upstream release + * Drop patches included in upstream release: + - 40552a0e: jack: only mix when we have input to mix + * Cherry-pick upstream recommended patches: + - aaa015d0: avb: fix compilation on big endian + - 1a5ec445: avb: fix compilation on big endian + - f857fd46: avb: fix compilation on big endian + * Install the new avb module in libspa-0.2-modules + * Don't install new filter-chain example conf file + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Tue, 19 Jul 2022 22:47:35 +0200 + +pipewire (0.3.55-2) unstable; urgency=medium + + * Source only upload for migration to testing + + -- Dylan Aïssi <daissi@debian.org> Mon, 18 Jul 2022 18:10:38 +0200 + +pipewire (0.3.55-1) unstable; urgency=medium + + * New upstream release + * Cherry-pick upstream recommended patch: + - 40552a0e: jack: only mix when we have input to mix + * Don't install new filter-chain example conf files + * Reintroduce pipewire-audio-client-libraries as a transitional package + to simplify the transition from Bullseye to Bookworm (Closes: #1014639) + * Mark pipewire-{alsa,jack,v4l2} as 'Multi-Arch: same' (Closes: #1014608) + + -- Dylan Aïssi <daissi@debian.org> Sun, 17 Jul 2022 10:42:21 +0200 + +pipewire (0.3.54-2) unstable; urgency=medium + + * Source only upload for migration to testing + + -- Dylan Aïssi <daissi@debian.org> Fri, 08 Jul 2022 10:07:26 +0200 + +pipewire (0.3.54-1) unstable; urgency=medium + + [ Sebastien Bacher ] + * Split the legacy pipewire-audio-client-libraries in alsa and jack + + [ Dylan Aïssi ] + * New upstream release + - Fix issue with microphone input on bluetooth headset (Closes: #1014458) + * pipewire-jack: remove suggests pulseaudio-utils and libspa-0.2-bluetooth + * Switch section from video to sound for pipewire-pulse, pipewire-alsa + and pipewire-jack + * Improve description of pipewire-alsa and pipewire-jack + * Move the V4L2 plugin into its own package + * Update copyright file + + -- Dylan Aïssi <daissi@debian.org> Thu, 07 Jul 2022 17:11:37 +0200 + +pipewire (0.3.53-1) unstable; urgency=medium + + * New upstream release + + -- Dylan Aïssi <daissi@debian.org> Fri, 01 Jul 2022 14:08:59 +0200 + +pipewire (0.3.52-1) unstable; urgency=medium + + [ Dylan Aïssi ] + * New upstream release + * libpipewire-0.3-0: Demote pipewire from Recommends to Suggests + (Closes: #1011130) + * pipewire-pulse: Suggests for libspa-0.2-bluetooth + * Bump libxfixes-dev version requirement to 6.0.0 + * Disable LC3plus codec + * Update symbols file + * Add myself in Uploaders + * Standards-Version: 4.6.1 (no changes needed) + + [ Debian Janitor ] + * Avoid explicitly specifying -Wl,--as-needed linker flag. + + -- Dylan Aïssi <daissi@debian.org> Thu, 09 Jun 2022 22:17:03 +0200 + +pipewire (0.3.51-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Drop patches included in upstream release: + - fix_argument_type_for_Long.patch + - fix_c90_header_include.patch + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Mon, 02 May 2022 16:01:05 +0200 + +pipewire (0.3.50-2) unstable; urgency=medium + + [ Markus Teich ] + * Remove obsolete xdg autostart conffile. + + [ Dylan Aïssi ] + * Add upstream patches: + - fix argument type (Closes: #1008907) + - fix C90 header include (Closes: #1010151) + + -- Dylan Aïssi <daissi@debian.org> Tue, 26 Apr 2022 22:06:23 +0200 + +pipewire (0.3.50-1) unstable; urgency=medium + + * Team upload. + + [ Dylan Aïssi ] + * New upstream release + * Install a new manpage for pw-link + * Update symbols file + + [ Debian Janitor ] + * Remove constraints unnecessary since buster + + -- Dylan Aïssi <daissi@debian.org> Thu, 14 Apr 2022 10:11:53 +0200 + +pipewire (0.3.49-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Install a new manpage for pw-top + * Add libxfixes-dev to Build-Depends + * pipewire-pulse: add pulseaudio-utils in Suggests (Closes: #1007949) + + -- Dylan Aïssi <daissi@debian.org> Wed, 30 Mar 2022 12:06:06 +0200 + +pipewire (0.3.48-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Thu, 03 Mar 2022 15:43:37 +0100 + +pipewire (0.3.47-1) unstable; urgency=medium + + * Team upload. + * New upstream release + + -- Dylan Aïssi <daissi@debian.org> Fri, 18 Feb 2022 14:30:39 +0100 + +pipewire (0.3.46-1) unstable; urgency=medium + + * Team upload. + * New upstream release (Closes: #1005067) + * Install the new aec module in libspa-0.2-modules + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Thu, 17 Feb 2022 21:58:18 +0100 + +pipewire (0.3.45-2) unstable; urgency=medium + + * Team upload. + * Re-enable aptX support, add libfreeaptx-dev to BD (Closes: #1005801) + + -- Dylan Aïssi <daissi@debian.org> Tue, 15 Feb 2022 11:18:05 +0100 + +pipewire (0.3.45-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Don't install new filter-chain example conf file + * Update symbols file + * Adapt lintian overrides to the new output + * Standards-Version: 4.6.0 (no changes required) + + -- Dylan Aïssi <daissi@debian.org> Thu, 03 Feb 2022 21:42:07 +0100 + +pipewire (0.3.44-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Add libcanberra-dev to Build-Depends + * Bump minimum meson to 0.59 + * Install new usr/share/pipewire/minimal.conf in pipewire-bin + + -- Dylan Aïssi <daissi@debian.org> Thu, 27 Jan 2022 16:24:40 +0100 + +pipewire (0.3.43-2) unstable; urgency=medium + + * Team upload. + * Skip the new test pw-test-pipewire-alsa-stress, + this test runs an infinite loop. + + -- Dylan Aïssi <daissi@debian.org> Tue, 11 Jan 2022 12:10:22 +0100 + +pipewire (0.3.43-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Refresh d/p/Don-t-build_same_binary_twice.patch + * Bump minimum meson to 0.56 + + -- Dylan Aïssi <daissi@debian.org> Mon, 10 Jan 2022 10:54:04 +0100 + +pipewire (0.3.42-1) unstable; urgency=medium + + * Team upload. + + [ Sebastien Bacher ] + * debian/rules: + - disable the new lv2 option on Ubuntu, lilv and its depends + (serd, sord, sratom) are currently in universe (Closes: #1001691) + + [ Dylan Aïssi ] + * New upstream release + + -- Dylan Aïssi <daissi@debian.org> Fri, 17 Dec 2021 10:19:36 +0100 + +pipewire (0.3.41-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Add libssl-dev and liblilv-dev to Build-Depends + * Update symbols file + * Set Rules-Requires-Root: no + + -- Dylan Aïssi <daissi@debian.org> Mon, 13 Dec 2021 12:09:33 +0100 + +pipewire (0.3.40-2) unstable; urgency=medium + + * Team upload. + * Change back priority order between pipewire-media-session and wireplumber. + Pipewire-media-session is enough for the current default usage of + pipewire in Debian (i.e. screen recording). Having Wireplumber with a + higher priority leads to install by default pipewire-pulse and consequently + to replace pulseaudio by pipewire as sound server. See #999363. + . + WirePlumber is still the recommended session manager for users who want + to use pipewire as sound server. The priority order will be changed again + once we will decide to use pipewire as default sound server. + + -- Dylan Aïssi <daissi@debian.org> Wed, 24 Nov 2021 15:07:07 +0100 + +pipewire (0.3.40-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Drop patches included in upstream release: + - fix_compilation_on_armel.patch + - fix_compilation_on_some_architectures.patch + - make_insert_at()_fail_on_a_removed_item.patch + - fix_type_for_big_endian.patch + - only_run_SSE_when_supported.patch + * Install a new manpage for pipewire-pulse + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Fri, 12 Nov 2021 22:08:23 +0100 + +pipewire (0.3.39-4) unstable; urgency=medium + + * Team upload. + * Update d/watch to point to gitlab.freedesktop.org/pipewire + instead of a mirror. + * Add an upstream patch to only run SSE when supported + (Closes: #998129, #998130) + * Build zeroconf modules (Closes: #998218) + - Add libavahi-client-dev in Build-Deps + * Add patch to don't build same binary twice (Closes: #998126) + Thanks to Michael Biebl + * Add dbus-user-session in Recommends (Closes: #982853, #998167) + * Re-add pipewire-media-session as an alternative to Wireplumber, + it is now back in the archive as a separate source package. + + -- Dylan Aïssi <daissi@debian.org> Mon, 08 Nov 2021 13:29:23 +0100 + +pipewire (0.3.39-3) unstable; urgency=medium + + * Team upload. + * Remove pipewire-media-session from Recommends. + (Closes: #995116, #996994, #997859) + + -- Dylan Aïssi <daissi@debian.org> Wed, 27 Oct 2021 21:09:13 +0200 + +pipewire (0.3.39-2) unstable; urgency=medium + + * Team upload. + * Add upstream patches: + - fix pw_map_insert_at and pw_map_item + - fix compilation on armel + + -- Dylan Aïssi <daissi@debian.org> Mon, 25 Oct 2021 17:23:25 +0200 + +pipewire (0.3.39-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Don't build the pipewire-media-session binary package anymore, + media-session has moved to a separate module to accelerate its + deprecation in favour of WirePlumber. + * Change priority order between pipewire-media-session and wireplumber, + WirePlumber is now the recommended session manager. + * Install pw-v4l2 and libpw-v4l2.so in pipewire-bin and + libpipewire-0.3-modules, respectively. + * Drop d/p/fix-compilation-on-ARM.patch, included in upstream release + * Add an upstream patch to fix compilation on some architectures + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Thu, 21 Oct 2021 17:14:22 +0200 + +pipewire (0.3.38-2) unstable; urgency=medium + + * Team upload. + * Add an upstream patch to fix compilation on ARM + + -- Dylan Aïssi <daissi@debian.org> Fri, 01 Oct 2021 11:44:51 +0200 + +pipewire (0.3.38-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Drop d/p/fix-msbc-with-linux-5.14.patch, included in upstream release + * Add libreadline-dev to Build-Depends + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Fri, 01 Oct 2021 10:07:52 +0200 + +pipewire (0.3.37-2) unstable; urgency=medium + + * Team upload. + * Add an upstream patch to support msbc with kernel 5.14.x. + + -- Dylan Aïssi <daissi@debian.org> Mon, 27 Sep 2021 10:57:25 +0200 + +pipewire (0.3.37-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Install pw-dsdplay in pipewire-bin + * Update symbols file + * Move bluez-hardware.conf from pipewire-media-session to libspa-0.2-bluetooth + because this hardware quirk database is now loaded by the plugin instead + of the session manager. + This database is now installed into /usr/share/spa-0.2/bluez5/ + instead of /usr/share/pipewire/media-session.d/ + + -- Dylan Aïssi <daissi@debian.org> Thu, 23 Sep 2021 17:56:09 +0200 + +pipewire (0.3.36-1) unstable; urgency=medium + + * Team upload. + [ Arto Jantunen ] + * pipewire-bin: Recommend rtkit (Closes: #984429) + + [ Dylan Aïssi ] + * New upstream release + + -- Dylan Aïssi <daissi@debian.org> Thu, 16 Sep 2021 21:50:44 +0200 + +pipewire (0.3.35-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Replace xmltoman by python3-docutils in BD to generate manpages + * Don't install new filter-chain example conf files + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Thu, 09 Sep 2021 21:49:29 +0200 + +pipewire (0.3.34-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Don't install sink-convolver.conf (filter-chain example configuration) + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Thu, 26 Aug 2021 20:53:42 +0200 + +pipewire (0.3.33-1) unstable; urgency=medium + + * Team upload. + * New upstream release + * Disable aptX support for now, upstream has switched + from libopenaptx to libfreeaptx (not yet in Debian) + * Upload to unstable as Bullseye was released. + + -- Dylan Aïssi <daissi@debian.org> Mon, 16 Aug 2021 11:44:56 +0200 + +pipewire (0.3.32-1) experimental; urgency=medium + + * Team upload. + * New upstream release + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Wed, 21 Jul 2021 12:14:03 +0200 + +pipewire (0.3.31-1) experimental; urgency=medium + + * Team upload. + * New upstream release + * Add libusb-1.0-0-dev to Build-Depends + * Disable roc module at least for now + * Install bluez-hardware.conf in pipewire-media-session + * Update symbols file + + -- Dylan Aïssi <daissi@debian.org> Tue, 29 Jun 2021 12:09:29 +0200 + +pipewire (0.3.30-1) experimental; urgency=medium + + * Team upload. + * New upstream release + * Remove d/p/Let-pipewire-pulse-services-conflict-with-their-pulseaudi.patch, + applied upstream. + * Add libwebrtc-audio-processing-dev to Build-Depends + * Update symbols file + * Remove unused lintian override in pipewire-audio-client-libraries + + -- Dylan Aïssi <daissi@debian.org> Wed, 16 Jun 2021 12:07:16 +0200 + +pipewire (0.3.28-1) experimental; urgency=medium + + [ Frédéric Danis ] + * Split pipewire-media-session from pipewire-bin package + * Split pipewire-pulse from pipewire-bin package + + [ Sjoerd Simons ] + * Install user systemd units by default + * Update readme for seperate pipewire-pulse + * New upstream release + * Disable avahi module at least for now + * Don't install the filter-chain example configurations + * Update libpipewire-0.3-0 symbol file + * Remove configuration files that moved to /usr/share + + -- Sjoerd Simons <sjoerd@debian.org> Sat, 22 May 2021 16:19:10 +0200 + +pipewire (0.3.27-1) experimental; urgency=medium + + * New upstream release + + -- Sjoerd Simons <sjoerd@debian.org> Wed, 12 May 2021 20:37:03 +0200 + +pipewire (0.3.26-1) experimental; urgency=medium + + * New upstream release + * Add libpipewire-0.3-common to hold the translation files + * Install pw-link in pipewire-bin + * Update libpipewire-0.3-0 symbols + + -- Sjoerd Simons <sjoerd@debian.org> Sun, 25 Apr 2021 20:54:29 +0200 + +pipewire (0.3.25-1) experimental; urgency=medium + + * New upstream release + * Install pw-loopback tool in pipewire-bin + + -- Sjoerd Simons <sjoerd@debian.org> Fri, 09 Apr 2021 21:57:09 +0200 + +pipewire (0.3.24-3) experimental; urgency=medium + + * debian/rules: Disable ldac on arches where it's not available. This isn't + available on these arches. piepwire FTBFS otherwise as it tries to find + it. + + -- Iain Lane <laney@debian.org> Thu, 25 Mar 2021 00:01:00 +0000 + +pipewire (0.3.24-2) experimental; urgency=medium + + * Move doxygen/graphviz into Build-Depends; Fixes arch only build failures + * Re-add support for nodocs builds + * run wrap-and-sort + + -- Sjoerd Simons <sjoerd@debian.org> Fri, 19 Mar 2021 16:57:32 +0100 + +pipewire (0.3.24-1) experimental; urgency=medium + + * New upstream release + * Adjust builds options to cope with pipewire switching more options to + features, actual options used are unchanged + + -- Sjoerd Simons <sjoerd@debian.org> Thu, 18 Mar 2021 20:46:29 +0100 + +pipewire (0.3.23-1) experimental; urgency=medium + + * New upstream release + * Update symbols file + * debian/pipewire.install + - Install new pipewire-media-session.service + * d/d/p/bluez5-volumes-need-to-be-distributed-to-all-channels.patch + d/p/bluez5-set-the-right-volumes-on-the-node.patch + d/p/policy-node-don-t-crash-without-metadata.patch + - Dropped; All included in upstream release + * Refreshed patches + + -- Sjoerd Simons <sjoerd@debian.org> Fri, 05 Mar 2021 20:21:46 +0100 + +pipewire (0.3.22-2) experimental; urgency=medium + + [ Daniel van Vugt ] + * Fix "the metadata crash" (LP: #1916716). Using upstream commit + 3673265ae20d7b59e89cad6c5238c232796731b2 which is scheduled for inclusion + in release 0.3.23. + + -- Iain Lane <laney@debian.org> Thu, 04 Mar 2021 11:09:52 +0000 + +pipewire (0.3.22-1) experimental; urgency=medium + + * Team upload + * New upstream release + * d/p/bluez5-volumes-need-to-be-distributed-to-all-channels.patch + d/p/bluez5-set-the-right-volumes-on-the-node.patch: + - Fix volume control on bluetooth devices + * d/libpipewire-0.3-0.symbols: + - Add new symbols + * debian/pipewire-bin.install + - Install new confiration file (bluez, v4l and client config) + + -- Sjoerd Simons <sjoerd@debian.org> Sat, 20 Feb 2021 21:50:40 +0100 + +pipewire (0.3.19-4) unstable; urgency=medium + + * Team upload + * Disable GStreamer device provider. + Apparently it isn't ready, and breaks video recording in cheese. + Thanks to Fedora (see also Red Hat bug 1884260). (Closes: #982636) + + -- Simon McVittie <smcv@debian.org> Sat, 13 Feb 2021 10:49:02 +0000 + +pipewire (0.3.19-3) unstable; urgency=medium + + * Team upload + * Don't enable audio-related plugins by default. + Using pipewire for audio is considered experimental for Debian 11, + and in particular the with-pulseaudio flag file will result in + PulseAudio and Pipewire fighting over Bluetooth devices. + - If you're experimenting with pipewire-pulse, please see + /usr/share/doc/pipewire-audio-client-libraries/README.Debian + for details of how to re-enable these. + * Install brief documentation of how to experiment with Pipewire for audio. + There should eventually be a pipewire-pulse package that sets up the + PulseAudio replacement automatically, and perhaps a pipewire-jack + package that does the equivalent for the JACK libraries, but these + are rather new and don't seem to be ready for general use in Debian 11. + + -- Simon McVittie <smcv@debian.org> Fri, 29 Jan 2021 15:55:13 +0000 + +pipewire (0.3.19-2) unstable; urgency=medium + + * Team upload + * Depend on openaptx with #980297 fixed, instead of working around it + * Don't depend on libldac on big-endian architectures. + It currently only compiles on little-endian architectures (#980372). + + -- Simon McVittie <smcv@debian.org> Mon, 18 Jan 2021 11:58:41 +0000 + +pipewire (0.3.19-1) unstable; urgency=medium + + * Team upload + * New upstream release (Closes: #979309) + - Fix cleanup of acp card objects (Closes: #979537) + - Provide pipewire-pulse, pipewire's replacement for the PulseAudio + daemon (Closes: #976654). Note that this is not enabled by default + for bullseye. systemd user units to start it can be found in + /usr/share/doc/pipewire/examples/systemd/user. + * Drop patch, applied upstream + * Remove pw-pulse from pipewire-audio-client-libraries, no longer + supported upstream + * Fix installation path for example 99-pipewire-default.conf + * Install example ld.so.conf.d fragments into + /usr/share/doc/pipewire/examples/ld.so.conf.d to replace libjack with + Pipewire as suggested by upstream. These can be copied into + /etc/ld.so.conf.d if desired. This is not done by default and is + considered to be experimental + * Add Build-Conflicts with non-free libfdk-aac-dev. + This makes the build more predictable by not compiling a plugin that + would depend on that library. + * d/control: Add new dependencies for Bluetooth codecs + * Build-depend on libncurses-dev for the new pw-top utility + * d/copyright: Update + * d/pipewire-bin.install: Install pw-dump and pw-top + * Don't automatically start pipewire for root logins (Closes: #979791) + * Standards-Version: 4.5.1 (no changes required) + * Update symbols file + * Remove unnecessary RUNPATH from bluez5 plugin (workaround for #980297) + * Silence library-not-linked-against-libc lintian error for JACK + libraries. + These libraries genuinely don't directly need anything from glibc. + + -- Simon McVittie <smcv@debian.org> Sun, 17 Jan 2021 13:38:28 +0000 + +pipewire (0.3.15-1) unstable; urgency=medium + + * Team upload + * New upstream release + - Disable the pulse-bridge module by default. + This should only be used if completely replacing PulseAudio + with PipeWire, which Debian is definitely not ready to do. + - Disable the bluez5 module by default (previously a Debian and + Fedora patch). This should also only be used if completely + replacing PulseAudio with PipeWire. + - Various other bug fixes + * Drop patch to disable bluez5 plugin. + This should no longer be necessary. + * d/p/protocol-native-do-version-check-on-HELLO.patch: + Add patch (from upstream, via Fedora) to fix interop with older clients + + -- Simon McVittie <smcv@debian.org> Thu, 05 Nov 2020 18:10:32 +0000 + +pipewire (0.3.14-1) unstable; urgency=medium + + * Team upload + * New upstream release + - Avoid colliding with PulseAudio (Closes: #970760) + * d/pipewire-bin.install: Install pw-reserve + + -- Simon McVittie <smcv@debian.org> Wed, 04 Nov 2020 09:48:08 +0000 + +pipewire (0.3.12-1) unstable; urgency=medium + + * Team upload + * New upstream release + - Configuration in ~/.pipewire-media-session is no longer used. + If you have configuration in that location, please move it into + $XDG_CONFIG_HOME/pipewire-media-session, defaulting to + $HOME/.config/pipewire-media-session if $XDG_CONFIG_HOME is not + set. It will not be migrated automatically. + * d/p/Link-pipewire-jack-to-libatomic-if-required.patch: + Drop, applied upstream + * Move libspa-0.2-modules dependency from -modules to shared library. + The shared library calls into the support module, as seen in the + autopkgtest. + * Stop pipewire-audio-client-libraries depending on libpulse. + If we are using PipeWire's emulation of libpulse-simple.so.0, we'll + also be using PipeWire's emulation of libpulse.so.0, so there's no + point in depending on the real PulseAudio libpulse.so.0. + * d/rules: Sort Meson options alphabetically + * d/tests/gstreamer1.0-pipewire: Add a superficial test for the plugin. + This would reproduce #919880, if it comes back. + + -- Simon McVittie <smcv@debian.org> Sat, 19 Sep 2020 15:59:33 +0100 + +pipewire (0.3.10-4) unstable; urgency=medium + + * Team upload + * Release to unstable (starts transition: #966535) + + -- Simon McVittie <smcv@debian.org> Thu, 10 Sep 2020 09:12:14 +0100 + +pipewire (0.3.10-3) experimental; urgency=medium + + * Team upload + * d/rules: Adjust test timeouts again, based on feedback from the buildds. + mips* now get 10 times as long as fast architectures, and ia64 + is added to the list of slowish architectures that get 5 times as long. + * d/p/Link-pipewire-jack-to-libatomic-if-required.patch: + Update patch to the version that was applied upstream + + -- Simon McVittie <smcv@debian.org> Tue, 08 Sep 2020 21:06:23 +0100 + +pipewire (0.3.10-2) experimental; urgency=medium + + * Team upload + * Use debhelper compat level 13. + This runs 'meson test' rather than 'ninja test', which will make it + easier to expand the test timeout. + * Increase test timeout on slower architectures. + The resampling tests can be a bit slow, particularly on architectures + without a real FPU. + * d/p/Link-pipewire-jack-to-libatomic-if-required.patch: + Add patch to fix FTBFS on armel (and hopefully also mipsel) by + explicitly linking to libatomic where needed. + + -- Simon McVittie <smcv@debian.org> Sun, 06 Sep 2020 21:03:55 +0100 + +pipewire (0.3.10-1) experimental; urgency=medium + + * Team upload. + + [ Laurent Bigonville ] + * New upstream release (Closes: #954022) + - 0.3.x fixes FTBFS with gcc 10 (Closes: #957685) + - debian/control: Adjust the build-dependencies + - Bump the soname of the libraries + - Ship the new plugins (jack and vulkan) in new packages + - Re-enable some plugins that were enabled before but disabled in this + release + * Drop debian/pipewire.links, with debhelper 12, dh_installsystemduser is + called during the build process and it's taking care of enabling the + systemd user service and socket (Closes: #953216) + * Rename libpipewire-0.2-doc to pipewire-doc as the documentation is not + installed in a versinized directory + * debian/control: Bump Standards-Version to 4.5.0 (no further changes) + * debian/rules: Tell dh_shlibdeps to also search for the private libraries + * debian/pipewire.install: Install the control audioconvert and videoconvert + module in the main package, they are not pulling new dependencies + + [ Debian Janitor ] + * Set upstream metadata fields: Repository, Repository-Browse. + * Update standards version to 4.4.1, no changes needed. + + [ Simon McVittie ] + * New upstream release + * Version the names of the plugin packages. + They're installed in a versioned directory, and this package is going + to have to go through NEW anyway if there are incompatible changes + to SPA (0.3 or 1.0). + * d/copyright: Update + * d/libpipewire-0.3-0.symbols: Update + * Move executables and modules to their own packages. + PipeWire clients have to load some of the SPA and PipeWire modules into + their own address space, so it makes sense for the pipewire package to + be Multi-Arch: same, with a dependency on the modules for the necessary + architecture. This means the parts that would collide have to be split + out into a -bin package, which in turn needs a dependency on the modules + themselves (for its architecture). + * Put pipewire, pipewire-bin in Section: video. + The focus is currently on its video role rather than on its audio role, + and we don't have a Section: multimedia for things that do both. + Either audio or video seems more appropriate than Section: net, since + pipewire is not network-transparent. + * Separate out a Multi-Arch: same pipewire-audio-client-libraries + package. Using PipeWire for audio is considered experimental, so we + probably don't want xdg-desktop-portal and gnome-shell to pull this in. + - Reduce libpulse-mainloop-glib's GLib dependency to a Recommends. + It's a hard requirement for that library, but any application that + would be linked to it must already have a GLib dependency. + * Improve various package descriptions + * Disable ffmpeg and vulkan plugins. + According to upstream developer George Kiagiadakis, these are not + practically useful. + * d/p/conf-disable-bluez5.patch: Disable BlueZ support by default. + PipeWire is intended to be a suitable replacement for PulseAudio + eventually, but at the moment only the video side is ready for production + use, with the audio side considered experimental. + For ordinary ALSA audio devices, it is harmless to have audio support + available in PipeWire, because both PipeWire and PulseAudio will + close the audio device when not in use, so they can coexist (as long + as you do not try to use both at the same time). However, Bluetooth + audio devices need to be configured even when not in active use, so + they would fight. + Patch taken from Fedora. + Thanks to Wim Taymans + * d/shlibs.local: Generate lockstep dependencies between binaries. + Upstream developers are never going to support mixing libraries from + different builds of PipeWire, and neither should we. + * Install automated tests and example programs into a new + pipewire-tests package. + - d/p/spa-examples-Load-plugins-from-SPA_PLUGIN_DIR-or-installe.patch, + d/p/Optionally-install-examples-and-tests.patch: + Make the tests and examples installable + - d/tests/gnome-desktop-testing: Run most of the tests + * d/tests/manual.md: Add some manual test instructions. + Ideally some of these would be automated into autopkgtests (we can't + assert that we hear a sound, but we can at least assert that aplay + exits successfully) but for now they are just manual tests. + * pipewire-tests: Override custom-library-search-path Lintian tag. + Some of these tests use a RUNPATH to link to libraries from + pipewire itself. + * Install symlinks to pw-cat(1) for its various aliases + * d/rules: Update exclusion paths for dh_makeshlibs + * Set upstream metadata fields: Bug-Database, Bug-Submit + * Rename libspa-lib-0.2-dev to libspa-0.2-dev. + There used to be a shared library named libspa-lib, but recent versions + have moved to a purely header- and plugin-based system, making the -lib + postfix meaningless. + * Break out SPA modules into libspa-0.2-modules. + This will make compatibility more straightforward if PipeWire and SPA + break API/ABI out of sync with each other. + Thanks to Sjoerd Simons + * Document more ways to test bits of PipeWire manually + + [ Andreas Henriksson ] + * New upstream release (0.3.10) + * Update libpipewire-0.3-0.symbols with new additions + * Improve pipewire short description + * debian/copyright: Add module-portal.c and Red Hat + + -- Andreas Henriksson <andreas@fatal.se> Mon, 24 Aug 2020 16:03:42 +0200 + +pipewire (0.2.7-1) unstable; urgency=medium + + * New upstream release + * debian/libpipewire-0.2-1.symbols: Update + * Build-Depend on debhelper-compat 12 and drop debian/compat + + -- Jeremy Bicha <jbicha@debian.org> Fri, 01 Nov 2019 21:50:48 -0400 + +pipewire (0.2.5-1) unstable; urgency=medium + + [ Jeremy Bicha ] + * New upstream release + * Bump minimum meson to 0.47 + * debian/libpipewire-0.2-1.symbols: Add new symbol + * Drop all patches: applied in new release + * Bump Standards-Version to 4.3.0 + + [ Laurent Bigonville ] + * debian/libpipewire-0.2-1.symbols: Add the Build-Depends-Package annotation + * debian/control: Set Section to net for the main pipewire package + (Closes: #908524) + + -- Jeremy Bicha <jbicha@debian.org> Fri, 04 Jan 2019 14:24:46 -0500 + +pipewire (0.2.3-3) unstable; urgency=medium + + * Team upload. + * Make libpipewire-0.2-dev depend against libspa-lib-0.1-dev (Closes: + #909623) + * Enable pipewire.socket by default (Closes: #909625) + + -- Laurent Bigonville <bigon@debian.org> Wed, 26 Sep 2018 01:40:56 +0200 + +pipewire (0.2.3-2) unstable; urgency=medium + + * Make libpipewire-0.2-dev depend against libspa-lib-0.1-dev (Closes: #909623) + * Enable pipewire.socket by default (Closes: #909625) + + -- Laurent Bigonville <bigon@debian.org> Wed, 26 Sep 2018 01:40:45 +0200 + +pipewire (0.2.3-1) unstable; urgency=medium + + * New upstream release + * Drop make-spa-lib-version.patch: Applied in new release + * debian/rules: Update configure options + * libspa-lib-0.1-1 has been dropped in this release + * debian/libpipewire-0.2-1.symbols: Update + * Cherry-pick 7 commits since last release + + -- Jeremy Bicha <jbicha@debian.org> Wed, 19 Sep 2018 19:48:19 -0400 + +pipewire (0.2.2-1) unstable; urgency=medium + + * Initial release (Closes: #874089) + + -- Jeremy Bicha <jbicha@debian.org> Mon, 13 Aug 2018 11:17:57 -0400 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..294e891 --- /dev/null +++ b/debian/control @@ -0,0 +1,448 @@ +Source: pipewire +Section: libs +Priority: optional +Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@alioth-lists.debian.net> +Uploaders: Jeremy Bicha <jbicha@debian.org>, + Dylan Aïssi <daissi@debian.org> +Build-Depends: debhelper-compat (= 13), + doxygen <!nodoc>, + graphviz <!nodoc>, + libasound2-dev, + libavahi-client-dev, + libbluetooth-dev, + libcamera-dev (>= 0.0.1) [!m68k], + libdbus-1-dev, + libfreeaptx-dev, + libglib2.0-dev, + libgstreamer-plugins-base1.0-dev, + libgstreamer1.0-dev, + libjack-jackd2-dev, + libcanberra-dev, + liblc3-dev, + libldacbt-abr-dev [!s390x !hppa !m68k !powerpc !ppc64 !sparc64], + libldacbt-enc-dev [!s390x !hppa !m68k !powerpc !ppc64 !sparc64], + liblilv-dev, + libncurses-dev, + libopus-dev, + libpulse-dev, + libreadline-dev, + libsbc-dev, + libsdl2-dev, + libsndfile1-dev, + libssl-dev, + libsystemd-dev [linux-any], + libudev-dev [linux-any], + libusb-1.0-0-dev, + libv4l-dev, + libwebrtc-audio-processing-dev, + libxfixes-dev (>= 1:6.0.0), + meson (>= 0.59.0), + modemmanager-dev, + pkg-config, + python3-docutils, + systemd [linux-any] +Build-Conflicts: libfdk-aac-dev +Standards-Version: 4.6.2 +Vcs-Browser: https://salsa.debian.org/utopia-team/pipewire +Vcs-Git: https://salsa.debian.org/utopia-team/pipewire.git +Homepage: https://pipewire.org/ +Rules-Requires-Root: no + +Package: libpipewire-0.3-0 +Architecture: linux-any +Multi-Arch: same +Depends: libspa-0.2-modules (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: libpipewire-0.3-common +Suggests: pipewire (= ${binary:Version}) +Description: libraries for the PipeWire multimedia server + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + +Package: libpipewire-0.3-common +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends}, ${shlibs:Depends} +Description: libraries for the PipeWire multimedia server - common files + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package is needed for the runtime libraries to display messages in + languages other than English. + +Package: libpipewire-0.3-dev +Section: libdevel +Architecture: linux-any +Multi-Arch: same +Depends: libpipewire-0.3-0 (= ${binary:Version}), + libspa-0.2-dev (= ${binary:Version}), + ${misc:Depends} +Suggests: pipewire-doc +Description: libraries for the PipeWire multimedia server - development + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the development files. + +Package: libpipewire-0.3-modules +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends}, ${shlibs:Depends} +Breaks: pipewire (<< 0.3.5) +Replaces: pipewire (<< 0.3.5) +Description: libraries for the PipeWire multimedia server - modules + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains modules used by the PipeWire server and by clients, + and should not normally be depended on directly. PipeWire clients should + depend on the pipewire package instead. + +Package: libpipewire-0.3-modules-x11 +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends}, ${shlibs:Depends} +Breaks: libpipewire-0.3-modules (<< 0.3.63-3~) +Replaces: libpipewire-0.3-modules (<< 0.3.63-3~) +Description: libraries for the PipeWire multimedia server - X11 modules + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains X11 modules. + +Package: libspa-0.2-dev +Section: libdevel +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends} +Suggests: pipewire-doc +Description: libraries for the PipeWire multimedia server Simple Plugin API - development + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the development files for the Simple Plugin API. + +Package: libspa-0.2-modules +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends}, ${shlibs:Depends} +Breaks: pipewire (<< 0.3.5) +Replaces: pipewire (<< 0.3.5) +Description: libraries for the PipeWire multimedia server Simple Plugin API - modules + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains core support modules used in the Simple Plugin API, + together with test and utility modules that do not introduce additional + dependencies. It should not normally be depended on directly: PipeWire + clients should depend on the pipewire package instead. + +Package: pipewire-doc +Section: doc +Build-Profiles: <!nodoc> +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends} +Breaks: libpipewire-0.2-doc (<< 0.3.1) +Replaces: libpipewire-0.2-doc (<< 0.3.1) +Description: libraries for the PipeWire multimedia server - documentation + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the API reference. + +Package: pipewire +Section: video +Architecture: linux-any +Multi-Arch: same +Depends: libpipewire-0.3-modules (= ${binary:Version}), + pipewire-bin (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends}, + adduser +Description: audio and video processing engine multimedia server + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This metapackage makes PipeWire available for programs of the same + architecture, and provides the systemd user service necessary to run + pipewire on-demand. + +Package: pipewire-bin +Section: video +Architecture: linux-any +Multi-Arch: foreign +Depends: libpipewire-0.3-modules (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: dbus-user-session, + wireplumber | pipewire-media-session, + rtkit +Breaks: pipewire (<< 0.3.5) +Replaces: pipewire (<< 0.3.5) +Description: PipeWire multimedia server - programs + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the server and command-line utilities, and should + not normally be depended on directly. PipeWire clients should depend on + the pipewire package instead. + +Package: pipewire-pulse +Section: sound +Architecture: linux-any +Multi-Arch: foreign +Replaces: pipewire-bin (<< 0.3.27-2) +Breaks: pipewire-bin (<< 0.3.27-2) +Depends: pipewire (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: wireplumber | pipewire-media-session-pulseaudio +Suggests: libspa-0.2-bluetooth, + pulseaudio-utils +Description: PipeWire PulseAudio daemon + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the PulseAudio replacement daemon. + +Package: pipewire-alsa +Section: sound +Architecture: linux-any +Multi-Arch: same +Replaces: pipewire-audio-client-libraries (<< 0.3.54-1~) +Breaks: pipewire-audio-client-libraries (<< 0.3.54-1~) +Conflicts: pulseaudio +Depends: pipewire (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: PipeWire ALSA plugin + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the ALSA plugin. + +Package: pipewire-jack +Section: sound +Architecture: linux-any +Multi-Arch: same +Replaces: pipewire-audio-client-libraries (<< 0.3.54-1~) +Breaks: pipewire-audio-client-libraries (<< 0.3.54-1~) +Depends: pipewire (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: PipeWire JACK plugin + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the JACK plugin. + +Package: pipewire-v4l2 +Section: video +Architecture: linux-any +Multi-Arch: same +Replaces: pipewire-bin (<< 0.3.54-1), + libpipewire-0.3-modules (<< 0.3.54-1) +Breaks: pipewire-bin (<< 0.3.54-1), + libpipewire-0.3-modules (<< 0.3.54-1) +Depends: pipewire (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: PipeWire V4L2 plugin + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the V4L2 plugin. + +Package: pipewire-libcamera +Section: video +Architecture: amd64 arm64 armel armhf i386 mips64el mipsel ppc64el s390x alpha hppa ia64 powerpc ppc64 riscv64 sh4 sparc64 x32 +Multi-Arch: same +Depends: pipewire (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: PipeWire libcamera plugin + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains the libcamera plugin. + +Package: pipewire-tests +Architecture: linux-any +Depends: pipewire (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends} +Section: misc +Description: PipeWire multimedia server - tests and examples + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains automated and manual tests and example programs. + +Package: gstreamer1.0-pipewire +Architecture: linux-any +Multi-Arch: same +Depends: pipewire (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends} +Description: GStreamer 1.0 plugin for the PipeWire multimedia server + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains a plugin to make devices managed by the PipeWire + server available as GStreamer sources and sinks. + +Package: libspa-0.2-bluetooth +Architecture: linux-any +Multi-Arch: same +Depends: libspa-0.2-modules (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: libraries for the PipeWire multimedia server - bluetooth plugins + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains a plugin to make Bluetooth audio devices such as + speakers and headsets available to the PipeWire server. + +Package: libspa-0.2-jack +Architecture: linux-any +Multi-Arch: same +Depends: libspa-0.2-modules (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: libraries for the PipeWire multimedia server - JACK client + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This package contains a plugin to make PipeWire able to connect to a + JACK server, which will be used for audio playback and recording. + +Package: pipewire-audio-client-libraries +Section: oldlibs +Architecture: all +Depends: pipewire-alsa, + pipewire-jack, + ${misc:Depends} +Description: transitional package for pipewire-alsa and pipewire-jack + PipeWire is a server and user space API to deal with multimedia + pipelines. + . + This is a transitional package for pipewire-alsa and pipewire-jack. + It can safely be removed. + +Package: pipewire-audio +Section: sound +Architecture: all +Depends: ${misc:Depends}, + libspa-0.2-bluetooth, + pipewire-alsa, + pipewire-pulse, + wireplumber +Conflicts: pulseaudio, + pulseaudio-module-bluetooth +Replaces: pulseaudio, + pulseaudio-module-bluetooth +Description: recommended set of PipeWire packages for a standard audio desktop use + PipeWire is a server and user space API to deal with multimedia + pipelines. This includes: + . + - Making available sources of video (such as from a capture devices or + application provided streams) and multiplexing this with clients. + - Accessing sources of video for consumption. + - Generating graphs for audio and video processing. + . + This metapackage depends on a recommended set of pipewire packages + for a standard audio desktop use. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..92d66f3 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,219 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: pipewire +Source: https://gitlab.freedesktop.org/pipewire/pipewire +License: Expat and LGPL-2.1+ + +Files: * +Copyright: 2009 Lennart Poettering + 2010 David Henningsson + 2013 Inigo Quilez + 2015-2022 Wim Taymans + 2016-2021 Axis Communications + 2018-2022 Collabora Ltd. + 2020 Konsulko Group + 2020 Sergey Bugaev + 2020 Georges Basile Stavracas Neto + 2021 jothepro + 2019-2021 Red Hat, Inc. + 2021 Arun Raghavan + 2013 The Chromium OS Authors. + 2010 Google Inc. + 2017 HiFi-LoFi + 2000-2002 Richard W.E. Furse, Paul Barton-Davis + 2021 Sanchayan Maity + 2021 Pauli Virtanen + 2021 Florian Hülsmann +License: Expat + +Files: include/* +Copyright: 2000-2017 Julian Seward. +License: BZIP2 + +Files: pipewire-jack/jack/* +Copyright: 2000-2013 Paul Davis + 2003-2004 Jack OQuin + 2002 Kai Vehmanen + 2011-2014 David Robillard + 2004 Ian Esten + 2004-2012 Grame + 2003 Rohan Drape + 2010 Torben Hohn + 2004 Rui Nuno Capela, Lee Revell +License: LGPL-2.1+ + +Files: pipewire-jack/jack/control.h +Copyright: 2008 Nedko Arnaudov + 2008 GRAME +License: GPL-2 + +Files: spa/plugins/alsa/90-pipewire-alsa.rules + spa/plugins/alsa/acp/* + spa/plugins/alsa/mixer/paths/* + spa/plugins/alsa/mixer/profile-sets/* + spa/plugins/alsa/mixer/samples/* +Copyright: 1999 Tom Tromey + 2000 Red Hat, Inc. + 2004-2009 Lennart Poettering + 2006 Pierre Ossman + 2006 Pierre Ossman for Cendio AB + 2011 Intel Corporation + 2011 Collabora Multimedia + 2011 Arun Raghavan + 2011 Wolfson Microelectronics PLC + 2012 Feng Wei, Freescale Ltd. + 2015-2022 Wim Taymans +License: LGPL-2+ and LGPL-2.1+ and Expat + +Files: spa/plugins/bluez5/* +Copyright: 2004-2010 Marcel Holtmann + 2006-2010 Nokia Corporation + 2016-2017 Arkadiusz Bokowy + 2018-2022 Wim Taymans + 2018-2022 Collabora Ltd. + 2018 Pali Rohár + 2021-2022 Pauli Virtanen + 2013 Julien Pommier +License: Expat and LGPL-2.1+ + +Files: src/modules/module-client-node/v0/* + src/modules/module-protocol-native/v0/* + src/modules/module-portal.c +Copyright: 2015-2022 Wim Taymans + 2019 Red Hat Inc. +License: LGPL-2+ + +Files: src/modules/module-filter-chain/ladspa.h +Copyright: 2000-2002 Richard W.E. Furse, Paul Barton-Davis +License: LGPL-2.1+ + +Files: src/modules/module-filter-chain/pffft.* +Copyright: 2013 Julien Pommier + 2004 The University Corporation for Atmospheric Research +License: FFTPACK + +License: Expat + 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 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. + +License: LGPL-2+ + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. + . + On Debian systems, the complete text of the GNU Lesser General + Public License can be found in "/usr/share/common-licenses/LGPL-2". + +License: LGPL-2.1+ + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. + . + On Debian systems, the complete text of the GNU Lesser General + Public License can be found in "/usr/share/common-licenses/LGPL-2.1". + +License: FFTPACK + Redistribution and use of the Software in source and binary forms, + with or without modification, is permitted provided that the + following conditions are met: + . + - Neither the names of NCAR's Computational and Information Systems + Laboratory, the University Corporation for Atmospheric Research, + nor the names of its sponsors or contributors may be used to + endorse or promote products derived from this Software without + specific prior written permission. + . + - Redistributions of source code must retain the above copyright + notices, this list of conditions, and the disclaimer below. + . + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the disclaimer below in the + documentation and/or other materials provided with the + distribution. + . + THIS 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 CONTRIBUTORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL 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 WITH THE + SOFTWARE. + +License: BZIP2 + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + 2. The origin of this software must not be misrepresented; you must + not claim that you wrote the original software. If you use this + software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + . + 3. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software. + . + 4. The name of the author may not be used to endorse or promote + products derived from this software without specific prior written + permission. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: GPL-2 + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + On Debian systems you can find the full text of the GNU General Public + License version 2 at /usr/share/common-licenses/GPL-2. diff --git a/debian/gbp.conf b/debian/gbp.conf new file mode 100644 index 0000000..b24011a --- /dev/null +++ b/debian/gbp.conf @@ -0,0 +1,17 @@ +[DEFAULT] +pristine-tar = True +debian-branch = debian/master +upstream-branch = upstream/latest +upstream-vcs-tag = %(version)s + +[buildpackage] +sign-tags = True + +[dch] +multimaint-merge = True + +[import-orig] +postimport = dch -v%(version)s New upstream release; git add debian/changelog; debcommit + +[pq] +patch-numbers = False diff --git a/debian/gstreamer1.0-pipewire.install b/debian/gstreamer1.0-pipewire.install new file mode 100644 index 0000000..da0fd91 --- /dev/null +++ b/debian/gstreamer1.0-pipewire.install @@ -0,0 +1 @@ +usr/lib/*/gstreamer-1.0 diff --git a/debian/libpipewire-0.3-0.install b/debian/libpipewire-0.3-0.install new file mode 100644 index 0000000..6758e68 --- /dev/null +++ b/debian/libpipewire-0.3-0.install @@ -0,0 +1 @@ +usr/lib/*/libpipewire*.so.* diff --git a/debian/libpipewire-0.3-0.symbols b/debian/libpipewire-0.3-0.symbols new file mode 100644 index 0000000..4886eef --- /dev/null +++ b/debian/libpipewire-0.3-0.symbols @@ -0,0 +1,432 @@ +libpipewire-0.3.so.0 libpipewire-0.3-0 #MINVER# +* Build-Depends-Package: libpipewire-0.3-dev + PW_LOG_TOPIC_DEFAULT@Base 0.3.38 + _pw_log_topic_new@Base 0.3.38 + pw_buffers_clear@Base 0.3.1 + pw_buffers_negotiate@Base 0.3.1 + pw_check_option@Base 0.3.30 + pw_client_info_free@Base 0.3.1 + pw_client_info_merge@Base 0.3.35 + pw_client_info_update@Base 0.3.1 + pw_conf_load_conf@Base 0.3.22 + pw_conf_load_conf_for_context@Base 0.3.57 + pw_conf_load_state@Base 0.3.22 + pw_conf_match_rules@Base 0.3.65 + pw_conf_save_state@Base 0.3.22 + pw_context_add_listener@Base 0.3.1 + pw_context_add_spa_lib@Base 0.3.1 + pw_context_conf_section_for_each@Base 0.3.45 + pw_context_conf_section_match_rules@Base 0.3.46 + pw_context_conf_update_props@Base 0.3.45 + pw_context_connect@Base 0.3.1 + pw_context_connect_fd@Base 0.3.1 + pw_context_connect_self@Base 0.3.1 + pw_context_create_client@Base 0.3.1 + pw_context_create_core@Base 0.3.1 + pw_context_create_device@Base 0.3.1 + pw_context_create_factory@Base 0.3.1 + pw_context_create_link@Base 0.3.1 + pw_context_create_metadata@Base 0.3.31 + pw_context_create_node@Base 0.3.1 + pw_context_create_port@Base 0.3.1 + pw_context_destroy@Base 0.3.1 + pw_context_find_export_type@Base 0.3.1 + pw_context_find_factory@Base 0.3.1 + pw_context_find_global@Base 0.3.1 + pw_context_find_protocol@Base 0.3.1 + pw_context_find_spa_lib@Base 0.3.1 + pw_context_for_each_global@Base 0.3.1 + pw_context_get_conf_section@Base 0.3.22 + pw_context_get_data_loop@Base 0.3.56 + pw_context_get_default_core@Base 0.3.1 + pw_context_get_main_loop@Base 0.3.1 + pw_context_get_object@Base 0.3.1 + pw_context_get_properties@Base 0.3.1 + pw_context_get_support@Base 0.3.1 + pw_context_get_user_data@Base 0.3.1 + pw_context_get_work_queue@Base 0.3.26 + pw_context_load_module@Base 0.3.1 + pw_context_load_spa_handle@Base 0.3.1 + pw_context_new@Base 0.3.1 + pw_context_parse_conf_section@Base 0.3.22 + pw_context_register_export_type@Base 0.3.1 + pw_context_set_object@Base 0.3.1 + pw_context_update_properties@Base 0.3.1 + pw_control_add_link@Base 0.3.1 + pw_control_add_listener@Base 0.3.1 + pw_control_get_port@Base 0.3.1 + pw_control_remove_link@Base 0.3.1 + pw_core_disconnect@Base 0.3.1 + pw_core_export@Base 0.3.1 + pw_core_find_proxy@Base 0.3.1 + pw_core_get_client@Base 0.3.1 + pw_core_get_context@Base 0.3.1 + pw_core_get_mempool@Base 0.3.1 + pw_core_get_properties@Base 0.3.1 + pw_core_get_user_data@Base 0.3.1 + pw_core_info_free@Base 0.3.1 + pw_core_info_merge@Base 0.3.35 + pw_core_info_update@Base 0.3.1 + pw_core_set_paused@Base 0.3.1 + pw_core_steal_fd@Base 0.3.1 + pw_core_update_properties@Base 0.3.1 + pw_data_loop_add_listener@Base 0.3.1 + pw_data_loop_destroy@Base 0.3.1 + pw_data_loop_exit@Base 0.3.1 + pw_data_loop_get_loop@Base 0.3.37 + pw_data_loop_get_thread@Base 0.3.32 + pw_data_loop_in_thread@Base 0.3.1 + pw_data_loop_invoke@Base 0.3.5 + pw_data_loop_new@Base 0.3.1 + pw_data_loop_set_thread_utils@Base 0.3.50 + pw_data_loop_start@Base 0.3.1 + pw_data_loop_stop@Base 0.3.1 + pw_data_loop_wait@Base 0.3.1 + pw_debug_is_category_enabled@Base 0.3.1 + pw_deinit@Base 0.3.6 + pw_device_info_free@Base 0.3.1 + pw_device_info_merge@Base 0.3.35 + pw_device_info_update@Base 0.3.1 + pw_direction_as_string@Base 0.3.1 + pw_direction_reverse@Base 0.3.1 + pw_factory_info_free@Base 0.3.1 + pw_factory_info_merge@Base 0.3.35 + pw_factory_info_update@Base 0.3.1 + pw_filter_add_listener@Base 0.3.1 + pw_filter_add_port@Base 0.3.1 + pw_filter_connect@Base 0.3.1 + pw_filter_dequeue_buffer@Base 0.3.1 + pw_filter_destroy@Base 0.3.1 + pw_filter_disconnect@Base 0.3.1 + pw_filter_flush@Base 0.3.1 + pw_filter_get_core@Base 0.3.1 + pw_filter_get_dsp_buffer@Base 0.3.1 + pw_filter_get_name@Base 0.3.1 + pw_filter_get_node_id@Base 0.3.1 + pw_filter_get_properties@Base 0.3.1 + pw_filter_get_state@Base 0.3.1 + pw_filter_get_time@Base 0.3.1 + pw_filter_new@Base 0.3.1 + pw_filter_new_simple@Base 0.3.1 + pw_filter_queue_buffer@Base 0.3.1 + pw_filter_remove_port@Base 0.3.1 + pw_filter_set_active@Base 0.3.1 + pw_filter_set_error@Base 0.3.1 + pw_filter_state_as_string@Base 0.3.1 + pw_filter_update_params@Base 0.3.1 + pw_filter_update_properties@Base 0.3.1 + pw_free_strv@Base 0.3.1 + pw_get_application_name@Base 0.3.1 + pw_get_client_name@Base 0.3.1 + pw_get_domain@Base 0.3.26 + pw_get_host_name@Base 0.3.1 + pw_get_library_version@Base 0.3.1 + pw_get_prgname@Base 0.3.1 + pw_get_support@Base 0.3.1 + pw_get_user_name@Base 0.3.1 + pw_getrandom@Base 0.3.40 + pw_gettext@Base 0.3.26 + pw_global_add_listener@Base 0.3.1 + pw_global_add_resource@Base 0.3.1 + pw_global_bind@Base 0.3.1 + pw_global_destroy@Base 0.3.1 + pw_global_for_each_resource@Base 0.3.1 + pw_global_get_context@Base 0.3.1 + pw_global_get_id@Base 0.3.1 + pw_global_get_object@Base 0.3.1 + pw_global_get_permissions@Base 0.3.1 + pw_global_get_properties@Base 0.3.1 + pw_global_get_serial@Base 0.3.41 + pw_global_get_type@Base 0.3.1 + pw_global_get_version@Base 0.3.1 + pw_global_is_type@Base 0.3.1 + pw_global_new@Base 0.3.1 + pw_global_register@Base 0.3.1 + pw_global_update_keys@Base 0.3.10 + pw_global_update_permissions@Base 0.3.1 + pw_impl_client_add_listener@Base 0.3.1 + pw_impl_client_check_permissions@Base 0.3.10 + pw_impl_client_destroy@Base 0.3.1 + pw_impl_client_find_resource@Base 0.3.1 + pw_impl_client_get_context@Base 0.3.1 + pw_impl_client_get_core_resource@Base 0.3.1 + pw_impl_client_get_global@Base 0.3.1 + pw_impl_client_get_info@Base 0.3.1 + pw_impl_client_get_properties@Base 0.3.1 + pw_impl_client_get_protocol@Base 0.3.1 + pw_impl_client_get_user_data@Base 0.3.1 + pw_impl_client_register@Base 0.3.1 + pw_impl_client_set_busy@Base 0.3.1 + pw_impl_client_unref@Base 0.3.52 + pw_impl_client_update_permissions@Base 0.3.1 + pw_impl_client_update_properties@Base 0.3.1 + pw_impl_core_add_listener@Base 0.3.1 + pw_impl_core_destroy@Base 0.3.1 + pw_impl_core_get_global@Base 0.3.1 + pw_impl_core_get_properties@Base 0.3.1 + pw_impl_core_get_user_data@Base 0.3.1 + pw_impl_core_register@Base 0.3.1 + pw_impl_core_update_properties@Base 0.3.1 + pw_impl_device_add_listener@Base 0.3.1 + pw_impl_device_destroy@Base 0.3.1 + pw_impl_device_for_each_param@Base 0.3.1 + pw_impl_device_get_global@Base 0.3.1 + pw_impl_device_get_implementation@Base 0.3.1 + pw_impl_device_get_properties@Base 0.3.1 + pw_impl_device_get_user_data@Base 0.3.1 + pw_impl_device_register@Base 0.3.1 + pw_impl_device_set_implementation@Base 0.3.1 + pw_impl_device_update_properties@Base 0.3.1 + pw_impl_factory_add_listener@Base 0.3.1 + pw_impl_factory_create_object@Base 0.3.1 + pw_impl_factory_destroy@Base 0.3.1 + pw_impl_factory_get_global@Base 0.3.1 + pw_impl_factory_get_info@Base 0.3.1 + pw_impl_factory_get_properties@Base 0.3.1 + pw_impl_factory_get_user_data@Base 0.3.1 + pw_impl_factory_register@Base 0.3.1 + pw_impl_factory_set_implementation@Base 0.3.1 + pw_impl_factory_update_properties@Base 0.3.1 + pw_impl_link_add_listener@Base 0.3.1 + pw_impl_link_destroy@Base 0.3.1 + pw_impl_link_get_context@Base 0.3.1 + pw_impl_link_get_global@Base 0.3.1 + pw_impl_link_get_info@Base 0.3.1 + pw_impl_link_get_input@Base 0.3.1 + pw_impl_link_get_output@Base 0.3.1 + pw_impl_link_get_user_data@Base 0.3.1 + pw_impl_link_register@Base 0.3.1 + pw_impl_metadata_add_listener@Base 0.3.31 + pw_impl_metadata_destroy@Base 0.3.31 + pw_impl_metadata_get_global@Base 0.3.31 + pw_impl_metadata_get_implementation@Base 0.3.31 + pw_impl_metadata_get_properties@Base 0.3.39 + pw_impl_metadata_get_user_data@Base 0.3.31 + pw_impl_metadata_register@Base 0.3.31 + pw_impl_metadata_set_implementation@Base 0.3.31 + pw_impl_metadata_set_property@Base 0.3.31 + pw_impl_metadata_set_propertyf@Base 0.3.31 + pw_impl_module_add_listener@Base 0.3.1 + pw_impl_module_destroy@Base 0.3.1 + pw_impl_module_get_context@Base 0.3.1 + pw_impl_module_get_global@Base 0.3.1 + pw_impl_module_get_info@Base 0.3.1 + pw_impl_module_get_properties@Base 0.3.1 + pw_impl_module_schedule_destroy@Base 0.3.48 + pw_impl_module_update_properties@Base 0.3.1 + pw_impl_node_add_listener@Base 0.3.1 + pw_impl_node_destroy@Base 0.3.1 + pw_impl_node_find_port@Base 0.3.1 + pw_impl_node_for_each_param@Base 0.3.1 + pw_impl_node_for_each_port@Base 0.3.1 + pw_impl_node_get_context@Base 0.3.1 + pw_impl_node_get_free_port_id@Base 0.3.1 + pw_impl_node_get_global@Base 0.3.1 + pw_impl_node_get_implementation@Base 0.3.1 + pw_impl_node_get_info@Base 0.3.1 + pw_impl_node_get_properties@Base 0.3.1 + pw_impl_node_get_user_data@Base 0.3.1 + pw_impl_node_initialized@Base 0.3.1 + pw_impl_node_is_active@Base 0.3.1 + pw_impl_node_register@Base 0.3.1 + pw_impl_node_send_command@Base 0.3.39 + pw_impl_node_set_active@Base 0.3.1 + pw_impl_node_set_driver@Base 0.3.1 + pw_impl_node_set_implementation@Base 0.3.1 + pw_impl_node_set_param@Base 0.3.1 + pw_impl_node_set_state@Base 0.3.1 + pw_impl_node_update_properties@Base 0.3.1 + pw_impl_port_add@Base 0.3.1 + pw_impl_port_add_listener@Base 0.3.1 + pw_impl_port_get_direction@Base 0.3.1 + pw_impl_port_get_id@Base 0.3.1 + pw_impl_port_get_info@Base 0.3.1 + pw_impl_port_get_node@Base 0.3.1 + pw_impl_port_get_properties@Base 0.3.1 + pw_impl_port_get_user_data@Base 0.3.1 + pw_impl_port_init_mix@Base 0.3.1 + pw_impl_port_is_linked@Base 0.3.1 + pw_impl_port_release_mix@Base 0.3.1 + pw_impl_port_set_mix@Base 0.3.1 + pw_impl_port_set_param@Base 0.3.1 + pw_impl_port_update_properties@Base 0.3.1 + pw_impl_port_use_buffers@Base 0.3.1 + pw_in_valgrind@Base 0.3.6 + pw_init@Base 0.3.1 + pw_link_info_free@Base 0.3.1 + pw_link_info_merge@Base 0.3.35 + pw_link_info_update@Base 0.3.1 + pw_link_state_as_string@Base 0.3.1 + pw_load_spa_handle@Base 0.3.1 + pw_log_get@Base 0.3.1 + pw_log_level@Base 0.3.1 + pw_log_log@Base 0.3.1 + pw_log_logt@Base 0.3.38 + pw_log_logtv@Base 0.3.38 + pw_log_logv@Base 0.3.1 + pw_log_set@Base 0.3.1 + pw_log_set_level@Base 0.3.1 + pw_loop_destroy@Base 0.3.1 + pw_loop_new@Base 0.3.1 + pw_main_loop_add_listener@Base 0.3.1 + pw_main_loop_destroy@Base 0.3.1 + pw_main_loop_get_loop@Base 0.3.1 + pw_main_loop_new@Base 0.3.1 + pw_main_loop_quit@Base 0.3.1 + pw_main_loop_run@Base 0.3.1 + pw_memblock_free@Base 0.3.1 + pw_memblock_map@Base 0.3.1 + pw_memmap_free@Base 0.3.1 + pw_mempool_add_listener@Base 0.3.37 + pw_mempool_alloc@Base 0.3.1 + pw_mempool_clear@Base 0.3.37 + pw_mempool_destroy@Base 0.3.37 + pw_mempool_find_fd@Base 0.3.1 + pw_mempool_find_id@Base 0.3.1 + pw_mempool_find_ptr@Base 0.3.1 + pw_mempool_find_tag@Base 0.3.1 + pw_mempool_import@Base 0.3.1 + pw_mempool_import_block@Base 0.3.1 + pw_mempool_import_map@Base 0.3.1 + pw_mempool_map_id@Base 0.3.1 + pw_mempool_new@Base 0.3.37 + pw_mempool_remove_id@Base 0.3.37 + pw_module_info_free@Base 0.3.1 + pw_module_info_merge@Base 0.3.35 + pw_module_info_update@Base 0.3.1 + pw_ngettext@Base 0.3.26 + pw_node_info_free@Base 0.3.1 + pw_node_info_merge@Base 0.3.35 + pw_node_info_update@Base 0.3.1 + pw_node_state_as_string@Base 0.3.1 + pw_port_info_free@Base 0.3.1 + pw_port_info_merge@Base 0.3.35 + pw_port_info_update@Base 0.3.1 + pw_properties_add@Base 0.3.1 + pw_properties_add_keys@Base 0.3.1 + pw_properties_clear@Base 0.3.1 + pw_properties_copy@Base 0.3.1 + pw_properties_fetch_bool@Base 0.3.39 + pw_properties_fetch_int32@Base 0.3.39 + pw_properties_fetch_int64@Base 0.3.39 + pw_properties_fetch_uint32@Base 0.3.39 + pw_properties_fetch_uint64@Base 0.3.39 + pw_properties_free@Base 0.3.1 + pw_properties_get@Base 0.3.1 + pw_properties_iterate@Base 0.3.1 + pw_properties_new@Base 0.3.1 + pw_properties_new_dict@Base 0.3.1 + pw_properties_new_string@Base 0.3.1 + pw_properties_serialize_dict@Base 0.3.28 + pw_properties_set@Base 0.3.1 + pw_properties_setf@Base 0.3.1 + pw_properties_setva@Base 0.3.1 + pw_properties_update@Base 0.3.1 + pw_properties_update_ignore@Base 0.3.23 + pw_properties_update_keys@Base 0.3.1 + pw_properties_update_string@Base 0.3.19 + pw_protocol_add_listener@Base 0.3.1 + pw_protocol_add_marshal@Base 0.3.1 + pw_protocol_destroy@Base 0.3.1 + pw_protocol_get_context@Base 0.3.1 + pw_protocol_get_extension@Base 0.3.1 + pw_protocol_get_implementation@Base 0.3.1 + pw_protocol_get_marshal@Base 0.3.1 + pw_protocol_get_user_data@Base 0.3.1 + pw_protocol_new@Base 0.3.1 + pw_proxy_add_listener@Base 0.3.1 + pw_proxy_add_object_listener@Base 0.3.1 + pw_proxy_destroy@Base 0.3.1 + pw_proxy_error@Base 0.3.1 + pw_proxy_errorf@Base 0.3.1 + pw_proxy_get_bound_id@Base 0.3.1 + pw_proxy_get_core@Base 0.3.1 + pw_proxy_get_id@Base 0.3.1 + pw_proxy_get_marshal@Base 0.3.1 + pw_proxy_get_object_listeners@Base 0.3.1 + pw_proxy_get_protocol@Base 0.3.1 + pw_proxy_get_type@Base 0.3.1 + pw_proxy_get_user_data@Base 0.3.1 + pw_proxy_install_marshal@Base 0.3.1 + pw_proxy_new@Base 0.3.1 + pw_proxy_ref@Base 0.3.6 + pw_proxy_set_bound_id@Base 0.3.1 + pw_proxy_sync@Base 0.3.1 + pw_proxy_unref@Base 0.3.1 + pw_reallocarray@Base 0.3.52 + pw_resource_add_listener@Base 0.3.1 + pw_resource_add_object_listener@Base 0.3.1 + pw_resource_destroy@Base 0.3.1 + pw_resource_error@Base 0.3.1 + pw_resource_errorf@Base 0.3.1 + pw_resource_errorf_id@Base 0.3.1 + pw_resource_get_bound_id@Base 0.3.1 + pw_resource_get_client@Base 0.3.1 + pw_resource_get_id@Base 0.3.1 + pw_resource_get_marshal@Base 0.3.1 + pw_resource_get_object_listeners@Base 0.3.1 + pw_resource_get_permissions@Base 0.3.1 + pw_resource_get_protocol@Base 0.3.1 + pw_resource_get_type@Base 0.3.1 + pw_resource_get_user_data@Base 0.3.1 + pw_resource_install_marshal@Base 0.3.1 + pw_resource_new@Base 0.3.1 + pw_resource_ping@Base 0.3.1 + pw_resource_ref@Base 0.3.52 + pw_resource_remove@Base 0.3.1 + pw_resource_set_bound_id@Base 0.3.1 + pw_resource_unref@Base 0.3.52 + pw_set_domain@Base 0.3.26 + pw_split_ip@Base 0.3.63 + pw_split_strv@Base 0.3.1 + pw_split_walk@Base 0.3.1 + pw_stream_add_listener@Base 0.3.1 + pw_stream_connect@Base 0.3.1 + pw_stream_dequeue_buffer@Base 0.3.1 + pw_stream_destroy@Base 0.3.1 + pw_stream_disconnect@Base 0.3.1 + pw_stream_flush@Base 0.3.1 + pw_stream_get_control@Base 0.3.1 + pw_stream_get_core@Base 0.3.1 + pw_stream_get_name@Base 0.3.1 + pw_stream_get_node_id@Base 0.3.1 + pw_stream_get_properties@Base 0.3.1 + pw_stream_get_state@Base 0.3.1 + pw_stream_get_time@Base 0.3.1 + pw_stream_get_time_n@Base 0.3.50 + pw_stream_is_driving@Base 0.3.34 + pw_stream_new@Base 0.3.1 + pw_stream_new_simple@Base 0.3.1 + pw_stream_queue_buffer@Base 0.3.1 + pw_stream_set_active@Base 0.3.1 + pw_stream_set_control@Base 0.3.1 + pw_stream_set_error@Base 0.3.1 + pw_stream_state_as_string@Base 0.3.1 + pw_stream_trigger_process@Base 0.3.34 + pw_stream_update_params@Base 0.3.1 + pw_stream_update_properties@Base 0.3.1 + pw_strip@Base 0.3.1 + pw_thread_fill_attr@Base 0.3.51 + pw_thread_loop_accept@Base 0.3.1 + pw_thread_loop_add_listener@Base 0.3.1 + pw_thread_loop_destroy@Base 0.3.1 + pw_thread_loop_get_loop@Base 0.3.1 + pw_thread_loop_get_time@Base 0.3.8 + pw_thread_loop_in_thread@Base 0.3.1 + pw_thread_loop_lock@Base 0.3.1 + pw_thread_loop_new@Base 0.3.1 + pw_thread_loop_new_full@Base 0.3.1 + pw_thread_loop_signal@Base 0.3.1 + pw_thread_loop_start@Base 0.3.1 + pw_thread_loop_stop@Base 0.3.1 + pw_thread_loop_timed_wait@Base 0.3.1 + pw_thread_loop_timed_wait_full@Base 0.3.8 + pw_thread_loop_unlock@Base 0.3.1 + pw_thread_loop_wait@Base 0.3.1 + pw_thread_utils_get@Base 0.3.32 + pw_thread_utils_set@Base 0.3.32 + pw_type_info@Base 0.3.1 + pw_unload_spa_handle@Base 0.3.1 + pw_work_queue_add@Base 0.3.26 + pw_work_queue_cancel@Base 0.3.26 + pw_work_queue_complete@Base 0.3.26 diff --git a/debian/libpipewire-0.3-common.install b/debian/libpipewire-0.3-common.install new file mode 100644 index 0000000..3635480 --- /dev/null +++ b/debian/libpipewire-0.3-common.install @@ -0,0 +1 @@ +usr/share/locale diff --git a/debian/libpipewire-0.3-dev.install b/debian/libpipewire-0.3-dev.install new file mode 100644 index 0000000..5193450 --- /dev/null +++ b/debian/libpipewire-0.3-dev.install @@ -0,0 +1,3 @@ +usr/include/pipewire-0.3 +usr/lib/*/libpipewire*.so +usr/lib/*/pkgconfig/libpipewire* diff --git a/debian/libpipewire-0.3-modules-x11.install b/debian/libpipewire-0.3-modules-x11.install new file mode 100644 index 0000000..861be47 --- /dev/null +++ b/debian/libpipewire-0.3-modules-x11.install @@ -0,0 +1 @@ +usr/lib/*/pipewire-0.3/libpipewire-module-x11-bell.so diff --git a/debian/libpipewire-0.3-modules.install b/debian/libpipewire-0.3-modules.install new file mode 100644 index 0000000..9a1e654 --- /dev/null +++ b/debian/libpipewire-0.3-modules.install @@ -0,0 +1,31 @@ +usr/lib/*/pipewire-0.3/libpipewire-module-access.so +usr/lib/*/pipewire-0.3/libpipewire-module-adapter.so +usr/lib/*/pipewire-0.3/libpipewire-module-avb.so +usr/lib/*/pipewire-0.3/libpipewire-module-client-device.so +usr/lib/*/pipewire-0.3/libpipewire-module-client-node.so +usr/lib/*/pipewire-0.3/libpipewire-module-combine-stream.so +usr/lib/*/pipewire-0.3/libpipewire-module-echo-cancel.so +usr/lib/*/pipewire-0.3/libpipewire-module-fallback-sink.so +usr/lib/*/pipewire-0.3/libpipewire-module-filter-chain.so +usr/lib/*/pipewire-0.3/libpipewire-module-link-factory.so +usr/lib/*/pipewire-0.3/libpipewire-module-loopback.so +usr/lib/*/pipewire-0.3/libpipewire-module-metadata.so +usr/lib/*/pipewire-0.3/libpipewire-module-pipe-tunnel.so +usr/lib/*/pipewire-0.3/libpipewire-module-portal.so +usr/lib/*/pipewire-0.3/libpipewire-module-profiler.so +usr/lib/*/pipewire-0.3/libpipewire-module-protocol-native.so +usr/lib/*/pipewire-0.3/libpipewire-module-protocol-pulse.so +usr/lib/*/pipewire-0.3/libpipewire-module-protocol-simple.so +usr/lib/*/pipewire-0.3/libpipewire-module-pulse-tunnel.so +usr/lib/*/pipewire-0.3/libpipewire-module-raop-discover.so +usr/lib/*/pipewire-0.3/libpipewire-module-raop-sink.so +usr/lib/*/pipewire-0.3/libpipewire-module-rt.so +usr/lib/*/pipewire-0.3/libpipewire-module-rtkit.so +usr/lib/*/pipewire-0.3/libpipewire-module-rtp-sink.so +usr/lib/*/pipewire-0.3/libpipewire-module-rtp-source.so +usr/lib/*/pipewire-0.3/libpipewire-module-session-manager.so +usr/lib/*/pipewire-0.3/libpipewire-module-spa-device-factory.so +usr/lib/*/pipewire-0.3/libpipewire-module-spa-device.so +usr/lib/*/pipewire-0.3/libpipewire-module-spa-node-factory.so +usr/lib/*/pipewire-0.3/libpipewire-module-spa-node.so +usr/lib/*/pipewire-0.3/libpipewire-module-zeroconf-discover.so diff --git a/debian/libspa-0.2-bluetooth.install b/debian/libspa-0.2-bluetooth.install new file mode 100644 index 0000000..be879a3 --- /dev/null +++ b/debian/libspa-0.2-bluetooth.install @@ -0,0 +1,2 @@ +usr/lib/*/spa-0.2/bluez5 +usr/share/spa-0.2/bluez5/bluez-hardware.conf diff --git a/debian/libspa-0.2-dev.install b/debian/libspa-0.2-dev.install new file mode 100644 index 0000000..6be1ec1 --- /dev/null +++ b/debian/libspa-0.2-dev.install @@ -0,0 +1,2 @@ +usr/include/spa-0.2 +usr/lib/*/pkgconfig/libspa* diff --git a/debian/libspa-0.2-jack.install b/debian/libspa-0.2-jack.install new file mode 100644 index 0000000..9ff6fba --- /dev/null +++ b/debian/libspa-0.2-jack.install @@ -0,0 +1 @@ +usr/lib/*/spa-0.2/jack/ diff --git a/debian/libspa-0.2-modules.install b/debian/libspa-0.2-modules.install new file mode 100644 index 0000000..a4063f0 --- /dev/null +++ b/debian/libspa-0.2-modules.install @@ -0,0 +1,12 @@ +usr/lib/*/spa-0.2/aec +usr/lib/*/spa-0.2/alsa +usr/lib/*/spa-0.2/audioconvert +usr/lib/*/spa-0.2/audiomixer +usr/lib/*/spa-0.2/audiotestsrc +usr/lib/*/spa-0.2/avb +usr/lib/*/spa-0.2/control +usr/lib/*/spa-0.2/support +usr/lib/*/spa-0.2/test +usr/lib/*/spa-0.2/v4l2 +usr/lib/*/spa-0.2/videoconvert +usr/lib/*/spa-0.2/videotestsrc diff --git a/debian/not-installed b/debian/not-installed new file mode 100644 index 0000000..e197cde --- /dev/null +++ b/debian/not-installed @@ -0,0 +1,14 @@ +usr/lib/systemd/user/filter-chain.service +usr/share/pipewire/filter-chain.conf +usr/share/pipewire/filter-chain/demonic.conf +usr/share/pipewire/filter-chain/duplicate-FL.conf +usr/share/pipewire/filter-chain/sink-convolver.conf +usr/share/pipewire/filter-chain/sink-dolby-surround.conf +usr/share/pipewire/filter-chain/sink-eq6.conf +usr/share/pipewire/filter-chain/sink-make-LFE.conf +usr/share/pipewire/filter-chain/sink-matrix-spatialiser.conf +usr/share/pipewire/filter-chain/sink-mix-FL-FR.conf +usr/share/pipewire/filter-chain/sink-virtual-surround-5.1-kemar.conf +usr/share/pipewire/filter-chain/sink-virtual-surround-7.1-hesuvi.conf +usr/share/pipewire/filter-chain/source-duplicate-FL.conf +usr/share/pipewire/filter-chain/source-rnnoise.conf diff --git a/debian/patches/7e2f6757fcc4eefd29cb47d8292714ac8014b9ef.patch b/debian/patches/7e2f6757fcc4eefd29cb47d8292714ac8014b9ef.patch new file mode 100644 index 0000000..95c751f --- /dev/null +++ b/debian/patches/7e2f6757fcc4eefd29cb47d8292714ac8014b9ef.patch @@ -0,0 +1,38 @@ +From 7e2f6757fcc4eefd29cb47d8292714ac8014b9ef Mon Sep 17 00:00:00 2001 +From: Wim Taymans <wtaymans@redhat.com> +Date: Tue, 3 Oct 2023 18:33:46 +0200 +Subject: [PATCH] impl-node: do malloc_trim() after destroying a node. + +Fixes #1840 +--- + src/pipewire/impl-node.c | 5 +++++ + 1 file changed, 5 insertions(+) + +--- a/src/pipewire/impl-node.c ++++ b/src/pipewire/impl-node.c +@@ -28,6 +28,7 @@ + #include <unistd.h> + #include <errno.h> + #include <time.h> ++#include <malloc.h> + + #include <spa/support/system.h> + #include <spa/pod/parser.h> +@@ -1873,6 +1874,7 @@ + struct pw_impl_node *follower; + struct pw_context *context = node->context; + bool active, had_driver; ++ int res; + + active = node->active; + node->active = false; +@@ -1945,6 +1947,9 @@ + + spa_system_close(context->data_system, node->source.fd); + free(impl); ++ ++ res = malloc_trim(0); ++ pw_log_debug("malloc_trim(): %d", res); + } + + SPA_EXPORT diff --git a/debian/patches/8680c74d1bd83b4969c9305171076b36f56d82fa.patch b/debian/patches/8680c74d1bd83b4969c9305171076b36f56d82fa.patch new file mode 100644 index 0000000..f7039c7 --- /dev/null +++ b/debian/patches/8680c74d1bd83b4969c9305171076b36f56d82fa.patch @@ -0,0 +1,42 @@ +From 8680c74d1bd83b4969c9305171076b36f56d82fa Mon Sep 17 00:00:00 2001 +From: Wim Taymans <wtaymans@redhat.com> +Date: Wed, 4 Oct 2023 10:59:26 +0200 +Subject: [PATCH] check if malloc_trim() is available + +--- + meson.build | 1 + + src/pipewire/impl-node.c | 5 +++-- + 2 files changed, 4 insertions(+), 2 deletions(-) + +--- a/meson.build ++++ b/meson.build +@@ -401,6 +401,7 @@ + ['reallocarray', '#include <stdlib.h>', ['-D_GNU_SOURCE'], []], + ['sigabbrev_np', '#include <string.h>', ['-D_GNU_SOURCE'], []], + ['XSetIOErrorExitHandler', '#include <X11/Xlib.h>', [], [x11_dep]], ++ ['malloc_trim', '#include <malloc.h>', [], []], + ] + + foreach f : check_functions +--- a/src/pipewire/impl-node.c ++++ b/src/pipewire/impl-node.c +@@ -1874,7 +1874,6 @@ + struct pw_impl_node *follower; + struct pw_context *context = node->context; + bool active, had_driver; +- int res; + + active = node->active; + node->active = false; +@@ -1948,8 +1947,10 @@ + spa_system_close(context->data_system, node->source.fd); + free(impl); + +- res = malloc_trim(0); ++#ifdef HAVE_MALLOC_TRIM ++ int res = malloc_trim(0); + pw_log_debug("malloc_trim(): %d", res); ++#endif + } + + SPA_EXPORT diff --git a/debian/patches/Don-t-automatically-start-pipewire-for-root-logins.patch b/debian/patches/Don-t-automatically-start-pipewire-for-root-logins.patch new file mode 100644 index 0000000..833c971 --- /dev/null +++ b/debian/patches/Don-t-automatically-start-pipewire-for-root-logins.patch @@ -0,0 +1,30 @@ +From: Simon McVittie <smcv@debian.org> +Date: Sun, 17 Jan 2021 11:40:01 +0000 +Subject: Don't automatically start pipewire for root logins +Forwarded: not-needed + +Closes: #979791 +--- + src/daemon/systemd/user/pipewire.service.in | 1 + + src/daemon/systemd/user/pipewire.socket | 1 + + 2 files changed, 2 insertions(+) + +--- a/src/daemon/systemd/user/pipewire.service.in ++++ b/src/daemon/systemd/user/pipewire.service.in +@@ -14,6 +14,7 @@ + # After=pipewire.socket is not needed, as it is already implicit in the + # socket-service relationship, see systemd.socket(5). + Requires=pipewire.socket ++ConditionUser=!root + + [Service] + LockPersonality=yes +--- a/src/daemon/systemd/user/pipewire.socket ++++ b/src/daemon/systemd/user/pipewire.socket +@@ -1,5 +1,6 @@ + [Unit] + Description=PipeWire Multimedia System Socket ++ConditionUser=!root + + [Socket] + Priority=6 diff --git a/debian/patches/Don-t-build_same_binary_twice.patch b/debian/patches/Don-t-build_same_binary_twice.patch new file mode 100644 index 0000000..1854dd9 --- /dev/null +++ b/debian/patches/Don-t-build_same_binary_twice.patch @@ -0,0 +1,36 @@ +From: Dylan Aïssi <dylan.aissi@collabora.com> +Date: Thu, 4 Nov 2021 16:01:36 +0100 +Subject: [PATCH] meson: create a symlink for pipewire-pulse instead of + building binary twice + +Because meson does not have native support for symlinks. +See https://github.com/mesonbuild/meson/issues/1602 + +Inspired by xserver: +https://gitlab.freedesktop.org/xorg/xserver/-/commit/a3931ec6f43857aeed7feac5d223d7db6728145e + +Signed-off-by: Dylan Aïssi <dylan.aissi@collabora.com> +--- + src/daemon/meson.build | 12 +++++------- + 1 file changed, 5 insertions(+), 7 deletions(-) + +--- a/src/daemon/meson.build ++++ b/src/daemon/meson.build +@@ -93,12 +93,11 @@ + dependencies : [ spa_dep, pipewire_dep, ], + ) + +-executable('pipewire-pulse', +- pipewire_daemon_sources, +- install: true, +- c_args : pipewire_c_args, +- include_directories : [ configinc ], +- dependencies : [ spa_dep, pipewire_dep, ], ++meson.add_install_script( ++ 'sh', '-c', ++ 'ln -fs pipewire @0@@1@'.format( ++ '${DESTDIR}', ++ join_paths(get_option('prefix'), get_option('bindir'), 'pipewire-pulse')) + ) + + executable('pipewire-avb', diff --git a/debian/patches/Fix_services.patch b/debian/patches/Fix_services.patch new file mode 100644 index 0000000..fe19732 --- /dev/null +++ b/debian/patches/Fix_services.patch @@ -0,0 +1,23 @@ +Description: Update Wants and After fields with real services (NOT alias) + Due to a systemd bug in the way it manages alias, they have been removed in + wireplumber and pipewire-media-session services. Reflecting this change in + the pipewire-pulse service to be sure it is started AFTER a session manager. +Bug: https://github.com/systemd/systemd/issues/23694 +Bug-Debian: https://bugs.debian.org/997818 + https://bugs.debian.org/1019944 +Author: Dylan Aïssi <daissi@debian.org> +Forwarded: not-needed + +--- a/src/daemon/systemd/user/pipewire-pulse.service.in ++++ b/src/daemon/systemd/user/pipewire-pulse.service.in +@@ -15,8 +15,8 @@ + # socket-service relationship, see systemd.socket(5). + Requires=pipewire-pulse.socket + ConditionUser=!root +-Wants=pipewire.service pipewire-session-manager.service +-After=pipewire.service pipewire-session-manager.service ++Wants=pipewire.service wireplumber.service pipewire-media-session.service ++After=pipewire.service wireplumber.service pipewire-media-session.service + Conflicts=pulseaudio.service + + [Service] diff --git a/debian/patches/fba7083f8ceb210c7c20aceafeb5c9a8767cf705.patch b/debian/patches/fba7083f8ceb210c7c20aceafeb5c9a8767cf705.patch new file mode 100644 index 0000000..1de26c1 --- /dev/null +++ b/debian/patches/fba7083f8ceb210c7c20aceafeb5c9a8767cf705.patch @@ -0,0 +1,25 @@ +From fba7083f8ceb210c7c20aceafeb5c9a8767cf705 Mon Sep 17 00:00:00 2001 +From: Wim Taymans <wtaymans@redhat.com> +Date: Thu, 26 Jan 2023 11:57:45 +0100 +Subject: [PATCH] modules: also install module-combine-stream + +--- + src/modules/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/modules/meson.build b/src/modules/meson.build +index 89e4233d9..1bfb03b4b 100644 +--- a/src/modules/meson.build ++++ b/src/modules/meson.build +@@ -139,7 +139,7 @@ pipewire_module_echo_cancel_sources = [ + pipewire_module_combine_stream = shared_library('pipewire-module-combine-stream', + [ 'module-combine-stream.c' ], + include_directories : [configinc], +- install : false, ++ install : true, + install_dir : modules_install_dir, + install_rpath: modules_install_dir, + dependencies : [spa_dep, dl_lib, pipewire_dep], +-- +GitLab + diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..ea44e8f --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,7 @@ +Don-t-automatically-start-pipewire-for-root-logins.patch +Don-t-build_same_binary_twice.patch +Fix_services.patch +# Recommended patch for 0.3.65 +fba7083f8ceb210c7c20aceafeb5c9a8767cf705.patch +7e2f6757fcc4eefd29cb47d8292714ac8014b9ef.patch +8680c74d1bd83b4969c9305171076b36f56d82fa.patch diff --git a/debian/pipewire-alsa.install b/debian/pipewire-alsa.install new file mode 100644 index 0000000..e01b270 --- /dev/null +++ b/debian/pipewire-alsa.install @@ -0,0 +1,4 @@ +usr/lib/*/alsa-lib/libasound_module_ctl_pipewire.so +usr/lib/*/alsa-lib/libasound_module_pcm_pipewire.so +usr/share/alsa/alsa.conf.d/50-pipewire.conf +usr/share/alsa/alsa.conf.d/99-pipewire-default.conf diff --git a/debian/pipewire-alsa.links b/debian/pipewire-alsa.links new file mode 100644 index 0000000..78c893c --- /dev/null +++ b/debian/pipewire-alsa.links @@ -0,0 +1,2 @@ +usr/share/alsa/alsa.conf.d/50-pipewire.conf etc/alsa/conf.d/50-pipewire.conf +usr/share/alsa/alsa.conf.d/99-pipewire-default.conf etc/alsa/conf.d/99-pipewire-default.conf diff --git a/debian/pipewire-bin.install b/debian/pipewire-bin.install new file mode 100644 index 0000000..0b7a862 --- /dev/null +++ b/debian/pipewire-bin.install @@ -0,0 +1,40 @@ +usr/share/pipewire/client-rt.conf +usr/share/pipewire/client.conf +usr/share/pipewire/jack.conf +usr/share/pipewire/pipewire.conf +usr/share/pipewire/pipewire-avb.conf +usr/share/pipewire/minimal.conf +lib/udev/rules.d +usr/bin/pipewire +usr/bin/pipewire-avb +usr/bin/pw-cat +usr/bin/pw-cli +usr/bin/pw-dot +usr/bin/pw-dsdplay +usr/bin/pw-dump +usr/bin/pw-link +usr/bin/pw-loopback +usr/bin/pw-metadata +usr/bin/pw-mididump +usr/bin/pw-midiplay +usr/bin/pw-midirecord +usr/bin/pw-mon +usr/bin/pw-play +usr/bin/pw-profiler +usr/bin/pw-record +usr/bin/pw-reserve +usr/bin/pw-top +usr/bin/spa-* +usr/share/alsa-card-profile +usr/share/man/man1/pipewire.* +usr/share/man/man1/pw-cat.* +usr/share/man/man1/pw-cli.* +usr/share/man/man1/pw-dot.* +usr/share/man/man1/pw-link.* +usr/share/man/man1/pw-metadata.* +usr/share/man/man1/pw-mididump.* +usr/share/man/man1/pw-mon.* +usr/share/man/man1/pw-profiler.* +usr/share/man/man1/pw-top.* +usr/share/man/man5 +debian/rlimits/95-pipewire.conf /etc/security/limits.d/ diff --git a/debian/pipewire-bin.links b/debian/pipewire-bin.links new file mode 100644 index 0000000..8ea3bbc --- /dev/null +++ b/debian/pipewire-bin.links @@ -0,0 +1,4 @@ +/usr/share/man/man1/pw-cat.1.gz /usr/share/man/man1/pw-midiplay.1.gz +/usr/share/man/man1/pw-cat.1.gz /usr/share/man/man1/pw-midirecord.1.gz +/usr/share/man/man1/pw-cat.1.gz /usr/share/man/man1/pw-play.1.gz +/usr/share/man/man1/pw-cat.1.gz /usr/share/man/man1/pw-record.1.gz diff --git a/debian/pipewire-bin.maintscript b/debian/pipewire-bin.maintscript new file mode 100644 index 0000000..70f0ff0 --- /dev/null +++ b/debian/pipewire-bin.maintscript @@ -0,0 +1,13 @@ +rm_conffile /etc/pipewire/media-session.d/with-jack 0.3.19-3~ pipewire-bin +rm_conffile /etc/pipewire/media-session.d/with-pulseaudio 0.3.19-3~ pipewire-bin +rm_conffile /etc/pipewire/client-rt.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/client.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/jack.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/pipewire.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/pipewire-pulse.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/media-session.d/alsa-monitor.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/media-session.d/bluez-monitor.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/media-session.d/media-session.conf 0.3.28-1~ pipewire-bin +rm_conffile /etc/pipewire/media-session.d/v4l2-monitor.conf 0.3.28-1~ pipewire-bin +rm_conffile /usr/share/pipewire/media-session.d/bluez-hardware.conf 0.3.37-1~ pipewire-bin +rm_conffile /etc/xdg/autostart/pipewire.desktop 0.3.50-2~ pipewire-bin diff --git a/debian/pipewire-doc.install b/debian/pipewire-doc.install new file mode 100644 index 0000000..7276ecd --- /dev/null +++ b/debian/pipewire-doc.install @@ -0,0 +1 @@ +usr/share/doc diff --git a/debian/pipewire-jack.install b/debian/pipewire-jack.install new file mode 100644 index 0000000..e5ef3a5 --- /dev/null +++ b/debian/pipewire-jack.install @@ -0,0 +1,5 @@ +usr/bin/pw-jack +usr/lib/*/pipewire-0.3/jack +usr/share/man/man1/pw-jack.* +debian/ld.so.conf.d/* usr/share/doc/pipewire/examples/ld.so.conf.d + diff --git a/debian/pipewire-jack.shlibs.local b/debian/pipewire-jack.shlibs.local new file mode 100644 index 0000000..1bba4c3 --- /dev/null +++ b/debian/pipewire-jack.shlibs.local @@ -0,0 +1,4 @@ +libjack 0 pipewire-jack (= ${binary:Version}) +libjacknet 0 pipewire-jack (= ${binary:Version}) +libjackserver 0 pipewire-jack (= ${binary:Version}) +libpipewire-0.3 0 libpipewire-0.3-0 (= ${binary:Version}) diff --git a/debian/pipewire-libcamera.install b/debian/pipewire-libcamera.install new file mode 100644 index 0000000..9033988 --- /dev/null +++ b/debian/pipewire-libcamera.install @@ -0,0 +1 @@ +usr/lib/*/spa-0.2/libcamera/libspa-libcamera.so diff --git a/debian/pipewire-pulse.install b/debian/pipewire-pulse.install new file mode 100644 index 0000000..0b12dd7 --- /dev/null +++ b/debian/pipewire-pulse.install @@ -0,0 +1,5 @@ +usr/share/pipewire/pipewire-pulse.conf +usr/bin/pipewire-pulse +usr/lib/systemd/user/pipewire-pulse.service +usr/lib/systemd/user/pipewire-pulse.socket +usr/share/man/man1/pipewire-pulse.* diff --git a/debian/pipewire-tests.docs b/debian/pipewire-tests.docs new file mode 100644 index 0000000..b837bb0 --- /dev/null +++ b/debian/pipewire-tests.docs @@ -0,0 +1 @@ +debian/tests/manual-tests.md diff --git a/debian/pipewire-tests.install b/debian/pipewire-tests.install new file mode 100644 index 0000000..e2a2951 --- /dev/null +++ b/debian/pipewire-tests.install @@ -0,0 +1,2 @@ +usr/libexec/installed-tests +usr/share/installed-tests diff --git a/debian/pipewire-tests.lintian-overrides b/debian/pipewire-tests.lintian-overrides new file mode 100644 index 0000000..63caffc --- /dev/null +++ b/debian/pipewire-tests.lintian-overrides @@ -0,0 +1 @@ +pipewire-tests: custom-library-search-path RUNPATH /usr/lib/*/spa-0.2/* [usr/libexec/*] diff --git a/debian/pipewire-v4l2.install b/debian/pipewire-v4l2.install new file mode 100644 index 0000000..08dbd90 --- /dev/null +++ b/debian/pipewire-v4l2.install @@ -0,0 +1,2 @@ +usr/bin/pw-v4l2 +usr/lib/*/pipewire-0.3/v4l2/libpw-v4l2.so diff --git a/debian/pipewire.README.Debian b/debian/pipewire.README.Debian new file mode 100644 index 0000000..fe908f2 --- /dev/null +++ b/debian/pipewire.README.Debian @@ -0,0 +1,105 @@ +Using pipewire for audio +======================== + +pipewire in Debian was initially used for video (screen sharing and remote +desktop, particularly in GNOME and KDE Wayland sessions). However, it has +matured enough to also be used for audio. + + +Using pipewire as a substitute for PulseAudio +--------------------------------------------- + +Install the pipewire-pulse package and log back in. +And potentially install the new recommended session manager +wireplumber instead of the deprecated pipewire-media-session. + +PipeWire project recommends [1] to remove the pulseaudio package to prevent +conflicts in some cases [2] even if both pulseaudio and pipewire-pulse +services are not running at the same time. +pipewire-pulse doesn't conflict with pulseaudio at the package level to allow +users to switch from one to the other just by disabling/enabling services. + +[1] https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/FAQ#should-i-uninstall-everything-pulseaudio +[2] https://bugs.debian.org/1013276 + + +Using pipewire with Bluetooth +--------------------------------------------- + +Install the libspa-0.2-bluetooth package to add Bluetooth support to pipewire. + +Please note that AAC codec support is currently disabled due to license issue. +See https://bugs.debian.org/981285 + +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. + + +Using pipewire as the default ALSA output device +------------------------------------------------ + +Install the pipewire-alsa package. + +ALSA clients will output via pipewire instead of PulseAudio or directly to +ALSA. + +pipewire-alsa conflicts with pulseaudio because both try to take control of +all ALSA devices and redirect all audio streams to them. But, because of their +respective configs files name: +- PipeWire: /etc/alsa/conf.d/99-pipewire-default.conf +- PulseAudio: /etc/alsa/conf.d/99-pulse.conf +which make PulseAudio ordered after PipeWire. PulseAudio will take the +final control of ALSA clients even when pipewire-alsa is installed. Thus, +to allow ALSA clients redirecting output to pipewire, pulseaudio package +needs to be removed. + +To check where streams are redirected, run the following command: +$ aplay -L | grep -A 1 default + + +Using pipewire as a substitute for JACK +--------------------------------------- + +Install the pipewire-jack package. + +JACK clients can be configured to output via pipewire instead of JACK. + +To enable this: + +* either run JACK clients using the pw-jack(1) wrapper, or copy + /usr/share/doc/pipewire/examples/ld.so.conf.d/pipewire-jack-*.conf + into /etc/ld.so.conf.d/ and run ldconfig as root. + + +Setting pipewire real-time priority limits +--------------------------------------- + +!!! WARNING !!! +Your system has real-time priority limits for a good reason. This allows it +to remain stable in case a process goes crazy. RTKit allows limited use of +real-time priority without the risk of locking up the system if a real-time +task starts spinning. +Some upstream recommendations for real-time are to increase these limits to +bypass RTKit or to disable most of its safeguards. By following them, your +system could be blocked if a process goes wrong. +These performance tweaks are not needed for a normal use of pipewire, instead +modifying pipewire configuration is enough. +!!! WARNING !!! + +The "pipewire" package creates a system group called "pipewire". +The upstream recommended priority limits for this group are defined in: + +* /etc/security/limits.d/95-pipewire.conf + +To enable these limits for your user, add it to the "pipewire" group. + +* sudo adduser yourusername pipewire diff --git a/debian/pipewire.docs b/debian/pipewire.docs new file mode 100644 index 0000000..edc0071 --- /dev/null +++ b/debian/pipewire.docs @@ -0,0 +1 @@ +NEWS diff --git a/debian/pipewire.install b/debian/pipewire.install new file mode 100644 index 0000000..e92b05c --- /dev/null +++ b/debian/pipewire.install @@ -0,0 +1,2 @@ +usr/lib/systemd/user/pipewire.service +usr/lib/systemd/user/pipewire.socket diff --git a/debian/pipewire.postinst b/debian/pipewire.postinst new file mode 100644 index 0000000..0c70670 --- /dev/null +++ b/debian/pipewire.postinst @@ -0,0 +1,11 @@ +#!/bin/sh +set -e + +if [ "$1" = "configure" ] ; then + # Create the pipewire system group for setting real-time priority limits + if ! getent group pipewire > /dev/null; then + addgroup --quiet --system pipewire + fi +fi + +#DEBHELPER# diff --git a/debian/pipewire.postrm b/debian/pipewire.postrm new file mode 100644 index 0000000..ccde1e2 --- /dev/null +++ b/debian/pipewire.postrm @@ -0,0 +1,8 @@ +#!/bin/sh +set -e + +if [ "$1" = "purge" ] ; then + delgroup --quiet --system pipewire > /dev/null || true +fi + +#DEBHELPER# diff --git a/debian/rlimits/95-pipewire.conf b/debian/rlimits/95-pipewire.conf new file mode 100644 index 0000000..47f9ab4 --- /dev/null +++ b/debian/rlimits/95-pipewire.conf @@ -0,0 +1,4 @@ +# Default limits for users of pipewire +@pipewire - rtprio 95 +@pipewire - nice -19 +@pipewire - memlock 4194304 diff --git a/debian/rlimits/README b/debian/rlimits/README new file mode 100644 index 0000000..58d4ad2 --- /dev/null +++ b/debian/rlimits/README @@ -0,0 +1,8 @@ +Setting pipewire real-time priority limits +--------------------------------------- + +The debian/rlimits/95-pipewire.conf defines the real-time priority limits +for the system group "pipewire" as recommended by upstream. +This file is installed in /etc/security/limits.d/. + +See https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Performance-tuning#rlimits diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..ce46971 --- /dev/null +++ b/debian/rules @@ -0,0 +1,97 @@ +#!/usr/bin/make -f + +export DEB_BUILD_MAINT_OPTIONS = hardening=+all +export DEB_LDFLAGS_MAINT_APPEND = -Wl,-z,defs + +%: + dh $@ + +ifneq ($(filter nodoc,$(DEB_BUILD_PROFILES)),) +DOCS=disabled +else +DOCS=enabled +endif + +ifneq (,$(filter s390x hppa m68k powerpc ppc64 sparc64,$(DEB_HOST_ARCH))) +BLUEZ5_CODEC_LDAC=disabled +else +BLUEZ5_CODEC_LDAC=enabled +endif + +ifneq (,$(filter m68k,$(DEB_HOST_ARCH))) +LIBCAMERA=disabled +else +LIBCAMERA=enabled +endif + +# lilv and some of its dependencies are in universe +ifeq (yes,$(shell dpkg-vendor --derives-from Ubuntu && echo yes)) +LV2=disabled +else +LV2=enabled +endif + +override_dh_auto_configure: + dh_auto_configure -- \ + -Daudiotestsrc=enabled \ + -Dauto_features=enabled \ + -Davahi=enabled \ + -Dbluez5-backend-native-mm=enabled \ + -Dbluez5-codec-aac=disabled \ + -Dbluez5-codec-aptx=enabled \ + -Dbluez5-codec-lc3=enabled \ + -Dbluez5-codec-lc3plus=disabled \ + -Dbluez5-codec-ldac=$(BLUEZ5_CODEC_LDAC) \ + -Dbluez5-codec-opus=enabled \ + -Dlibcamera=$(LIBCAMERA) \ + -Ddocs=$(DOCS) \ + -Dffmpeg=disabled \ + -Dinstalled_tests=enabled \ + -Dlv2=$(LV2) \ + -Dman=enabled \ + -Droc=disabled \ + -Dsession-managers= \ + -Dtest=enabled \ + -Dvideotestsrc=enabled \ + -Dvulkan=disabled \ + $(NULL) + install -d debian/ld.so.conf.d + echo "/usr/lib/$(DEB_HOST_MULTIARCH)/pipewire-0.3/jack/" > "debian/ld.so.conf.d/pipewire-jack-$(DEB_HOST_MULTIARCH).conf" + +test_timeout_multiplier = 1 + +ifneq ($(filter arm hppa ia64 m68k riscv64 sh4 sparc%,$(DEB_HOST_ARCH_CPU)),) +test_timeout_multiplier = 5 +endif + +ifneq ($(filter mips%,$(DEB_HOST_ARCH_CPU)),) +test_timeout_multiplier = 10 +endif + +override_dh_auto_test: + dh_auto_test \ + -- \ + --timeout-multiplier $(test_timeout_multiplier) \ + $(NULL) + +override_dh_missing: + dh_missing --fail-missing + +override_dh_makeshlibs: + dh_makeshlibs \ + --exclude=/usr/lib/$(DEB_HOST_MULTIARCH)/gstreamer-1.0 \ + --exclude=/usr/lib/$(DEB_HOST_MULTIARCH)/pipewire-0.3 \ + --exclude=/usr/lib/$(DEB_HOST_MULTIARCH)/spa-0.2 \ + -- -c4 + +override_dh_shlibdeps-arch: + dh_shlibdeps \ + -ppipewire-jack \ + -l/usr/lib/$(DEB_HOST_MULTIARCH)/pipewire-0.3 \ + -- \ + -Ldebian/pipewire-jack.shlibs.local \ + $(NULL) + dh_shlibdeps \ + --remaining-packages \ + -l/usr/lib/$(DEB_HOST_MULTIARCH)/pipewire-0.3 \ + $(NULL) diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml new file mode 100644 index 0000000..1d8d33b --- /dev/null +++ b/debian/salsa-ci.yml @@ -0,0 +1,7 @@ +--- +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 diff --git a/debian/shlibs.local b/debian/shlibs.local new file mode 100644 index 0000000..3989f24 --- /dev/null +++ b/debian/shlibs.local @@ -0,0 +1 @@ +libpipewire-0.3 0 libpipewire-0.3-0 (= ${binary:Version}) 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/control b/debian/tests/control new file mode 100644 index 0000000..b92c7fc --- /dev/null +++ b/debian/tests/control @@ -0,0 +1,10 @@ +Tests: gnome-desktop-testing +Depends: gnome-desktop-testing, pipewire-tests + +Tests: gstreamer1.0-pipewire +Restrictions: allow-stderr, superficial +Depends: gstreamer1.0-pipewire, gstreamer1.0-tools + +Tests: libpipewire-0.3-dev +Restrictions: allow-stderr, superficial +Depends: build-essential, libpipewire-0.3-dev, pkg-config diff --git a/debian/tests/gnome-desktop-testing b/debian/tests/gnome-desktop-testing new file mode 100755 index 0000000..c8318ed --- /dev/null +++ b/debian/tests/gnome-desktop-testing @@ -0,0 +1,16 @@ +#!/bin/sh + +set -eu +exec 2>&1 + +exec gnome-desktop-testing-runner $( + gnome-desktop-testing-runner -l pipewire-0.3 | while read -r t d; do + case "$t" in + (pipewire-0.3/pw-test-pipewire-alsa-stress*) + ;; + (*) + echo "$t" + ;; + esac + done +) diff --git a/debian/tests/gstreamer1.0-pipewire b/debian/tests/gstreamer1.0-pipewire new file mode 100755 index 0000000..c0b7ca2 --- /dev/null +++ b/debian/tests/gstreamer1.0-pipewire @@ -0,0 +1,12 @@ +#!/bin/sh +# Copyright 2020 Collabora Ltd. +# SPDX-License-Identifier: MIT + +set -eux + +export GST_INSPECT_NO_COLORS=1 +export PAGER=cat + +gst-inspect-1.0 pipewire +gst-inspect-1.0 pipewiresink +gst-inspect-1.0 pipewiresrc diff --git a/debian/tests/libpipewire-0.3-dev b/debian/tests/libpipewire-0.3-dev new file mode 100755 index 0000000..c5905ae --- /dev/null +++ b/debian/tests/libpipewire-0.3-dev @@ -0,0 +1,41 @@ +#!/bin/sh +# Copyright 2020 Collabora Ltd. +# SPDX-License-Identifier: MIT + +set -eux + +if [ -n "${AUTOPKGTEST_ARTIFACTS-}" ]; then + WORKDIR="$AUTOPKGTEST_ARTIFACTS" +else + WORKDIR="$(mktemp -d)" + trap 'cd /; rm -fr "$WORKDIR"' 0 INT QUIT ABRT PIPE TERM +fi + +if [ -n "${DEB_HOST_GNU_TYPE:-}" ]; then + CROSS_COMPILE="$DEB_HOST_GNU_TYPE-" +else + CROSS_COMPILE= +fi + +cd "$WORKDIR" + +cat > "$WORKDIR/trivial.c" <<EOF +#include <pipewire/pipewire.h> + +#include <stdio.h> + +int main(int argc, char *argv[]) +{ + pw_init(&argc, &argv); + printf("Compiled with libpipewire %s\n" + "Linked with libpipewire %s\n", + pw_get_headers_version(), + pw_get_library_version()); + return 0; +} +EOF + +# Deliberately word-splitting pkg-config's output: +# shellcheck disable=SC2046 +"${CROSS_COMPILE}gcc" -otrivial trivial.c -lm $("${CROSS_COMPILE}pkg-config" --cflags --libs libpipewire-0.3) +./trivial diff --git a/debian/tests/manual-tests.md b/debian/tests/manual-tests.md new file mode 100644 index 0000000..6910d3b --- /dev/null +++ b/debian/tests/manual-tests.md @@ -0,0 +1,147 @@ +Manual tests for PipeWire +========================= + +Introspection (pipewire) +------------------------ + +Install `pipewire`. + +Run `pw-cli dump`. + +Video streams +------------- + +Install `pipewire` and `pipewire-tests`. + +Run `/usr/libexec/installed-tests/pipewire-0.3/examples/video-src` +(or `video-src-alloc`). It will print a node ID, for example 42. + +In another terminal, run +`/usr/libexec/installed-tests/pipewire-0.3/examples/video-play 42` +or `/usr/libexec/installed-tests/pipewire-0.3/examples/export-sink 42`, +replacing 42 by the node ID you saw. You should get a window with an +animation. + +Similarly, if you uncomment the lines + +``` +add-spa-lib videotestsrc videotestsrc/libspa-videotestsrc +create-object spa-node-factory factory.name=videotestsrc node.name=videotestsrc Spa:Pod:Object:Param:Props:patternType=1 +``` + +in `/etc/pipewire/pipewire.conf`, then you should see a node in the output +of `pw-cli ls Node` with `node.name = "videotestsrc"`. Pass its node ID +to `video-play` to see a different animation. + +V4L2 cameras +------------ + +If you have a camera, run +`/usr/libexec/installed-tests/pipewire-0.3/examples/local-v4l2` or +`/usr/libexec/installed-tests/pipewire-0.3/examples/spa/local-v4l2`. +You should get a camera stream displayed in a window (but this might +fail if it cannot negotiate a suitable capture resolution). + +Audio sink +---------- + +Use `pw-play` to play a WAV file. + +Audio test source +----------------- + +If you uncomment the lines + +``` +add-spa-lib audiotestsrc audiotestsrc/libspa-audiotestsrc +create-object adapter factory.name=audiotestsrc node.name=my-test +``` + +in `/etc/pipewire/pipewire.conf`, then you should see a node in the output +of `pw-cli ls Node` with `node.name = "my-test"`. You can record from it +with `pw-record --target ${node id here} test.wav` (press Ctrl+C to +stop recording). + +ALSA client plugin (pipewire-audio-client-libraries) +---------------------------------------------------- + +Install `pipewire-audio-client-libraries` and `alsa-utils`. +Make sure PulseAudio is not currently playing audio and is configured +to release the audio device when not in use. + +`aplay -L` should list `pipewire`. + +`aplay -D pipewire /usr/share/sounds/alsa/Front_Center.wav` should +play a sound. + +JACK client library replacement (pipewire-audio-client-libraries) +----------------------------------------------------------------- + +Install `pipewire`, `pipewire-audio-client-libraries`, `alsa-utils` and +`sndfile-tools`. Do not have a real JACK server running. +Make sure PulseAudio is not currently playing audio and is configured +to release the audio device when not in use. + +`aplay -D jack /usr/share/sounds/alsa/Front_Center.wav` and +`sndfile-jackplay /usr/share/sounds/alsa/Front_Center.wav` should fail +with: + +``` +jack server is not running or cannot be started +``` + +`pw-jack aplay -D jack /usr/share/sounds/alsa/Front_Center.wav` +should succeed. + +* TODO: Currently it prints + + aplay: set_params:1343: Sample format non available + Available formats: + - FLOAT_LE + + and segfaults. + +`pw-jack sndfile-jackplay /usr/share/sounds/alsa/Front_Center.wav` +should succeed. + +* TODO: Currently it prints + `Cannot connect output port 0 (alsa_pcm:playback_1)` and plays + silence for the length of the test file. + +PulseAudio client library replacement (pipewire-audio-client-libraries) +----------------------------------------------------------------------- + +Install `pipewire`, `pipewire-audio-client-libraries`, `alsa-utils` and +`pulseaudio-utils`. Make sure PulseAudio is not currently playing audio +and is configured to release the audio device when not in use. + +Setup: let your pulseaudio service become idle, then +`pkill -STOP pulseaudio`. + +`paplay /usr/share/sounds/alsa/Front_Center.wav` should hang (because +PulseAudio has been stopped). + +`pw-pulse paplay /usr/share/sounds/alsa/Front_Center.wav` should play +the audio. + +Teardown: `pkill -CONT pulseaudio` to return it to normal. + +GStreamer elements (gstreamer1.0-pipewire) +------------------------------------------ + +Install `gstreamer1.0-tools` and `gstreamer1.0-pipewire`. +Make sure PulseAudio is not currently playing audio and is configured +to release the audio device when not in use. + +Run: `gst-inspect-1.0 pipewire`. It should list `pipewiresrc`, +`pipewiresink` and `pipewiredeviceprovider`. + +Run: `gst-inspect-1.0 pipewiresrc`. It should list details. + +Run: `gst-inspect-1.0 pipewiresink`. It should list details. + +Run: `gst-launch-1.0 audiotestsrc '!' pipewiresink`. It should beep +until you press Ctrl+C. + +Run: `gst-launch-1.0 pipewiresrc '!' videoconvert '!' autovideosink`. +You should get a webcam image (if you have a webcam). diff --git a/debian/upstream/metadata b/debian/upstream/metadata new file mode 100644 index 0000000..8044af0 --- /dev/null +++ b/debian/upstream/metadata @@ -0,0 +1,4 @@ +Bug-Database: https://gitlab.freedesktop.org/pipewire/pipewire/issues +Bug-Submit: https://gitlab.freedesktop.org/pipewire/pipewire/issues/new +Repository: https://gitlab.freedesktop.org/pipewire/pipewire.git +Repository-Browse: https://gitlab.freedesktop.org/pipewire/pipewire diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..0445cfd --- /dev/null +++ b/debian/watch @@ -0,0 +1,3 @@ +version=4 +https://gitlab.freedesktop.org/pipewire/pipewire/tags?sort=updated_desc \ + archive/@ANY_VERSION@/pipewire-\d\S*@ARCHIVE_EXT@ |