# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-samsung-a6lte
pkgdesc="Samsung Galaxy A6 2018"
pkgver=0.4
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
	alsa-utils
	mkbootimg
	msm-fb-refresher
	postmarketos-base
	samsungipcd
	util-linux
"
replaces="
	lightdm
	pipewire-media-session
	udev-init-scripts-openrc
"
makedepends="devicepkg-dev"
install="$pkgname.post-install"
source="
	deviceinfo
	etc-conf.d-samsungipcd
	etc-init.d-udev-settle
	etc-init.d-wlan0-up
	etc-lightdm-lightdm.conf
	etc-NetworkManager-conf.d-swlan0-unmanaged.conf
	usr-libexec-samsungipcd-voicecall.sh
	usr-share-alsa-ucm2-conf.d-Universal7870-I-HiFi.conf
	usr-share-alsa-ucm2-conf.d-Universal7870-I-Universal7870-I.conf
	usr-share-alsa-ucm2-conf.d-Universal7870-I-VoiceCall.conf
	usr-share-pipewire-media-session.d-alsa-monitor.conf
"
subpackages="
	$pkgname-kernel-downstream:kernel_downstream
	$pkgname-kernel-mainline:kernel_mainline
	$pkgname-nonfree-firmware:nonfree_firmware
"

# pulseaudio does not seem to work on this device. Will use pipewire-pulse instead.
# (For downstream kernel, mainline does not have audio yet and I'd like to run Phosh)

build() {
	devicepkg_build $startdir $pkgname
}

package() {
	devicepkg_package $startdir $pkgname
	install -Dm644 etc-conf.d-samsungipcd "$pkgdir"/etc/conf.d/samsungipcd
	install -Dm755 etc-init.d-udev-settle "$pkgdir"/etc/init.d/udev-settle
	install -Dm755 etc-init.d-wlan0-up "$pkgdir"/etc/init.d/wlan0-up
	install -Dm644 etc-lightdm-lightdm.conf "$pkgdir"/etc/lightdm/lightdm.conf
	install -Dm644 etc-NetworkManager-conf.d-swlan0-unmanaged.conf "$pkgdir"/etc/NetworkManager/conf.d/swlan0-unmanaged.conf
	install -Dm755 usr-libexec-samsungipcd-voicecall.sh "$pkgdir"/usr/libexec/samsungipcd/voicecall.sh
	install -Dm644 usr-share-alsa-ucm2-conf.d-Universal7870-I-HiFi.conf "$pkgdir"/usr/share/alsa/ucm2/conf.d/Universal7870-I/HiFi.conf
	install -Dm644 usr-share-alsa-ucm2-conf.d-Universal7870-I-Universal7870-I.conf "$pkgdir"/usr/share/alsa/ucm2/conf.d/Universal7870-I/Universal7870-I.conf
	install -Dm644 usr-share-alsa-ucm2-conf.d-Universal7870-I-VoiceCall.conf "$pkgdir"/usr/share/alsa/ucm2/conf.d/Universal7870-I/VoiceCall.conf
	install -Dm644 usr-share-pipewire-media-session.d-alsa-monitor.conf "$pkgdir"/usr/share/pipewire/media-session.d/alsa-monitor.conf
}

kernel_downstream() {
	pkgdesc="Working: display, touchscreen, wifi, audio, cellular"
	depends="linux-samsung-a6lte pipewire pipewire-pulse"
	devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}

kernel_mainline() {
	pkgdesc="Close-to-mainline WIP (display and touchscreen works)"
	depends="linux-postmarketos-exynos7870"
	devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}

nonfree_firmware() {
	pkgdesc="Wifi firmware"
	depends="firmware-samsung-a6lte"
	mkdir "$subpkgdir"
}

sha512sums="
63be7d1b44093c2d892a92ad788a9a6a9d510c9ca0aac1f249213458402c546560827aaaa23c88497efee4675b15bf47481e551e5de043abaf5ae65e3de9c10a  deviceinfo
3e5bb764529010d2b6b1f2759a7799f665d140aebcee2dd63433e68cd4282e09b5d3b34fb7c21e737595b406501e7f02ece4592651c60e4c2b9419de4aedb438  etc-conf.d-samsungipcd
203b832a7080d5f1351c5e024e444f9fe509f6e0fd4b376a60c7d73359b7e356863a4f15caf9b2e4e733dc44d2971722083e7c69ca94a012eb004b4b8ded9d09  etc-init.d-udev-settle
7caddfe4659c969a33adcc27a760bc78d4f70ca4b7a4a5ec28a6411c12f3e6dd6d427b59f75976a737a5fe0f09806f8b6d65798f6358bd1e1954ad2a28fbfdc8  etc-init.d-wlan0-up
861270c6bc0b2a3e6cd389c21c8c895e62de8cf8bec6fcf23c178f8cbaae855d62b0ee98692671ab4f518d84cb43dd0b2fe46f5a609f65af6a6c06e0fdbb6d0c  etc-lightdm-lightdm.conf
ef24527b13e48a9153643f3713167d3d08486e7de8b4c94d7c446ff380396115890573d8cd4aa5448766d9e779e189833a83e7921081679bd348c3f8a59410af  etc-NetworkManager-conf.d-swlan0-unmanaged.conf
abe1c4a2f59fe862cebef75c54b8806bd86ce06aeb15d8c0699ab1338c9d575cb72a4d5b099f94272b1d9c9c3f4960af209a9e058ea9e57733b7d905dad0d33f  usr-libexec-samsungipcd-voicecall.sh
2169590d10d6123575d43e8ff7dc0d2ba824f8266d9fa75a5b59a4cc5753e47e327368b777082930d6b7a7aed6f57fa6ac2c5a2e816e1e12cd1032a8bb1822b5  usr-share-alsa-ucm2-conf.d-Universal7870-I-HiFi.conf
dc528deb556906adfb89b02b6faa04a8b21358706bb60e2fa51c8a3c909b680fcc02fa425b0cb5d6273595f27dfc9b640e1a8d455657fd6b47652af9e8ec295a  usr-share-alsa-ucm2-conf.d-Universal7870-I-Universal7870-I.conf
3e74de3504f134a2726ee87740c5803bbd578352674d1d7de8b9460e57553100e9c4d322143ee83d3d584884c52eef47762bed41814ff1fca8cd9c4552f39b73  usr-share-alsa-ucm2-conf.d-Universal7870-I-VoiceCall.conf
5e87452f4cd70bbbcfb3e69bae73f2690ba328e7ccde55c47482e8fb1583d807de5bd3d328b1fe6a8733b4de78b2ed0c6ae8cdb60f6bf51ed4362c2174671b3e  usr-share-pipewire-media-session.d-alsa-monitor.conf
"
