diff --git a/extra/pipewire/PKGBUILD b/extra/pipewire/PKGBUILD index b47c3f82f..6e5aa1906 100644 --- a/extra/pipewire/PKGBUILD +++ b/extra/pipewire/PKGBUILD @@ -5,17 +5,18 @@ # - remove makedepend on valgrind pkgbase=pipewire -pkgname=(pipewire pipewire-docs pipewire-jack pipewire-pulse pipewire-alsa) -pkgver=0.3.15 -pkgrel=2 +pkgname=(pipewire pipewire-docs pipewire-jack pipewire-pulse pipewire-alsa + gst-plugin-pipewire) +pkgver=0.3.17 +pkgrel=1 pkgdesc="Server and user space API to deal with multimedia pipelines" url="https://pipewire.org" license=(LGPL2.1) arch=(x86_64) makedepends=(git meson doxygen graphviz xmltoman jack2 libpulse - alsa-lib gstreamer gst-plugins-base sbc rtkit vulkan-icd-loader - dbus libsndfile bluez-libs vulkan-headers) -_commit=16872549e3a2433f49f27c1875dfd432377ca0be # tags/0.3.15 + alsa-lib gst-plugins-base sbc rtkit vulkan-icd-loader dbus + libsndfile bluez-libs vulkan-headers) +_commit=f5f5beb0ece64c7d08edb5413dde537ec5b6c3e2 # tags/0.3.17 source=("git+https://github.com/PipeWire/pipewire#commit=$_commit") sha256sums=('SKIP') @@ -27,8 +28,8 @@ pkgver() { prepare() { cd $pkgbase - # Fix Chrome - git cherry-pick -n b8c7b36d3b8be16593f554964cf2f852c21b5c2c + # fix kwin + git cherry-pick -n fc2b0b20ad4271b0c6f258451a82311b792b7a57 } build() { @@ -55,10 +56,8 @@ _pick() { _ver=${pkgver:0:3} package_pipewire() { - depends=(gstreamer gst-plugins-base sbc rtkit vulkan-icd-loader bluez-libs - alsa-card-profiles - libdbus-1.so libsndfile.so libudev.so libasound.so libsystemd.so - libglib-2.0.so libgobject-2.0.so) + depends=(sbc rtkit vulkan-icd-loader bluez-libs alsa-card-profiles + libdbus-1.so libsndfile.so libudev.so libasound.so libsystemd.so) optdepends=('pipewire-docs: Documentation' 'pipewire-jack: JACK support' 'pipewire-pulse: PulseAudio support') @@ -75,14 +74,15 @@ package_pipewire() { _pick docs usr/share/doc - _pick pulse usr/bin/pw-pulse usr/lib/pipewire-$_ver/pulse - _pick pulse usr/lib/pipewire-$_ver/libpipewire-module-protocol-pulse.so - _pick pulse usr/share/man/man1/pw-pulse.1 - + _pick jack etc/pipewire/media-session.d/with-jack _pick jack usr/bin/pw-jack usr/lib/pipewire-$_ver/jack _pick jack usr/lib/spa-0.2/jack _pick jack usr/share/man/man1/pw-jack.1 + _pick pulse etc/pipewire/media-session.d/with-pulseaudio + + _pick gst usr/lib/gstreamer-1.0 + # Use alsa-card-profiles built with Pulseaudio rm -rv "$pkgdir"/usr/share/alsa-card-profile } @@ -94,20 +94,30 @@ package_pipewire-docs() { package_pipewire-jack() { pkgdesc+=" (JACK support)" - depends=(libpipewire-$_ver.so libjack.so) + depends=(pipewire libpipewire-$_ver.so libjack.so) mv jack/* "$pkgdir" } package_pipewire-pulse() { - pkgdesc+=" (PulseAudio support)" - depends=(libpipewire-$_ver.so libglib-2.0.so) + pkgdesc+=" (PulseAudio replacement)" + depends=(pipewire libpulse) + provides=(pulseaudio pulseaudio-bluetooth) + conflicts=(pulseaudio pulseaudio-bluetooth) + install=pipewire-pulse.install mv pulse/* "$pkgdir" } package_pipewire-alsa() { pkgdesc="ALSA Configuration for PipeWire" - depends=(libpipewire-$_ver.so) + depends=(pipewire libpipewire-$_ver.so) + provides=(pulseaudio-alsa) mkdir -p "$pkgdir/etc/alsa/conf.d" ln -st "$pkgdir/etc/alsa/conf.d" /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf } + +package_gst-plugin-pipewire() { + pkgdesc="Multimedia graph framework - pipewire plugin" + depends=(pipewire libpipewire-$_ver.so gst-plugins-base-libs) + mv gst/* "$pkgdir" +} diff --git a/extra/pipewire/pipewire-pulse.install b/extra/pipewire/pipewire-pulse.install new file mode 100644 index 000000000..051abb3a0 --- /dev/null +++ b/extra/pipewire/pipewire-pulse.install @@ -0,0 +1,14 @@ +post_install() { + # Enable socket by default + systemctl --global enable pipewire-pulse.socket +} + +post_upgrade() { + if (( $(vercmp $2 0.3.16-1) < 0)); then + systemctl --global enable pipewire-pulse.socket + fi +} + +pre_remove() { + systemctl --global disable pipewire-pulse.socket +}