179 lines
7.1 KiB
Text
179 lines
7.1 KiB
Text
# Reference: <https://postmarketos.org/devicepkg>
|
|
# Maintainer: Martijn Braam <martijn@brixit.nl>
|
|
# Co-Maintainer: Luca Weiss <luca@z3ntu.xyz>
|
|
# Co-Maintainer: Bart Ribbers <bribbers@disroot.org>
|
|
# Co-Maintainer: Clayton Craft <clayton@craftyguy.net>
|
|
pkgname=device-pine64-pinephone
|
|
pkgver=0.25
|
|
pkgrel=1
|
|
pkgdesc="PINE64 PinePhone"
|
|
url="https://postmarketos.org"
|
|
license="MIT"
|
|
arch="aarch64"
|
|
options="!check !archcheck"
|
|
subpackages="
|
|
$pkgname-nonfree-firmware:nonfree_firmware
|
|
$pkgname-phosh
|
|
$pkgname-shelli
|
|
$pkgname-plasma-mobile:plasma_mobile
|
|
"
|
|
depends="
|
|
alsa-ucm-conf
|
|
atinout
|
|
eg25-manager
|
|
eg25-manager-openrc
|
|
gpsd
|
|
iw
|
|
linux-postmarketos-allwinner
|
|
mesa-dri-gallium
|
|
mesa-egl
|
|
postmarketos-base
|
|
u-boot-pinephone
|
|
uboot-tools
|
|
"
|
|
makedepends="devicepkg-dev"
|
|
install="$pkgname.post-install $pkgname.post-upgrade"
|
|
source="
|
|
00_alsa_pinephone_dshare.conf
|
|
10-pinephone-proximity.rules
|
|
60-flashlight.rules
|
|
70-wifi-pm.rules
|
|
90-modem-eg25.rules
|
|
deviceinfo
|
|
gpsd_device-hook.sh
|
|
gpsd_pinephone.initd
|
|
hwtest.ini
|
|
kirigami-lowpower.sh
|
|
modemmanager.conf
|
|
setup-modem.sh
|
|
eg25-pinephone-1.0.toml
|
|
eg25-pinephone-1.1.toml
|
|
eg25-pinephone-1.2.toml
|
|
sysrq.conf
|
|
uboot-script.cmd
|
|
ucm/HiFi.conf
|
|
ucm/PinePhone.conf
|
|
ucm/VoiceCall.conf
|
|
"
|
|
# workaround to purge the -elogind subpackage that was previously
|
|
# created/installed
|
|
provides="$pkgname-elogind=$pkgver-r$pkgrel"
|
|
|
|
build() {
|
|
devicepkg_build $startdir $pkgname
|
|
mkimage \
|
|
-A arm \
|
|
-O linux \
|
|
-T script \
|
|
-C none \
|
|
-a 0 \
|
|
-e 0 \
|
|
-n postmarketos \
|
|
-d "$srcdir"/uboot-script.cmd \
|
|
"$srcdir"/boot.scr
|
|
}
|
|
|
|
package() {
|
|
devicepkg_package $startdir $pkgname
|
|
install -Dm644 "$srcdir"/boot.scr \
|
|
"$pkgdir"/boot/boot.scr
|
|
|
|
# Make /boot/allwinner/sun50i-a64-pine64-pinephone*.dtb resolve to
|
|
# /boot/sun50i-a64-pine64-pinephone*.dtb. This is because the device tree
|
|
# names in u-boot include the vendor and the one in postmarketOS doesn't.
|
|
ln -s .. "$pkgdir"/boot/allwinner
|
|
|
|
install -Dm644 "$srcdir"/hwtest.ini \
|
|
"$pkgdir"/usr/share/hwtest.ini
|
|
|
|
# GPS
|
|
install -Dm755 "$srcdir"/gpsd_pinephone.initd \
|
|
"$pkgdir"/etc/init.d/gpsd_pinephone
|
|
install -Dm755 "$srcdir"/gpsd_device-hook.sh \
|
|
"$pkgdir"/etc/gpsd/device-hook
|
|
install -D -m644 "$srcdir"/10-pinephone-proximity.rules \
|
|
"$pkgdir"/usr/lib/udev/rules.d/10-pinephone-proximity.rules
|
|
|
|
# Fix "sysrq: HELP..." messages in dmesg while playing audio
|
|
# (Headphone output interferes with the serial console on the headphone
|
|
# jack)
|
|
install -Dm644 "$srcdir"/sysrq.conf \
|
|
"$pkgdir"/etc/sysctl.d/sysrq.conf
|
|
|
|
# Alsa usecase manager config
|
|
install -Dm644 "$srcdir"/PinePhone.conf \
|
|
"$pkgdir"/usr/share/alsa/ucm2/PinePhone/PinePhone.conf
|
|
install -Dm644 "$srcdir"/HiFi.conf \
|
|
"$pkgdir"/usr/share/alsa/ucm2/PinePhone/HiFi.conf
|
|
install -Dm644 "$srcdir"/VoiceCall.conf \
|
|
"$pkgdir"/usr/share/alsa/ucm2/PinePhone/VoiceCall.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
|
|
install -Dm644 "$srcdir"/eg25-pinephone-1.0.toml \
|
|
"$pkgdir"/etc/eg25-manager/pine64,pinephone-1.0.toml
|
|
install -Dm644 "$srcdir"/eg25-pinephone-1.1.toml \
|
|
"$pkgdir"/etc/eg25-manager/pine64,pinephone-1.1.toml
|
|
install -Dm644 "$srcdir"/eg25-pinephone-1.2.toml \
|
|
"$pkgdir"/etc/eg25-manager/pine64,pinephone-1.2.toml
|
|
|
|
# Wifi / PM
|
|
install -Dm644 "$srcdir"/70-wifi-pm.rules -t \
|
|
"$pkgdir"/usr/lib/udev/rules.d/
|
|
}
|
|
|
|
nonfree_firmware() {
|
|
pkgdesc="Wifi, Bluetooth and Autofocus firmware"
|
|
depends="
|
|
linux-firmware-rtlwifi
|
|
linux-firmware-rtl_bt
|
|
firmware-pine64-rtl8723bt
|
|
firmware-pine64-ov5640
|
|
"
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
phosh() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-ui-phosh"
|
|
depends="wys-pinephone"
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
plasma_mobile() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel kirigami2"
|
|
install -Dm644 "$srcdir"/60-flashlight.rules -t "$subpkgdir"/usr/lib/udev/rules.d/
|
|
install -Dm644 "$srcdir"/kirigami-lowpower.sh "$subpkgdir"/etc/profile.d/kirigami-lowpower.sh
|
|
}
|
|
|
|
shelli() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel shelli"
|
|
|
|
# Alsa default audio must be stereo
|
|
install -Dm644 "$srcdir"/00_alsa_pinephone_dshare.conf \
|
|
"$subpkgdir"/etc/alsa/conf.d/00_alsa_pinephone_dshare.conf
|
|
}
|
|
sha512sums="5736444fd38ab4351d148ae96c479085f469bd1e51a692fb1827f8ac921a584389f7696985e1fba21c2deac88709910531f4ece282f45ff54e590c2b54b84ba3 00_alsa_pinephone_dshare.conf
|
|
b53cc6f2531854cc9c1e4c334185a20551d64c8675ee8a8eaa03b99d80808fad421a0f6e99e5be212a974d88c85f461a71ba59ac59c29f298c82f211e3be1ef4 10-pinephone-proximity.rules
|
|
9170da7ac869254644f2fc8d914102f2c16e917dbeb53e33b96c76936711d0540f55fa5c2526d73d5fe244500bc2728bc9d629e2524cf52c573d11e833aee666 60-flashlight.rules
|
|
8b6fa7b12c15f439c561901f3ffe24a1ef2a0c343401c0a79281060854ab29e08a1fb5e7adae8684b12aa9f535ed99e2dad993dce9724822cb0fbf2497dd86e5 70-wifi-pm.rules
|
|
7dc2b7c20b4a2b15f597a6417bd01797643dad84a3683b0dee648e030fb6326e9d020307643fdcdf1bb43fc44af9975697e417003bd359610bae2d8ce614fc00 90-modem-eg25.rules
|
|
018deaf7c42753257bb7abbd4e7977bcb74ad8ef6a9ff1fbae12240ccad262c6982454553f5e0073d98a561d5eb1f2150bf24be36cfbe78ad822886b3972cf5a deviceinfo
|
|
ccbc83b84b5028bc2c8e526759004ce71b50b2675ecffee98f5676c70a3332197a231ff9d2fd46444dd3c0a637ec08ce6125b18240fe6bfc13f624a15192e648 gpsd_device-hook.sh
|
|
1017fc3f325227da58c77abdc59e9735288d91a7ccc63ec784fe0241c523786b617a11ce8045dab2a74ca12a7dd70aaa334af91836418db1e96a3266fecaa4fd gpsd_pinephone.initd
|
|
3dd6d612c381cb0002049d1974d8fb5aa5a53a1eb4d6bcbf62eb2ad52cfdc45f0f6ad24a699716d3513b0371aa1316f25dc72afc10d7176cc3b99d0965c3f030 hwtest.ini
|
|
6bc22b369b2d9058b702ac7a7862abaefaf8179b43491868bdb008d181b59104f1ded89db1da51a810e1ccdc803a579b924a438674283a65afc3a9c4d2894caf kirigami-lowpower.sh
|
|
3d6e9030125afc1dc3b654d1ce5d124ddd3ef3ad1a4d3e46c8168cf3f8a3762ffd0c75427759740ae26bd5c4f32b6704b7cf7e5806434884560fa704b7e72921 modemmanager.conf
|
|
fa063e2863afc48e627acc1a5b213a81499ba1dd30325f74f118a44e3964aec7e597b1f4bd318b7cf5bf14f27daf88e6ad9fc277ab106cbbe1189fdcc650d5c1 setup-modem.sh
|
|
f9386dfd902028988c9659bd6e001ba46ea87b35f5dce7723dd4cfbe971928c75f6fef9d706201d62cc24cca2d499a39c8c0fed58a3403e2cb848eb1aece0e19 eg25-pinephone-1.0.toml
|
|
cf7d4a611701745762f19746e40d87b6df14a6b24f2d466c4177b7ab5ee87a048bab719a6c66722198020e1aa73d3e12d3715b5588bc33bf207f3e86040dcc44 eg25-pinephone-1.1.toml
|
|
8adeca98002ff8ee850512f72f2e126348cfa817a1aefdd77d103aee76a6b2e6a024deffcbeef1235ee2fcc766003f55b67cedb3eb06ca92a58d5b81f2bf6848 eg25-pinephone-1.2.toml
|
|
f4b5509fd6a8b23f3667f5e7262b3a19c607a37cb9eaf7d0e93eb826d45c26ec12df4810879bacb8e4042bb83cc80b2b436224c8d47b6d67361369a724bbf7ee sysrq.conf
|
|
9d4bcc02c6c501b3a205516c8f276ef4293d88edea61ac725887ec28f9f6788320e9f9edd7f1cf29bbf6122acfad2ef5b3ad5e4b33763fe867bd23d2ac17ed5c uboot-script.cmd
|
|
de88fc198c11637d9c6465f8a6fb4deab3d0802bdb52ffaa9a08833aa0ef63689b674b12b44cb314f3870d9d21fc3ae55f8db03c9a838860301be60a88e48835 HiFi.conf
|
|
e852b48a687f9b2a0eca444aa3d00a1818aead9f5e5d28e070b51c9d6f8ec648e66f1d88e2bfa94d74533f9ffb9aacc1703da2a06693f85fa04ff97fd7528012 PinePhone.conf
|
|
6c6ffd481a1ac66864f2c713ac4c16c8e112e49a6bc2ff3bb0d492426504cad0e953275a8ed13f247ef8c95bdd1814d9aea934ff76bb4dfada6b1b7b2eedea19 VoiceCall.conf"
|