From 9bcfbe59c75349a40749cbbf8bc3dc464b25b3a7 Mon Sep 17 00:00:00 2001 From: laraproto Date: Wed, 19 Mar 2025 19:02:03 +0200 Subject: [PATCH] last attempt --- .forgejo/workflows/build.yaml | 28 +++++++++++++++ .gitignore | 2 ++ Dockerfile | 67 +++++++++++++++++++++++++++++++++++ 3 files changed, 97 insertions(+) create mode 100644 .forgejo/workflows/build.yaml create mode 100644 .gitignore create mode 100644 Dockerfile diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml new file mode 100644 index 0000000..4868eae --- /dev/null +++ b/.forgejo/workflows/build.yaml @@ -0,0 +1,28 @@ +name: build mono +on: + push: + branches: + - master +jobs: + push: + name: "yolks:mono_${{ matrix.tag }}" + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-buildx-action@v3 + with: + buildkitd-flags: --debug + - uses: docker/login-action@v3 + with: + registry: git.styandco.dev + username: ${{ github.repository_owner }} + password: ${{ secrets.REGISTRY_TOKEN }} + - uses: docker/build-push-action@v5 + with: + context: . + file: ./mono/${{ matrix.tag }}/Dockerfile + platforms: linux/amd64 + push: true + tags: | + git.styandco.dev/Torchlead/godot-docker:latest + git.styandco.dev/Torchlead/godot-docker:4.4 \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d48c759 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.idea +.vscode \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f3dbc90 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,67 @@ +FROM fedora:41 +LABEL author="LaraTheProtogen" + +USER root +WORKDIR /root + + +ENV DOTNET_NOLOGO=1 +ENV DOTNET_CLI_TELEMETRY_OPTOUT=1 + +RUN dnf -y install --setopt=install_weak_deps=False \ + bash \ + binutils \ + bzip2 \ + curl \ + file \ + findutils \ + gettext \ + git \ + make \ + wget \ + nano \ + patch \ + gnupg \ + python3-sdkmanager \ + pkgconfig \ + python3-pip \ + zip \ + wine \ + unzip \ + which \ + xz \ + java-17-openjdk-headless \ + blender \ + nodejs \ + android-tools \ + rsync \ + osslsigncode + +ARG GODOT_VERSION="4.4" + +ARG RELEASE_NAME="stable" + +ARG SUBDIR="" + +ARG GODOT_TEST_ARGS="" +ARG GODOT_PLATFORM="linux.x86_64" + +RUN wget https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}-${RELEASE_NAME}/Godot_v${GODOT_VERSION}-${RELEASE_NAME}_${GODOT_PLATFORM}.zip \ + && wget https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}-${RELEASE_NAME}/Godot_v${GODOT_VERSION}-${RELEASE_NAME}_export_templates.tpz \ + && mkdir -p ~/.cache \ + && mkdir -p ~/.config/godot \ + && mkdir -p ~/.local/share/godot/export_templates/${GODOT_VERSION}.${RELEASE_NAME} \ + && unzip Godot_v${GODOT_VERSION}-${RELEASE_NAME}_${GODOT_PLATFORM}.zip \ + && mv Godot_v${GODOT_VERSION}-${RELEASE_NAME}_${GODOT_PLATFORM} /usr/local/bin/godot \ + && unzip Godot_v${GODOT_VERSION}-${RELEASE_NAME}_export_templates.tpz \ + && mv templates/* ~/.local/share/godot/export_templates/${GODOT_VERSION}.${RELEASE_NAME} \ + && rm -f Godot_v${GODOT_VERSION}-${RELEASE_NAME}_export_templates.tpz Godot_v${GODOT_VERSION}-${RELEASE_NAME}_${GODOT_PLATFORM}.zip + +RUN echo '[gd_resource type="EditorSettings" format=3]' > ~/.config/godot/editor_settings-${GODOT_VERSION:0:3}.tres +RUN echo '[resource]' >> ~/.config/godot/editor_settings-${GODOT_VERSION:0:3}.tres +RUN echo 'export/android/java_sdk_path = "/usr/lib/jvm/java-17-openjdk-amd64"' >> ~/.config/godot/editor_settings-${GODOT_VERSION:0:3}.tres +RUN echo 'filesystem/import/blender/blender_path = "/usr/bin/blender"' >> ~/.config/godot/editor_settings-${GODOT_VERSION:0:3}.tres + +RUN wget https://github.com/electron/rcedit/releases/download/v2.0.0/rcedit-x64.exe -O /opt/rcedit.exe +RUN echo 'export/windows/rcedit = "/opt/rcedit.exe"' >> ~/.config/godot/editor_settings-${GODOT_VERSION:0:3}.tres +RUN echo 'export/windows/wine = "/usr/bin/wine64"' >> ~/.config/godot/editor_settings-${GODOT_VERSION:0:3}.tres \ No newline at end of file