port to pika os 4

This commit is contained in:
Ward from fusion-voyager-3 2024-07-25 20:20:18 +03:00
parent e6fa2fdef1
commit cf01112e68
60 changed files with 3577 additions and 88 deletions

20
debian/9999-custom.conf.README vendored Normal file
View File

@ -0,0 +1,20 @@
How to override 9999-custom.conf
================================
This file 9999-custom.conf is installed by pipewire-bin. In order to modify
this file, a user has to divert it, otherwise user's changes will be overwritten
during the next update of pipewire-bin.
# To add the diversion
sudo dpkg-divert \
--divert /usr/share/alsa-card-profile/mixer/profile-sets/9999-custom.conf.BAK \
--rename /usr/share/alsa-card-profile/mixer/profile-sets/9999-custom.conf
This tells to dpkg not to install 9999-custom.conf but 9999-custom.conf.BAK,
allowing the user to customize its own 9999-custom.conf.
# To remove the diversion
sudo dpkg-divert \
--rename --remove /usr/share/alsa-card-profile/mixer/profile-sets/9999-custom.conf
Please refer to the dpkg-divert documentation for more information.

1537
debian/changelog vendored

File diff suppressed because it is too large Load Diff

502
debian/control vendored
View File

@ -1,19 +1,489 @@
Source: upstream-name
Section: admin
Source: pipewire
Section: libs
Priority: optional
Maintainer: name <email>
Standards-Version: 4.6.1
Build-Depends: debhelper-compat (= 13)
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: dpkg-dev (>= 1.22.5), debhelper-compat (= 13),
doxygen <!nodoc>,
graphviz <!nodoc>,
libapparmor-dev [linux-any],
libasound2-dev (>= 1.2.5),
### PikaOS Changes
libcap-dev,
libroc-dev [!i386 !s390x !hppa !m68k !powerpc !ppc64 !sparc64],
libroc [!i386 !s390x !hppa !m68k !powerpc !ppc64 !sparc64],
libspeexdsp-dev,
libspeexdsp1,
libuv1-dev,
gdb,
intltool-debian,
intltool,
libfdk-aac-dev [!i386 !s390x !hppa !m68k !powerpc !ppc64 !sparc64],
libwebrtc-audio-processing1,
libvulkan-dev,
### End of comment
libavahi-client-dev,
libbluetooth-dev [linux-any],
libcamera-dev (>= 0.2.0) [!m68k !hurd-any],
libdbus-1-dev,
libffado-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,
libmysofa-dev,
libncurses-dev,
libopus-dev,
libpulse-dev,
libreadline-dev,
libroc-dev (>= 0.3.0+dfsg-3),
libsbc-dev,
libsdl2-dev <!noinsttest>,
libsnapd-glib-dev [amd64 arm64 armhf i386 powerpc ppc64el riscv64 s390x],
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.61.1),
modemmanager-dev,
pkgconf,
python3-docutils,
systemd-dev
Standards-Version: 4.7.0
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: pkgname1
Architecture: linux-any
# Delete any of these lines if un-used
Depends: ${misc:Depends}, depends
Recommends: high priority optdepends
Conflicts: conflicts
Suggests: low priority optdepends
Breaks: also conflicts!?
Provides: provides
#
Description: pkgdesc
Package: libpipewire-0.3-0t64
Provides: ${t64:Provides}
Replaces: libpipewire-0.3-0
Breaks: libpipewire-0.3-0 (<< ${source:Version})
Architecture: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: any
Multi-Arch: same
Depends: libpipewire-0.3-0t64 (= ${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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains the development files.
Package: libpipewire-0.3-modules
Architecture: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: any
Multi-Arch: same
Depends: ${misc:Depends},
${shlibs:Depends},
libcanberra-pulse
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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains X11 modules.
Package: libspa-0.2-dev
Section: libdevel
Architecture: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains the API reference.
Package: pipewire
Section: video
Architecture: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: any
Multi-Arch: foreign
Depends: libpipewire-0.3-modules (= ${binary:Version}),
${misc:Depends},
${shlibs:Depends}
Recommends: dbus-user-session,
wireplumber,
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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: any
Multi-Arch: foreign
Replaces: pipewire-bin (<< 0.3.27-2)
Breaks: pipewire-bin (<< 0.3.27-2)
Conflicts: pulseaudio-module-gsettings
Depends: pipewire (= ${binary:Version}),
${misc:Depends},
${shlibs:Depends}
Recommends: wireplumber
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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains the PulseAudio replacement daemon.
Package: pipewire-alsa
Section: sound
Architecture: 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, for ALSA applications to output via PipeWire
PipeWire is a server and user space API to deal with multimedia
pipelines. This includes:
.
- Making available sources of audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains a plugin for ALSA applications to output via PipeWire.
Package: pipewire-jack
Section: sound
Architecture: 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, for JACK applications to output via PipeWire
PipeWire is a server and user space API to deal with multimedia
pipelines. This includes:
.
- Making available sources of audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains a plugin for JACK applications to output via PipeWire.
Package: pipewire-v4l2
Section: video
Architecture: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains the V4L2 plugin.
Package: pipewire-tests
Build-Profiles: <!noinsttest>
Architecture: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: 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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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: libspa-0.2-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
Replaces: pipewire-libcamera (<< 0.3.72-1~)
Breaks: pipewire-libcamera (<< 0.3.72-1~)
Provides: pipewire-libcamera
Depends: libspa-0.2-modules (= ${binary:Version}),
${misc:Depends},
${shlibs:Depends}
Description: libraries for the PipeWire multimedia server - libcamera plugin
PipeWire is a server and user space API to deal with multimedia
pipelines. This includes:
.
- Making available sources of audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and video for consumption.
- Generating graphs for audio and video processing.
.
This package contains a plugin to make camera devices available to the
PipeWire server.
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 audio and video (such as from a capture devices
or application provided streams) and multiplexing this with clients.
- Accessing sources of audio and 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.
Package: pipewire-libcamera
Section: oldlibs
Architecture: all
Depends: libspa-0.2-libcamera,
${misc:Depends}
Description: transitional package for libspa-0.2-libcamera
PipeWire is a server and user space API to deal with multimedia
pipelines.
.
This is a transitional package for libspa-0.2-libcamera.
It can safely be removed.

219
debian/copyright vendored
View File

@ -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.

17
debian/gbp.conf vendored Normal file
View File

@ -0,0 +1,17 @@
[DEFAULT]
pristine-tar = True
debian-branch = debian/master
upstream-branch = upstream/1.2.x
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

1
debian/gstreamer1.0-pipewire.install vendored Normal file
View File

@ -0,0 +1 @@
usr/lib/*/gstreamer-1.0

1
debian/libpipewire-0.3-0t64.install vendored Normal file
View File

@ -0,0 +1 @@
usr/lib/*/libpipewire*.so.*

View File

@ -0,0 +1 @@
libpipewire-0.3-0t64: package-name-doesnt-match-sonames libpipewire-0.3-0

471
debian/libpipewire-0.3-0t64.symbols vendored Normal file
View File

@ -0,0 +1,471 @@
libpipewire-0.3.so.0 libpipewire-0.3-0t64 #MINVER#
* Build-Depends-Package: libpipewire-0.3-dev
PW_LOG_TOPIC_DEFAULT@Base 0.3.38
#MISSING: 0.3.82# _pw_log_topic_new@Base 0.3.38
pw_buffers_clear@Base 0.3.1
pw_buffers_negotiate@Base 0.3.1
pw_check_library_version@Base 0.3.75
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_conf_section_for_each@Base 0.3.70
pw_conf_section_match_rules@Base 0.3.70
pw_conf_section_update_props@Base 0.3.70
pw_conf_section_update_props_rules@Base 1.1.81
pw_context_acquire_loop@Base 1.1.81
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
#MISSING: 0.3.75# pw_context_driver_add_listener@Base 0.3.72
#MISSING: 0.3.75# pw_context_driver_remove_listener@Base 0.3.72
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_mempool@Base 0.3.74
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_release_loop@Base 1.1.81
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_class@Base 1.1.81
pw_data_loop_get_loop@Base 0.3.37
pw_data_loop_get_name@Base 1.1.81
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_data_loop@Base 1.1.81
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_nsec@Base 1.0.4
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_is_driving@Base 0.3.66
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_trigger_process@Base 0.3.66
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_mempool@Base 0.3.74
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_set_param@Base 1.1.81
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_add_rt_listener@Base 0.3.75
pw_impl_node_add_target@Base 1.1.83
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_remove_rt_listener@Base 0.3.75
pw_impl_node_remove_target@Base 1.1.83
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_io@Base 1.1.81
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
#MISSING: 1.0.0# 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_log_set_level_string@Base 1.1.81
pw_log_topic_register@Base 1.1.81
pw_log_topic_unregister@Base 1.1.81
pw_loop_check@Base 0.3.68
pw_loop_destroy@Base 0.3.1
pw_loop_new@Base 0.3.1
pw_loop_set_name@Base 1.1.81
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_peer_ref@Base 1.1.83
pw_node_peer_unref@Base 1.1.83
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_new_string_checked@Base 1.1.81
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_properties_update_string_checked@Base 1.1.81
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
#MISSING: 0.3.73# 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_random@Base 0.3.67
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_data_loop@Base 1.1.81
pw_stream_get_name@Base 0.3.1
pw_stream_get_node_id@Base 0.3.1
pw_stream_get_nsec@Base 1.0.4
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_set_param@Base 0.3.70
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_strv_find@Base 0.3.84
pw_strv_find_common@Base 0.3.84
pw_strv_parse@Base 0.3.84
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

1
debian/libpipewire-0.3-common.install vendored Normal file
View File

@ -0,0 +1 @@
usr/share/locale

3
debian/libpipewire-0.3-dev.install vendored Normal file
View File

@ -0,0 +1,3 @@
usr/include/pipewire-0.3
usr/lib/*/libpipewire*.so
usr/lib/*/pkgconfig/libpipewire*

View File

@ -0,0 +1 @@
usr/lib/*/pipewire-0.3/libpipewire-module-x11-bell.so

42
debian/libpipewire-0.3-modules.install vendored Normal file
View File

@ -0,0 +1,42 @@
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-f*.so
usr/lib/*/pipewire-0.3/libpipewire-module-jack-tunnel.so
usr/lib/*/pipewire-0.3/libpipewire-module-jackdbus-detect.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-netjack2-driver.so
usr/lib/*/pipewire-0.3/libpipewire-module-netjack2-manager.so
usr/lib/*/pipewire-0.3/libpipewire-module-parametric-equalizer.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-roc-sink.so
usr/lib/*/pipewire-0.3/libpipewire-module-roc-source.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-sap.so
usr/lib/*/pipewire-0.3/libpipewire-module-rtp-session.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-snapcast-discover.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-vban-recv.so
usr/lib/*/pipewire-0.3/libpipewire-module-vban-send.so
usr/lib/*/pipewire-0.3/libpipewire-module-zeroconf-discover.so

View File

@ -0,0 +1 @@
libpipewire-0.3-modules: groff-message * [usr/share/man/*]

View File

@ -0,0 +1,2 @@
usr/share/man/man7/libpipewire-module*
usr/share/man/man7/pipewire-pulse-module*

2
debian/libspa-0.2-bluetooth.install vendored Normal file
View File

@ -0,0 +1,2 @@
usr/lib/*/spa-0.2/bluez5
usr/share/spa-0.2/bluez5/bluez-hardware.conf

2
debian/libspa-0.2-dev.install vendored Normal file
View File

@ -0,0 +1,2 @@
usr/include/spa-0.2
usr/lib/*/pkgconfig/libspa*

1
debian/libspa-0.2-jack.install vendored Normal file
View File

@ -0,0 +1 @@
usr/lib/*/spa-0.2/jack/

1
debian/libspa-0.2-libcamera.install vendored Normal file
View File

@ -0,0 +1 @@
usr/lib/*/spa-0.2/libcamera/libspa-libcamera.so

12
debian/libspa-0.2-modules.install vendored Normal file
View File

@ -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

5
debian/not-installed vendored Normal file
View File

@ -0,0 +1,5 @@
usr/share/pipewire/client-rt.conf.avail/20-upmix.conf
usr/share/pipewire/client.conf.avail/20-upmix.conf
usr/share/pipewire/pipewire-pulse.conf.avail/20-upmix.conf
usr/share/pipewire/pipewire.conf.avail/10-rates.conf
usr/share/pipewire/pipewire.conf.avail/20-upmix.conf

View File

@ -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 Sockets
+ConditionUser=!root
[Socket]
Priority=6

23
debian/patches/Fix_services.patch vendored Normal file
View File

@ -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]

2
debian/patches/series vendored Normal file
View File

@ -0,0 +1,2 @@
Don-t-automatically-start-pipewire-for-root-logins.patch
Fix_services.patch

4
debian/pipewire-alsa.install vendored Normal file
View File

@ -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

2
debian/pipewire-alsa.links vendored Normal file
View File

@ -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

37
debian/pipewire-bin.install vendored Normal file
View File

@ -0,0 +1,37 @@
usr/share/pipewire/client-rt.conf
usr/share/pipewire/client.conf
usr/share/pipewire/filter-chain.conf
usr/share/pipewire/filter-chain/*.conf
usr/share/pipewire/jack.conf
usr/share/pipewire/pipewire.conf
usr/share/pipewire/pipewire-aes67.conf
usr/share/pipewire/pipewire-avb.conf
usr/share/pipewire/minimal.conf
${env:UDEVRULESDIR}
usr/bin/pipewire
usr/bin/pipewire-aes67
usr/bin/pipewire-avb
usr/bin/pw-cat
usr/bin/pw-cli
usr/bin/pw-config
usr/bin/pw-container
usr/bin/pw-dot
usr/bin/pw-dsdplay
usr/bin/pw-dump
usr/bin/pw-encplay
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
debian/9999-custom.conf.README /usr/share/alsa-card-profile/mixer/profile-sets/
etc/security/limits.d/25-pw-rlimits.conf

8
debian/pipewire-bin.links vendored Normal file
View File

@ -0,0 +1,8 @@
/usr/share/man/man1/pipewire.1.gz /usr/share/man/man1/pipewire-aes67.1.gz
/usr/share/man/man1/pipewire.1.gz /usr/share/man/man1/pipewire-avb.1.gz
/usr/share/man/man1/pw-cat.1.gz /usr/share/man/man1/pw-dsdplay.1.gz
/usr/share/man/man1/pw-cat.1.gz /usr/share/man/man1/pw-encplay.1.gz
/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

1
debian/pipewire-bin.lintian-overrides vendored Normal file
View File

@ -0,0 +1 @@
pipewire-bin: groff-message * [usr/share/man/*]

14
debian/pipewire-bin.maintscript vendored Normal file
View File

@ -0,0 +1,14 @@
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
rm_conffile /etc/security/limits.d/95-pipewire.conf 0.3.66-1~ pipewire-bin

22
debian/pipewire-bin.manpages vendored Normal file
View File

@ -0,0 +1,22 @@
usr/share/man/man1/pipewire.*
usr/share/man/man1/pw-cat.*
usr/share/man/man1/pw-cli.*
usr/share/man/man1/pw-config.*
usr/share/man/man1/pw-container.*
usr/share/man/man1/pw-dot.*
usr/share/man/man1/pw-dump.*
usr/share/man/man1/pw-link.*
usr/share/man/man1/pw-loopback.*
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/man1/pw-reserve.*
usr/share/man/man1/spa-acp-tool.*
usr/share/man/man1/spa-inspect.*
usr/share/man/man1/spa-json-dump.*
usr/share/man/man1/spa-monitor.*
usr/share/man/man1/spa-resample.*
usr/share/man/man5/*
usr/share/man/man7/pipewire-devices.*

11
debian/pipewire-doc.doc-base vendored Normal file
View File

@ -0,0 +1,11 @@
Document: pipewire
Title: PipeWire documentation
Abstract: PipeWire is a low-level multimedia framework for both audio and video
This document provides everything you might want to know about PipeWire:
A general overview, the design principles, descriptions for all components
(daemon, library, modules, tools, etc), API reference, tutorials and more.
Section: Programming
Format: HTML
Index: /usr/share/doc/pipewire/html/index.html
Files: /usr/share/doc/pipewire/html/*.html

1
debian/pipewire-doc.install vendored Normal file
View File

@ -0,0 +1 @@
usr/share/doc

4
debian/pipewire-jack.install vendored Normal file
View File

@ -0,0 +1,4 @@
usr/bin/pw-jack
usr/lib/*/pipewire-0.3/jack
debian/ld.so.conf.d/* usr/share/doc/pipewire/examples/ld.so.conf.d

View File

@ -0,0 +1 @@
pipewire-jack: groff-message * [usr/share/man/*]

1
debian/pipewire-jack.manpages vendored Normal file
View File

@ -0,0 +1 @@
usr/share/man/man1/pw-jack.*

4
debian/pipewire-jack.shlibs.local vendored Normal file
View File

@ -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-0t64 (= ${binary:Version})

5
debian/pipewire-pulse.install vendored Normal file
View File

@ -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/glib-2.0/schemas/org.freedesktop.pulseaudio.gschema.xml

1
debian/pipewire-pulse.manpages vendored Normal file
View File

@ -0,0 +1 @@
usr/share/man/man1/pipewire-pulse.*

1
debian/pipewire-tests.docs vendored Normal file
View File

@ -0,0 +1 @@
debian/tests/manual-tests.md

2
debian/pipewire-tests.install vendored Normal file
View File

@ -0,0 +1,2 @@
usr/libexec/installed-tests
usr/share/installed-tests

View File

@ -0,0 +1 @@
pipewire-tests: custom-library-search-path RUNPATH /usr/lib/*/spa-0.2/* [usr/libexec/*]

2
debian/pipewire-v4l2.install vendored Normal file
View File

@ -0,0 +1,2 @@
usr/bin/pw-v4l2
usr/lib/*/pipewire-0.3/v4l2/libpw-v4l2.so

1
debian/pipewire-v4l2.manpages vendored Normal file
View File

@ -0,0 +1 @@
usr/share/man/man1/pw-v4l2.*

148
debian/pipewire.README.Debian vendored Normal file
View File

@ -0,0 +1,148 @@
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 [3] 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.
[3] https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Performance-tuning#rlimits
The "pipewire" package creates a system group called "pipewire".
The upstream recommended priority limits for this group are defined in:
* /etc/security/limits.d/25-pw-rlimits.conf
To enable these limits for your user, add it to the "pipewire" group.
* sudo adduser yourusername pipewire
After upgrading pipewire
------------------------
A system-level upgrade of pipewire will *not* automatically restart
all pipewire-related user-level services (such as "pipewire-pulse").
After an upgrade of pipewire, there are three main ways to restart
services.
1. The least disruptive way to restart services is a command such as
$ systemctl --user restart wireplumber pipewire pipewire-pulse
You may check the output of "pw-dump" to see if you forgot to restart
some services, e.g.
$ pw-dump |grep -nE "core\.(version|name)|process\.binary"
or you may use "checkrestart" [4] or "needrestart" [5] with
sudo or as root user.
2. Another way to restart services is by restarting your user session.
On a desktop computer this typically means exiting your X or Wayland
session and restarting it. On a mobile phone this typically means
restarting "phosh" if phosh is your phone shell:
$ sudo systemctl restart phosh
3. The most sure (and most disruptive) way to restart the pipewire
related services is to reboot your computer.
[4] https://tracker.debian.org/pkg/debian-goodies
[5] https://tracker.debian.org/pkg/needrestart
Other troubleshooting
---------------------
See the Debian wiki page [6] and the upstream wiki [3].
[6] https://wiki.debian.org/PipeWire

1
debian/pipewire.docs vendored Normal file
View File

@ -0,0 +1 @@
NEWS

3
debian/pipewire.install vendored Normal file
View File

@ -0,0 +1,3 @@
usr/lib/systemd/user/pipewire.service
usr/lib/systemd/user/pipewire.socket
usr/lib/systemd/user/filter-chain.service

11
debian/pipewire.postinst vendored Normal file
View File

@ -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#

8
debian/pipewire.postrm vendored Normal file
View File

@ -0,0 +1,8 @@
#!/bin/sh
set -e
if [ "$1" = "purge" ] ; then
delgroup --quiet --system pipewire > /dev/null || true
fi
#DEBHELPER#

220
debian/rules vendored
View File

@ -1,67 +1,161 @@
#!/usr/bin/make -f
## See debhelper(7) (uncomment to enable).
## Output every command that modifies files on the build system.
export DH_VERBOSE = 1
export PIKA_BUILD_ARCH = $(shell cat pika-build-arch)
## === the chain of command ===
## debuild runs a chain of dh functions in the following order:
## dh_testdir
## dh_clean
## dh_auto_clean
## dh_update_autotools_config
## dh_autoreconf
## dh_auto_configure
## dh_prep
## dh_build
## dh_auto_build
## dh_install
## dh_auto_install
## dh_installdocs
## dh_installchangelogs
## dh_perl
## dh_link
## dh_strip_nondeterminism
## dh_compress
## dh_fixperms
## dh_missing
## dh_dwz
## dh_strip
## dh_makeshlibs
## dh_shlibdeps
## dh_installdeb
## dh_gencontrol
## but you are most likely to only need to override the following:
## dh_clean
## dh_auto_configure
## dh_build
## dh_install
## === End end of region ===
## === overriding dh functions ===
## by default all dh functions will run a specific command based on the build system selected by "dh $@"
## if you have a makefile that does everything you need this is fine,
## but most likely you have no MakeFile and you want to add your own commands
## Note : overrides must be places above %:
## So here's a few examples:
## overriding dh_clean to make it not delete rust vendor files:
#override_dh_clean:
# echo "disabled"
## overriding dh_auto_configure to add custom configs:
#override_dh_auto_configure:
# $(srcdir)/configure -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_DATADIR=/usr/share -DCMAKE_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu -DBUILD_PLUGIN=OFF
## overriding dh_install to install files to a package:
#override_dh_auto_configure:
# mkdir -p debian/pikman/usr/bin
# cp pikman debian/pikman/usr/bin/
## === End end of region ===
## This here will start the build:
%:
dh $@
ifneq ($(filter nodoc,$(DEB_BUILD_PROFILES)),)
DOCS=disabled
MAN=disabled
else
DOCS=enabled
MAN=enabled
endif
built_binaries := $(shell dh_listpackages)
ifneq ($(filter %-tests,$(built_binaries)),)
INSTTEST=enabled
SDL2=enabled
else
INSTTEST=disabled
SDL2=disabled
endif
### PikaOS changes
# LDAC Arch Check
ifneq (,$(filter s390x hppa m68k powerpc ppc64 sparc64,$(DEB_HOST_ARCH)))
BLUEZ5_CODEC_LDAC=disabled
else
BLUEZ5_CODEC_LDAC=enabled
endif
# LIBCAMERA Arch Check
ifneq (,$(filter m68k hurd-amd64 hurd-i386,$(DEB_HOST_ARCH)))
LIBCAMERA=disabled
else
LIBCAMERA=enabled
endif
# LIBROC Arch Check
ifneq (,$(filter hppa i386 i686 m68k powerpc sparc64,$(DEB_HOST_ARCH)))
LIBROC=disabled
cmnt_libroc=$(shell sed -e '/module-roc-s/ s/^\#*/\#/' -i debian/libpipewire-0.3-modules.install)
else
LIBROC=enabled
endif
# APTX Arch Check
ifneq (,$(filter hppa i386 i686 m68k powerpc sparc64,$(DEB_HOST_ARCH)))
APTX=disabled
else
APTX=enabled
endif
# AAC Arch Check
ifneq (,$(filter hppa i386 i686 m68k powerpc sparc64,$(DEB_HOST_ARCH)))
AAC=disabled
else
AAC=enabled
endif
# LTO Arch Check
ifneq (,$(filter armhf hppa i386 i686 m68k powerpc sparc64,$(DEB_HOST_ARCH)))
LTO=enabled
else
LTO=disabled
endif
# COMPRESS Arch Check
ifneq (,$(filter i386,$(DEB_HOST_ARCH)))
COMPRESS_OFFLOAD=disabled
else
COMPRESS_OFFLOAD=enabled
endif
# Just always have vulkan
VULKAN_ENABLED=enabled
### End of PikaOS Changes
LV2=enabled
LIBMYSOFA=enabled
LIBFFADO=enabled
ifneq (,$(filter hurd-amd64 hurd-i386,$(DEB_HOST_ARCH)))
UDEVRULESDIR=
else
export UDEVRULESDIR=/usr/lib/udev/rules.d
# For pre-Trixie releases udev rules should go in:
# export UDEVRULESDIR=/lib/udev/rules.d
endif
override_dh_auto_configure:
dh_auto_configure -- \
-Daudiotestsrc=enabled \
-Dauto_features=enabled \
-Db_lto=$(LTO) \
-Davahi=enabled \
-Dbluez5-backend-native-mm=enabled \
-Dbluez5-codec-aac=$(AAC) \
-Dbluez5-codec-aptx=$(APTX) \
-Dbluez5-codec-lc3=$(LIBLC3) \
-Dbluez5-codec-lc3plus=disabled \
-Dbluez5-codec-ldac=$(BLUEZ5_CODEC_LDAC) \
-Dbluez5-codec-opus=enabled \
-Dlibcamera=$(LIBCAMERA) \
-Dlibffado=$(LIBFFADO) \
-Dlibmysofa=$(LIBMYSOFA) \
-Ddocs=$(DOCS) \
-Dffmpeg=disabled \
-Dinstalled_tests=$(INSTTEST) \
-Dlv2=$(LV2) \
-Dman=$(MAN) \
-Dsdl2=$(SDL2) \
-Dsession-managers= \
-Dsnap=$(SNAP) \
-Dtest=enabled \
-Dudevrulesdir=$(UDEVRULESDIR) \
-Dvideotestsrc=enabled \
-Dvulkan=$(VULKAN_ENABLED) \
-Droc=$(LIBROC) \
$(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_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)

7
debian/salsa-ci.yml vendored Normal file
View File

@ -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

1
debian/shlibs.local vendored Normal file
View File

@ -0,0 +1 @@
libpipewire-0.3 0 libpipewire-0.3-0t64 (= ${binary:Version})

10
debian/tests/control vendored Normal file
View File

@ -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

16
debian/tests/gnome-desktop-testing vendored Executable file
View File

@ -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
)

12
debian/tests/gstreamer1.0-pipewire vendored Executable file
View File

@ -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

41
debian/tests/libpipewire-0.3-dev vendored Executable file
View File

@ -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

147
debian/tests/manual-tests.md vendored Normal file
View File

@ -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).

