FROM quay.io/fedora/fedora-minimal:41 AS builder RUN dnf5 install -y wget \ gcc glibc-devel just \ git tar xz libcurl-devel RUN printf ". /etc/bashrc\n" > $HOME/.bashrc ARG nimVersion=2.2.0 RUN set -euxo pipefail && \ tempdir=$(mktemp -d) && \ pushd $tempdir && \ curl -o nim.tar.xz https://nim-lang.org/download/nim-${nimVersion}-linux_x64.tar.xz && \ tar -xf nim.tar.xz && \ pushd nim-${nimVersion} && \ ./install.sh /usr/bin && \ popd && \ cp nim-${nimVersion}/bin/* /usr/bin && \ mkdir ./lib && mv /usr/lib/nim/* ./lib && mv ./lib /usr/lib/nim/lib # fixes nim not finding the system lib && \ printf "export PATH=$HOME/.nimble/bin:'$PATH'" >> $HOME/.bashrc && \ popd && \ rm -fr $tempdir WORKDIR /workdir COPY . /workdir ARG NIMBLESETTINGS="-d:release --opt:speed -d:strip" RUN just build-binary '${NIMBLESETTINGS}' FROM quay.io/fedora/fedora-minimal:41 # Add Tini ENV TINI_VERSION v0.19.0 ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini RUN chmod +x /tini ENTRYPOINT ["/tini", "--"] RUN dnf5 -y install libcurl && dnf5 clean all COPY --from=builder /workdir/rssmix /bin/rssmix STOPSIGNAL SIGINT CMD [ "/bin/rssmix" ]