pmaports/device/community/device-pine64-pinephonepro/APKBUILD

131 lines
3.9 KiB
Text

# Reference: <https://postmarketos.org/devicepkg>
# Maintainer: Martijn Braam <martijn@brixit.nl>
pkgname=device-pine64-pinephonepro
pkgdesc="PINE64 PinePhone Pro"
pkgver=3.6
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
# pmb:strict is required for grub
options="!check !archcheck pmb:strict"
depends="
alsa-ucm-conf>=1.2.6.2
eg25-manager>=0.4.2
linux-pine64-pinephonepro
postmarketos-base
fwupd>=1.8.6
"
makedepends="
devicepkg-dev
grub
grub-efi
"
subpackages="
$pkgname-nonfree-firmware:nonfree_firmware
$pkgname-gnome
"
install="
$pkgname.post-install
$pkgname.post-upgrade
"
source="
51_keyboard.gschema.override
90-modem-eg25.rules
deviceinfo
modemmanager.conf
ppkb.sh
setup-modem.sh
ucm/HiFi.conf
ucm/PINE64-PinePhonePro-.conf
ucm/VoiceCall.conf
"
build() {
devicepkg_build $startdir $pkgname
grub-mkimage \
--prefix="/grub" \
--output="bootaa64.efi" \
--format="arm64-efi" \
--compression="xz" \
\
all_video \
cat \
configfile \
disk \
echo \
efi_gop \
fat \
gzio \
help \
iso9660 \
linux \
ls \
normal \
part_gpt \
part_msdos \
search \
search_label \
test \
true
}
package() {
devicepkg_package $startdir $pkgname
# Grub / bootloader
install -Dm644 -t "$pkgdir"/boot/EFI/Boot \
"$srcdir"/bootaa64.efi
# Alsa usecase manager config
install -Dm644 -t "$pkgdir"/usr/share/alsa/ucm2/PinePhonePro \
"$srcdir"/HiFi.conf \
"$srcdir"/PINE64-PinePhonePro-.conf \
"$srcdir"/VoiceCall.conf
mkdir -p "$pkgdir"/usr/share/alsa/ucm2/conf.d/simple-card
ln -s /usr/share/alsa/ucm2/PinePhonePro/PINE64-PinePhonePro-.conf \
"$pkgdir"/usr/share/alsa/ucm2/conf.d/simple-card/PINE64-PinePhonePro-.conf
# Below link is a temporary workaround until next Tow-Boot Release
# https://github.com/Tow-Boot/Tow-Boot/pull/171
ln -s /usr/share/alsa/ucm2/PinePhonePro/PINE64-PinePhonePro-.conf \
"$pkgdir"/usr/share/alsa/ucm2/conf.d/simple-card/simple-card.conf
# Modem
install -Dm755 "$srcdir"/setup-modem.sh \
"$pkgdir"/usr/bin/pinephone_setup-modem
install -Dm644 "$srcdir"/90-modem-eg25.rules -t \
"$pkgdir"/usr/lib/udev/rules.d/
install -Dm644 "$srcdir"/modemmanager.conf \
"$pkgdir"/etc/conf.d/modemmanager
# Keyboard config
install -Dm755 "$srcdir"/ppkb.sh "$pkgdir"/etc/profile.d/ppkb.sh
}
nonfree_firmware() {
pkgdesc="Wifi, Bluetooth and video-out firmware"
depends="
firmware-pine64-pinebookpro
linux-firmware-brcm
linux-firmware-rockchip
"
mkdir "$subpkgdir"
}
gnome() {
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-base-ui-gnome"
install -Dm644 "$srcdir"/51_keyboard.gschema.override -t \
"$subpkgdir"/usr/share/glib-2.0/schemas
}
sha512sums="
2d68ffe143f633a86670f30e45dbad1cc313f219f22b7cd3319ab44bb7209c20cb29f2ff2c60c92390154af9c9a6815c4186be555364cf31552005eba024c0e7 51_keyboard.gschema.override
98e9dcfb36dd5843ff441b148e3bffb70757c59601c5f01f55a584e8f017c7ca73f2275c1bff46e4236dd8174df36a43d10abf9b8dadee988b962036846dc6ed 90-modem-eg25.rules
969e0b786e1697f1071e443e1bc5c08253b78c0ecdb410cfc70eeb4216ac464c18d02f543bd5d707fc8bb4ecbff52a6b4be18a94c26e6522b12ec0a38cb0eaaf deviceinfo
c5006c38828eb519917d57756f7831c4552feffef2d4922a384073f6a551535f615ad397d784e313818e0b943e1f6212bcca0aff9ce37da60b29547b1631f24b modemmanager.conf
43f67e94491791685cdbb4874bb3034b1d297bdf3d23e7405c45ba8c58de72b4fb6a9943b79f46ef7b8f4dbc4d9db254ebec8eb3453d720a5a8fad277c6a9d88 ppkb.sh
420ee1d7522d4d56c2909580fd6ba7580483ca5455b13eb6d22e700063ce0c1a5c6d2f5b161dfce0d777636fe9a712aa82f38a0585f2feabea3785b02bae7515 setup-modem.sh
1684514a6b814a83473e9da8855fd776cf3f31a2be1f8834c370f710428b4ee305559e275be52894d167ccd1e32f8f1c8586f8a072f19e44b46caec9f504d453 HiFi.conf
9c6edbe7ea387baf9bfa6c4a46b28c4fe274ab0994e0a1640012048407e6679c437de43cc50e6778c9a852132eaa680de3fd4e0256d36455d1dd57aa729ac8be PINE64-PinePhonePro-.conf
e4d721163a844c68c0240be62a4692e7b9983054aee6d717f70687b901f569c6008e0c64a5bddf37e20f41b3936b4ef80909d7cbf09feeb0813303b3b46de80f VoiceCall.conf
"