# syntax=docker.io/docker/dockerfile:1.25-labs@sha256:4426b5e269e36911b94fb79cf67f1fd7155ef11b2bbc8ab23cbfcbc97130efe9 # Docker image to facilitate building Element Desktop's native bits using a glibc version (2.31) # with broader compatibility, down to Debian bullseye & Ubuntu focal. # PNPM source FROM ghcr.io/pnpm/pnpm:11.10.0@sha256:9a6eb06d5f861d830fe27d85a91415e60527fa45ec45b52ee43c92a8aaf3bf8a AS pnpm FROM rust:bullseye@sha256:33e0cd779c556a248ac05acabb695c1da0cffaccc1796da507451482ac94d277 ENV DEBIAN_FRONTEND=noninteractive COPY --from=pnpm /opt/pnpm /opt/pnpm RUN ln -s /opt/pnpm/pnpm /usr/local/bin/pnpm RUN apt-get -qq update && apt-get -y -qq dist-upgrade && \ apt-get -y -qq install --no-install-recommends \ # tclsh is required for building SQLite as part of SQLCipher tcl \ # Used by seshat (when not SQLCIPHER_STATIC) \ libsqlcipher-dev && \ apt-get purge -y --auto-remove && rm -rf /var/lib/apt/lists/* RUN ln -s /usr/bin/python3 /usr/bin/python & ln -s /usr/bin/pip3 /usr/bin/pip ENV DEBUG_COLORS=true ENV FORCE_COLOR=true ENV COREPACK_ENABLE_DOWNLOAD_PROMPT=0 WORKDIR /project/apps/desktop ARG TARGETOS ARG TARGETARCH COPY .node-version dockerbuild/setup.sh / RUN /setup.sh