summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSolomon Choina2024-03-22 08:21:56 -0400
committerSolomon Choina2024-03-22 08:21:56 -0400
commitd5253d1b74d4fec1903bdb7c2efb6b2a70bbec72 (patch)
treee66bcc64fce75414a5b639bf85e7216d3badc4cf
parent209ac8cc0322250cd57797e1693d5122583221a1 (diff)
downloadaur-d5253d1b74d4fec1903bdb7c2efb6b2a70bbec72.tar.gz
create a split package and other stuff
-rwxr-xr-x.SRCINFO173
-rw-r--r--PKGBUILD272
2 files changed, 368 insertions, 77 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 0fc24cec4f03..258ea06912f0 100755
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,91 +1,146 @@
pkgbase = pulseaudio-git
pkgdesc = A featureful, general-purpose sound server (development version)
- pkgver = 16.99.1.r11.g81a6cc496
+ pkgver = 17.0.r4.g5d7cd8bd0
pkgrel = 1
url = http://pulseaudio.org/
install = pulseaudio.install
arch = i686
arch = x86_64
arch = armv7h
- license = GPL
- license = LGPL
- makedepends = git
- makedepends = libasyncns
- makedepends = libxtst
- makedepends = libtool
- makedepends = libsoxr
- makedepends = libsndfile
+ license = LGPL-2.1-or-later
+ makedepends = alsa-lib
makedepends = attr
- makedepends = rtkit
- makedepends = speexdsp
- makedepends = tdb
- makedepends = jack2
+ makedepends = avahi
makedepends = bluez
makedepends = bluez-libs
- makedepends = intltool
- makedepends = sbc
- makedepends = lirc
+ makedepends = check
+ makedepends = dbus
+ makedepends = doxygen
makedepends = fftw
- makedepends = orc
+ makedepends = git
+ makedepends = gst-plugins-base-libs
makedepends = gtk3
- makedepends = webrtc-audio-processing
- makedepends = check
+ makedepends = jack2
+ makedepends = libasyncns
+ makedepends = libcap
+ makedepends = libsm
+ makedepends = libsndfile
+ makedepends = libsoxr
+ makedepends = libxtst
+ makedepends = lirc
makedepends = meson
+ makedepends = openssl
+ makedepends = orc
+ makedepends = rtkit
+ makedepends = sbc
+ makedepends = speexdsp
+ makedepends = systemd
+ makedepends = tdb
makedepends = valgrind
+ makedepends = webrtc-audio-processing-1
+ makedepends = xmltoman
makedepends = libwrap
- makedepends = doxygen
+ makedepends = libltdl
+ makedepends = python-dbus
+ makedepends = python-pyqt5
+ options = !emptydirs
+ source = git+https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
+ source = pulseaudio.install
+ sha256sums = SKIP
+ sha256sums = 1d4890b10fadb9208c3fefbbed4aca1f22e63a0f102f4c598dc573a55e724cb2
+
+pkgname = pulseaudio-git
+ install = pulseaudio.install
+ depends = alsa-lib
+ depends = fftw
+ depends = libcap
depends = libltdl
+ depends = libpulse=17.0.r4.g5d7cd8bd0-1
+ depends = libsm
depends = libsoxr
- depends = libasyncns
depends = libxtst
- depends = libsndfile
+ depends = orc
depends = rtkit
depends = speexdsp
depends = tdb
- depends = orc
depends = webrtc-audio-processing-1
- depends = jack2
- depends = lirc
- depends = bluez
- depends = bluez-libs
- depends = sbc
- depends = python-pyqt5
- depends = python-dbus
- depends = sip
- depends = fftw
- depends = dconf
depends = libwrap
- depends = gst-plugins-base-libs
- optdepends = alsa-plugins: ALSA support
+ depends = libsndfile
+ depends = dconf
optdepends = pulseaudio-alsa: ALSA configuration (recommended)
- optdepends = lirc-utils: infra-red support
+ optdepends = pulseaudio-bluetooth-git: Bluetooth support
+ optdepends = pulseaudio-equalizer-git: Graphical equalizer
+ optdepends = pulseaudio-jack-git: Jack support
+ optdepends = pulseaudio-lirc-git: IR (lirc) support
+ optdepends = pulseaudio-rtp-git: RTP and RAOP support
+ optdepends = pulseaudio-zeroconf-git: Zeroconf support
+ provides = pulse-native-provider
provides = pulseaudio
- provides = pulseaudio-zeroconf
- provides = pulseaudio-lirc
- provides = pulseaudio-jack
- provides = pulseaudio-bluetooth
- provides = pulseaudio-equalizer
- provides = libpulse
- provides = libpulse.so
- provides = libpulse-simple.so
- provides = libpulse-mainloop-glib.so
- conflicts = pulseaudio-zeroconf
- conflicts = pulseaudio-lirc
- conflicts = pulse-audio-jack
- conflicts = pulseaudio-bluetooth
- conflicts = pulseaudio-equalizer
- conflicts = libpulse.so
- conflicts = libpulse-simple.so
- conflicts = libpulse-mainloop-glib.so
conflicts = pipewire-pulse
- options = !emptydirs
+ conflicts = pulseaudio
+ replaces = pulseaudio-gconf<=11.1
+ replaces = pulseaudio-xen<=9.0
backup = etc/pulse/daemon.conf
backup = etc/pulse/default.pa
backup = etc/pulse/system.pa
+
+pkgname = libpulse-git
+ pkgdesc = A featureful, general-purpose sound server (development version) (client library) (development)
+ license = LGPL
+ depends = dbus
+ depends = libasyncns
+ depends = libsndfile
+ depends = libxcb
+ depends = systemd
+ optdepends = glib2: mainloop integration
+ optdepends = pulse-native-provider: PulseAudio backend
+ provides = libpulse
+ conflicts = libpulse
backup = etc/pulse/client.conf
- source = git+https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
- source = pulseaudio.install
- sha256sums = SKIP
- sha256sums = 1d4890b10fadb9208c3fefbbed4aca1f22e63a0f102f4c598dc573a55e724cb2
-pkgname = pulseaudio-git
+pkgname = pulseaudio-zeroconf-git
+ pkgdesc = Zeroconf support for PulseAudio (development)
+ depends = avahi
+ depends = pulseaudio-git=17.0.r4.g5d7cd8bd0-1
+ provides = pulseaudio-zeroconf
+ conflicts = pulseaudio-zeroconf
+
+pkgname = pulseaudio-jack-git
+ pkgdesc = Jack support for PulseAudio (development)
+ depends = jack
+ depends = pulseaudio-git=17.0.r4.g5d7cd8bd0-1
+ provides = pulseaudio-jack
+ conflicts = pulseaudio-jack
+
+pkgname = pulseaudio-bluetooth-git
+ pkgdesc = Bluetooth support for PulseAudio (development)
+ depends = bluez
+ depends = bluez-libs
+ depends = gst-plugins-base-libs
+ depends = pulseaudio-git=17.0.r4.g5d7cd8bd0-1
+ depends = sbc
+ optdepends = gst-plugins-bad: AptX and LDAC support
+ provides = pulseaudio-bluetooth
+ conflicts = pulseaudio-bluetooth
+
+pkgname = pulseaudio-equalizer-git
+ pkgdesc = Graphical equalizer for PulseAudio (development)
+ depends = pulseaudio-git=17.0.r4.g5d7cd8bd0-1
+ depends = python-dbus
+ depends = python-pyqt5
+ depends = fftw
+ depends = python
+ depends = glibc
+ depends = dbus
+ provides = pulseaudio-equalizer
+ conflicts = pulseaudio-equalizer
+
+pkgname = pulseaudio-rtp-git
+ pkgdesc = RTP and RAOP support for PulseAudio (development)
+ depends = gst-plugins-base
+ depends = gst-plugins-base-libs
+ depends = gst-plugins-good
+ depends = openssl
+ depends = pulseaudio-git=17.0.r4.g5d7cd8bd0-1
+ provides = pulseaudio-rtp
+ conflicts = pulseaudio-rtp
diff --git a/PKGBUILD b/PKGBUILD
index 69ac0f4e3140..7ef471dc71d7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,27 +9,59 @@
# Maintainer: Solomon Choina <shlomochoina@gmail.com>
_pkgname="pulseaudio"
-pkgname="$_pkgname-git"
+pkgbase="$_pkgname-git"
+pkgname=(
+ pulseaudio-git
+ libpulse-git
+ pulseaudio-zeroconf-git
+ pulseaudio-jack-git
+ pulseaudio-bluetooth-git
+ pulseaudio-equalizer-git
+ pulseaudio-rtp-git
+)
pkgdesc="A featureful, general-purpose sound server (development version)"
-pkgver=16.99.1.r11.g81a6cc496
+pkgver=17.0.r4.g5d7cd8bd0
pkgrel=1
arch=("i686" "x86_64" "armv7h")
url="http://pulseaudio.org/"
-license=("GPL" "LGPL")
+license=(LGPL-2.1-or-later)
install=pulseaudio.install
-depends=(lib{ltdl,soxr,asyncns,xtst,sndfile} "rtkit" "speexdsp" "tdb" "orc"
- "webrtc-audio-processing-1" jack2 "lirc" bluez{,-libs} "sbc"
- python-{pyqt5,dbus} sip "fftw" dconf libwrap gst-plugins-base-libs)
-makedepends=("git" lib{asyncns,xtst,tool,soxr,sndfile} "attr" "rtkit" "speexdsp"
- "tdb" jack2 bluez{,-libs} "intltool" "sbc" "lirc" "fftw"
- "orc" "gtk3" "webrtc-audio-processing" "check" "meson" "valgrind"
- "libwrap" "doxygen")
-optdepends=("alsa-plugins: ALSA support"
- "pulseaudio-alsa: ALSA configuration (recommended)"
- "lirc-utils: infra-red support")
-backup=(etc/pulse/{daemon.conf,default.pa,system.pa,client.conf})
-provides=(pulseaudio{,-{zeroconf,lirc,jack,bluetooth,equalizer}} libpulse libpulse{,-{simple,mainloop-glib}}.so)
-conflicts=(pulseaudio-zeroconf pulseaudio-lirc pulse-audio-jack pulseaudio-bluetooth pulseaudio-equalizer libpulse{,-{simple,mainloop-glib}}.so pipewire-pulse)
+makedepends=( alsa-lib
+ attr
+ avahi
+ bluez
+ bluez-libs
+ check
+ dbus
+ doxygen
+ fftw
+ git
+ gst-plugins-base-libs
+ gtk3
+ jack2
+ libasyncns
+ libcap
+ libsm
+ libsndfile
+ libsoxr
+ libxtst
+ lirc
+ meson
+ openssl
+ orc
+ rtkit
+ sbc
+ speexdsp
+ systemd
+ tdb
+ valgrind
+ webrtc-audio-processing-1
+ xmltoman
+ libwrap
+ libltdl
+ python-dbus
+ python-pyqt5
+)
options=(!emptydirs)
source=("git+https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git"
"pulseaudio.install")
@@ -46,7 +78,8 @@ build() {
-D stream-restore-clear-old-devices=true \
-D pulsedsp-location='/usr/\$LIB/pulseaudio' \
-D udevrulesdir=/usr/lib/udev/rules.d \
- -D elogind=disabled
+ -D elogind=disabled \
+ -D consolekit=disabled
ninja -C build
}
@@ -55,7 +88,58 @@ check() {
ninja -C build test-daemon
}
-package() {
+_pick() {
+ local p="$1" f d; shift
+ for f; do
+ d="$srcdir/$p/${f#$pkgdir/}"
+ mkdir -p "$(dirname "$d")"
+ mv "$f" "$d"
+ rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
+ done
+}
+
+package_pulseaudio-git() {
+ depends=(
+ alsa-lib
+ fftw
+ libcap
+ libltdl
+ "libpulse=$pkgver-$pkgrel"
+ libsm
+ libsoxr
+ libxtst
+ orc
+ rtkit
+ speexdsp
+ tdb
+ webrtc-audio-processing-1
+ libwrap
+ libsndfile
+ dconf
+ )
+ optdepends=(
+ 'pulseaudio-alsa: ALSA configuration (recommended)'
+ 'pulseaudio-bluetooth-git: Bluetooth support'
+ 'pulseaudio-equalizer-git: Graphical equalizer'
+ 'pulseaudio-jack-git: Jack support'
+ 'pulseaudio-lirc-git: IR (lirc) support'
+ 'pulseaudio-rtp-git: RTP and RAOP support'
+ 'pulseaudio-zeroconf-git: Zeroconf support'
+ )
+ provides=("pulse-native-provider" "pulseaudio")
+ conflicts=("pipewire-pulse" "pulseaudio")
+ backup=(
+ etc/pulse/daemon.conf
+ etc/pulse/default.pa
+ etc/pulse/system.pa
+ )
+ install=pulseaudio.install
+ replaces=(
+ 'pulseaudio-gconf<=11.1'
+ 'pulseaudio-xen<=9.0'
+ )
+
+
DESTDIR="$pkgdir" meson install -C build
@@ -82,5 +166,157 @@ package() {
# Required by qpaeq
sed -e '/Load several protocols/aload-module module-dbus-protocol' \
-i etc/pulse/default.pa
+
+ # Avoid warning about nonexistent dir
+ # https://gitlab.archlinux.org/archlinux/packaging/packages/pulseaudio/-/issues/3
+ mkdir -p etc/pulse/{default,system}.pa.d
+
+ # Split packages
+ _pick libpulse etc/pulse/client.conf
+ _pick libpulse usr/bin/pa{cat,ctl,dsp,mon,play,rec,record}
+ _pick libpulse usr/lib/libpulse{,-simple,-mainloop-glib}.so*
+ _pick libpulse usr/lib/{cmake,pkgconfig}
+ _pick libpulse usr/lib/pulseaudio/libpulse{dsp,common-*}.so
+ _pick libpulse usr/include
+ _pick libpulse usr/share/man/man1/pa{cat,ctl,dsp,mon,play,rec,record}.1
+ _pick libpulse usr/share/man/man5/pulse-client.conf.5
+ _pick libpulse usr/share/bash-completion/completions/pa{cat,ctl,dsp,play,rec,record}
+ _pick libpulse usr/share/bash-completion/completions/pulseaudio
+ _pick libpulse usr/share/vala
+ _pick libpulse usr/share/zsh
+
+ local moddir=usr/lib/pulseaudio/modules
+
+ _pick zeroconf $moddir/libavahi-wrap.so
+ _pick zeroconf $moddir/module-zeroconf-{publish,discover}.so
+ _pick zeroconf $moddir/module-raop-discover.so
+
+ _pick lirc $moddir/module-lirc.so
+
+ _pick jack $moddir/module-jack-{sink,source}.so
+ _pick jack $moddir/module-jackdbus-detect.so
+
+ _pick bluetooth $moddir/libbluez5-util.so
+ _pick bluetooth $moddir/module-bluetooth-{discover,policy}.so
+ _pick bluetooth $moddir/module-bluez5-{discover,device}.so
+ _pick equalizer $moddir/module-equalizer-sink.so
+ _pick equalizer usr/bin/qpaeq
+
+ _pick rtp $moddir/lib{rtp,raop}.so
+ _pick rtp $moddir/module-rtp-{send,recv}.so
+ _pick rtp $moddir/module-raop-sink.so
+}
+
+package_libpulse-git() {
+ pkgdesc="$pkgdesc (client library) (development)"
+ depends=(
+ dbus
+ libasyncns
+ libsndfile
+ libxcb
+ systemd
+ )
+ optdepends=(
+ 'glib2: mainloop integration'
+ 'pulse-native-provider: PulseAudio backend'
+ )
+ provides=(
+ libpulse-mainloop-glib.so
+ libpulse-simple.so
+ libpulse.so
+ )
+ license=(LGPL)
+ backup=(etc/pulse/client.conf)
+ provides=(libpulse)
+ conflicts=(libpulse)
+
+ mv libpulse/* "$pkgdir"
}
+
+package_pulseaudio-zeroconf-git() {
+ pkgdesc="Zeroconf support for PulseAudio (development)"
+ depends=(
+ avahi
+ "pulseaudio-git=$pkgver-$pkgrel"
+ )
+ provides=(pulseaudio-zeroconf)
+ conflicts=(pulseaudio-zeroconf)
+
+ mv zeroconf/* "$pkgdir"
+}
+
+package_pulseaudio-lirc() {
+ pkgdesc="IR (lirc) support for PulseAudio (development)"
+ depends=(
+ lirc
+ "pulseaudio-git=$pkgver-$pkgrel"
+ )
+ provides=(pulseaudio-lirc)
+ conflicts=(pulseaudio-lirc)
+
+ mv lirc/* "$pkgdir"
+}
+
+package_pulseaudio-jack-git() {
+ pkgdesc="Jack support for PulseAudio (development)"
+ depends=(
+ jack
+ "pulseaudio-git=$pkgver-$pkgrel"
+ )
+ provides=(pulseaudio-jack)
+ conflicts=(pulseaudio-jack)
+
+ mv jack/* "$pkgdir"
+}
+
+package_pulseaudio-bluetooth-git() {
+ pkgdesc="Bluetooth support for PulseAudio (development)"
+ depends=(
+ bluez
+ bluez-libs
+ gst-plugins-base-libs
+ "pulseaudio-git=$pkgver-$pkgrel"
+ sbc
+ )
+ conflicts=(pulseaudio-bluetooth)
+ provides=(pulseaudio-bluetooth)
+ optdepends=('gst-plugins-bad: AptX and LDAC support')
+
+ mv bluetooth/* "$pkgdir"
+}
+
+package_pulseaudio-equalizer-git() {
+ pkgdesc="Graphical equalizer for PulseAudio (development)"
+ depends=(
+ "pulseaudio-git=$pkgver-$pkgrel"
+ python-dbus
+ python-pyqt5
+ fftw
+ python
+ glibc
+ dbus
+ )
+ conflicts=(pulseaudio-equalizer)
+ provides=(pulseaudio-equalizer)
+
+ mv equalizer/* "$pkgdir"
+}
+
+package_pulseaudio-rtp-git() {
+ pkgdesc="RTP and RAOP support for PulseAudio (development)"
+ provides=(pulseaudio-rtp)
+ conflicts=(pulseaudio-rtp)
+ depends=(
+ gst-plugins-base
+ gst-plugins-base-libs
+ gst-plugins-good
+ openssl
+ "pulseaudio-git=$pkgver-$pkgrel"
+ )
+
+ mv rtp/* "$pkgdir"
+}
+
+# vim:set sw=2 et:
+