Add readme
Some checks failed
Publish Builder Image / build-and-push (push) Failing after 1m59s

This commit is contained in:
2025-11-30 21:30:17 +01:00
parent d9d19df483
commit ff4d4fd2b0

63
README.md Normal file
View File

@ -0,0 +1,63 @@
# 🏗️ Godot Builder Image
This repository contains the `Dockerfile` definition for a custom build container used by our Gitea Runners.
It is designed to cross-compile Godot Engine and GDExtension projects for **Linux (x86_64)** and **Windows (x86_64/MinGW)**.
## 📦 What's Inside?
The image is based on Fedora 39 (to ensure up-to-date MinGW packages) and includes:
- Build Systems: `SCons`, `Make`, `Automake`, `Git`
- Compilers: `GCC (Linux)`, `MinGW-w64` (Windows Cross-compile), `Yasm`
- Godot Dependencies: `X11`, `Mesa (GL)`, `ALSA`, `PulseAudio`, `uDev`
## 🚀 How to Build & Publish
This process is automated.
1. **Modify**: Make changes to the Dockerfile if you need new dependencies (e.g., Python, newer GCC).
- **Push**: Commit and push your changes to the `main` branch.
```
Bash
git add Dockerfile
git commit -m "Update builder dependencies"
git push origin main
```
3. **Watch**: Go to the **Actions** tab in Gitea to see the build progress.
4. **Verify**: Once green, go to your **Profile > Packages** tab. You should see a new version of `godot-builder` tagged `latest`.
## 🛠 Manual Usage (Local Testing)
If you need to test this image locally before pushing:
```
Bash
# Build locally
docker build -t godot-builder:local .
# Test compiling a project locally
docker run --rm -v $(pwd):/workspace -w /workspace godot-builder:local \
scons platform=linux target=template_debug
```
## 📄 Dockerfile Reference
```Dockerfile
FROM fedora:39
# Install Build Tools & Cross-Compilers
RUN dnf -y install \
git scons make automake which yasm \
gcc gcc-c++ kernel-headers \
mingw64-gcc mingw64-gcc-c++ mingw64-winpthreads-static \
libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel \
mesa-libGL-devel alsa-lib-devel pulseaudio-libs-devel libudev-devel \
&& dnf clean all
CMD ["/bin/bash"]
```