Using Docker causes multiple system crash and eventually Fails to Boot

FROM fedora:42

# Set frontend to noninteractive equivalent and TERM
#ENV TERM=xterm
# Note: Fedora doesn't use DEBIAN_FRONTEND, dnf handles non-interactive mode differently

# Install essential build tools and dependencies with cache mounts
# This single RUN command consolidates all system dependencies to optimize layer caching.
RUN --mount=type=cache,target=/var/cache/dnf \
    --mount=type=cache,target=/var/lib/dnf \
    dnf update -y && \
    # Core build tools (equivalent to build-essential)
    dnf install -y dnf-plugins-core @c-development @development-tools\
    \
    # --- Core Development & Build Tools ---
    git git-lfs ninja-build meson pkgconf subversion \
    autoconf automake bison libtool yasm patchelf wget tar \
    cmake gcc-c++ patch rpm-build \
    \
    # --- System & Math Libraries ---
    glibc glibc-devel libstdc++-devel kernel-devel \
    gmp-devel fftw-devel tbb-devel tbb sse2neon-devel\
    \
    # --- Python Ecosystem ---
    python3-devel python3-libs python3-pybind11 python3-numpy \
    python3-requests python3-certifi python3-idna python3-urllib3 \
    python3-charset-normalizer python3-zstandard python3-cattrs \
    python3-cython python3-fastjsonschema \
    \
    # --- VFX & Rendering Core Libraries ---
    alembic-devel usd usd-devel openvdb-devel opensubdiv-devel \
    openshadinglanguage-devel \
    OpenImageIO-utils openexr-devel imath-devel \
    embree-devel openpgl-devel \
    potrace-devel harfbuzz-devel \
    # Added missing core VFX libraries
    OpenColorIO-devel OpenImageIO-devel openCOLLADA-devel \
    \
    # --- Graphics, Windowing & Display (X11/Wayland) ---
    wayland-devel wayland-protocols-devel libdecor-devel \
    libX11-devel libXt-devel libXcursor-devel libXi-devel \
    libXrandr-devel libxkbcommon-devel libXxf86vm-devel \
    libXfixes-devel libXrender-devel libXinerama-devel \
    fontconfig-devel dbus-devel xorg-x11-server-Xorg xorg-x11-xauth \
    \
    # --- GPU & Shading APIs (OpenGL/Vulkan) ---
    mesa-libGL-devel mesa-libEGL-devel egl-wayland-devel \
    mesa-dri-drivers mesa-libGLES-devel libepoxy-devel \
    glew-devel glfw-devel openxr-devel libshaderc-devel \
    vulkan-headers vulkan-loader-devel vulkan-devel \
    \
    # --- Image I/O & Formats ---
    libjpeg-turbo-devel libpng-devel libtiff-devel \
    openjpeg2-devel libwebp-devel libharu-devel \
    \
    # --- Audio & Multimedia ---
    ffmpeg-free-devel libswresample-free-devel libavdevice-free-devel \
    libavformat-free-devel libavfilter-free-devel libswscale-free-devel \
    openal-soft-devel SDL2-devel libsndfile-devel \
    jack-audio-connection-kit-devel gstreamer1-devel gstreamer1-plugins-base-devel \
    pulseaudio-libs-devel \
    \
    # --- Utility & Helper Libraries ---
    boost-devel pugixml-devel yaml-cpp-devel pystring-devel \
    zlib-devel libzstd-devel openssl-devel openssl brotli-devel \
    libdeflate-devel jemalloc-devel blosc-devel \
    clang-devel llvm-devel clang clang-tools-extra \
    ispc ispc-devel systemd-devel libusb1-devel \
    # Added missing utility libraries from original request
    dpkg-devel robin-map-devel \
    \
    # --- Miscellaneous Libraries ---
    libspnav-devel avahi-devel libcanberra-devel \
    webrtc-audio-processing-devel lilv-devel libebur128-devel \
    libmysofa-devel libcap-devel hydra valgrind uhd-devel \
    --skip-broken --skip-unavailable 
    # Clean up dnf cache to reduce image size
    #&& dnf clean all
    
