# Reference: pkgname=device-samsung-a6lte pkgdesc="Samsung Galaxy A6 2018" pkgver=4 pkgrel=0 url="https://postmarketos.org" license="MIT" arch="aarch64" options="!check !archcheck" depends=" alsa-utils bootmac mkbootimg postmarketos-base util-linux " replaces=" lightdm " makedepends="devicepkg-dev" install="$pkgname.post-install" source=" $pkgname.post-install $pkgname-downstream-quirks.post-install deviceinfo etc-conf.d-samsungipcd etc-init.d-hciattach-ttySAC0 etc-init.d-udev-settle etc-init.d-wlan0-up etc-lightdm-lightdm.conf etc-NetworkManager-conf.d-swlan0-unmanaged.conf etc-NetworkManager-conf.d-wlan0-preserve-mac.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-wireplumber-wireplumber.conf.d-headroom.conf " subpackages=" $pkgname-kernel-downstream:kernel_downstream $pkgname-kernel-mainline:kernel_mainline $pkgname-nonfree-firmware:nonfree_firmware $pkgname-downstream-quirks:downstream_quirks " # 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-wlan0-up "$pkgdir"/etc/init.d/wlan0-up install -Dm644 etc-lightdm-lightdm.conf "$pkgdir"/etc/lightdm/lightdm.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-wireplumber-wireplumber.conf.d-headroom.conf "$pkgdir"/usr/share/wireplumber/wireplumber.conf.d/headroom.conf } kernel_downstream() { pkgdesc="Working: display, touchscreen, wifi, bluetooth, audio, cellular" depends="linux-samsung-a6lte msm-fb-refresher pipewire-pulse" devicepkg_subpackage_kernel $startdir $pkgname $subpkgname } kernel_mainline() { pkgdesc="Close-to-mainline WIP. Working: display, touchscreen, wifi, bluetooth" depends="dtbtool-exynos linux-postmarketos-exynos7870 mesa-dri-simpledrm" devicepkg_subpackage_kernel $startdir $pkgname $subpkgname } # samsungipcd is technically not a firmware package, but it does use the firmware stored on the on-device RADIO partition # so it makes sense to have it here rather than in the main depends list nonfree_firmware() { pkgdesc="Wifi firmware & kill-switch for the cellular modem" depends="firmware-samsung-a6lte samsungipcd" mkdir "$subpkgdir" } downstream_quirks() { pkgdesc="Hacks to make the downstream kernel work" depends="bluez-deprecated" install_if="$pkgname-kernel-downstream" replaces="bootmac udev-init-scripts-openrc" install="$subpkgname.post-install" install -Dm755 etc-init.d-udev-settle "$subpkgdir"/etc/init.d/udev-settle install -Dm755 etc-init.d-hciattach-ttySAC0 "$subpkgdir"/etc/init.d/hciattach-ttySAC0 install -Dm644 etc-NetworkManager-conf.d-swlan0-unmanaged.conf "$pkgdir"/etc/NetworkManager/conf.d/swlan0-unmanaged.conf install -Dm644 etc-NetworkManager-conf.d-wlan0-preserve-mac.conf "$pkgdir"/etc/NetworkManager/conf.d/wlan0-preserve-mac.conf # we run bootmac ourselves and don't want it to trigger from the udev rule # so remove the rule install -Dm755 /dev/null "$subpkgdir"/usr/lib/udev/rules.d/90-bootmac.rules } sha512sums=" e787dd30a667fd886a46bb0b670bd2771a8fc78fddc39bb86405fdda6024bc1211b82f89664b7cfc622adf2968b9cd09b0eb3d2ed607148bf3549dd783e6f752 device-samsung-a6lte.post-install 9c0f939c97582d9c03fb62386527569b7f08dd6c8350c8ac6cf9f70d6d5da61d5fc95997b413c4fdb671379ab35caedb631b9af33c7a1e8f3388b3fb56d9b435 device-samsung-a6lte-downstream-quirks.post-install 95b46ef54f2b92edefcdc3742a1d36b7c52066daeeb5002f25b4de144d52e3cda8e3981c8b44d608dcfaf6ec5a89066d1e53e9c1eccbaf03c262b6c162efe532 deviceinfo 3e5bb764529010d2b6b1f2759a7799f665d140aebcee2dd63433e68cd4282e09b5d3b34fb7c21e737595b406501e7f02ece4592651c60e4c2b9419de4aedb438 etc-conf.d-samsungipcd 5e23fd88baa4694ef48ec9590f948e11101be1e472c626f88011a182534a16520eb00c95a10ea77a773123892036188e2e0783540f3b8f8fe158da5e06568e02 etc-init.d-hciattach-ttySAC0 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 5c3a692f22a29fca792c114c6d94ff1bf0d6921f068f207a2894a8f99c73dcc319e7c803ed7adfe64eb3e60088f37e2a2730118b2ed57aa01b35415664085567 etc-NetworkManager-conf.d-wlan0-preserve-mac.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 be561f0573c73bdcf37fbd8e4659e92577a0818aafb75d73e7cbf1dd8980f29313170703074ee0cc9cc5b5a07cd7ac8ced07dfdc77b0b31a0cd34d66ae0473a4 usr-share-wireplumber-wireplumber.conf.d-headroom.conf "