System Installation Testing #20
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Athena Arch Installation | |
on: | |
workflow_dispatch: | |
jobs: | |
install: | |
runs-on: ubuntu-latest | |
container: | |
image: athenaos/base-devel:latest | |
options: --privileged | |
steps: | |
- name: Install dependencies | |
run: pacman -Syyu --noconfirm aegis udev | |
- name: Retrieve install configuration | |
run: curl -O https://raw.githubusercontent.com/Athena-OS/athena/refs/heads/main/tests/arch.json | |
- name: Create a raw disk image | |
run: | | |
dd if=/dev/zero of=disk.img bs=1M count=15360 # Create a 15GB disk image | |
loop_device=$(sudo losetup --find --partscan --show disk.img) | |
losetup -d "$loop_device" | |
echo "Loop Device: $loop_device" | |
losetup "$loop_device" disk.img # Attach the file as a loopback device | |
parted -s "$loop_device" -- mklabel gpt | |
parted -s "$loop_device" -- mkpart ESP fat32 1MiB 512MiB | |
parted -s "$loop_device" -- set 1 esp on | |
parted -s "$loop_device" -- mkpart primary btrfs 512MiB 100% | |
sed -i "s#/dev/loop0#$loop_device#g" arch.json | |
- name: Trigger udev to create partition device nodes | |
run: | | |
sudo udevadm trigger | |
sudo udevadm settle | |
- name: Run the installer | |
run: aegis-arch config arch.json |