name: build on: workflow_dispatch: push: branches: - main jobs: build: name: Build strategy: fail-fast: false matrix: app: - calibre - dotnet - go - java - mp3tag - musikcube - musl - node - pinta - pypy - renpy - rust - tex - wine runs-on: ubuntu-latest steps: - name: Checkout repo uses: actions/checkout@v4 - name: Install packaging dependencies run: sudo apt install -y aria2 libarchive-tools - name: Setup DwarFS run: | sudo cp appdwarf /bin sudo wget https://github.com/mhx/dwarfs/releases/download/v0.9.6/dwarfs-universal-0.9.6-Linux-x86_64-clang -O /bin/mkdwarfs sudo chmod +x /bin/mkdwarfs - name: Build image env: GH_TOKEN: ${{ github.token }} run: | cd apps ./mk${{ matrix.app }} - name: Upload build artifact uses: actions/upload-artifact@v4 with: name: ${{ matrix.app }} path: | bin/${{ matrix.app }} arch: name: Arch strategy: fail-fast: false matrix: app: - { name: wine, pkgs: dxvk-async-git mono vkd3d-proton-mingw-git wine-gecko wine-mono wine-staging-wow64 winetricks } - { name: emus, pkgs: ares-emu-avx-git cemu citra-canary-git ryujinx suyu-dev-qt6-git } runs-on: ubuntu-latest container: archlinux:latest steps: - name: Checkout repo uses: actions/checkout@v4 - name: Update system base run: | pacman -Syu --noconfirm pacman -S --noconfirm aria2 base-devel git libarchive parallel wget pacman -S --noconfirm budgie-desktop vulkan-intel - name: Add Chaotic-AUR for additional depends run: | pacman-key --init pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com pacman-key --lsign-key 3056513887B78AEB pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst' 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst' printf '[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist\n' >> /etc/pacman.conf printf '[multilib]\nInclude = /etc/pacman.d/mirrorlist\n' >> /etc/pacman.conf pacman -Syu --noconfirm - name: Setup DwarFS run: | sudo cp appdwarf /bin sudo wget https://github.com/mhx/dwarfs/releases/download/v0.9.6/dwarfs-universal-0.9.6-Linux-x86_64-clang -O /bin/mkdwarfs sudo chmod +x /bin/mkdwarfs - name: Build image run: | cd apps ./mkpacman ${{ matrix.app.pkgs }} pkg1=$(echo ${{ matrix.app.pkgs }} | cut -d\ -f1) mv bin/$pkg1 bin/${{ matrix.app.name }} - name: Upload build artifact uses: actions/upload-artifact@v4 with: name: arch-${{ matrix.app.name }} path: | bin/${{ matrix.app.name }}