blob: 4a8ae72c6bebea30156d5d81523fea3837d47536 (
plain) (
blame)
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
|
#!/bin/sh
set -eu
DEV='vnd0'
MOUNT='mnt'
IMG='openbsd-install.img'
IMG_BS='1K' # 1 KiB
IMG_SIZE=256 # KiB
mkdir -p "$MOUNT"
if [ -z "$(mount | grep -e "^/dev/${DEV}c on .*/$MOUNT type")" ]; then
if [ -z "$(vnconfig -l | grep -e "^$DEV: covering $IMG ")" ]; then
echo '=== dd'
dd 'if=/dev/zero' "of=$IMG" "bs=$IMG_BS" "count=$IMG_SIZE"
echo
echo '=== vnconfig'
vnconfig -v "$DEV" "$IMG"
echo
fi
echo '=== fdisk'
fdisk -viy "/dev/r${DEV}c"
echo
echo '=== disklabel'
echo '/mnt * 100%' | disklabel -vwAT- "${DEV}c"
echo
echo '=== newfs'
newfs "${DEV}c"
echo
echo '=== mount'
mount -v "/dev/${DEV}c" "$MOUNT"
echo
fi
echo '=== copy'
echo 'install.sub'
install -o 0 -g 0 -m 0755 install.sub "$MOUNT/"
echo 'install.md'
install -o 0 -g 0 -m 0644 install.md/amd64 "$MOUNT/install.md"
echo
echo '=== umount'
umount -v "$MOUNT"
echo
echo '=== vnconfig -u'
vnconfig -vu "$DEV"
echo
|