pmaports/device/community/device-purism-librem5/APKBUILD
Clayton Craft 973b239c3c
device-purism-librem5: upgrade package (MR 1344)
This upgrade includes:

    1) enabling fb in deviceinfo: This was previously disabled for
       debugging purposes, but can be re-enabled now so we get the
       awesome postmarketOS splash screen!
    2) fixing GPS, kinda: the device has changed, so this fixes the gpsd
       config to use the correct device, and includes a udev rule to
       make sure the device is owned by a group that gpsd can use
    3) usbnet working with configfs
    4) disables getty on /dev/ttyGS0, this was usb serial but isn't
       configured now that this uses configfs
    5) uses Mesa from Alpine, instead of mesa-git in pmaports. Upstream
       Mesa has support for the vivante gpu, and no longer need to rely
       on mesa master branch for support.
    6) fix pulseaudio detection of profiles
    7) update the librem5-base version used, includes a udev rule to
       configure DDR freq governor as 'powersave' (reduces power, and
       how much heat this thing puts out)

fixes #524
fixes #526
2020-06-24 10:12:13 +02:00

111 lines
4.5 KiB
Text

# Reference: <https://postmarketos.org/devicepkg>
# Maintainer: Clayton Craft <clayton@craftyguy.net>
pkgname=device-purism-librem5
pkgdesc="Purism Librem 5 Phone"
pkgver=1.4
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
alsa-ucm-conf
gpsd
linux-purism-librem5
mesa-dri-gallium
postmarketos-base
u-boot-librem5
uboot-tools
"
makedepends="devicepkg-dev"
_confver=19
_confdir=$srcdir/librem5-base-v$_confver
source="
https://source.puri.sm/Librem5/librem5-base/-/archive/v$_confver/librem5-base-v$_confver.tar.gz
00-kwin.sh
00-mesa.sh
70-gnss.rules
77-mm-broadmobi-port-types.rules
deviceinfo
flash_script.lst
modprobe.d_rsi.conf
modules-load.d_librem5.conf
uboot-script.cmd
"
subpackages="
$pkgname-plasma
$pkgname-phosh
$pkgname-pulseaudio
$pkgname-modemmanager
"
install="$pkgname.post-install"
build() {
mkimage -A arm64 -C none -O linux -T script -d "$srcdir/uboot-script.cmd" "$srcdir/boot.scr"
devicepkg_build $startdir $pkgname
}
plasma() {
pkgdesc="Plasma Mobile support for the Librem 5"
install_if="$pkgname kwin"
install -D -m644 "$srcdir"/00-kwin.sh "$subpkgdir"/etc/profile.d/00-kwin.sh
}
phosh() {
pkgdesc="Phosh support for the Librem 5"
install_if="$pkgname phosh"
depends="
wys
"
install -D -m644 "$_confdir"/default/org.freedesktop.ModemManager1.pkla \
"$subpkgdir"/var/lib/polkit-1/localauthority/10-vendor.d/org.freedesktop.ModemManager1.pkla
}
modemmanager() {
pkgdesc="ModemManager support for the Librem 5"
install_if="$pkgname modemmanager"
install -D -m644 "$srcdir"/77-mm-broadmobi-port-types.rules \
"$subpkgdir"/lib/udev/rules.d/77-mm-broadmobi-port-types.rules
}
pulseaudio() {
pkgdesc="Pulseaudio support for the Librem 5"
install_if="$pkgname pulseaudio"
# install config files from upstream Purism
mkdir -p "$subpkgdir"/etc/pulse/
cp -r "$_confdir"/default/audio/pulse/daemon.conf.d "$subpkgdir"/etc/pulse/
install -D -m644 "$_confdir"/default/audio/pulse/librem5.pa "$subpkgdir"/etc/pulse/librem5.pa
mkdir -p "$subpkgdir"/usr/share/pulseaudio/alsa-mixer
cp -r "$_confdir"/default/audio/profile-sets "$subpkgdir"/usr/share/pulseaudio/alsa-mixer/
}
package() {
install -D -m644 "$srcdir"/boot.scr \
"$pkgdir"/boot/boot.scr
install -D -m644 "$srcdir"/modprobe.d_rsi.conf "$pkgdir"/etc/modprobe.d/rsi.conf
install -D -m644 "$srcdir"/modules-load.d_librem5.conf "$pkgdir"/etc/modules-load.d/librem5.conf
install -D -m644 "$srcdir"/00-mesa.sh "$pkgdir"/etc/profile.d/00-mesa.sh
install -D -m644 "$srcdir"/flash_script.lst "$pkgdir"/usr/share/uuu/flash_script.lst
# udev
install -D -m644 "$_confdir"/default/hwdb/80-librem5.hwdb "$pkgdir"/lib/udev/hwdb.d/80-librem5.hwdb
install -D -m644 "$_confdir"/debian/librem5-base-defaults.librem5-pm.udev \
"$pkgdir"/usr/lib/udev/rules.d/librem5-pm.rules
install -D -m644 "$srcdir"/70-gnss.rules "$pkgdir"/usr/lib/udev/rules.d/70-gnss.rules
# install audio config files from upstream Purism
mkdir -p "$pkgdir"/usr/share/alsa/ucm
cp -r "$_confdir"/default/audio/ucm "$pkgdir"/usr/share/alsa/
devicepkg_package $startdir $pkgname
}
sha512sums="69b8f46299c7072ce2fe321a8e33d3e55a03fbb8f4387a82e59dbbf9925dbbe270ee070ef69506bfaa4faac1b8228dafb1bb7977459866313d8b75761abd0eed librem5-base-v19.tar.gz
685ec71484a932c59f83f1039d4d18a010a5849342e96d9e15ae8ce64374aac15073f9c51d7d9f270c60e70d2ea15c685b8f528cdc40f991b093b9227cba6a48 00-kwin.sh
5fdf45859f2bb154bcfe7c7341de4d5b239ef43d3f865e30456af073a8ee9d6682515c7e1dd52ddbe3969669d60689ba93c08ead32aadcfb164ff72a02b2e1a4 00-mesa.sh
be0cf9f9e37c33d526fdf5fb61de1b42b3bb9309faf1feb0db51fa9639c3c0b35608977c898130ff60ebf2e8081ac36799b96c748b7efa9dcef7501753bc4890 70-gnss.rules
00355d9ad085a77e157f3c62eb4f1bcac2823d3b341e34d1128edbfb1444fba83e8eacd263ea61da9f6d853f1328ab7fbe5ea63bd08c8a1bc9b8eaf44ae1f1c6 77-mm-broadmobi-port-types.rules
1cb3ca568d96797696b2d69cb156f097e15668ff357b12f37bd8b74a88cb977fa545e2adf7fbeefb87a6d09914e57debea3db7c5230f5800637ff4eaacb3d1dc deviceinfo
d033df2b9125622c946af67dad83070473c86937b5825f57ad272c9145b594071dd6913949127803c45af4ea3226526551718d40739f9f1ee4bfe6446e62c856 flash_script.lst
9dc018f0de523cbfe5a49cbe831aa30e975a8dd34635197bb52582f072ac356ef2c02223fc794d970380091a69a83a74c3fbe34520190c8536e77f9ea98c7659 modprobe.d_rsi.conf
a0740e405781ec6ef765fdc9f5700c95adbb241c45c97b9384ba68cdece662cb216ca5918640042f6e65a5d1b1a9099936382c99b49a44303f7b6d77a075a471 modules-load.d_librem5.conf
3bc45540000e438e525501b2e816282d778fca10d426e42c9a80c0e752618ce50deb12c3edd9f3edc52edd8eb229d16afae7d407fe2c4ba0dbfefbcb4214780c uboot-script.cmd"