# Install Python packages with pip cache
RUN --mount=type=cache,target=/root/.cache/pip \
    pip install --upgrade pip && \
    pip install numpy charset-normalizer urllib3 zstandard requests idna certifi alembic mako jinja2

WORKDIR /tmp

RUN echo "Cloning MaterialX" && \
    git clone https://github.com/AcademySoftwareFoundation/MaterialX.git -b v1.39.4 --depth=1 /tmp/materialx && \
    mkdir -p /tmp/materialx/build && cd /tmp/materialx/build && \
    cmake .. -DCMAKE_BUILD_TYPE=Release -G Ninja \
          -DCMAKE_INSTALL_PREFIX=/usr/local \
          -DMATERIALX_BUILD_GRAPH_EDITOR=OFF \
          -DMATERIALX_BUILD_PYTHON=ON \
          -DMATERIALX_BUILD_TESTS=OFF \
          -DMATERIALX_BUILD_VIEWER=OFF \
          -DMATERIALX_BUILD_RENDER=ON \
          -DMATERIALX_INSTALL_PYTHON=OFF \
          -DMATERIALX_BUILD_SHARED_LIBS=ON \
          -DPYBIND11_FINDPYTHON=ON \
          -DMATERIALX_PYTHON_EXECUTABLE=/usr/sbin/python3.11 \
          -DMATERIALX_INSTALL_PYTHON=/usr/sbin/python3.11 \
          -DCMAKE_CXX_FLAGS="-Wno-error=stringop-overflow" \
    && cmake --build . && \
    cmake --install . && rm -rf /tmp/materialx && \
    echo "Done Installing MaterialX"

RUN git clone --depth=1 https://github.com/AngusJohnson/Clipper2 /tmp/clipper && \
    mkdir -p /tmp/clipper/CPP/build && cd /tmp/clipper/CPP/build && \
    cmake .. \
      -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_INSTALL_PREFIX=/usr/local \
      -DCLIPPER2_EXAMPLES=OFF \
      -DCLIPPER2_TESTS=OFF && \
    cmake --build . && cmake --install . && rm -rf /tmp/clipper

RUN echo "Building Manifold v3.2.1" && \
    git clone https://github.com/elalish/manifold -b v3.2.1 --depth=1 /tmp/manifold && \
    mkdir -p /tmp/manifold/build && cd /tmp/manifold/build && \
    cmake .. \
      -G Ninja \
      -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_INSTALL_PREFIX=/usr/local \
      -DMANIFOLD_JSBIND=OFF\
      -DMANIFOLD_CBIND=ON \
      -DMANIFOLD_PYBIND=ON \
      -DMANIFOLD_PAR=ON \
      -DMANIFOLD_EXPORT=OFF \
      -DMANIFOLD_DEBUG=OFF \
      -DMANIFOLD_TEST=OFF \
      -DMANIFOLD_DOWNLOADS=ON \
      -DTBB_DIR=/usr/local \ 
      -DTRACY_ENABLE=OFF \
      -DBUILD_TESTING=OFF \
      -DBUILD_SHARED_LIBS=OFF \     
      -DPython_EXECUTABLE=/usr/sbin/python3.11 \
      -DCMAKE_CXX_FLAGS="-Wno-error=stringop-overflow" && \
      cmake --build . && cmake --install . && rm -rf /tmp/manifold && \
    echo "Done Installing Manifold"
    
# Fix for SSL certificate issues by pointing standard ENV VARS to certifi's bundle.
# This resolves the CMake warning about not finding "certifi/cacert.pem".
RUN CERTIFI_PATH=$(python3.11 -c "import certifi; print(certifi.where())") && \
    echo "export REQUESTS_CA_BUNDLE=${CERTIFI_PATH}" >> /etc/profile.d/certifi.sh && \
    echo "export SSL_CERT_FILE=${CERTIFI_PATH}" >> /etc/profile.d/certifi.sh
 

