name: Build Project on: push: branches: [ "main" ] pull_request: branches: [ "main" ] jobs: build: runs-on: ubuntu-latest # We explicitly use a container that has build tools, or we install them. # If your Gitea runner uses a minimal image, we make sure to update and install gcc/make. steps: # 1. Check out the repository code - name: Checkout code uses: actions/checkout@v4 # 2. Install compiler, X11, and Raylib dependencies - name: Install Dependencies run: | # Gitea runners sometimes run as root inside the container, so 'sudo' might not be needed or installed. # This check safely uses sudo only if it is available. if command -v sudo >/dev/null 2>&1; then SUDO="sudo"; else SUDO=""; fi $SUDO apt-get update $SUDO apt-get install -y build-essential gcc make libraylib-dev libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev # 3. Compile the project using your Makefile - name: Compile with Makefile run: make # 4. Upload the compiled binary as a build artifact in Gitea - name: Upload Build Artifact uses: actions/upload-artifact@v4 with: name: wrldbox-binary path: wrldbox