Add kernel updater script (#625)
This commit is contained in:
parent
8d927d43bb
commit
43a87e5c5c
2 changed files with 56 additions and 0 deletions
15
main/postmarketos-update-kernel/APKBUILD
Normal file
15
main/postmarketos-update-kernel/APKBUILD
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
pkgname=postmarketos-update-kernel
|
||||||
|
pkgver=0.0.1
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="kernel updater script for postmarketOS"
|
||||||
|
url="https://github.com/postmarketOS"
|
||||||
|
depends="util-linux"
|
||||||
|
source="update-kernel.sh"
|
||||||
|
arch="noarch"
|
||||||
|
license="GPL3"
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -Dm755 "$srcdir/update-kernel.sh" \
|
||||||
|
"$pkgdir/sbin/pmos-update-kernel"
|
||||||
|
}
|
||||||
|
sha512sums="7d2f3031b1a468accff5a3584bd51d3607141b01e1d2a93d611852476bdeecc3edd7b80f8e3b034012d9b5f09de907af1de02f48586d82d06ee4b5746d4fd286 update-kernel.sh"
|
41
main/postmarketos-update-kernel/update-kernel.sh
Executable file
41
main/postmarketos-update-kernel/update-kernel.sh
Executable file
|
@ -0,0 +1,41 @@
|
||||||
|
#!/bin/ash
|
||||||
|
# shellcheck shell=dash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
--help|-h|'')
|
||||||
|
echo "Usage: pmos-update-kernel [flavor]"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# shellcheck disable=SC1091
|
||||||
|
. /etc/deviceinfo
|
||||||
|
|
||||||
|
FLAVOR=$1
|
||||||
|
METHOD=${deviceinfo_flash_methods:?}
|
||||||
|
case $METHOD in
|
||||||
|
fastboot|heimdall-bootimg)
|
||||||
|
BOOT_PARTITION=$(findfs PARTLABEL="boot")
|
||||||
|
echo "Flashing boot.img..."
|
||||||
|
dd if=/boot/boot.img-"$FLAVOR" of="$BOOT_PARTITION" bs=1M
|
||||||
|
;;
|
||||||
|
heimdall-isorec)
|
||||||
|
KERNEL_PARTITION=$(findfs PARTLABEL="${deviceinfo_flash_heimdall_partition_kernel:?}")
|
||||||
|
INITFS_PARTITION=$(findfs PARTLABEL="${deviceinfo_flash_heimdall_partition_initfs:?}")
|
||||||
|
echo "Flashing kernel..."
|
||||||
|
dd if=/boot/vmlinuz-"$FLAVOR" of="$KERNEL_PARTITION" bs=1M
|
||||||
|
echo "Flashing initramfs..."
|
||||||
|
gunzip -c /boot/initramfs-"$FLAVOR" | lzop | dd of="$INITFS_PARTITION" bs=1M
|
||||||
|
;;
|
||||||
|
0xFFFF)
|
||||||
|
echo -n "No need to use this utility, since uboot loads the kernel directly from"
|
||||||
|
echo " the boot partition. Your kernel should be updated already."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Devices with flash method: $METHOD are not supported."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
echo "Done."
|
Loading…
Reference in a new issue