From e47dd3fcf7bcfb5d6f6f5ce5502673d31e7a3223 Mon Sep 17 00:00:00 2001 From: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Date: Sat, 31 Oct 2026 20:26:16 +0200 Subject: [PATCH 1/4] Add Fedora 45 --- .github/workflows/build.yml | 1 + Makefile | 1 + fedora-45-amd64/Dockerfile | 48 +++++++++++++++++++++++++++++++++++++ fedora-45-amd64/Makefile | 1 + fedora-45-amd64/test.sh | 6 +++++ fedora-45-amd64/update.sh | 2 ++ 6 files changed, 59 insertions(+) create mode 100644 fedora-45-amd64/Dockerfile create mode 120000 fedora-45-amd64/Makefile create mode 100755 fedora-45-amd64/test.sh create mode 100755 fedora-45-amd64/update.sh diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0008e1e2..0ae8a674 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,6 +30,7 @@ jobs: - "centos-stream-9-amd64" - "centos-stream-10-amd64" - "debian-13-trixie-amd64" + - "fedora-45-amd64" - "gentoo" - "ubuntu-24.04-noble-amd64" - "ubuntu-26.04-resolute-amd64" diff --git a/Makefile b/Makefile index 1ce1c8b7..6ebc8f5f 100644 --- a/Makefile +++ b/Makefile @@ -8,6 +8,7 @@ TARGETS = \ debian-13-trixie-x86 \ debian-13-trixie-amd64 \ fedora-44-amd64 \ + fedora-45-amd64 \ gentoo \ manylinux_2_28-wheel-build \ ubuntu-24.04-noble-amd64 \ diff --git a/fedora-45-amd64/Dockerfile b/fedora-45-amd64/Dockerfile new file mode 100644 index 00000000..fc11dfc9 --- /dev/null +++ b/fedora-45-amd64/Dockerfile @@ -0,0 +1,48 @@ +FROM fedora:45 + +RUN dnf install -y \ + freetype-devel \ + fribidi-devel \ + gcc \ + harfbuzz-devel \ + lcms2-devel \ + libavif-devel \ + libimagequant-devel \ + libjpeg-devel \ + libraqm-devel \ + libtiff-devel \ + libwebp-devel \ + make \ + openjpeg2-devel \ + python3-devel \ + python3-tkinter \ + python3-virtualenv \ + redhat-rpm-config \ + tcl-devel \ + tk-devel \ + util-linux \ + which \ + xorg-x11-server-Xvfb \ + zlib-devel \ + && dnf clean all + +RUN useradd --uid 1001 pillow \ + && chown pillow:pillow /home/pillow + +ARG PIP_DISABLE_PIP_VERSION_CHECK=1 +ARG PIP_NO_CACHE_DIR=1 + +RUN virtualenv -p /usr/bin/python3.15 --system-site-packages /vpy3 \ + && /vpy3/bin/pip install --upgrade pip \ + && /vpy3/bin/pip install olefile pytest pytest-cov pytest-timeout \ + && /vpy3/bin/pip install numpy --only-binary=:all: || true \ + && chown -R pillow:pillow /vpy3 + +COPY depends /depends + +ENV FORCE_COLOR=1 + +USER 1001 +CMD ["depends/test.sh"] + +#docker run -v $GITHUB_WORKSPACE:/Pillow pythonpillow/fedora-45-amd64 diff --git a/fedora-45-amd64/Makefile b/fedora-45-amd64/Makefile new file mode 120000 index 00000000..5e7b0e26 --- /dev/null +++ b/fedora-45-amd64/Makefile @@ -0,0 +1 @@ +../Makefile.sub \ No newline at end of file diff --git a/fedora-45-amd64/test.sh b/fedora-45-amd64/test.sh new file mode 100755 index 00000000..a79cfc3d --- /dev/null +++ b/fedora-45-amd64/test.sh @@ -0,0 +1,6 @@ +#!/bin/bash +source /vpy3/bin/activate +cd /Pillow +make clean +make install-coverage +/usr/bin/xvfb-run -a .ci/test.sh diff --git a/fedora-45-amd64/update.sh b/fedora-45-amd64/update.sh new file mode 100755 index 00000000..2fc3671e --- /dev/null +++ b/fedora-45-amd64/update.sh @@ -0,0 +1,2 @@ +#!/bin/sh +docker pull fedora:45 From 4f75fb2301114788fc9d76b4408f8002575ec49c Mon Sep 17 00:00:00 2001 From: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Date: Sat, 31 Oct 2026 20:40:44 +0200 Subject: [PATCH 2/4] Log OS details --- .github/workflows/build.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0ae8a674..738a8f29 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -95,6 +95,12 @@ jobs: DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} DOCKER_ARGS: ${{ matrix.docker-args }} + - name: Log OS details + run: | + docker run --rm "${DOCKER_USERNAME:+$DOCKER_USERNAME/}${{ matrix.image }}:main" cat /etc/os-release + env: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + - name: Test image run: | cd "${{ matrix.image }}" From 9e49122fb77ab211c6e05f2bc868f2858b2d4ace Mon Sep 17 00:00:00 2001 From: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Date: Sat, 31 Oct 2026 20:50:46 +0200 Subject: [PATCH 3/4] Trim redundant packages --- fedora-45-amd64/Dockerfile | 6 ------ 1 file changed, 6 deletions(-) diff --git a/fedora-45-amd64/Dockerfile b/fedora-45-amd64/Dockerfile index fc11dfc9..614996a5 100644 --- a/fedora-45-amd64/Dockerfile +++ b/fedora-45-amd64/Dockerfile @@ -2,9 +2,7 @@ FROM fedora:45 RUN dnf install -y \ freetype-devel \ - fribidi-devel \ gcc \ - harfbuzz-devel \ lcms2-devel \ libavif-devel \ libimagequant-devel \ @@ -18,10 +16,6 @@ RUN dnf install -y \ python3-tkinter \ python3-virtualenv \ redhat-rpm-config \ - tcl-devel \ - tk-devel \ - util-linux \ - which \ xorg-x11-server-Xvfb \ zlib-devel \ && dnf clean all From 898f9ed9c3bcfed627c0f89c84fdfa2976f864bd Mon Sep 17 00:00:00 2001 From: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Date: Sat, 31 Oct 2026 21:08:24 +0200 Subject: [PATCH 4/4] Remove Python dependencies in the tests extra --- fedora-45-amd64/Dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/fedora-45-amd64/Dockerfile b/fedora-45-amd64/Dockerfile index 614996a5..377616e9 100644 --- a/fedora-45-amd64/Dockerfile +++ b/fedora-45-amd64/Dockerfile @@ -28,7 +28,6 @@ ARG PIP_NO_CACHE_DIR=1 RUN virtualenv -p /usr/bin/python3.15 --system-site-packages /vpy3 \ && /vpy3/bin/pip install --upgrade pip \ - && /vpy3/bin/pip install olefile pytest pytest-cov pytest-timeout \ && /vpy3/bin/pip install numpy --only-binary=:all: || true \ && chown -R pillow:pillow /vpy3