name: Build Horizon OC Zeus on: push: branches: [ develop, main, master ] pull_request: workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - name: Install dependencies run: | sudo apt-get update sudo apt-get install -y git make python3 zip wget tar - name: Install devkitPro + toolchains run: | # Install devkitPro base wget https://devkitpro.org/packages/devkitpro-pacman.install sudo bash devkitpro-pacman.install # Initialize keyring sudo dkp-pacman-key --init sudo dkp-pacman-key --populate devkitpro # Sync and install packages sudo dkp-pacman -Sy --noconfirm sudo dkp-pacman -S --noconfirm \ devkitA64 devkitARM libnx switch-tools hactool - name: Check toolchain run: | aarch64-none-elf-gcc --version arm-none-eabi-gcc --version python3 --version make --version hactool --help >/dev/null - name: Clone Atmosphere run: git clone https://github.com/Atmosphere-NX/Atmosphere.git atmosphere - name: Clone Horizon OC run: git clone -b develop --single-branch https://github.com/Horizon-OC/Horizon-OC.git horizon-oc - name: Prepare build folder working-directory: horizon-oc run: | mkdir build cp -r ../atmosphere/. build/ - name: Override loader source working-directory: horizon-oc run: | cp -f Source/Atmosphere/stratosphere/loader/source/ldr_process_creation.cpp \ build/stratosphere/loader/source/ldr_process_creation.cpp - name: Build Horizon OC Zeus working-directory: horizon-oc run: | chmod +x build.sh ./build.sh - name: Zip dist working-directory: horizon-oc run: zip -r horizon-oc-zeus-dist.zip dist - name: Upload artifact uses: actions/upload-artifact@v4 with: name: horizon-oc-zeus-dist path: horizon-oc/horizon-oc-zeus-dist.zip