Skip to content

set variable to sanitized stuff #36

set variable to sanitized stuff

set variable to sanitized stuff #36

Workflow file for this run

name: Build Live ISO images (with Katsu)
env:
DNF_PKGS: |
git
xorriso
rpm
limine
systemd
btrfs-progs
e2fsprogs
xfsprogs
dosfstools
grub2
parted
util-linux-core
systemd-container
grub2-efi
uboot-images-armv8
uboot-tools
rustc
qemu-user-static-aarch64
qemu-user-binfmt
qemu-kvm
qemu-img
cargo
systemd-devel
mkpasswd
clang-devel
moby-engine
squashfs-tools
erofs-utils
grub2-tools
grub2-tools-extra
isomd5sum
on:
push:
workflow_dispatch:
jobs:
image:
strategy:
fail-fast: false
matrix:
variant:
- base/base-disk-x86_64
- base/base-disk-aarch64
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:f38
# Pass /dev from host to container
# Very hacky, but it works
# Microsoft/Github, if you're reading this,
# I'm sorry.
options: --privileged -v /dev:/dev
steps:
- name: Install dependencies
run: |
dnf install -y $DNF_PKGS
dnf clean all
- name: Clone Katsu
uses: actions/checkout@v3
with:
repository: FyraLabs/katsu
ref: main
path: katsu
- name: Build Katsu
run: |
pushd katsu
cargo build --release
cp target/release/katsu /usr/bin/katsu
popd
- name: Checkout
uses: actions/checkout@v2
- name: Build ISO
run: |
pushd katsu
katsu --output=disk-image modules/${{ matrix.variant }}.yaml
xz -z9 katsu-work/image/katsu.img -c > katsu-work/image/katsu-arm.img.xz
popd
- name: sanitize artifact name
run: |
name=$(echo ${{ matrix.variant }} | sed 's/\//-/g')
# set github variable
echo artifact=$name >> $GITHUB_ENV
- name: Upload ISO
uses: actions/upload-artifact@v3
with:
name: ${{ env.artifact }}-disk
path: katsu/katsu-work/image/*.img.xz
live-iso:
strategy:
fail-fast: false
matrix:
variant:
- flagship/flagship-live
- gnome/gnome-live
- kde/kde-live
- pantheon/pantheon-live
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:f38
# Pass /dev from host to container
# Very hacky, but it works
# Microsoft/Github, if you're reading this,
# I'm sorry.
options: --privileged -v /dev:/dev
steps:
- name: Install dependencies
run: |
dnf install -y $DNF_PKGS
dnf clean all
- name: Clone Katsu
uses: actions/checkout@v3
with:
repository: FyraLabs/katsu
ref: main
path: katsu
- name: Build Katsu
run: |
pushd katsu
cargo build --release
cp target/release/katsu /usr/bin/katsu
popd
- name: Checkout
uses: actions/checkout@v2
- name: Build ISO
run: |
pushd katsu
katsu --output=iso modules/${{ matrix.variant }}.yaml
popd
- name: sanitize artifact name
run: |
name=$(echo ${{ matrix.variant }} | sed 's/\//-/g')
# set github variable
echo artifact=$name >> $GITHUB_ENV
- name: Upload ISO
uses: actions/upload-artifact@v3
with:
name: ${{ env.artifact }}-live
path: katsu/out.iso