feat: boot.img.lz4

This commit is contained in:
Mikaël Cluseau
2018-11-13 14:44:15 +11:00
parent 7ef45a39f9
commit 12ade36fd1
104 changed files with 4963 additions and 127 deletions

View File

@ -1,37 +1,37 @@
#! /bin/sh
if [ $# -ne 2 ]; then
echo "USAGE: $0 <device> <tar url>"
echo "USAGE: $0 <device> <base url>"
fi
dev=$1
tar_url=$2
base_url=$2
: ${MP:=/mnt}
set -ex
mkdir -p $MP
[[ $dev =~ nvme ]] &&
devp=${dev}p ||
devp=${dev}
vgdisplay storage || {
sgdisk --clear $dev
sgdisk \
--new=0:4096:+2G --typecode=0:EF00 -c 0:boot \
--new=0:0:+2M --typecode=0:EF02 -c 0:BIOS-BOOT \
--new=0:0:0 --typecode=0:FFFF -c 0:data \
--hybrid=1:2 \
--print $dev
if vgdisplay storage; then
# the system is already installed, just upgrade
mount -t vfat ${devp}1 $MP
curl ${base_url}/boot.tar |tar xv -C $MP
umount $MP
mkfs.vfat -n DKLBOOT ${devp}1
else
sgdisk --clear $dev
curl ${base_url}/boot.img.lz4 |lz4cat >$dev
sgdisk --move-second-header --new=3:0:0 $dev
pvcreate ${devp}3
vgcreate storage ${devp}3
}
fi
while umount $MP; do true; done
mount -t vfat ${devp}1 $MP
curl $tar_url |tar xv -C $MP
umount $MP