name: Build ISO on: workflow_dispatch: jobs: build: runs-on: ubuntu-latest container: image: artixlinux/artixlinux:base options: --privileged steps: - uses: actions/checkout@v4 - name: Install dependencies run: | pacman -Syu --noconfirm --needed --overwrite='*' \ artools \ git \ squashfs-tools \ sudo \ python \ python-pip - name: Set up WORKSPACE_DIR run: | echo "WORKSPACE_DIR=${{ github.workspace }}" >> $GITHUB_ENV - name: Debug workspace run: | echo "GITHUB_WORKSPACE=$GITHUB_WORKSPACE" echo "github.workspace=${{ github.workspace }}" pwd ls -la - name: Override pacman.conf with antergos-pkgs repo run: | mkdir -p /root/.config/artools/pacman.conf.d cp "pacman.conf.d/iso-x86_64.conf" \ /root/.config/artools/pacman.conf.d/iso-x86_64.conf # Also override the default in case USER_CONF_DIR differs cp "pacman.conf.d/iso-x86_64.conf" \ /usr/share/artools/pacman.conf.d/iso-x86_64.conf - name: Check available swap and block devices run: | swapon --show || echo "No swap" lsblk free -h - name: Setup tmpfs for build directory run: | mkdir -p /var/lib/artools/buildiso mount -t tmpfs -o size=12G,exec,suid,dev tmpfs /var/lib/artools/buildiso mount | grep buildiso - name: Build ISO run: | sudo -E ./buildiso -p antergos - name: Upload ISO artifact uses: actions/upload-artifact@v4 with: name: Antergos-NeXT-ISO path: ${{ github.workspace }}/iso/ - name: Upload to Internet Archive if: false # My NVMe tried to unalive itself, 1536 unsafe shutdowns, ext4 cooked medium-rare, so I'm raw-dogging my own distro now. Set to true when I stop being my own QA team. env: IA_ACCESS_KEY: ${{ secrets.IA_ACCESS_KEY }} IA_SECRET_KEY: ${{ secrets.IA_SECRET_KEY }} run: | pip install --break-system-packages internetarchive mkdir -p "$HOME/.config/internetarchive" cat > "$HOME/.config/internetarchive/ia.ini" </dev/null | head -1) [[ -z "$ISO" || ! -f "$ISO" ]] && { echo "No ISO found"; exit 1; } DATE=$(date +%Y.%m.%d) IDENTIFIER="antergos-next-$(date +%Y%m%d)-${{ github.run_number }}" SIZE=$(stat -c%s "$ISO") if [[ $SIZE -lt 524288000 ]]; then echo "WARNING: ISO smaller than expected (${SIZE} bytes)" file "$ISO" | grep -q "ISO 9660\|UDF" || { echo "Corrupted ISO"; exit 1; } fi ia upload "$IDENTIFIER" "$ISO" \ --metadata="title:Antergos NeXT $(date +%Y.%m.%d)" \ --metadata="mediatype:software" \ --metadata="collection:open_source_software" \ --metadata="description:Antergos NeXT community revival ISO — KDE Plasma, Dinit, Calamares installer" \ --metadata="subject:Antergos; Linux; Artix; Dinit; KDE Plasma; Calamares" \ --retries 5 echo "Uploaded to: https://archive.org/details/$IDENTIFIER"