# 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"]