# Create a non-root user for the build process for security
# and grant passwordless sudo privileges.
#RUN useradd --create-home --shell /bin/bash builder && \
#    adduser builder sudo && \
#    echo 'builder ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers


# Switch to the non-root user
#USER builder
WORKDIR /blender-git

# Copy the compile script into the container and make it executable
COPY --chown=builder:builder compile.sh /compile.sh
RUN chmod +x /compile.sh

# Set the entrypoint to our compile script
ENTRYPOINT ["/compile.sh"]

# syntax=docker/dockerfile:1.4

################################################################################
# Stage "builder" – installs build dependencies and builds core libraries
################################################################################
FROM python:3.11-bookworm AS builder

ENV DEBIAN_FRONTEND=noninteractive
#ENV TERM=xterm

# Install build tools & dependencies with cache mounts
RUN --mount=type=cache,target=/var/cache/apt \
    --mount=type=cache,target=/var/lib/apt \
    apt update && \
    #apt install -y software-properties-common && apt update && \
    apt install -y \
    # Core build tools
    # gcc-14 g++-14 \
    build-essential git git-lfs ninja-build meson pkg-config subversion \
    autoconf automake bison libtool yasm tcl patchelf wget tar libtbb-dev libpcre3-dev libpcre2-dev libpcre16-3 libpcrecpp0v5 \
    python3.11-dev pybind11-dev alembic libpython3-dev libhpdf-dev libyaml-cpp-dev libsystemd-dev dpkg \
    \
    # System libraries
    libc6 libstdc++6 libstdc++-11-dev libstdc++-12-dev libc6-dev linux-libc-dev libfftw3-dev opencollada-dev libimath-dev \
    libusb-1.0-0-dev hydra libboost-all-dev libpugixml-dev clang clang-format libclang-dev llvm-dev robin-map-dev\
   \
   # Compression and crypto
    zlib1g-dev libzstd-dev libssl-dev libssl3 openssl libbrotli-dev libdeflate-dev libclipper2 \
    # Memory & testing
    libjemalloc-dev valgrind libpystring-dev \
    \
    # Wayland / X11 / Display
    libwayland-dev  libx11-dev libxt-dev libxcursor-dev libxi-dev libxrandr-dev \
    libxkbcommon-dev libxxf86vm-dev libxfixes-dev libxrender-dev xorg \
    libxinerama-dev libfontconfig1-dev libdbus-1-dev xauth libuhd-dev\
    # wayland-protocols \
    \
    # OpenGL / GLES / Vulkan stack
    libepoxy-dev libvulkan-dev libshaderc-dev libshaderc1 glslang-dev glslang-tools spirv-headers spirv-tools spirv-cross libspirv-cross-c-shared-dev \
    libgl1-mesa-dev libegl1-mesa-dev libegl-dev mesa-utils \
    libgles-dev libgles1 libgles2 libgles2-mesa-dev \
    libglfw3-dev libglew-dev opensubdiv-tools \
    # libembree3-3 libembree-dev  embree-tools 
    libopenxr-dev libopenxr-loader1 libopenxr-utils \
    \
    # Image I/O
    libjpeg-dev libjpeg62-turbo-dev libpng-dev libtiff-dev libopenexr-dev libfreetype6-dev  \
    libopengl0 libopengl-dev libpotrace-dev libopenjp2-7-dev libwebp-dev\
    # Audio / Multimedia
    ffmpeg libswresample-dev libavdevice-dev libffado-dev libavformat-dev libavfilter-dev libopenal-dev libswscale-dev libsdl2-dev \
    libsndfile1-dev libjack-jackd2-dev libgstreamer1.0-0 libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \
    gstreamer1.0-x gstreamer1.0-pulseaudio gstreamer1.0-alsa libspnav-dev libopenvdb-dev libopenvdb-ax-dev \
    libpulse-dev gstreamer1.0-adapter-pulseeffects libavahi-client-dev libcanberra-dev libwebrtc-audio-processing-dev \
    liblilv-dev libebur128-dev libmysofa-dev libcap-dev 
    #\
    # Clean up
    # && rm -rf /var/lib/apt/lists/* && apt -qq clean

