aboutsummaryrefslogtreecommitdiffstats
path: root/community/mumble/APKBUILD
blob: c2efb686030fb5ef0779a7d5193733d9811e9db4 (plain) (blame)
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr>
# Maintainer: Johannes Matheis <jomat+alpinebuild@jmt.gr>
pkgname=mumble
pkgver=1.3.4
pkgrel=3
pkgdesc="Low-latency, high quality voice chat software"
url="https://wiki.mumble.info/"
arch="all"
license="BSD-3-Clause"
options="!check"
depends="qt5-qtbase-sqlite"
makedepends="qt5-qtbase-dev libsndfile-dev boost-dev avahi-dev protobuf-dev
	libxi-dev speex-dev speexdsp-dev libcap-dev alsa-lib-dev qt5-qtsvg-dev
	qt5-qttools-dev opus-dev
	"
install="murmur.pre-install"
pkgusers="murmur"
pkggroups="murmur"
subpackages="
	$pkgname-doc
	murmur
	murmur-openrc:murmur_openrc:noarch
	murmur-doc:murmur_doc:noarch
	"
source="https://github.com/mumble-voip/mumble/releases/download/$pkgver/mumble-$pkgver.tar.gz
	murmur.initd
	"

# secfixes:
#   1.3.4-r0:
#     - CVE-2021-27229
#   1.2.19-r9:
#     - CVE-2018-20743

build() {
	qmake-qt5 -recursive main.pro \
		CONFIG+="no-speechd no-g15 no-ice bundled-celt no-embed-qt-translations no-bundled-speex no-bundled-opus no-rnnoise" \
		DEFINES+="PLUGIN_PATH=/usr/lib/mumble"

	make release
}

package() {
	# Binaries.
	local _ver=${pkgver%_rc*}
	local _maj=$( echo "$_ver" | cut -d. -f1)
	local _min=$( echo "$_ver" | cut -d. -f2)
	install -Dm755 ./release/mumble \
		"$pkgdir"/usr/bin/mumble
	install -Dm755 ./scripts/mumble-overlay \
		"$pkgdir"/usr/bin/mumble-overlay

	# Libraries.
	install -Dm755 ./release/libmumble.so.$_maj.$_min \
		"$pkgdir"/usr/lib/mumble/libmumble.so.$_maj.$_min
	for lib in libmumble.so libmumble.so.$_maj libmumble.so.$_ver; do
		ln -s libmumble.so.$_maj.$_min \
			"$pkgdir"/usr/lib/mumble/$lib
	done
	install -Dm755 ./release/plugins/liblink.so \
		"$pkgdir"/usr/lib/mumble/liblink.so
	install -Dm755 ./release/libcelt* \
		"$pkgdir"/usr/lib/mumble/

	# Misc.
	install -Dm644 ./LICENSE \
		"$pkgdir"/usr/share/licenses/$pkgname/LICENSE
	install -Dm644 ./scripts/mumble.desktop \
		"$pkgdir"/usr/share/applications/mumble.desktop
	install -Dm644 ./icons/mumble.svg \
		"$pkgdir"/usr/share/icons/hicolor/scalable/apps/mumble.svg

	# Man pages.
	mkdir -p "$pkgdir"/usr/share/man/man1/
	install -m644 ./man/mum* "$pkgdir"/usr/share/man/man1/

	# openrc service
	install -Dm755 "$srcdir"/murmur.initd "$pkgdir"/etc/init.d/murmur
}

murmur() {
	pkgdesc="Murmur is the server component of Mumble"
	cd "$builddir"

	install -o murmur -g murmur -dm755 \
		"$subpkgdir"/var/lib/murmur
	install -Dm755 ./release/murmurd \
		"$subpkgdir"/usr/bin/murmurd
	install -Dm644 ./scripts/murmur.ini \
		"$subpkgdir"/etc/murmur.ini

	sed 's/^database=$/database=\/var\/lib\/murmur\/murmur.sqlite/;\
		s/^;uname=$/uname=murmur/;\
		s/^;logfile=murmur.log$/logfile=\/var\/log\/murmur.log/;\
		s/^;pidfile=$/pidfile=\/var\/run\/murmur\/murmur.pid/'\
		-i "$subpkgdir"/etc/murmur.ini

	install -Dm644 ./scripts/murmur.conf \
		"$subpkgdir"/usr/share/dbus-1/system.d/murmurd.conf
	sed "s/mumble-server/murmur/" \
		-i "$subpkgdir"/usr/share/dbus-1/system.d/murmurd.conf
}

murmur_doc() {
	pkgdesc="Murmur is the server component of Mumble"

	cd "$builddir"
	install -Dm644 ./man/murmurd.1 \
		"$subpkgdir"/usr/share/man/man1/murmurd.1
	install -Dm644 ./LICENSE \
		"$subpkgdir"/usr/share/licenses/murmur/LICENSE
	default_doc
}

murmur_openrc() {
	default_openrc
	install_if="murmur=$pkgver-r$pkgrel openrc"
}

sha512sums="e2dde5aad30d1a931e7acd8d7db0b8c785d3a268d0b8cf5626fa03953a51bcadb719c6682c440d02524e83beee13d73d8f5bb3fdf98ab1c82d3ecf824cc25f68  mumble-1.3.4.tar.gz
1edccadd87446a6b9f5b87f19405f92e3450c48334c79fba4bc2c31224be767be084488c4352f14e64b7506b5963d1d6f3d8d4c7ea8e8276104d19a4a03892c6  murmur.initd"