Skip to content

Commit

Permalink
Add arm64 ostree support
Browse files Browse the repository at this point in the history
Signed-off-by: Charles Short <[email protected]>
  • Loading branch information
Charles Short committed Mar 27, 2024
1 parent 729eae6 commit 2abc8ee
Show file tree
Hide file tree
Showing 7 changed files with 130 additions and 0 deletions.
52 changes: 52 additions & 0 deletions config/uefi-arm64-ostree/image.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
name: pablo-ostree-arm64
description: "ARM64 ostree configuration."
architecture: arm64
version: 0.1
schemaVersion: 1
params:
version: $[version}
tarball: pablo-rootfs-${version}-${architecture}.tar.gz
repo: /var/www/html/repo
image: pablo-image-ostree-${version}-${architecture}.img
branch: exampleos/testing
phases:
- name: "Create rootfs"
stage: bootstrap
options:
suite: bookworm
target: ${params.tarball}
architecture: ${architecture}
setup_hooks:
- 'sync-in overlay/debian/ /'
customize_hooks:
- echo 'root:root' | chroot "$1" chpasswd
- systemctl enable --root="$1" systemd-networkd
- chroot $1 echo "localhost" > $1/etc/hostname
- mkdir -p $1/efi
packages: !include manifests/software.yaml
- name: "Create ostree repository"
stage: ostree_init
options:
repo: ${params.repo}
mode: archive-z2
- name: "Create an ostree branch."
stage: ostree_prep
options:
repo: ${params.repo}
branch: ${params.branch}
target: ${params.tarball}
- name: "Partition and format the disk."
stage: parted
options: !include manifests/parted.yaml
- name: "Deploy ostree branch to the disk."
stage: ostree_deploy
options:
repo: ${params.repo}
branch: ${params.branch}
image: ${params.image}
kernel_args:
- root=LABEL=ROOT
- rw
- console=tty0
- console=ttyS0,115200n8
23 changes: 23 additions & 0 deletions config/uefi-arm64-ostree/manifests/parted.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
image:
name: ${params.image}
size: 10G
label: gpt
partitions:
- name: EFI
start: 0%
end: 256MB
flags: [boot, esp]
- name: ROOT
start: 256MB
end: 100%
flags: []
filesystems:
- name: EFI
label: EFI
fs: vfat
options: []
- name: ROOT
label: ROOT
fs: ext4
options: []
42 changes: 42 additions & 0 deletions config/uefi-arm64-ostree/manifests/software.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
- systemd-boot
- dracut
- linux-image-arm64
- ca-certificates
- ostree
- ostree-boot
- python3-minimal
- python3-pip
- vim
- sudo
- net-tools
- openssh-client
- openssh-server
- procps
- less
- dbus
- policykit-1
- curl
- wget
- ca-certificates
- libostree-1-1
- libostree-dev
- git-core
- rsync
- bubblewrap
- python3-apt
- python3-all
- python3-pip
- python3-pbr
- python3-gi
- python3-click
- python3-systemd
- mmdebstrap
- gobject-introspection
- gir1.2-ostree-1.0
- software-properties-common
- libnss-systemd
- gir1.2-glib-2.0
- libcairo2-dev
- libgirepository1.0-dev
- python3-dev
Empty file.
2 changes: 2 additions & 0 deletions config/uefi-arm64-ostree/overlay/debian/etc/pip.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[global]
break-system-packages = true
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[Match]
Name=en*

[Network]
DHCP=yes
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[Match]
Name=e*
KernelCommandLine=!nfsroot

[Network]
DHCP=yes

0 comments on commit 2abc8ee

Please sign in to comment.