maintainer="Jorijn van der Graaf " pkgname=imsd pkgver=0.3.0 pkgrel=0 pkgdesc="Userspace IMS/VoLTE daemon for mainline Linux phones" url="https://forgejo.catcrafts.net/Catcrafts/imsd" # other arches: nothing wrong known, just never run there arch="aarch64 x86_64" license="GPL-3.0-only" # the media leg dlopen's the AMR-WB codecs; pw-record/pw-play drive PipeWire — # none of which abuild's .so auto-scan can see depends="modemmanager opencore-amr vo-amrwbenc pipewire-tools" # clang/libc++ C++26-modules build (upstream Makefile); llvm-runtimes ships # the libc++ std module sources the build precompiles makedepends="clang lld libc++-dev llvm-libunwind-dev llvm-runtimes glib-dev pkgconf" # the versioned provides both satisfies soc-qcom-modem's 81voltd dependency # and excludes the real package: 81voltd serves the modem firmware's own # ims-PDN requests, which races imsd for the PDN and flaps it (a new prefix # every ~2.5 min) — two IMS stacks cannot share one PDN. Installing imsd is # an explicit choice to hand the IMS PDN to userspace. provides="81voltd=$pkgver-r$pkgrel" # no OpenRC service yet: the unit's PDN-bring-up/env-file sequencing is only # tested under systemd; an initd is welcome once someone can verify one subpackages="$pkgname-systemd" source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz" builddir="$srcdir/$pkgname" build() { make } check() { make check } package() { make install DESTDIR="$pkgdir" } systemd() { install_if="$pkgname=$pkgver-r$pkgrel systemd" amove usr/lib/systemd/system } sha512sums=" PLACEHOLDER_RUN_PMBOOTSTRAP_CHECKSUM_AFTER_V0_3_0_TAG_EXISTS imsd-0.3.0.tar.gz "