Signed-off-by: Aster Boese <asterboese@mailbox.org> Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7805>
156 lines
4.9 KiB
Bash
156 lines
4.9 KiB
Bash
# Reference: <https://postmarketos.org/devicepkg>
|
|
maintainer="Jan Jasper de Kroon <jajadekroon@gmail.com>"
|
|
pkgname=device-pine64-pinephonepro
|
|
pkgdesc="PINE64 PinePhone Pro"
|
|
pkgver=8
|
|
pkgrel=1
|
|
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>=25-r1
|
|
fwupd>=1.8.6
|
|
soc-rockchip-rk3399
|
|
"
|
|
makedepends="
|
|
devicepkg-dev
|
|
grub
|
|
grub-efi
|
|
"
|
|
install="$pkgname-openrc.post-install $pkgname-openrc.post-upgrade"
|
|
subpackages="
|
|
$pkgname-nonfree-firmware:nonfree_firmware
|
|
$pkgname-gnome
|
|
$pkgname-openrc
|
|
$pkgname-sway
|
|
$pkgname-x11
|
|
"
|
|
source="
|
|
51_keyboard.gschema.override
|
|
90-modem-eg25.rules
|
|
deviceinfo
|
|
kernel-cmdline.conf
|
|
modules-initfs
|
|
ppkb.sh
|
|
setup-modem.sh
|
|
ucm/HiFi.conf
|
|
ucm/PINE64-PinePhonePro-.conf
|
|
ucm/VoiceCall.conf
|
|
sway-pinephone-keyboard.conf
|
|
x11-pinephone-keyboard.conf
|
|
"
|
|
builddir="$srcdir/build"
|
|
|
|
build() {
|
|
mkdir "$builddir"
|
|
devicepkg_build $startdir $pkgname
|
|
|
|
grub-mkimage \
|
|
--prefix="/grub" \
|
|
--output="$builddir/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 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/
|
|
|
|
# Keyboard config
|
|
install -Dm755 "$srcdir"/ppkb.sh "$pkgdir"/etc/profile.d/ppkb.sh
|
|
}
|
|
|
|
nonfree_firmware() {
|
|
pkgdesc="Wifi, Bluetooth and video-out firmware"
|
|
depends="
|
|
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
|
|
}
|
|
|
|
openrc() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
|
depends="eg25-manager-openrc openrc"
|
|
|
|
mkdir -p "$subpkgdir"
|
|
}
|
|
|
|
sway() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel sway-virtual"
|
|
install -Dm644 "$srcdir"/sway-pinephone-keyboard.conf \
|
|
"$subpkgdir"/etc/sway/config.d/pinephone_keyboard.conf
|
|
}
|
|
|
|
x11() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel xorg-server"
|
|
install -Dm644 "$srcdir"/x11-pinephone-keyboard.conf \
|
|
"$subpkgdir"/usr/share/X11/xorg.conf.d/pinephone-keyboard.conf
|
|
}
|
|
|
|
sha512sums="
|
|
2d68ffe143f633a86670f30e45dbad1cc313f219f22b7cd3319ab44bb7209c20cb29f2ff2c60c92390154af9c9a6815c4186be555364cf31552005eba024c0e7 51_keyboard.gschema.override
|
|
98e9dcfb36dd5843ff441b148e3bffb70757c59601c5f01f55a584e8f017c7ca73f2275c1bff46e4236dd8174df36a43d10abf9b8dadee988b962036846dc6ed 90-modem-eg25.rules
|
|
9ad6ca0bc493e98b9e80a5776f7cf13a8d684e1039911fe9f972ad5f9aa0c6b60dd2a5cfdd0a61e131b26221ccb0190cd40e08a7a03495aa68775bdd07218f3d deviceinfo
|
|
7a17cdb8305dec26f8d78a6c229e9373c2a9d0d63e51d853772b4d78f31c417f217966a75c970121e45045b141b04afa3d7ba4a4f9898a75020512e8e4048d0f kernel-cmdline.conf
|
|
0555be124ef4add4d70b54f550e63b4ff15f099541dbe37c4f61bf64d38bfb8bb8c6b765a0cc6bf361419711b7d1124fd0cbbe8ff459f5e85e6f850d7d2cd88e modules-initfs
|
|
43f67e94491791685cdbb4874bb3034b1d297bdf3d23e7405c45ba8c58de72b4fb6a9943b79f46ef7b8f4dbc4d9db254ebec8eb3453d720a5a8fad277c6a9d88 ppkb.sh
|
|
420ee1d7522d4d56c2909580fd6ba7580483ca5455b13eb6d22e700063ce0c1a5c6d2f5b161dfce0d777636fe9a712aa82f38a0585f2feabea3785b02bae7515 setup-modem.sh
|
|
1684514a6b814a83473e9da8855fd776cf3f31a2be1f8834c370f710428b4ee305559e275be52894d167ccd1e32f8f1c8586f8a072f19e44b46caec9f504d453 HiFi.conf
|
|
9c6edbe7ea387baf9bfa6c4a46b28c4fe274ab0994e0a1640012048407e6679c437de43cc50e6778c9a852132eaa680de3fd4e0256d36455d1dd57aa729ac8be PINE64-PinePhonePro-.conf
|
|
27214fcf94823c3a9deff01c4b7a1cfc6dc8c117d9b5643fea9a15835a04e59524d2a90f522aa3c7440b94cd1b9d9938413abcfdaa838efb008c87eeae7de2e8 VoiceCall.conf
|
|
bb11151e246d16e071761ebb35ca7f8b8cedbad8366e9bac6aed30554a795877cc9dccbe69ecca4b19b6f72bd87e613705f3ae4f2f40d2f9c2d09cc179999d59 sway-pinephone-keyboard.conf
|
|
a7b49a638f664f7682ce6b00eb4d1ae26a429e89354056de05fb49d25fc9555d7f80e6d8f4b0a250878a4e7823860fd156068ed6604ce6cf58badef45c545161 x11-pinephone-keyboard.conf
|
|
"
|