You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

32 lines
1.6 KiB

# Build image for Cellar binaries, targeting glibc 2.35 (Ubuntu 22.04).
# This keeps the binaries compatible with older systems than the host Fedora
# build, while still providing GTK4/libadwaita packages.
FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive
# ── System deps ──────────────────────────────────────────────────────────────
RUN apt-get update && apt-get install -y --no-install-recommends \
python3 python3-dev python3-pip python3-venv \
# GTK4 / Adwaita
libgtk-4-dev libadwaita-1-dev python3-gi python3-gi-cairo \
gir1.2-gtk-4.0 gir1.2-adw-1 libglib2.0-dev \
# Misc build deps
build-essential git libffi-dev libssl-dev \
# UPX
upx-ucl \
# binutils for strip
binutils \
&& rm -rf /var/lib/apt/lists/*
# ── Python environment ───────────────────────────────────────────────────────
RUN python3 -m venv --system-site-packages /opt/venv
ENV PATH="/opt/venv/bin:$PATH"
RUN python -m pip install --no-cache-dir --upgrade pip setuptools wheel \
&& python -m pip install --no-cache-dir pyinstaller requests
# ── Build ─────────────────────────────────────────────────────────────────────
WORKDIR /src
COPY . .
CMD ["/bin/bash", "/src/scripts/build-binaries.sh"]