4
debian/upstream/metadata vendored Normal file
View File

@ -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

4
debian/watch vendored Normal file
View File

@ -0,0 +1,4 @@
version=4
opts="searchmode=plain" \
https://gitlab.freedesktop.org/pipewire/@PACKAGE@/tags?sort=updated_desc \
-/archive/v?\d[\d.]+/@PACKAGE@-@ANY_VERSION@@ARCHIVE_EXT@

10
main.sh
View File

@ -6,15 +6,15 @@ source ./pika-build-config.sh
echo "$PIKA_BUILD_ARCH" > pika-build-arch
VERSION="1.0"
VERSION="1.2.1"
# Clone Upstream
mkdir -p ./src-pkg-name
cp -rvf ./debian ./src-pkg-name/
cd ./src-pkg-name/
git clone https://gitlab.freedesktop.org/pipewire/pipewire.git -b "$VERSION"
cp -rvf ./debian ./pipewire/
cd ./pipewire/
# Get build deps
LOGNAME=root dh_make --createorig -y -l -p src-pkg-name_"$VERSION" || echo "dh-make: Ignoring Last Error"
LOGNAME=root dh_make --createorig -y -l -p pipewire_"$VERSION" || echo "dh-make: Ignoring Last Error"
apt-get build-dep ./ -y
# Build package