attempt 0 at making rootfs from docker

This commit is contained in:
Ward from fusion-voyager-3 2024-08-01 02:32:19 +03:00
parent 2a8a22c19d
commit 9b7a028614
4 changed files with 88 additions and 0 deletions

1
.github/push-iso vendored Normal file
View File

@ -0,0 +1 @@
1

37
.github/workflows/push-iso.yml vendored Normal file
View File

@ -0,0 +1,37 @@
name: Push ISO
on:
push:
branches:
- main
paths:
- '.github/push-iso'
jobs:
build:
runs-on: ubuntu-latest
container:
image: ubuntu:latest
volumes:
- /proc:/proc
options: --privileged -it
steps:
- uses: actions/checkout@v3
- name: Install SSH key
uses: shimataro/ssh-key-action@v2
with:
key: ${{ secrets.SSH_KEY }}
name: id_rsa
known_hosts: ${{ secrets.KNOWN_HOSTS }}
if_key_exists: replace
- name: Update APT Cache
run: apt-get update -y
- name: Get ISO Build Dependencies
run: ./generate_roofs_from_docker.sh
- name: Generate Image ROOTFS from PikaOS Docker image
run: ./generate_roofs_from_docker.sh

31
generate_roofs_from_docker.sh Executable file
View File

@ -0,0 +1,31 @@
#! /bin/bash
set -e
mkdir -p "./LIVE_BOOT/rootfs"
ROOTFS_PATH="./LIVE_BOOT/rootfs"
# Pull and mount docker image
podman pull ghcr.io/pikaos-linux/pikaos-base:canaryv3
podman image mount pikaos-linux/pikaos-base:canaryv3 > ./docker-merged-path
DOCKER_MERGED_PATH=$(cat ./docker-merged-path)
# Safely Copy merged path contents to rootfs
rsync -av $DOCKER_MERGED_PATH/* $ROOTFS_PATH/
# Clean up Docker specific things
rm -rfv $ROOTFS_PATH/etc/apt/preferences.d/*docker*
rm -rfv $ROOTFS_PATH/etc/dpkg/dpkg.cfg.d/*docker*
# Setup hostname
echo "pikaos" | tee "$ROOTFS_PATH/etc/hostname"
ls $ROOTFS_PATH/

19
get_iso_build_dep.sh Executable file
View File

@ -0,0 +1,19 @@
#! /bin/bash
set -e
export DEBIAN_FRONTEND="noninteractive"
apt-get install -y --option Dpkg::Options::="--force-confnew" \
debootstrap \
squashfs-tools \
xorriso \
isolinux \
syslinux-efi \
grub-pc-bin \
grub-efi-amd64-bin \
grub-efi-ia32-bin \
mtools \
dosfstools \
rsync \
podman