Files
ps5-payload-manager/Dockerfile.sdk
T
najdek 3282e14305 Feat: Migrate payload downloads from frontend to backend using libcurl
- Shift payload downloading from browser-side fetching to the backend C daemon
- Add OpenSSL and libcurl dependencies to the Docker SDK build environment
- Embed CA certificate bundle for secure HTTPS downloads
- Introduce the /repository_install endpoint in the internal API
2026-04-28 23:32:38 +02:00

45 lines
1.1 KiB
Docker

# 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