summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: fee07fb3ecf98106d1c7c936c6f738ed3740a878 (plain)
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
# 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>
# Maintainer: Solomon Choina <shlomochoina@gmail.com>

_pkgname="pulseaudio"
pkgname="$_pkgname-git"
pkgdesc="A featureful, general-purpose sound server (development version)"
pkgver=15.0.r136.g484b69863
pkgrel=1
arch=("i686" "x86_64" "armv7h")
url="http://pulseaudio.org/"
license=("GPL" "LGPL")
install=pulseaudio.install
depends=(lib{ltdl,soxr,asyncns,xtst,sndfile} "rtkit" "speexdsp" "tdb" "orc"
         "webrtc-audio-processing" jack2 "lirc" bluez{,-libs} "sbc"
         python-{pyqt5,dbus,sip} "fftw" dconf 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)
options=(!emptydirs)
source=("git+https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git"
        "pulseaudio.install")
sha256sums=('SKIP'
            '1d4890b10fadb9208c3fefbbed4aca1f22e63a0f102f4c598dc573a55e724cb2')

pkgver() {
    cd "$srcdir/$_pkgname"
    git describe --long | sed 's/v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
    arch-meson pulseaudio build \
    -D stream-restore-clear-old-devices=true \
    -D pulsedsp-location='/usr/\$LIB/pulseaudio' \
    -D udevrulesdir=/usr/lib/udev/rules.d \
    -D elogind=disabled
  ninja -C build
}

check() {
  meson test -C build --print-errorlogs
  ninja -C build test-daemon
}
 
package() {
    

    DESTDIR="$pkgdir" meson install -C build

    cd "$pkgdir"

    # 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 etc/pulse/daemon.conf

    # Superseded by socket activation
    sed -e '/autospawn/iautospawn = no' \
        -i 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 usr/bin/start-pulseaudio-x11

    # Required by qpaeq
    sed -e '/Load several protocols/aload-module module-dbus-protocol' \
        -i etc/pulse/default.pa

    rm -r etc/dbus-1

}