Files
binary-repo/media/video/pipewire/ympbuild
T

63 lines
2.1 KiB
Bash

#!/usr/bin/env bash
name='pipewire'
release='4'
version='1.2.4'
url='https://pipewire.org/'
description='Multimedia processing graphs '
email='bayramk@gmail.com'
maintainer='bk'
license=('GPLv3')
source=("https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/$version/pipewire-$version.tar.gz"
"pipewire.initd"
"pipewire-launcher.sh")
depends=(lilv libpulse alsa-lib dbus)
makedepends=()
sha256sums=('b88b9c94548128f0078dc6d376389c2447c6c324ee6dda20d9037bc77a9dd4ee'
'SKIP'
'SKIP')
group=(media.video)
uses=(alsa gstreamer bluetooth jack)
uses_extra=(v4l2)
bluetooth_depends=(bluez)
arch=('x86_64')
cd $name-$version
setup(){
meson setup build --prefix=/usr \
--libdir=/usr/lib64 \
-D gstreamer=$(use_opt gstreamer enabled disabled)\
-D gstreamer-device-provider=$(use_opt gstreamer enabled disabled) \
-D pipewire-alsa=$(use_opt alsa enabled disabled)\
-D alsa=$(use_opt alsa enabled disabled)\
-D jack=$(use_opt jack enabled disabled)\
-D bluez5=$(use_opt bluetooth enabled disabled)\
-D bluez5-backend-hsp-native=$(use_opt bluetooth enabled disabled)\
-D bluez5-backend-hfp-native=$(use_opt bluetooth enabled disabled)\
-D bluez5-codec-opus=$(use_opt bluetooth enabled disabled)\
-D v4l2=$(use_opt v4l2 enabled disabled)\
-D session-managers=[]
}
build(){
ninja -C build
}
package(){
ninja -C build install
mkdir -p ${DESTDIR}/usr/libexec \
${DESTDIR}/etc/init.d \
${DESTDIR}/etc/profile.d \
${DESTDIR}/etc/passwd.d
# pipewire launcher from alpine linux (with same modifications)
install ../pipewire-launcher.sh ${DESTDIR}/usr/libexec/pipewire-launcher
# pipewire system service
install ../pipewire.initd ${DESTDIR}/etc/init.d/pipewire
# environment variable
echo "export PIPEWIRE_RUNTOME_DIR=/run/pipewire" > ${DESTDIR}/etc/profile.d/pipewire.sh
echo "export PULSE_SERVER=unix:/run/pipewire/pulse/native" >> ${DESTDIR}/etc/profile.d/pipewire.sh
# pipewire user (uid same with audio group)
echo "pipewire:x:29:29::/run/pipewire:/bin/false" > "$DESTDIR"/etc/passwd.d/pipewire
}