summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO277
-rw-r--r--PKGBUILD552
-rw-r--r--pipewire.install6
3 files changed, 683 insertions, 152 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ed6014b7cd51..f61a7be37d5a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,134 +1,277 @@
pkgbase = pipewire-full-git
pkgdesc = Low-latency audio/video router and processor
- pkgver = 0.3.25.r0.gc3241072
+ pkgver = 1.0.0.r591.gaf310523
pkgrel = 1
url = https://pipewire.org
arch = x86_64
license = MIT
- makedepends = git
- makedepends = meson
+ checkdepends = openal
+ makedepends = alsa-lib
+ makedepends = avahi
+ makedepends = bluez-libs
+ makedepends = dbus
makedepends = doxygen
+ makedepends = git
+ makedepends = glib2
makedepends = graphviz
- makedepends = xmltoman
- makedepends = jack2
- makedepends = alsa-lib
- makedepends = gst-plugins-base-libs
- makedepends = sbc
+ makedepends = gst-plugins-base
+ makedepends = jack
+ makedepends = libcamera
+ makedepends = libcanberra
+ makedepends = libfdk-aac
+ makedepends = libffado
+ makedepends = libfreeaptx
+ makedepends = liblc3
+ makedepends = libldac
+ makedepends = libmysofa
+ makedepends = libpulse
+ makedepends = libsndfile
+ makedepends = libusb
+ makedepends = libx11
+ makedepends = libxfixes
+ makedepends = lilv
+ makedepends = meson
+ makedepends = ncurses
+ makedepends = opus
+ makedepends = python
+ makedepends = python-packaging
+ makedepends = readline
+ makedepends = roc-toolkit
makedepends = rtkit
- makedepends = vulkan-icd-loader
- makedepends = dbus
+ makedepends = sbc
makedepends = sdl2
- makedepends = ncurses
- makedepends = libsndfile
- makedepends = bluez-libs
+ makedepends = systemd
+ makedepends = valgrind
+ makedepends = webrtc-audio-processing-1
+ makedepends = abseil-cpp
makedepends = vulkan-headers
- makedepends = libldac
- makedepends = libopenaptx
- makedepends = libfdk-aac
+ makedepends = vulkan-icd-loader
makedepends = ffmpeg
+ makedepends = modemmanager
source = git+https://gitlab.freedesktop.org/pipewire/pipewire.git
- sha256sums = SKIP
+ b2sums = SKIP
pkgname = pipewire-full-git
install = pipewire.install
- depends = rtkit
+ license = MIT
+ license = LGPL-2.1-or-later
+ depends = gcc-libs
+ depends = glibc
+ depends = libpipewire-full-git=1.0.0.r591.gaf310523-1
+ depends = libcamera-base.so
+ depends = libcamera.so
depends = libdbus-1.so
+ depends = libglib-2.0.so
depends = libncursesw.so
- depends = libsndfile.so
- depends = libudev.so
- depends = libasound.so
+ depends = libpipewire-0.3.so
+ depends = libreadline.so
depends = libsystemd.so
- depends = libbluetooth.so
- depends = libsbc.so
- depends = libldacBT_enc.so
- depends = libopenaptx.so
- depends = libfdk-aac.so
- optdepends = pipewire-full-docs-git: Documentation
+ depends = libudev.so
+ optdepends = gst-plugin-pipewire-full-git: GStreamer plugin
optdepends = pipewire-full-alsa-git: ALSA configuration
- optdepends = pipewire-full-jack-git: JACK support
- optdepends = pipewire-full-jack-client-git: JACK device/client
+ optdepends = pipewire-full-audio-git: Audio support
+ optdepends = pipewire-full-docs-git: Documentation
+ optdepends = pipewire-full-ffado-git: FireWire support
+ optdepends = pipewire-full-jack-client-git: PipeWire as JACK client
+ optdepends = pipewire-full-jack-git: JACK replacement
optdepends = pipewire-full-pulse-git: PulseAudio replacement
- optdepends = gst-plugin-pipewire-full-git: GStreamer support
- optdepends = ofono: ofono Bluetooth HFP support
- optdepends = hsphfpd: hsphfpd Bluetooth HSP/HFP support
- provides = pipewire
- provides = pipewire-media-session
- provides = alsa-card-profiles
- provides = libpipewire-0.3.so
+ optdepends = pipewire-full-roc-git: ROC streaming
+ optdepends = pipewire-session-manager: Session manager
+ optdepends = pipewire-full-v4l2-git: V4L2 interceptor
+ optdepends = pipewire-full-x11-bell-git: X11 bell
+ optdepends = pipewire-full-zeroconf-git: Zeroconf support
+ optdepends = realtime-privileges: realtime privileges with rt module
+ optdepends = rtkit: realtime privileges with rtkit module
+ provides = pipewire=1.0.0
conflicts = pipewire
- conflicts = pipewire-media-session
- conflicts = alsa-card-profiles
- backup = etc/pipewire/pipewire.conf
- backup = etc/pipewire/pipewire-pulse.conf
- backup = etc/pipewire/client.conf
- backup = etc/pipewire/client-rt.conf
- backup = etc/pipewire/media-session.d/media-session.conf
- backup = etc/pipewire/media-session.d/alsa-monitor.conf
- backup = etc/pipewire/media-session.d/bluez-monitor.conf
- backup = etc/pipewire/media-session.d/v4l2-monitor.conf
+
+pkgname = libpipewire-full-git
+ pkgdesc = Low-latency audio/video router and processor - client library
+ depends = glibc
+ depends = gcc-libs
+ provides = libpipewire=1.0.0
+ provides = libpipewire-0.3.so
+ conflicts = libpipewire
pkgname = pipewire-full-docs-git
pkgdesc = Low-latency audio/video router and processor - documentation
- arch = any
provides = pipewire-docs
conflicts = pipewire-docs
options = !strip
+pkgname = pipewire-full-audio-git
+ pkgdesc = Low-latency audio/video router and processor - Audio support
+ depends = dbus
+ depends = gcc-libs
+ depends = glib2
+ depends = glibc
+ depends = libasound.so
+ depends = libbluetooth.so
+ depends = libfdk-aac.so
+ depends = libfreeaptx.so
+ depends = liblc3.so
+ depends = libldacBT_enc.so
+ depends = liblilv-0.so
+ depends = libmysofa.so
+ depends = libopus.so
+ depends = libpipewire-0.3.so
+ depends = libsbc.so
+ depends = libsndfile.so
+ depends = libusb-1.0.so
+ depends = libwebrtc-audio-processing-1.so
+ depends = pipewire
+ depends = systemd-libs
+ depends = libpipewire-full-git
+ depends = libavcodec.so
+ depends = libavformat.so
+ depends = libavutil.so
+ provides = pipewire-audio
+ provides = alsa-card-profiles
+ conflicts = pipewire-audio
+ conflicts = alsa-card-profiles
+
pkgname = pipewire-full-alsa-git
- pkgdesc = - ALSA configuration
+ pkgdesc = Low-latency audio/video router and processor - ALSA configuration
depends = pipewire-full-git
- provides = pipewire-alsa
+ depends = pipewire-full-audio-git
+ depends = pipewire-session-manager
provides = pulseaudio-alsa
+ provides = pipewire-alsa
+ conflicts = pulseaudio-alsa
conflicts = pipewire-alsa
-pkgname = pipewire-full-jack-git
- pkgdesc = Low-latency audio/video router and processor - JACK support
+pkgname = pipewire-full-ffado-git
+ pkgdesc = Low-latency audio/video router and processor - FireWire support
+ depends = glibc
+ depends = libffado.so
+ depends = libpipewire-0.3.so
+ depends = pipewire-full-git
+ depends = pipewire-full-audio-git
+ provides = pipewire-ffado
+ conflicts = pipewire-ffado
+
+pkgname = pipewire-full-jack-client-git
+ pkgdesc = Low-latency audio/video router and processor - PipeWire as JACK client
+ depends = glibc
+ depends = libdbus-1.so
+ depends = libjack.so
+ depends = libpipewire-0.3.so
depends = pipewire-full-git
+ depends = pipewire-full-audio-git
+ provides = pipewire-jack-client
+ conflicts = pipewire-jack-client
+
+pkgname = pipewire-full-jack-git
+ pkgdesc = Low-latency audio/video router and processor - JACK replacement
+ license = MIT
+ license = LGPL-2.1-or-later
+ license = GPL-2.0-only
+ depends = glibc
depends = libpipewire-0.3.so
- depends = bash
+ depends = pipewire-full-git
+ depends = pipewire-full-audio-git
+ depends = pipewire-session-manager
+ depends = sh
+ optdepends = jack-example-tools: for official JACK example-clients and tools
+ provides = jack
+ provides = libjack.so
+ provides = libjackserver.so
+ provides = libjacknet.so
provides = pipewire-jack
+ conflicts = jack
+ conflicts = jack2
conflicts = pipewire-jack
- backup = etc/pipewire/jack.conf
pkgname = pipewire-full-pulse-git
pkgdesc = Low-latency audio/video router and processor - PulseAudio replacement
install = pipewire-pulse.install
+ depends = dbus
+ depends = gcc-libs
+ depends = glibc
+ depends = libavahi-client.so
+ depends = libavahi-common.so
+ depends = libglib-2.0.so
+ depends = libpipewire-0.3.so
+ depends = libpulse.so
depends = pipewire-full-git
- depends = libpulse
- provides = pipewire-pulse
+ depends = pipewire-full-audio-git
+ depends = pipewire-session-manager
+ depends = systemd-libs
+ provides = pulse-native-provider
provides = pulseaudio
provides = pulseaudio-bluetooth
- conflicts = pipewire-pulse
+ provides = pipewire-pulse
conflicts = pulseaudio
conflicts = pulseaudio-bluetooth
+ conflicts = pipewire-pulse
+
+pkgname = pipewire-full-roc-git
+ pkgdesc = Low-latency audio/video router and processor - ROC streaming support
+ depends = glibc
+ depends = libpipewire-0.3.so
+ depends = libroc.so
+ depends = pipewire-full-git
+ depends = pipewire-full-audio-git
+ depends = roc-toolkit
+ provides = pipewire-roc
+ conflicts = pipewire-roc
pkgname = gst-plugin-pipewire-full-git
pkgdesc = Multimedia graph framework - pipewire plugin
- depends = pipewire-full-git
- depends = libpipewire-0.3.so
+ depends = glib2
+ depends = glibc
depends = gst-plugins-base-libs
+ depends = gstreamer
+ depends = libpipewire-0.3.so
+ depends = pipewire-full-git
+ depends = pipewire-session-manager
provides = gst-plugin-pipewire
conflicts = gst-plugin-pipewire
-pkgname = pipewire-full-jack-client-git
- pkgdesc = JACK client SPA plugin
+pkgname = pipewire-full-zeroconf-git
+ pkgdesc = Low-latency audio/video router and processor - Zeroconf support
+ depends = gcc-libs
+ depends = glibc
+ depends = libavahi-client.so
+ depends = libavahi-common.so
+ depends = libpipewire-0.3.so
+ depends = openssl
+ depends = opus
depends = pipewire-full-git
- depends = libjack.so
- provides = pipewire-jack-client
- conflicts = pipewire-jack-client
+ depends = pipewire-full-audio-git
+ provides = pipewire-zeroconf
+ conflicts = pipewire-zeroconf
+
+pkgname = pipewire-full-v4l2-git
+ pkgdesc = Low-latency audio/video router and processor - V4L2 interceptor
+ depends = glibc
+ depends = libpipewire-0.3.so
+ depends = pipewire-full-git
+ depends = pipewire-session-manager
+ depends = sh
+ provides = pipewire-v4l2
+ conflicts = pipewire-v4l2
+
+pkgname = pipewire-full-x11-bell-git
+ pkgdesc = Low-latency audio/video router and processor - X11 bell
+ depends = glibc
+ depends = libcanberra.so
+ depends = libpipewire-0.3.so
+ depends = libx11
+ depends = libxfixes
+ depends = pipewire-full-git
+ depends = pipewire-full-audio-git
+ provides = pipewire-x11-bell
+ conflicts = pipewire-x11-bell
pkgname = pipewire-full-vulkan-git
pkgdesc = Vulkan SPA plugin
- depends = pipewire-full-git
depends = vulkan-icd-loader
provides = pipewire-vulkan
conflicts = pipewire-vulkan
pkgname = pipewire-full-ffmpeg-git
pkgdesc = FFmpeg SPA plugin
- depends = pipewire-full-git
depends = libavcodec.so
- depends = libavformat.so
provides = pipewire-ffmpeg
conflicts = pipewire-ffmpeg
-
diff --git a/PKGBUILD b/PKGBUILD
index 788527de4ddf..5c0fbb838c18 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,46 +1,119 @@
# Maintainer: Huang-Huang Bao <eh5@sokka.cn>
+# Contributor: David Runge <dvzrv@archlinux.org>
# Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
-_pkgbase=pipewire
pkgbase=pipewire-full-git
-pkgname=(pipewire-full-git pipewire-full-docs-git pipewire-full-alsa-git
- pipewire-full-jack-git pipewire-full-pulse-git
- gst-plugin-pipewire-full-git
- pipewire-full-jack-client-git
- pipewire-full-vulkan-git pipewire-full-ffmpeg-git)
-pkgver=0.3.25.r0.gc3241072
+pkgname=(
+ pipewire-full-git
+ libpipewire-full-git
+ pipewire-full-docs-git
+ pipewire-full-audio-git
+ pipewire-full-alsa-git
+ pipewire-full-ffado-git
+ pipewire-full-jack-client-git
+ pipewire-full-jack-git
+ pipewire-full-pulse-git
+ pipewire-full-roc-git
+ gst-plugin-pipewire-full-git
+ pipewire-full-zeroconf-git
+ pipewire-full-v4l2-git
+ pipewire-full-x11-bell-git
+ pipewire-full-vulkan-git
+ pipewire-full-ffmpeg-git
+)
+pkgver=1.0.0.r591.gaf310523
+_so_ver=0.3
+_short_pkgver=${pkgver%%.r*}
pkgrel=1
pkgdesc="Low-latency audio/video router and processor"
url="https://pipewire.org"
-license=(MIT)
arch=(x86_64)
-makedepends=(git meson doxygen graphviz xmltoman jack2
- alsa-lib gst-plugins-base-libs sbc rtkit vulkan-icd-loader dbus
- sdl2 ncurses libsndfile bluez-libs vulkan-headers libldac
- libopenaptx libfdk-aac ffmpeg)
-source=("git+https://gitlab.freedesktop.org/pipewire/pipewire.git")
-sha256sums=('SKIP')
+license=(MIT)
+makedepends=(
+ alsa-lib
+ avahi
+ bluez-libs
+ dbus
+ doxygen
+ git
+ glib2
+ graphviz
+ gst-plugins-base
+ jack # jack2 or pipewire-jack
+ libcamera
+ libcanberra
+ libfdk-aac
+ libffado
+ libfreeaptx
+ liblc3
+ libldac
+ libmysofa
+ libpulse
+ libsndfile
+ libusb
+ libx11
+ libxfixes
+ lilv
+ meson
+ ncurses
+ opus
+ python
+ python-packaging
+ readline
+ roc-toolkit
+ rtkit
+ sbc
+ sdl2
+ systemd
+ valgrind
+ webrtc-audio-processing-1
+ abseil-cpp # header required by webrtc-audio-processing-1
+ vulkan-headers vulkan-icd-loader
+ ffmpeg
+ modemmanager
+)
+checkdepends=(
+ openal
+)
+source=(
+ "git+https://gitlab.freedesktop.org/pipewire/pipewire.git"
+)
+b2sums=(
+ 'SKIP'
+)
pkgver() {
- cd $_pkgbase
- git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
+ cd pipewire
+ git describe --long --tags --abbrev=8 | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
- cd $_pkgbase
+ cd pipewire
}
build() {
# make AUR helper happy
rm -rf build || true
- arch-meson $_pkgbase build \
- -D docs=enabled \
- -D ffmpeg=enabled \
- -D test=enabled \
- -D libcamera=disabled \
- -D vulkan=enabled \
+
+ local meson_options=(
+ -D bluez5-codec-lc3plus=disabled
+ -D docs=enabled
+ -D man=enabled
+ -D jack-devel=true
+ -D libjack-path=/usr/lib
+ -D rlimits-install=false
+ -D session-managers=[]
-D udevrulesdir=/usr/lib/udev/rules.d
+ -D selinux=disabled
+ -D snap=disabled
+ -D vulkan=enabled
+ -D pw-cat-ffmpeg=enabled
+ -D ffmpeg=enabled
+ -D bluez5-backend-native-mm=enabled
+ )
+
+ arch-meson pipewire build "${meson_options[@]}"
meson compile -C build
}
@@ -58,118 +131,439 @@ _pick() {
done
}
-_ver=${pkgver:0:3}
-
package_pipewire-full-git() {
- depends=(rtkit libdbus-1.so libncursesw.so libsndfile.so
- libudev.so libasound.so libsystemd.so libbluetooth.so
- libsbc.so libldacBT_enc.so libopenaptx.so libfdk-aac.so)
- optdepends=('pipewire-full-docs-git: Documentation'
- 'pipewire-full-alsa-git: ALSA configuration'
- 'pipewire-full-jack-git: JACK support'
- 'pipewire-full-jack-client-git: JACK device/client'
- 'pipewire-full-pulse-git: PulseAudio replacement'
- 'gst-plugin-pipewire-full-git: GStreamer support'
- 'ofono: ofono Bluetooth HFP support'
- 'hsphfpd: hsphfpd Bluetooth HSP/HFP support')
- provides=(pipewire pipewire-media-session alsa-card-profiles libpipewire-$_ver.so)
- conflicts=(pipewire pipewire-media-session alsa-card-profiles)
- backup=(etc/pipewire/{pipewire{,-pulse},client{,-rt}}.conf
- etc/pipewire/media-session.d/media-session.conf
- etc/pipewire/media-session.d/{alsa,bluez,v4l2}-monitor.conf)
+ license+=(LGPL-2.1-or-later) # libspa-alsa
+ provides=("pipewire=$_short_pkgver")
+ conflicts=(pipewire)
+ depends=(
+ gcc-libs
+ glibc
+ "libpipewire-full-git=$pkgver-$pkgrel"
+ libcamera-base.so
+ libcamera.so
+ libdbus-1.so
+ libglib-2.0.so
+ libncursesw.so
+ libpipewire-$_so_ver.so
+ libreadline.so
+ libsystemd.so
+ libudev.so
+ )
+ optdepends=(
+ 'gst-plugin-pipewire-full-git: GStreamer plugin'
+ 'pipewire-full-alsa-git: ALSA configuration'
+ 'pipewire-full-audio-git: Audio support'
+ 'pipewire-full-docs-git: Documentation'
+ 'pipewire-full-ffado-git: FireWire support'
+ 'pipewire-full-jack-client-git: PipeWire as JACK client'
+ 'pipewire-full-jack-git: JACK replacement'
+ 'pipewire-full-pulse-git: PulseAudio replacement'
+ 'pipewire-full-roc-git: ROC streaming'
+ 'pipewire-session-manager: Session manager'
+ 'pipewire-full-v4l2-git: V4L2 interceptor'
+ 'pipewire-full-x11-bell-git: X11 bell'
+ 'pipewire-full-zeroconf-git: Zeroconf support'
+ 'realtime-privileges: realtime privileges with rt module'
+ 'rtkit: realtime privileges with rtkit module'
+ )
install=pipewire.install
- DESTDIR="$pkgdir" meson install -C build
+ meson install -C build --destdir "$pkgdir"
+
+ (
+ cd "$pkgdir"
+
+ # Replace copies with symlinks
+ for _f in pipewire-{aes67,avb,pulse}; do
+ cmp usr/bin/pipewire usr/bin/$_f
+ ln -sf pipewire usr/bin/$_f
+ done
+
+ _pick lib usr/include/{pipewire-$_so_ver,spa-0.2}
+ _pick lib usr/lib/libpipewire-$_so_ver.so*
+ _pick lib usr/lib/pkgconfig/lib{pipewire-$_so_ver,spa-0.2}.pc
+
+ # ACP
+ _pick audio usr/lib/udev
+ _pick audio usr/share/alsa-card-profile
+
+ _pick docs usr/share/doc
- install -Dm644 "$_pkgbase/LICENSE" "$pkgdir/usr/share/licenses/$_pkgbase/LICENSE"
- install -Dm644 "$_pkgbase/COPYING" "$pkgdir/usr/share/licenses/$_pkgbase/COPYING"
+ _pick audio usr/bin/pipewire-{aes67,avb}
+ _pick audio usr/bin/pw-{cat,{,enc}play,record,midi{play,record},dsdplay}
+ _pick audio usr/bin/pw-{loopback,mididump}
+ _pick audio usr/bin/spa-{acp-tool,resample}
+ _pick audio usr/lib/alsa-lib
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-avb.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-echo-cancel.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-fallback-sink.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-filter-chain*.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-loopback.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-netjack2*.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-pipe-tunnel.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-protocol-simple.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-rtp-{sap,sink,source}.so
+ _pick audio usr/lib/pipewire-$_so_ver/libpipewire-module-vban*.so
+ _pick audio usr/lib/spa-0.2/{aec,alsa,audio*,avb,bluez5}
+ _pick audio usr/lib/systemd/user/filter-chain.service
+ _pick audio usr/share/alsa
+ _pick audio usr/share/man/man1/pw-{cat,mididump}.1
+ _pick audio usr/share/man/man1/spa-{acp-tool,resample}.1
+ _pick audio usr/share/man/man5/pipewire-filter-chain.conf.5
+ _pick audio usr/share/man/man7/libpipewire-module-{avb,echo-cancel,fallback-sink,filter-chain*,loopback,netjack2*,pipe-tunnel,protocol-simple,rtp-{sap,sink,source},vban*}.7
+ _pick audio usr/share/pipewire/filter-chain*
+ _pick audio usr/share/pipewire/pipewire-{aes67,avb}.conf
+ _pick audio usr/share/spa-0.2/bluez5
- cd "$pkgdir"
+ _pick ffado usr/lib/pipewire-$_so_ver/libpipewire-module-ffado*.so
+ _pick ffado usr/share/man/man7/libpipewire-module-ffado-driver.7
- _pick docs usr/share/doc
+ _pick jack-client usr/lib/pipewire-$_so_ver/libpipewire-module-jack{-tunnel,dbus-detect}.so
+ _pick jack-client usr/lib/spa-0.2/jack
+ _pick jack-client usr/share/man/man7/libpipewire-module-jack{-tunnel,dbus-detect}.7
- _pick jack etc/pipewire/{jack.conf,media-session.d/with-jack}
- _pick jack usr/bin/pw-jack usr/lib/pipewire-$_ver/jack
- _pick jack usr/share/man/man1/pw-jack.1
+ _pick jack usr/bin/pw-jack
+ _pick jack usr/include/jack
+ _pick jack usr/lib/libjack*
+ _pick jack usr/lib/pkgconfig/jack.pc
+ _pick jack usr/share/man/man1/pw-jack.1
+ _pick jack usr/share/man/man5/pipewire-jack.conf.5
+ _pick jack usr/share/pipewire/jack.conf
- _pick pulse etc/pipewire/media-session.d/with-pulseaudio
+ _pick pulse usr/bin/pipewire-pulse
+ _pick pulse usr/lib/pipewire-$_so_ver/libpipewire-module-protocol-pulse.so
+ _pick pulse usr/lib/pipewire-$_so_ver/libpipewire-module-pulse-tunnel.so
+ _pick pulse usr/lib/systemd/user/pipewire-pulse.*
+ _pick pulse usr/share/man/man1/pipewire-pulse.1
+ _pick pulse usr/share/man/man5/pipewire-pulse.conf.5
+ _pick pulse usr/share/man/man7/pipewire-pulse*.7
+ _pick pulse usr/share/man/man7/libpipewire-module-{protocol-pulse,pulse-tunnel}.7
+ _pick pulse usr/share/pipewire/pipewire-pulse.conf
- _pick gst usr/lib/gstreamer-1.0
+ _pick roc usr/lib/pipewire-$_so_ver/libpipewire-module-roc*.so
- _pick jack-client usr/lib/spa-0.2/jack
+ _pick gst usr/lib/gstreamer-1.0
- _pick vulkan usr/lib/spa-0.2/vulkan
+ _pick zeroconf usr/lib/pipewire-$_so_ver/libpipewire-module-{raop,zeroconf}-*.so
+ _pick zeroconf usr/lib/pipewire-$_so_ver/libpipewire-module-rtp-session.so
+ _pick zeroconf usr/share/man/man7/libpipewire-module-{raop-*,rtp-session,zeroconf*}.7
- _pick ffmpeg usr/lib/spa-0.2/ffmpeg
+ _pick v4l2 usr/bin/pw-v4l2 usr/lib/pipewire-$_so_ver/v4l2
+ _pick v4l2 usr/share/man/man1/pw-v4l2.1
+
+ _pick x11-bell usr/lib/pipewire-$_so_ver/libpipewire-module-x11-bell.so
+ _pick x11-bell usr/share/man/man7/libpipewire-module-x11-bell.7
+
+ _pick vulkan usr/lib/spa-0.2/vulkan
+
+ _pick ffmpeg usr/lib/spa-0.2/ffmpeg
+
+ # directories for overrides
+ mkdir -p etc/pipewire/{client-rt,client,minimal,pipewire}.conf.d
+ )
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
+}
+
+package_libpipewire-full-git() {
+ pkgdesc+=" - client library"
+ depends=(
+ glibc
+ gcc-libs
+ )
+ provides=(
+ "libpipewire=$_short_pkgver"
+ libpipewire-$_so_ver.so
+ )
+ conflicts=(libpipewire)
+
+ mv lib/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
package_pipewire-full-docs-git() {
- arch=(any)
options=(!strip)
+ pkgdesc+=" - documentation"
provides=(pipewire-docs)
conflicts=(pipewire-docs)
- pkgdesc+=" - documentation"
+
mv docs/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
+}
+
+package_pipewire-full-audio-git() {
+ pkgdesc+=" - Audio support"
+ provides=(pipewire-audio alsa-card-profiles)
+ conflicts=(pipewire-audio alsa-card-profiles)
+ depends=(
+ dbus
+ gcc-libs
+ glib2
+ glibc
+ libasound.so
+ libbluetooth.so
+ libfdk-aac.so
+ libfreeaptx.so
+ liblc3.so
+ libldacBT_enc.so
+ liblilv-0.so
+ libmysofa.so
+ libopus.so
+ libpipewire-$_so_ver.so
+ libsbc.so
+ libsndfile.so
+ libusb-1.0.so
+ libwebrtc-audio-processing-1.so
+ pipewire
+ systemd-libs
+ libpipewire-full-git
+ libavcodec.so libavformat.so libavutil.so
+ )
+
+ mv audio/* "$pkgdir"
+
+ mkdir -p "$pkgdir/etc/alsa/conf.d"
+ ln -st "$pkgdir/etc/alsa/conf.d" \
+ /usr/share/alsa/alsa.conf.d/50-pipewire.conf
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
package_pipewire-full-alsa-git() {
- pkgdesc=" - ALSA configuration"
- depends=(pipewire-full-git)
- provides=(pipewire-alsa pulseaudio-alsa)
- conflicts=(pipewire-alsa)
+ pkgdesc+=" - ALSA configuration"
+ depends=(
+ pipewire-full-git
+ pipewire-full-audio-git
+ pipewire-session-manager
+ )
+ conflicts=(pulseaudio-alsa pipewire-alsa)
+ provides=(pulseaudio-alsa pipewire-alsa)
mkdir -p "$pkgdir/etc/alsa/conf.d"
ln -st "$pkgdir/etc/alsa/conf.d" \
- /usr/share/alsa/alsa.conf.d/{50-pipewire,99-pipewire-default}.conf
- install -Dm644 /dev/null "$pkgdir/etc/pipewire/media-session.d/with-alsa"
+ /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf
+
+ install -Dm644 /dev/null \
+ "$pkgdir/usr/share/pipewire/media-session.d/with-alsa"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
+}
+
+package_pipewire-full-ffado-git() {
+ pkgdesc+=" - FireWire support"
+ depends=(
+ glibc
+ libffado.so
+ libpipewire-$_so_ver.so
+ pipewire-full-git
+ pipewire-full-audio-git
+ )
+ provides=(pipewire-ffado)
+ conflicts=(pipewire-ffado)
+
+ mv ffado/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
+}
+
+package_pipewire-full-jack-client-git() {
+ pkgdesc+=" - PipeWire as JACK client"
+ depends=(
+ glibc
+ libdbus-1.so
+ libjack.so
+ libpipewire-$_so_ver.so
+ pipewire-full-git
+ pipewire-full-audio-git
+ )
+ provides=(pipewire-jack-client)
+ conflicts=(pipewire-jack-client)
+
+ mv jack-client/* "${pkgdir}"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
package_pipewire-full-jack-git() {
- pkgdesc+=" - JACK support"
- depends=(pipewire-full-git libpipewire-$_ver.so bash)
- provides=(pipewire-jack)
- conflicts=(pipewire-jack)
- backup=(etc/pipewire/jack.conf)
+ pkgdesc+=" - JACK replacement"
+ license+=(LGPL-2.1-or-later GPL-2.0-only) # libjackserver
+ depends=(
+ glibc
+ libpipewire-$_so_ver.so
+ pipewire-full-git
+ pipewire-full-audio-git
+ pipewire-session-manager
+ sh
+ )
+ optdepends=('jack-example-tools: for official JACK example-clients and tools')
+ conflicts=(jack jack2 pipewire-jack)
+ provides=(jack libjack.so libjackserver.so libjacknet.so pipewire-jack)
+
mv jack/* "$pkgdir"
+
+ install -Dm644 /dev/null \
+ "$pkgdir/usr/share/pipewire/media-session.d/with-jack"
+
+ # directories for overrides
+ mkdir -p "$pkgdir/etc/pipewire/jack.conf.d"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
package_pipewire-full-pulse-git() {
pkgdesc+=" - PulseAudio replacement"
- depends=(pipewire-full-git libpulse)
- provides=(pipewire-pulse pulseaudio pulseaudio-bluetooth)
- conflicts=(pipewire-pulse pulseaudio pulseaudio-bluetooth)
+ depends=(
+ dbus
+ gcc-libs
+ glibc
+ libavahi-{client,common}.so
+ libglib-2.0.so
+ libpipewire-$_so_ver.so
+ libpulse.so
+ pipewire-full-git
+ pipewire-full-audio-git
+ pipewire-session-manager
+ systemd-libs
+ )
+ provides=(
+ pulse-native-provider
+ pulseaudio
+ pulseaudio-bluetooth
+ pipewire-pulse
+ )
+ conflicts=(
+ pulseaudio
+ pulseaudio-bluetooth
+ pipewire-pulse
+ )
install=pipewire-pulse.install
+
mv pulse/* "$pkgdir"
+
+ # directory for overrides
+ mkdir -p "$pkgdir/etc/pipewire/pipewire-pulse.conf.d"
+
+ install -Dm644 /dev/null \
+ "$pkgdir/usr/share/pipewire/media-session.d/with-pulseaudio"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
+}
+
+package_pipewire-full-roc-git() {
+ pkgdesc+=" - ROC streaming support"
+ provides=(pipewire-roc)
+ conflicts=(pipewire-roc)
+ depends=(
+ glibc
+ libpipewire-$_so_ver.so
+ libroc.so
+ pipewire-full-git
+ pipewire-full-audio-git
+ roc-toolkit
+ )
+
+ mv roc/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
package_gst-plugin-pipewire-full-git() {
pkgdesc="Multimedia graph framework - pipewire plugin"
- depends=(pipewire-full-git libpipewire-$_ver.so gst-plugins-base-libs)
provides=(gst-plugin-pipewire)
conflicts=(gst-plugin-pipewire)
+ depends=(
+ glib2
+ glibc
+ gst-plugins-base-libs
+ gstreamer
+ libpipewire-$_so_ver.so
+ pipewire-full-git
+ pipewire-session-manager
+ )
+
mv gst/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
-package_pipewire-full-jack-client-git() {
- pkgdesc="JACK client SPA plugin"
- depends=(pipewire-full-git libjack.so)
- provides=(pipewire-jack-client)
- conflicts=(pipewire-jack-client)
- mv jack-client/* "${pkgdir}"
+package_pipewire-full-zeroconf-git() {
+ pkgdesc+=" - Zeroconf support"
+ provides=(pipewire-zeroconf)
+ conflicts=(pipewire-zeroconf)
+ depends=(
+ gcc-libs
+ glibc
+ libavahi-{client,common}.so
+ libpipewire-$_so_ver.so
+ openssl
+ opus
+ pipewire-full-git
+ pipewire-full-audio-git
+ )
+
+ mv zeroconf/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
+}
+
+package_pipewire-full-v4l2-git() {
+ pkgdesc+=" - V4L2 interceptor"
+ provides=(pipewire-v4l2)
+ conflicts=(pipewire-v4l2)
+ depends=(
+ glibc
+ libpipewire-$_so_ver.so
+ pipewire-full-git
+ pipewire-session-manager
+ sh
+ )
+
+ mv v4l2/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
+}
+
+package_pipewire-full-x11-bell-git() {
+ pkgdesc+=" - X11 bell"
+ depends=(
+ glibc
+ libcanberra.so
+ libpipewire-$_so_ver.so
+ libx11
+ libxfixes
+ pipewire-full-git
+ pipewire-full-audio-git
+ )
+ provides=(pipewire-x11-bell)
+ conflicts=(pipewire-x11-bell)
+
+ mv x11-bell/* "$pkgdir"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
package_pipewire-full-vulkan-git() {
pkgdesc="Vulkan SPA plugin"
- depends=(pipewire-full-git vulkan-icd-loader)
+ depends=(vulkan-icd-loader)
provides=(pipewire-vulkan)
conflicts=(pipewire-vulkan)
+
mv vulkan/* "${pkgdir}"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
package_pipewire-full-ffmpeg-git() {
pkgdesc="FFmpeg SPA plugin"
- depends=(pipewire-full-git libavcodec.so libavformat.so)
+ depends=(libavcodec.so)
provides=(pipewire-ffmpeg)
conflicts=(pipewire-ffmpeg)
+
mv ffmpeg/* "${pkgdir}"
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 pipewire/COPYING
}
+
+# vim:set sw=2 sts=-1 et:
diff --git a/pipewire.install b/pipewire.install
index 10d28ad19d15..416e5ed97a1d 100644
--- a/pipewire.install
+++ b/pipewire.install
@@ -1,20 +1,14 @@
post_install() {
# Enable socket by default
systemctl --global enable pipewire.socket
- systemctl --global enable pipewire-media-session.service
}
post_upgrade() {
if (( $(vercmp $2 0.1.6-2) < 0)); then
systemctl --global enable pipewire.socket
fi
-
- if (( $(vercmp $2 0.3.22.r46.ge340a44a-2) < 0)); then
- systemctl --global enable pipewire-media-session.service
- fi
}
pre_remove() {
systemctl --global disable pipewire.socket
- systemctl --global disable pipewire-media-session.service
}