| # debian.sh --arch 'amd64' out/ 'bookworm' '@1787529600' |
| ENV DEBIAN_FRONTEND=noninteractive CCACHE_DIR=/ccache |
| /bin/sh -c apt-get update && apt-get install -y --no-install-recommends build-essential ca-certificates ccache git openssh-client pkg-config python3 python3-pip scons xz-utils && rm -rf /var/lib/apt/lists/* |
| ENV PATH="/usr/lib/ccache:${PATH}" |
| /bin/sh -c printf 'cache_dir = /ccache\nmax_size = 20G\nbase_dir = /src\nhash_dir = false\n' > /etc/ccache.conf |
| ARG UID |
| ARG GID UID |
| |2 GID=1000 UID=1000 /bin/sh -c groupadd -g "$GID" builder && useradd -m -u "$UID" -g "$GID" builder && mkdir -p /src "$CCACHE_DIR" && chown -R builder:builder /src "$CCACHE_DIR" |
| |2 GID=1000 UID=1000 /bin/sh -c if ! getent group 65532 >/dev/null; then groupadd -g 65532 gbb; fi && if ! getent passwd 65532 >/dev/null; then useradd -m -u 65532 -g 65532 -s /usr/sbin/nologin gbb; fi |
| COPY file:27814954f1013274fe4c6a30d6b7d5ca63d088f973c5e2f354132726be276dac in /usr/local/bin/gbb-build |
| |2 GID=1000 UID=1000 /bin/sh -c chmod 0755 /usr/local/bin/gbb-build |
| USER builder |
| WORKDIR /src |
| USER root |
| /bin/sh -c apt-get update && apt-get install -y --no-install-recommends libasound2-dev libdbus-1-dev libfontconfig-dev libfreetype6-dev libgl1-mesa-dev libglu1-mesa-dev libpulse-dev libspeechd-dev libudev-dev libwayland-bin libwayland-dev libx11-dev libxcursor-dev libxi-dev libxinerama-dev libxkbcommon-dev libxrandr-dev libxrender-dev wayland-protocols && rm -rf /var/lib/apt/lists/* |
| USER root |
| /bin/sh -c apt-get update && apt-get install -y --no-install-recommends binutils-aarch64-linux-gnu crossbuild-essential-arm64 && rm -rf /var/lib/apt/lists/* |
| /bin/sh -c mkdir -p /opt/gbb/toolchain/arm64/bin && for tool in gcc g++ cpp ar ranlib nm strip objcopy objdump as ld; do ln -s "/usr/bin/aarch64-linux-gnu-$tool" "/opt/gbb/toolchain/arm64/bin/$tool"; done && ln -s /usr/bin/aarch64-linux-gnu-gcc /opt/gbb/toolchain/arm64/bin/cc && ln -s /usr/bin/aarch64-linux-gnu-g++ /opt/gbb/toolchain/arm64/bin/c++ |
| /bin/sh -c update-ccache-symlinks |
| USER builder |
| ENTRYPOINT ["gbb-build"] |
| CMD ["platform=linuxbsd", "target=editor", "arch=x86_64"] |
| USER root |
| /bin/sh -c apt-get update && apt-get install -y --no-install-recommends zip libicu72 libssl3 tzdata && rm -rf /var/lib/apt/lists/* |
| COPY dir:463dc755e4cf086c74e27f967f2b1b8356c4fbb7ab733f08a8b13b7f25bc43bc in /usr/share/dotnet |
| /bin/sh -c ln -sf /usr/share/dotnet/dotnet /usr/local/bin/dotnet |
| ENV DOTNET_ROOT=/usr/share/dotnet DOTNET_CLI_TELEMETRY_OPTOUT=1 DOTNET_NOLOGO=1 DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 DOTNET_CLI_HOME=/home/builder NUGET_PACKAGES=/nuget |
| /bin/sh -c mkdir -p /nuget /nuget-local /opt/gbb /root/.nuget/NuGet /home/builder/.nuget/NuGet |
| COPY file:8e9a5747e48607a1869a0ed43e1f514a13c2e08160b31c0a17bfe11156c9b5b6 in /usr/local/bin/select-nuget-source.sh |
| COPY dir:33e0684e31ac056060a738037cd8700e599463441dd45b886813e949d646fe14 in /nuget |
| COPY file:0f4c719b3c5f6452f074d99247796cdba59c6b1cb0f26b5e251094522b6c6724 in /opt/gbb/mono-primed-refs |
| COPY file:1bb3acfa06a6dfde9b7e6dcce524a97ea23e4b1c0d07b6358acd4e15ccf209e8 in /usr/local/bin/prime-nuget.sh |
| ARG PRIME_MODE |
| ARG PRIME_GODOT_REFS PRIME_MODE |
| ARG PRIME_GODOT_REFS PRIME_GODOT_REPO PRIME_MODE |
| ARG PRIME_GODOT_REFS PRIME_GODOT_REPO PRIME_MODE PRIME_STEP_TIMEOUT |
| ARG PRIME_DISABLE_IPV6 PRIME_GODOT_REFS PRIME_GODOT_REPO PRIME_MODE PRIME_STEP_TIMEOUT |
| |6 PRIME_DISABLE_IPV6=0 PRIME_GODOT_REFS=4.3-stable 4.4-stable PRIME_GODOT_REPO=https://github.com/godotengine/godot.git PRIME_MODE=copy PRIME_STEP_TIMEOUT=600 /bin/sh -c /usr/local/bin/prime-nuget.sh "$PRIME_MODE" |
| |6 PRIME_DISABLE_IPV6=0 PRIME_GODOT_REFS=4.3-stable 4.4-stable PRIME_GODOT_REPO=https://github.com/godotengine/godot.git PRIME_MODE=copy PRIME_STEP_TIMEOUT=600 /bin/sh -c printf '%s\n' '<?xml version="1.0" encoding="utf-8"?>' '<configuration>' ' <packageSources>' ' <clear />' ' <add key="gbb-local" value="/nuget-local" />' ' </packageSources>' '</configuration>' > /home/builder/.nuget/NuGet/NuGet.Config && cp /home/builder/.nuget/NuGet/NuGet.Config /root/.nuget/NuGet/NuGet.Config && chmod 0755 /home/builder /home/builder/.nuget /home/builder/.nuget/NuGet && chmod 0644 /home/builder/.nuget/NuGet/NuGet.Config /root/.nuget/NuGet/NuGet.Config && mkdir -p /home/builder/.dotnet && chmod 0777 /home/builder/.dotnet && chown -R builder:builder /home/builder /nuget /nuget-local |
| USER builder |
| WORKDIR /src |
| ENTRYPOINT ["gbb-build"] |
| CMD ["platform=linuxbsd", "target=editor", "arch=x86_64", "module_mono_enabled=yes"] |