# # Copyright (C) 2025 AuxXxilium # # This is free software, licensed under the MIT License. # See /LICENSE for more information. # name: Grub on: workflow_dispatch: inputs: push: description: "push" default: false type: boolean jobs: grub: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@main - name: Initialization environment run : | git config --global user.email "info@auxxxilium.tech" git config --global user.name "AuxXxilium" sudo timedatectl set-timezone "Europe/Berlin" sudo apt update sudo apt install -y autoconf automake autopoint build-essential pkg-config bison flex gettext gawk libtool dosfstools e2fsprogs sudo apt install -y libfreetype6-dev unifont fonts-dejavu libfuse-dev libzfslinux-dev liblzma-dev libdevmapper-dev - name: Make Grub run: | rm -f "files/initrd/opt/arc/grub.img.gz" . scripts/grub.sh "grub-2.12" "i386-pc i386-efi x86_64-efi" "ARC" - name: Check and Push if: success() && inputs.push == true run: | if [ -f "grub.img.gz" ]; then mv -f "grub.img.gz" "files/initrd/opt/arc/grub.img.gz" echo "Git push ..." git pull status=$(git status -s | grep -E 'grub.img.gz' | awk '{printf " %s", $2}') if [ -n "${status}" ]; then git add ${status} git commit -m "grub: update $(date +%Y-%m-%d" "%H:%M:%S)" git push -f fi else echo "No change ..." fi