# Dockerfile to build the ps5-payload-dev/sdk environment locally FROM ubuntu:24.04 # Install dependencies # Clang 18 and LLD 18 are required by the SDK RUN apt-get update && apt-get install -y \ git \ cmake \ ninja-build \ clang-18 \ lld-18 \ make \ python3 \ python3-pyelftools \ wget \ xz-utils \ pkg-config \ sudo \ unzip \ && rm -rf /var/lib/apt/lists/* # Set up Clang 18 as default RUN ln -s /usr/bin/clang-18 /usr/bin/clang && \ ln -s /usr/bin/clang++-18 /usr/bin/clang++ && \ ln -s /usr/bin/ld.lld-18 /usr/bin/ld.lld # Set up environment WORKDIR /opt # Clone the SDK RUN git clone https://github.com/ps5-payload-dev/sdk.git ps5-payload-sdk-source # Build and Install the SDK to /opt/ps5-payload-sdk WORKDIR /opt/ps5-payload-sdk-source RUN make DESTDIR=/opt/ps5-payload-sdk install # Build dependencies for PS5 using the SDK (libmicrohttpd, OpenSSL, libcurl) WORKDIR /opt COPY build_deps.sh /opt/build_deps.sh RUN bash /opt/build_deps.sh # Set the environment variables for subsequent builds ENV PS5_PAYLOAD_SDK=/opt/ps5-payload-sdk WORKDIR /src