mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-12-28 01:24:42 +01:00
9c945dbc68
Changelog-Added: build: Reproducible builds now include rust binaries such as the `cln-grpc` plugin
55 lines
1.3 KiB
Docker
55 lines
1.3 KiB
Docker
FROM focal
|
|
|
|
ENV TZ=UTC
|
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
|
ENV RUST_PROFILE=release
|
|
ENV PATH=/root/.cargo/bin:$PATH
|
|
|
|
RUN sed -i '/updates/d' /etc/apt/sources.list && \
|
|
sed -i '/security/d' /etc/apt/sources.list
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
autoconf \
|
|
build-essential \
|
|
ca-certificates \
|
|
file \
|
|
gettext \
|
|
git \
|
|
libgmp-dev \
|
|
libpq-dev \
|
|
libsodium23 \
|
|
libtool \
|
|
m4 \
|
|
python3-setuptools \
|
|
sudo \
|
|
unzip \
|
|
wget \
|
|
zip
|
|
|
|
RUN wget https://bootstrap.pypa.io/get-pip.py -O /tmp/get-pip.py && python3 /tmp/get-pip.py \
|
|
&& rm /tmp/get-pip.py \
|
|
&& pip install poetry
|
|
|
|
RUN wget https://sh.rustup.rs -O rustup-install.sh && \
|
|
bash rustup-install.sh --default-toolchain none --quiet -y && \
|
|
rm rustup-install.sh && \
|
|
/root/.cargo/bin/rustup install 1.62
|
|
|
|
RUN mkdir /build
|
|
WORKDIR /build
|
|
|
|
CMD git clone /repo /build \
|
|
&& poetry export -o requirements.txt --without-hashes \
|
|
&& pip install -r requirements.txt \
|
|
&& tools/build-release.sh zipfile \
|
|
&& mkdir -p /repro \
|
|
&& cd /repro \
|
|
&& unzip /build/release/*.zip \
|
|
&& cd clightning* \
|
|
&& tools/repro-build.sh \
|
|
&& mkdir -p /repo/release \
|
|
&& cp *.xz /build/release/* /repo/release/ \
|
|
&& cd /repo/release/ \
|
|
&& sha256sum *
|