Files
mullvad-vpn-alpine/mullvad-vpn-daemon/APKBUILD
2026-04-12 12:52:08 +02:00

83 lines
2.0 KiB
Plaintext

# Contributor:
# Maintainer: Joakim Hulthe <joakim@hulthe.net>
pkgname=mullvad-vpn-daemon
pkgver=2026.1_git
pkgrel=3
pkgdesc="Mullvad VPN system service"
url="https://mullvad.net/"
arch="all"
license="GPL-3-or-later"
depends="
dbus
libmnl
libnftnl
"
makedepends="
build-base
cargo-auditable
rust
pkgconfig
git
protobuf-dev
dbus-dev
libmnl-dev
libnftnl-dev
"
checkdepends=""
install="$pkgname.post-install $pkgname.pre-upgrade $pkgname.post-upgrade $pkgname.pre-deinstall $pkgname.post-deinstall"
subpackages="$pkgname-systemd"
source=""
builddir="$srcdir/"
options="net suid"
_cargo_target_dir="${CARGO_TARGET_DIR:-$startdir/mullvadvpn-app/target}"
prepare() {
default_prepare
cd "$startdir/mullvadvpn-app"
cargo fetch --target "$CHOST" --locked
}
build() {
cd "$startdir/mullvadvpn-app"
# Specify `--target` so that the build artifacts ends up in target/<target>/release to
# avoid clashes with host system when running in a container with a mounted target folder.
cargo auditable build --release --locked \
--target "$CHOST" \
-p mullvad-cli \
-p mullvad-daemon \
-p mullvad-exclude \
-p mullvad-problem-report \
-p mullvad-setup
}
check() {
cd "$startdir/mullvadvpn-app"
cargo test --target "$CHOST" --frozen
}
package() {
install -m755 -D "$_cargo_target_dir/$CHOST/release/mullvad" \
"$pkgdir"/usr/bin/mullvad
install -m755 -D "$_cargo_target_dir/$CHOST/release/mullvad-daemon" \
"$pkgdir"/usr/bin/mullvad-daemon
# mullvad-exclude requires setuid
install -m4755 -D "$_cargo_target_dir/$CHOST/release/mullvad-exclude" \
"$pkgdir"/usr/bin/mullvad-exclude
install -m755 -D "$_cargo_target_dir/$CHOST/release/mullvad-problem-report" \
"$pkgdir"/usr/bin/mullvad-problem-report
install -m755 -D "$_cargo_target_dir/$CHOST/release/mullvad-setup" \
"$pkgdir"/usr/bin/mullvad-setup
}
systemd() {
install -m755 -D "$startdir/mullvadvpn-app/dist-assets/linux/mullvad-daemon.service" \
"$subpkgdir"/usr/lib/systemd/system/mullvad-daemon.service
}