# Install Python packages with pip cache
RUN --mount=type=cache,target=/root/.cache/pip \
    pip install --upgrade pip && \
    pip install numpy charset-normalizer urllib3 zstandard requests idna certifi alembic mako jinja2

# Prepare build workspace
WORKDIR /tmp

# 1. SSE2NEON headers
RUN git clone --depth=1 https://github.com/DLTcollab/sse2neon.git sse2neon && \
    mkdir -p /usr/local/include/sse2neon && \
    cp sse2neon/sse2neon.h /usr/local/include/sse2neon/ && \
    rm -rf sse2neon

# 2. CMake
RUN mkdir -p /opt/cmake && \
    wget -q https://github.com/Kitware/CMake/releases/download/v4.1.2/cmake-4.1.2-linux-aarch64.sh \
        -O cmake-install.sh && \
    chmod +x cmake-install.sh && \
    ./cmake-install.sh --skip-license --prefix=/opt/cmake && \
    ln -s /opt/cmake/bin/* /usr/local/bin/ && \
    rm cmake-install.sh

# 3. Wayland-Protocols
RUN echo "Building Wayland-Protocols" && \
    git clone -b 1.44 https://gitlab.freedesktop.org/wayland/wayland-protocols wayland && \
    mkdir -p wayland/build && cd wayland/build && \
    meson setup build .. --buildtype=release -Dprefix=/usr/local -Dtests=false && \
    meson compile -C build && meson install -C build && rm -rf wayland

# 4. ISPC
RUN echo "Add ISPC" && mkdir -p /opt/ispc && \
    wget -q https://github.com/ispc/ispc/releases/download/v1.28.2/ispc-v1.28.2-linux.aarch64.tar.gz \
        -O ispc.tar.gz && \
    tar -xzf ispc.tar.gz -C /opt/ispc --strip-components=1 && \
    rm ispc.tar.gz

# 5. TBB
#RUN echo "Building TBB" && git clone --branch v2022.2.0 https://github.com/uxlfoundation/oneTBB tbb && \
#    cd tbb && mkdir build && cd build && \
#    cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
#          -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF \
#          -DCMAKE_CXX_FLAGS="-Wno-error=stringop-overflow" .. && \
#    cmake --build . && cmake --install . && rm -rf tbb

# 6. Vulkan-Headers
RUN echo "Add Vulkan Header" && git clone --depth=1 -b v1.3.296 https://github.com/KhronosGroup/Vulkan-Headers.git vulkan && \
    cd vulkan && cmake -S . -B build -DVULKAN_HEADERS_ENABLE_TESTS=OFF && \
    cmake --install build && rm -rf vulkan

FROM builder as openbuilder

# 7. OpenColorIO v2.5.0
RUN echo "Build OpenColorIO" && \
    git clone --branch v2.5.0 --depth=1 https://github.com/AcademySoftwareFoundation/OpenColorIO ocio && \
    mkdir -p ocio/build && cd ocio/build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DBUILD_SHARED_LIBS=ON -DBUILD_DOCS=OFF -DOCIO_INSTALL_EXT_PACKAGES=MISSING \
             -DOCIO_BUILD_APPS=OFF -DOCIO_USE_OIIO_FOR_APPS=OFF -DOCIO_BUILD_PYTHON=ON \
             -DOCIO_BUILD_OPENFX=OFF -DOCIO_BUILD_GPU_TESTS=OFF -DOCIO_USE_HEADLESS=OFF \             
             -DOCIO_BUILD_TESTS=OFF -DOCIO_USE_SIMD=ON -DOCIO_USE_SSE2=ON -DOCIO_BUILD_DOCS=OFF \
             -DOCIO_WARNING_AS_ERROR=OFF && \
    cmake --build . && cmake --install . && rm -rf ocio

# 8. OpenImageIO v3.0.6.1
RUN echo "Build OpenImageIO" && \
    git clone --branch v3.0.6.1 --depth=1 https://github.com/AcademySoftwareFoundation/OpenImageIO oiio && \
    mkdir -p oiio/build && cd oiio/build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DUSE_OPENCOLORIO=ON -DUSE_WEBP=ON -DUSE_TBB=ON -DUSE_PYTHON=ON \
             -DUSE_OPENJPEG=ON -DOpenColorIO_DIR=/usr/local -DOpenImageIO_BUILD_MISSING_DEPS=all \
             -DBUILD_DOCS=OFF -DUSE_OPENVDB=OFF -DUSE_FREETYPE=OFF -DUSE_DCMTK=OFF \
             -DUSE_LIBHEIF=OFF -DOIIO_BUILD_TESTS=OFF -DBUILD_TESTING=OFF \
             -DSTOP_ON_WARNING=OFF -DUSE_QT=OFF -DUSE_GIF=OFF -DUSE_OPENCV=OFF \
             -DUSE_FFMPEG=OFF -DUSE_PTEX=OFF -DUSE_LIBRAW=OFF -DUSE_JXL=OFF && \
    cmake --build . && cmake --install . && rm -rf oiio

# 9. Intel OIDN v2.3.3
RUN echo "Build Image Denoiser Oidn" && \
    wget -q https://github.com/RenderKit/oidn/releases/download/v2.3.3/oidn-2.3.3.src.tar.gz \
        -O oidn.tar.gz && \
    mkdir oidn && tar -xzf oidn.tar.gz -C oidn --strip-components=1 && \
    rm oidn.tar.gz && cd oidn && mkdir build && cd build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release \
             -DOIDN_APPS=OFF -DOIDN_DEVICE_HIP=OFF -DOIDN_DEVICE_CUDA=OFF \
             -DOIDN_DEVICE_SYCL=OFF -DOIDN_DEVICE_METAL=OFF \
             -DOIDN_INSTALL_DEPENDENCIES=ON -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DISPC_EXECUTABLE=/opt/ispc/bin/ispc && \
    cmake --build . && cmake --install . && rm -rf oidn

################################################################################
# Stage "midbuilder" – adds MaterialX, OpenPGL, OpenSubdiv, Manifold, Embree4,
# Alembic and PipeWire
################################################################################

FROM openbuilder AS midbuilder

WORKDIR /tmp

# 10. MaterialX v1.39.4
RUN echo "Cloning MaterialX" && \
    git clone -b v1.39.4 --depth=1 https://github.com/AcademySoftwareFoundation/MaterialX.git materialx && \
    mkdir materialx/build && cd materialx/build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DMATERIALX_BUILD_PYTHON=ON -DMATERIALX_BUILD_TESTS=OFF \
             -DMATERIALX_BUILD_VIEWER=OFF -DMATERIALX_BUILD_GRAPH_EDITOR=OFF \
             -DCMAKE_CXX_FLAGS="-Wno-error=stringop-overflow" && \
    cmake --build . && cmake --install . && rm -rf materialx

# 11. OpenPGL v0.7.1
RUN echo "Building OpenPGL" && \
    git clone --branch v0.7.1 --single-branch https://github.com/RenderKit/openpgl openpgl && \
    mkdir openpgl/build && cd openpgl/build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DOPENPGL_ISA_NEON=ON -DOPENPGL_BUILD_TOOLS=OFF \
             -DOPENPGL_EF_IMAGE_SPACE_GUIDING_BUFFER=OFF \
             -DOPENPGL_TBB_ROOT=/usr/local && \
    cmake --build . && cmake --install . && rm -rf openpgl

# 12. OpenSubdiv
RUN echo "Building OpenSubdiv" && \
    git clone --depth=1 https://github.com/PixarAnimationStudios/OpenSubdiv OpenSubdiv && \
    mkdir OpenSubdiv/build && cd OpenSubdiv/build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DTBB_ROOT=/usr/local \
             -DNO_TBB=0 -DNO_OPENCL=0 -DNO_OPENGL=0 \
             -DNO_OMP=1 -DNO_CUDA=1 \             
             -DNO_DOC=1 -DNO_EXAMPLES=1 -DNO_REGRESSION=1 -DNO_PTEX=1 \
             -DOSD_PATCH_SHADER_SOURCE_MSL=0 -DOSD_PATCH_SHADER_SOURCE_GLSL=1 -DOSD_PATCH_SHADER_SOURCE_HLSL=1 \
             && \
    cmake --build . && cmake --install . && rm -rf OpenSubdiv

# 13. Manifold v3.2.1
RUN echo "Building Manifold v3.2.1" && \
    git clone -b v3.2.1 --single-branch https://github.com/elalish/manifold manifold && \
    mkdir manifold/build && cd manifold/build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DMANIFOLD_DEBUG=OFF \
             -DMANIFOLD_STRICT=ON -DMANIFOLD_PAR=ON -DMANIFOLD_CBIND=ON \
             -DMANIFOLD_PYBIND=ON -DMANIFOLD_DOWNLOADS=ON \
             -DMANIFOLD_CROSS_SECTION=ON -DFETCHCONTENT_QUIET=ON \
             -DMANIFOLD_USE_BUILTIN_TBB=OFF -DMANIFOLD_USE_BUILTIN_NANOBIND=OFF -DMANIFOLD_USE_BUILTIN_CLIPPER2=ON \
             -DClipper2_DIR=/usr/lib/aarch64-linux-gnu/cmake/Clipper2 \
             -DCMAKE_CXX_FLAGS="-Wno-error=stringop-overflow" && \
    cmake --build . && cmake --install . && rm -rf manifold

FROM midbuilder AS finalbuilder

# 14. Embree4 v4.4.0
RUN echo "Building Embree" && \
    git clone --branch v4.4.0 --single-branch https://github.com/RenderKit/embree.git /tmp/embree && \
    mkdir -p /tmp/embree/build && cd /tmp/embree/build && \
    cmake .. -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_CXX_FLAGS="-Wno-error=stringop-overflow" \
    -DEMBREE_TUTORIALS=OFF \
    -DEMBREE_SYCL_SUPPORT=OFF \
    -DEMBREE_ISPC_SUPPORT=ON \
    -DEMBREE_ISPC_EXECUTABLE=/opt/ispc/bin/ispc \
    -DEMBREE_TESTING_INSTALL_TESTS=OFF && \
    make && make install && echo "Done Installing Embree4" && rm -rf /tmp/embree

# 15. Alembic v1.8.8
RUN git clone -b 1.8.8 --depth=1 https://github.com/alembic/alembic alembic && \
    mkdir alembic/build && cd alembic/build && \
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release \
             -DCMAKE_INSTALL_PREFIX=/usr/local -DUSE_TESTS=OFF \
             -DALEMBIC_DEBUG_WARNINGS_AS_ERRORS=OFF \
             -DCMAKE_CXX_FLAGS="-O2 -fno-lto" && \
    cmake --build . && cmake --install . && rm -rf alembic





################################################################################
# Stage “final” – uses midbuilder as base and compiles OpenUSD v25.08
################################################################################

# 16. PipeWire v1.4.8
RUN git clone --branch 1.4.8 --depth=1 https://github.com/PipeWire/pipewire pipewire && \
    mkdir pipewire/build && cd pipewire/build && \
    meson setup . .. --buildtype=release -Dprefix=/usr/local --backend=ninja \
        -Dtests=disabled -Ddocs=disabled -Dexamples=disabled \
        -Dinstalled_tests=disabled -Dlibcamera=disabled -Dcompress-offload=disabled \
        -Djack=disabled -Decho-cancel-webrtc=disabled \
        -Daudiotestsrc=disabled -Dsnap=disabled && \
    meson compile -C . && meson install -C . && rm -rf pipewire

FROM finalbuilder AS final
# Symlink Embree4 headers for Embree3 references (OpenUSD requirement)
RUN ln -s /usr/local/include/embree4 /usr/local/include/embree3

WORKDIR /tmp

RUN git clone --branch v25.08 --depth=1 https://github.com/PixarAnimationStudios/OpenUSD/ OpenUSD && \
    mkdir OpenUSD/build && cd OpenUSD/build 
   
RUN python3 build_scripts/build_usd.py /usr/local \
    --build-monolithic \
    --usd-imaging \
    --python \
    --embree \
    --materialx \
    --opencolorio \
    --openimageio \
    --no-tests \
    --no-usdview \
    --no-tutorials \
    --no-tools \
    --no-docs \
    --build-args USD,"-DCMAKE_CXX_FLAGS='-Wno-error=stringop-overflow' -DEMBREE_INCLUDE_DIR=/usr/local/include/embree4"    

RUN rm -rf OpenUSD

# Common final steps
WORKDIR /blender-git
RUN useradd --create-home --shell /bin/bash builder && \
    adduser builder sudo && \
    echo 'builder ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

COPY --chown=builder:builder compile.sh /compile.sh
RUN chmod +x /compile.sh

ENTRYPOINT ["/compile.sh"]

Git has issue when working from inside docker

git config --global --add safe.directory /blender-git/blender

git config --global http.postBuffer 524288000

Also I suggest you to clone blender source outside the container then attach it

compile.sh

#!/bin/bash

# Exit immediately if a command exits with a non-zero status.
set -e
echo "-----System Setup-----"
git config --global --add safe.directory /blender-git/blender
#export MATERIALX_ROOT_DIR="/blender-git/materialx"
#export MATERIALX_INCLUDE_DIR="/blender-git/materialx"
#export MATERIALX_LIBRARY="/blender-git/materialx/lib/"
export WITH_CYCLES_DEVICE_CUDA="OFF"
export WITH_CYCLES_DEVICE_OPTIX="OFF"
export FFMPEG_ROOT_DIR=/usr
#export PATH="$PATH:/blender-git/materialx/lib/"

whereis python
ln -s /usr/local/lib/python3.11/site-packages/numpy/_core/include /usr/local/lib/python3.11/site-packages/numpy/core/include
#ln -s /usr/local/lib64/python3.11/site-packages/numpy/_core/include /usr/local/lib64/python3.11/site-packages/numpy/core/include
#ln -s /usr/local/lib/python3.11/site-packages/* /usr/local/lib64/python3.11/site-packages/
#mv /usr/local/lib/python3.11/site-packages/* /usr/local/lib64/python3.11/site-packages/ 2>/dev/null || true


echo "-------------------------------------------------------------"

#echo "1> Added Materialx Successfully"
#export EMBREE_ROOT_DIR="/usr/local"
#export PYTHON_NUMPY_INCLUDE_DIR=$(python3 -c "import numpy; print(numpy.get_include())")
#export SPACENAV_LIBRARY="/usr/lib/aarch64-linux-gnu/libspnav.so"
 
echo "------------Building Blender ARM64 Portable Build------------"

echo "--- Starting Blender ARM64 Portable Build ---"

 
if [ ! -d "/blender-git/blender" ] || [ -z "$(ls -A /blender-git/blender)" ]; then
    echo "Cloning Blender source code into /blender-git/blender..."
    git clone -b v4.5.3 --depth=1 https://projects.blender.org/blender/blender.git /blender-git/blender
    #cd /blender-git/blender
    #git checkout tags/v4.5.3 -b v4.5.3
else
    echo "Blender source already exists. Checking out to tag v4.5.3..."
    #cd /blender-git/blender
   # git fetch --all --tags
    #git checkout tags/v4.5.3 -b v4.5.3 || git checkout v4.5.3
fi

echo "--- Step 1: Ensuring Git LFS files ---"
cd /blender-git/blender
make update

echo "--- Step 2: Installing Linux dependencies ---"

echo "--- Step 3: Downloading pre-compiled libraries ---"


echo "--- Step 4: Configuring build ---"

make deps ninja BUILD_CMAKE_ARGS="-DWITH_CYCLES=OFF \
-DWITH_CYCLES_DEVICE_CUDA=OFF \
-DWITH_CYCLES_DEVICE_HIP=OFF \
-DWITH_CYCLES_DEVICE_OPTIX=OFF \
-DWITH_CYCLES_CUDA_BINARIES=OFF \
-DSSE2NEON_INCLUDE_DIR=/usr/local/include/sse2neon \
-DPYTHON_VERSION=3.11 \
-DWITH_INSTALL_PORTABLE=ON \
-DWITH_USD=ON -DWITH_MATERIALX=ON \
-DUSD_ROOT_DIR=/usr/local \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DTBB_DIR=/usr/local/lib64/cmake/TBB "

#-DPYTHON_EXECUTABLE=/usr/sbin/python3.11 \
#-DPYTHON_INCLUDE_DIR=/usr/include/python3.11 \
#-DPYTHON_LIBPATH=/usr/local/lib64/python3.11/site-packages \
#-DPYTHON_SSL_CERT_FILE=/usr/local/lib64/python3.11/site-packages/certifi/cacert.pem \
#-DNINJA_MAX_NUM_PARALLEL_COMPILE_JOBS=2 \
#-DNINJA_MAX_NUM_PARALLEL_COMPILE_HEAVY_JOBS=1 \
#-DNINJA_MAX_NUM_PARALLEL_LINK_JOBS=1"
#-DPYTHON_EXECUTABLE=/usr/sbin/python3.11
      
#-DSDL2_INCLUDE_DIRS=/usr/include/SDL2/ -DSSE2NEON_INCLUDE_DIR=/usr/local/include/sse2neon  -DWITH_VULKAN_BACKEND=OFF 
# -DPYTHON_NUMPY_INCLUDE_DIRS=/usr/local/lib/python3.11/site-packages/numpy/_core/include
# This fetches the libraries provided by the Blender Foundation
#make deps BUILD_CMAKE_ARGS=" -DWITH_CYCLES_CUDA_BINARIES=OFF -DWITH_CYCLES_DEVICE_CUDA=OFF -DWITH_CYCLES_DEVICE_OPTIX=OFF"
# Replace the make deps line with:

#make deps BUILD_CMAKE_ARGS=" -DWITH_CYCLES_CUDA_BINARIES=OFF -DWITH_CYCLES_DEVICE_CUDA=OFF -DWITH_CYCLES_DEVICE_OPTIX=OFF -DWITH_NVIDIA_DRIVER_API=OFF -DWITH_OPENSSL_SYSTEM=ON"
#/usr/local/lib64/python3.11/site-packages/numpy
# # Run CMake with flags to disable NVIDIA features and enable a portable build
# cmake ../blender \
#       -DWITH_CYCLES_DEVICE_CUDA=OFF \
#       -DWITH_CYCLES_DEVICE_OPTIX=OFF \
#       -DWITH_CYCLES_CUDA_BINARIES=OFF \
#       -DWITH_NVIDIA_DRIVER_API=OFF \
#       -DCMAKE_BUILD_TYPE=Release \
#       -DWITH_LIBS_PRECOMPILED=OFF \
#       -DWITH_INSTALL_PORTABLE=ON

echo "--- Step 5: Compiling Blender ---"
#make -j$(nproc)
make -j2

echo "--- Step 6: Creating portable install package ---"
make install

echo "--- Build Complete! ---"
echo "Portable Blender is in 'blender-git/build_arm64/install'." 
cmake --install .


echo "-------------------------------------------------------------"
  
echo "--- Build Complete! ---"
echo "Your portable Blender can be found in the 'blender-git/build_arm64/install' directory on your host machine."


Building a blender has two methods
make deps which downloads dependency source, then builds that (> 6 Gb)
make use system dependency
then lite and ninja and developer

Look for
blender-git/blender/build_files/build_environment/cmake/version.cmake
It includes details of all the deps’ names and the Git repository.

@Avi_Shihora
@Dhruv_Ambaliya
Do you find any solution?

We are trying to recreate the issue again, and one more thing I require is the whole log, including Uboot, kernel, and all, which you can get from UART.