# Reference: <https://postmarketos.org/devicepkg>
# Maintainer: Luca Weiss <luca@z3ntu.xyz>
pkgname=device-fairphone-fp5
pkgdesc="Fairphone 5"
pkgver=3
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
	bootmac
	linux-postmarketos-qcom-sc7280
	make-dynpart-mappings
	mesa-vulkan-freedreno
	mkbootimg
	postmarketos-base
	postmarketos-update-kernel
	qbootctl
	qbootctl-openrc
	swclock-offset
"
makedepends="devicepkg-dev"
install="$pkgname.post-install $pkgname.post-upgrade"
source="
	deviceinfo
	modules-initfs
	ucm/HiFi.conf
	ucm/fp5.conf
	"
subpackages="
	$pkgname-nonfree-firmware:nonfree_firmware
	"

build() {
	devicepkg_build $startdir $pkgname
}

package() {
	devicepkg_package $startdir $pkgname

	# ALSA Use Case Manager configuration
	install -Dm644 -t "$pkgdir"/usr/share/alsa/ucm2/Fairphone/fp5 \
		"$srcdir"/HiFi.conf \
		"$srcdir"/fp5.conf
	mkdir -p "$pkgdir"/usr/share/alsa/ucm2/conf.d/sm8250
	ln -s /usr/share/alsa/ucm2/Fairphone/fp5/fp5.conf \
		"$pkgdir"/usr/share/alsa/ucm2/conf.d/sm8250/Fairphone\ 5.conf
}

nonfree_firmware() {
	pkgdesc="Firmware for Modem, WiFi, etc."
	depends="
		firmware-fairphone-fp5-adreno
		firmware-fairphone-fp5-adsp
		firmware-fairphone-fp5-bluetooth
		firmware-fairphone-fp5-cdsp
		firmware-fairphone-fp5-ipa
		firmware-fairphone-fp5-modem
		firmware-fairphone-fp5-venus
		firmware-fairphone-fp5-wpss
		firmware-qcom-adreno-a660
		linux-firmware-ath11k
		msm-modem
		msm-modem-uim-selection
		pd-mapper
		tqftpserv
		"
	install="$subpkgname.post-install"
	mkdir "$subpkgdir"
}

sha512sums="
63cbf700191cb22f699dd9bedb3f349bb03d4fe8eaac782689936bf8cfff8b5ef33e94072ca110e707470a4dcb4b863720997b1b8b668843334758fd08698da7  deviceinfo
165ae7e1dbb5fb709e2f7b457dafa5df5b755c1199ea0f011b7e519ab49bc676ddeff92a3152629125e66d3dbbe5a70384364191000a1fdf860977e2ed43de54  modules-initfs
f39b6e5de6d9bfefc841e887b92bb5a92d02d1de46fd376ca83871b7a9cf0da5297d7201457b2bb12c302887bb0a9d328604ff910ebda8022ac71ad120b11a3c  HiFi.conf
fb510ca806fb76174576218f5cb4d799e05757b3e351eec32b1406bcf22540cf27888f30e3737f016d43e3c38dea8d7418c194e12c9879df9c756d4d80ceae99  fp5.conf
"
