1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
# Contributor: Jerome Leclanche <jerome@leclan.ch>
# Contributor: Clément Démoulins <clement@archivel.fr>
# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
# Contributor: Corrado Primier <bardo@aur.archlinux.org>
# Contributor: William Rea <sillywilly@gmail.com>
# Contributor: Lorenzo Nizzi Grifi Gargiolli <lorenzo.nizzi.grifi@gmail.com>
# Maintainer: Ben Morgan <neembi@gmail.com>
_pkgname="pulseaudio"
pkgname="$_pkgname-git"
pkgdesc="A featureful, general-purpose sound server (development version)"
pkgver=v12.0.309.geadd987a6
pkgrel=2
arch=("i686" "x86_64" "armv7h")
url="http://pulseaudio.org/"
license=("GPL" "LGPL")
depends=(lib{ltdl,soxr,asyncns,cap,xtst,sm,sndfile} "rtkit" "speexdsp" "tdb"
"orc" "webrtc-audio-processing" jack2 dbus "systemd" "avahi" "openssl"
"lirc" bluez{,-libs} "sbc" python-{pyqt5,dbus,sip} "fftw") #json-c
makedepends=("git" lib{asyncns,cap,xtst,sm,sndfile,tool,soxr} "attr" "rtkit"
"speexdsp" "tdb" "systemd" jack2 dbus "avahi" bluez{,-libs}
"intltool" "sbc" "lirc" "openssl" "fftw" "orc" "gtk3"
"webrtc-audio-processing" "check" "autoconf-archive") #gconf
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") #"pulseaudio-xen" "pulseaudio-gconf"
conflicts=(pulseaudio{,-{zeroconf,lirc,jack,bluetooth,equalizer}} "libpulse") #"pulseaudio-xen" "pulseaudio-gconf"
options=(!emptydirs)
source=("git+git://anongit.freedesktop.org/pulseaudio/pulseaudio")
sha256sums=('SKIP')
pkgver() {
cd "$srcdir/$_pkgname"
git describe --always | sed "s/-/./g"
}
prepare() {
cd "$srcdir/$_pkgname"
NOCONFIGURE=1 ./bootstrap.sh
}
build() {
cd "$srcdir/$_pkgname"
./configure --prefix=/usr \
--sysconfdir=/etc \
--libexecdir=/usr/lib \
--localstatedir=/var \
--with-udev-rules-dir=/usr/lib/udev/rules.d \
--with-pulsedsp-location='/usr/\\$$LIB/pulseaudio' \
--with-database=tdb \
--disable-tcpwrap \
--disable-bluez4 \
--disable-rpath \
--disable-default-build-tests \
DATADIRNAME=share
# fight unused direct deps
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package() {
cd "$srcdir/$_pkgname"
make DESTDIR="$pkgdir" install bashcompletiondir=/usr/share/bash-completion/completions
# Speed up pulseaudio shutdown so that it exits immediately with
# the last user session (module-systemd-login keeps it alive)
sed -e "/exit-idle-time/iexit-idle-time=0" -i "$pkgdir/etc/pulse/daemon.conf"
# Assumes that any volume adjustment is intended by the user, who can control
# each app's volume. Misbehaving clients can trigger earsplitting volume
# jumps. App volumes can diverge wildly and cause apps without their own
# volume control to fall below sink volume; a sink-only volume control will
# suddenly be unable to make such an app loud enough.
sed -e '/flat-volumes/iflat-volumes = no' \
-i "$pkgdir/etc/pulse/daemon.conf"
# Superseded by socket activation
sed -e '/autospawn/iautospawn = no' \
-i "$pkgdir/etc/pulse/client.conf"
# Disable cork-request module, can result in e.g. media players unpausing
# when there"s a Skype call incoming
sed -e "s|/usr/bin/pactl load-module module-x11-cork-request|#&|" -i "$pkgdir/usr/bin/start-pulseaudio-x11"
# Required by qpaeq
sed -e '/Load several protocols/aload-module module-dbus-protocol' \
-i "$pkgdir/etc/pulse/default.pa"
rm "$pkgdir/etc/dbus-1/system.d/pulseaudio-system.conf"
install -Dm644 shell-completion/zsh/_pulseaudio "$pkgdir/usr/share/zsh/site-functions/_pulseaudio"
}
|