summaryrefslogtreecommitdiff
path: root/arm64-uefi.vmdb
blob: ac274a3b4697867df33afe76281914f5d695a65c (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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# This is a sample VMDB2 input file that specifies a simple system for
# an arm64 machine that boots with UEFI.

steps:
  - mkimg: "{{ output }}"
    size: 1G

  - mklabel: gpt
    device: "{{ output }}"

  - mkpart: primary
    device: "{{ output }}"
    start: 0%
    end: 20M
    tag: efi

  - mkpart: primary
    device: "{{ output }}"
    start: 20M
    end: 100%
    tag: /

  - kpartx: "{{ output }}"

  - mkfs: vfat
    partition: efi

  - mkfs: ext4
    partition: /

  - mount: /

  - unpack-rootfs: /

  - debootstrap: bullseye
    variant: minbase
    arch: arm64
    mirror: http://deb.debian.org/debian
    target: /
    unless: rootfs_unpacked

  - chroot: /
    shell: apt-get clean

  - apt: install
    packages:
      - wget
      - iproute2
      - linux-image-arm64
      - systemd-sysv
    fs-tag: /
    unless: rootfs_unpacked

  - copy-file: /etc/systemd/network/eth0.network
    src: eth0.network
    unless: rootfs_unpacked

  - chroot: /
    shell: systemctl enable systemd-networkd
    unless: rootfs_unpacked

  - cache-rootfs: /
    unless: rootfs_unpacked

  - chroot: /
    shell: |
      sed -i '/^root:[^:]*:/s//root::/' /etc/passwd
      echo arm64-uefi-vmdb2 > /etc/hostname

  - grub: uefi
    tag: /
    efi: efi
    console: serial

# vim: ft=yaml