Skip to content

Commit df42f22

Browse files
authored
Merge pull request #10 from espressif/fix/idf_python_wheels_legacy
Switched to Debian Bullseye for idf-python-wheels-legacy image
2 parents fb21e66 + 40bab66 commit df42f22

File tree

1 file changed

+11
-14
lines changed

1 file changed

+11
-14
lines changed

idf_python_wheels_legacy/Dockerfile

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,17 @@
11
# Minimal manylinux-compatible Docker image for ARMv7l (32-bit ARM)
2-
# Based on Debian Buster for older glibc compatibility (2.28)
2+
# Based on Debian Bullseye for older glibc compatibility (2.31)
33
# Use this for compatibility with older systems (e.g., older Raspberry Pi OS)
44

5-
FROM arm32v7/debian:buster
5+
FROM arm32v7/debian:bullseye
66

77
LABEL maintainer="Espressif Systems"
8-
LABEL description="Minimal manylinux-compatible environment for building Python wheels on ARMv7l (legacy glibc 2.28)"
8+
LABEL description="Minimal manylinux-compatible environment for building Python wheels on ARMv7l (legacy glibc 2.31)"
99

1010
# Set environment variables
1111
ENV DEBIAN_FRONTEND=noninteractive \
1212
LC_ALL=C.UTF-8 \
1313
LANG=C.UTF-8
1414

15-
# Buster is EOL - archive repositories
16-
RUN sed -i 's|deb.debian.org|archive.debian.org|g' /etc/apt/sources.list && \
17-
sed -i 's|security.debian.org|archive.debian.org|g' /etc/apt/sources.list && \
18-
sed -i '/buster-updates/d' /etc/apt/sources.list
19-
2015
# Install build dependencies and Python versions
2116
RUN apt-get update && apt-get install -y \
2217
# Build essentials
@@ -54,10 +49,11 @@ RUN apt-get update && apt-get install -y \
5449
# dbus-python dependencies
5550
libdbus-1-dev \
5651
libdbus-glib-1-dev \
57-
# Pillow dependencies
52+
# Pillow dependencies (include both -dev and runtime libs for auditwheel)
5853
libjpeg-dev \
5954
libpng-dev \
6055
libtiff-dev \
56+
libtiff5 \
6157
libfreetype6-dev \
6258
liblcms2-dev \
6359
libwebp-dev \
@@ -66,7 +62,9 @@ RUN apt-get update && apt-get install -y \
6662
libharfbuzz-dev \
6763
libxcb1-dev \
6864
libxau-dev \
69-
# Python from Debian repos (Buster provides 3.7)
65+
brotli \
66+
libbrotli-dev \
67+
# Python from Debian repos (Bullseye provides 3.9)
7068
python3 \
7169
python3-dev \
7270
python3-venv \
@@ -82,12 +80,12 @@ RUN python3 -m pip install --no-cache-dir --upgrade \
8280

8381
# Set up manylinux platform tag
8482
# This makes auditwheel recognize the environment as manylinux-compatible
85-
# Buster has glibc 2.28, so we use manylinux_2_28
86-
RUN echo "manylinux_2_28_armv7l" > /etc/system-release-cpe
83+
# Bullseye has glibc 2.31, so we use manylinux_2_31
84+
RUN echo "manylinux_2_31_armv7l" > /etc/system-release-cpe
8785

8886
# Create a marker file for manylinux detection
8987
RUN mkdir -p /opt/python && \
90-
echo "manylinux_2_28_armv7l" > /opt/python/PLATFORM
88+
echo "manylinux_2_31_armv7l" > /opt/python/PLATFORM
9189

9290
# Set working directory
9391
WORKDIR /workspace
@@ -96,4 +94,3 @@ WORKDIR /workspace
9694
ENV PATH="/usr/bin:${PATH}"
9795

9896
CMD ["/bin/bash"]
99-

0 commit comments

Comments
 (0)