blob: d76a0941629a2326c1fc0efa565435dd2768ccb6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
#!/bin/sh
[ "$#" -lt 1 ] && exit 0
# copied from alpine-conf/setup-disk.in
_blkid() {
blkid | grep "^$1:"
}
uuid_or_device() {
local i=
case "$1" in
/dev/md*) echo "$1" && return 0;;
esac
for i in $(_blkid "$1"); do
case "$i" in
UUID=*) eval $i;;
esac
done
if [ -n "$UUID" ]; then
echo "UUID=$UUID"
else
echo "$1"
fi
}
find_mount_dev() {
local mnt="$1"
awk "\$2 == \"$mnt\" { print \$1 }" /proc/mounts | tail -n 1
}
zipl_gen_conf() {
KERNEL_FLAVOR="-vanilla"
RAMDISK_FLAVOR="-vanilla"
rootdev=$(find_mount_dev "/")
root_uuid=$(uuid_or_device $rootdev)
[ -n "$root_uuid" ] && root_parm="root=$root_uuid"
cat > /etc/zipl.conf <<- EOF
[defaultboot]
defaultauto
prompt=1
timeout=5
default=linux
target=/boot
[linux]
image=/boot/vmlinuz$KERNEL_FLAVOR
ramdisk=/boot/initramfs$RAMDISK_FLAVOR
parameters="$root_parm rd.md=0 rd.dm=0 rd.luks=0 KEYTABLE=us LANG=en_US.UTF-8"
EOF
}
zipl_run() {
zipl_gen_conf
/sbin/zipl --verbose
}
"$1"
|