From ffd659a97406315aba59550e179fd63eab052d59 Mon Sep 17 00:00:00 2001 From: Tianon Gravi Date: Fri, 31 Jul 2020 16:35:50 -0700 Subject: [PATCH 1/3] Adjust installation order and purge "libpythonXX.a" files --- 3.5/alpine3.11/Dockerfile | 16 ++++++++-------- 3.5/alpine3.12/Dockerfile | 16 ++++++++-------- 3.5/buster/Dockerfile | 7 ++++--- 3.5/buster/slim/Dockerfile | 17 +++++++++-------- 3.5/stretch/Dockerfile | 7 ++++--- 3.5/stretch/slim/Dockerfile | 17 +++++++++-------- 3.6/alpine3.11/Dockerfile | 16 ++++++++-------- 3.6/alpine3.12/Dockerfile | 16 ++++++++-------- 3.6/buster/Dockerfile | 7 ++++--- 3.6/buster/slim/Dockerfile | 17 +++++++++-------- 3.6/stretch/Dockerfile | 7 ++++--- 3.6/stretch/slim/Dockerfile | 17 +++++++++-------- 3.7/alpine3.11/Dockerfile | 16 ++++++++-------- 3.7/alpine3.12/Dockerfile | 16 ++++++++-------- 3.7/buster/Dockerfile | 7 ++++--- 3.7/buster/slim/Dockerfile | 17 +++++++++-------- 3.7/stretch/Dockerfile | 7 ++++--- 3.7/stretch/slim/Dockerfile | 17 +++++++++-------- 3.8/alpine3.11/Dockerfile | 16 ++++++++-------- 3.8/alpine3.12/Dockerfile | 16 ++++++++-------- 3.8/buster/Dockerfile | 7 ++++--- 3.8/buster/slim/Dockerfile | 17 +++++++++-------- 3.9-rc/alpine3.11/Dockerfile | 16 ++++++++-------- 3.9-rc/alpine3.12/Dockerfile | 16 ++++++++-------- 3.9-rc/buster/Dockerfile | 7 ++++--- Dockerfile-alpine.template | 16 ++++++++-------- Dockerfile-debian.template | 7 ++++--- Dockerfile-slim.template | 17 +++++++++-------- 28 files changed, 196 insertions(+), 179 deletions(-) diff --git a/3.5/alpine3.11/Dockerfile b/3.5/alpine3.11/Dockerfile index a057ca8ab..0f8e1850a 100644 --- a/3.5/alpine3.11/Dockerfile +++ b/3.5/alpine3.11/Dockerfile @@ -116,6 +116,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -124,14 +132,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.5/alpine3.12/Dockerfile b/3.5/alpine3.12/Dockerfile index 94e1aa7e5..9940ee77c 100644 --- a/3.5/alpine3.12/Dockerfile +++ b/3.5/alpine3.12/Dockerfile @@ -116,6 +116,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -124,14 +132,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.5/buster/Dockerfile b/3.5/buster/Dockerfile index a1e876a84..56198db03 100644 --- a/3.5/buster/Dockerfile +++ b/3.5/buster/Dockerfile @@ -84,15 +84,16 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/3.5/buster/slim/Dockerfile b/3.5/buster/slim/Dockerfile index 6992534a0..950e41296 100644 --- a/3.5/buster/slim/Dockerfile +++ b/3.5/buster/slim/Dockerfile @@ -108,7 +108,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -122,13 +129,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version diff --git a/3.5/stretch/Dockerfile b/3.5/stretch/Dockerfile index 4345caab2..a280787e4 100644 --- a/3.5/stretch/Dockerfile +++ b/3.5/stretch/Dockerfile @@ -84,15 +84,16 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/3.5/stretch/slim/Dockerfile b/3.5/stretch/slim/Dockerfile index e5e318b36..8c078576b 100644 --- a/3.5/stretch/slim/Dockerfile +++ b/3.5/stretch/slim/Dockerfile @@ -108,7 +108,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -122,13 +129,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version diff --git a/3.6/alpine3.11/Dockerfile b/3.6/alpine3.11/Dockerfile index fcfe30e1b..1cf68d2dd 100644 --- a/3.6/alpine3.11/Dockerfile +++ b/3.6/alpine3.11/Dockerfile @@ -118,6 +118,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -126,14 +134,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.6/alpine3.12/Dockerfile b/3.6/alpine3.12/Dockerfile index a3bbf607d..00f58739d 100644 --- a/3.6/alpine3.12/Dockerfile +++ b/3.6/alpine3.12/Dockerfile @@ -118,6 +118,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -126,14 +134,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.6/buster/Dockerfile b/3.6/buster/Dockerfile index 59281f980..536450be6 100644 --- a/3.6/buster/Dockerfile +++ b/3.6/buster/Dockerfile @@ -84,15 +84,16 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/3.6/buster/slim/Dockerfile b/3.6/buster/slim/Dockerfile index 20579de4d..25cd6fdcb 100644 --- a/3.6/buster/slim/Dockerfile +++ b/3.6/buster/slim/Dockerfile @@ -108,7 +108,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -122,13 +129,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version diff --git a/3.6/stretch/Dockerfile b/3.6/stretch/Dockerfile index 1e893c4c2..622884202 100644 --- a/3.6/stretch/Dockerfile +++ b/3.6/stretch/Dockerfile @@ -84,15 +84,16 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/3.6/stretch/slim/Dockerfile b/3.6/stretch/slim/Dockerfile index b291bef54..80c9146eb 100644 --- a/3.6/stretch/slim/Dockerfile +++ b/3.6/stretch/slim/Dockerfile @@ -108,7 +108,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -122,13 +129,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version diff --git a/3.7/alpine3.11/Dockerfile b/3.7/alpine3.11/Dockerfile index 03097609d..4a275b1be 100644 --- a/3.7/alpine3.11/Dockerfile +++ b/3.7/alpine3.11/Dockerfile @@ -119,6 +119,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -127,14 +135,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.7/alpine3.12/Dockerfile b/3.7/alpine3.12/Dockerfile index dcaacb662..f20e87645 100644 --- a/3.7/alpine3.12/Dockerfile +++ b/3.7/alpine3.12/Dockerfile @@ -119,6 +119,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -127,14 +135,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.7/buster/Dockerfile b/3.7/buster/Dockerfile index 318b19a4f..08cd98454 100644 --- a/3.7/buster/Dockerfile +++ b/3.7/buster/Dockerfile @@ -85,15 +85,16 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/3.7/buster/slim/Dockerfile b/3.7/buster/slim/Dockerfile index 630ad6a93..385b35f07 100644 --- a/3.7/buster/slim/Dockerfile +++ b/3.7/buster/slim/Dockerfile @@ -109,7 +109,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -123,13 +130,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version diff --git a/3.7/stretch/Dockerfile b/3.7/stretch/Dockerfile index 531e94907..0a3c25495 100644 --- a/3.7/stretch/Dockerfile +++ b/3.7/stretch/Dockerfile @@ -85,15 +85,16 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/3.7/stretch/slim/Dockerfile b/3.7/stretch/slim/Dockerfile index 1792522f1..86dffa057 100644 --- a/3.7/stretch/slim/Dockerfile +++ b/3.7/stretch/slim/Dockerfile @@ -109,7 +109,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -123,13 +130,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version diff --git a/3.8/alpine3.11/Dockerfile b/3.8/alpine3.11/Dockerfile index a32e1e2cf..3caac10eb 100644 --- a/3.8/alpine3.11/Dockerfile +++ b/3.8/alpine3.11/Dockerfile @@ -83,6 +83,14 @@ RUN set -ex \ EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000" \ LDFLAGS="-Wl,--strip-all" \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -91,14 +99,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.8/alpine3.12/Dockerfile b/3.8/alpine3.12/Dockerfile index 58675ce2b..fc70605cc 100644 --- a/3.8/alpine3.12/Dockerfile +++ b/3.8/alpine3.12/Dockerfile @@ -83,6 +83,14 @@ RUN set -ex \ EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000" \ LDFLAGS="-Wl,--strip-all" \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -91,14 +99,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.8/buster/Dockerfile b/3.8/buster/Dockerfile index 81f756734..06ac75c11 100644 --- a/3.8/buster/Dockerfile +++ b/3.8/buster/Dockerfile @@ -49,15 +49,16 @@ RUN set -ex \ --without-ensurepip \ && make -j "$(nproc)" \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/3.8/buster/slim/Dockerfile b/3.8/buster/slim/Dockerfile index fbe41bbd6..ac40439a9 100644 --- a/3.8/buster/slim/Dockerfile +++ b/3.8/buster/slim/Dockerfile @@ -73,7 +73,14 @@ RUN set -ex \ && make -j "$(nproc)" \ LDFLAGS="-Wl,--strip-all" \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -87,13 +94,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version diff --git a/3.9-rc/alpine3.11/Dockerfile b/3.9-rc/alpine3.11/Dockerfile index 25be5764c..8dea64d72 100644 --- a/3.9-rc/alpine3.11/Dockerfile +++ b/3.9-rc/alpine3.11/Dockerfile @@ -83,6 +83,14 @@ RUN set -ex \ EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000" \ LDFLAGS="-Wl,--strip-all" \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -91,14 +99,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.9-rc/alpine3.12/Dockerfile b/3.9-rc/alpine3.12/Dockerfile index 0db0ab4cf..fe03e784f 100644 --- a/3.9-rc/alpine3.12/Dockerfile +++ b/3.9-rc/alpine3.12/Dockerfile @@ -83,6 +83,14 @@ RUN set -ex \ EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000" \ LDFLAGS="-Wl,--strip-all" \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -91,14 +99,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.9-rc/buster/Dockerfile b/3.9-rc/buster/Dockerfile index 813147b73..5723c27d1 100644 --- a/3.9-rc/buster/Dockerfile +++ b/3.9-rc/buster/Dockerfile @@ -49,15 +49,16 @@ RUN set -ex \ --without-ensurepip \ && make -j "$(nproc)" \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index 27ca1d4d2..d3ed2f0ce 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -113,6 +113,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ | tr ',' '\n' \ @@ -121,14 +129,6 @@ RUN set -ex \ | xargs -rt apk add --no-cache --virtual .python-rundeps \ && apk del --no-network .build-deps \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/Dockerfile-debian.template b/Dockerfile-debian.template index c91967324..0fd2e6f1d 100644 --- a/Dockerfile-debian.template +++ b/Dockerfile-debian.template @@ -79,15 +79,16 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + \ + && ldconfig \ \ && python3 --version diff --git a/Dockerfile-slim.template b/Dockerfile-slim.template index 457f865d6..7b4770f9a 100644 --- a/Dockerfile-slim.template +++ b/Dockerfile-slim.template @@ -103,7 +103,14 @@ RUN set -ex \ test_unicode \ ' \ && make install \ - && ldconfig \ + && rm -rf /usr/src/python \ + \ + && find /usr/local -depth \ + \( \ + \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ + -o \ + \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ @@ -117,13 +124,7 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && find /usr/local -depth \ - \( \ - \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \ - \) -exec rm -rf '{}' + \ - && rm -rf /usr/src/python \ + && ldconfig \ \ && python3 --version From 0bba31b097de3fa850e8a0976b49fb76f0dc3fa1 Mon Sep 17 00:00:00 2001 From: Tianon Gravi Date: Fri, 31 Jul 2020 16:49:16 -0700 Subject: [PATCH 2/3] Also remove "wininst-*" on Python versions lower than 3.9 --- 3.5/alpine3.11/Dockerfile | 4 ++-- 3.5/alpine3.12/Dockerfile | 4 ++-- 3.5/buster/Dockerfile | 4 ++-- 3.5/buster/slim/Dockerfile | 4 ++-- 3.5/stretch/Dockerfile | 4 ++-- 3.5/stretch/slim/Dockerfile | 4 ++-- 3.6/alpine3.11/Dockerfile | 4 ++-- 3.6/alpine3.12/Dockerfile | 4 ++-- 3.6/buster/Dockerfile | 4 ++-- 3.6/buster/slim/Dockerfile | 4 ++-- 3.6/stretch/Dockerfile | 4 ++-- 3.6/stretch/slim/Dockerfile | 4 ++-- 3.7/alpine3.11/Dockerfile | 4 ++-- 3.7/alpine3.12/Dockerfile | 4 ++-- 3.7/buster/Dockerfile | 4 ++-- 3.7/buster/slim/Dockerfile | 4 ++-- 3.7/stretch/Dockerfile | 4 ++-- 3.7/stretch/slim/Dockerfile | 4 ++-- 3.8/alpine3.11/Dockerfile | 4 ++-- 3.8/alpine3.12/Dockerfile | 4 ++-- 3.8/buster/Dockerfile | 4 ++-- 3.8/buster/slim/Dockerfile | 4 ++-- 3.9-rc/alpine3.11/Dockerfile | 3 +-- 3.9-rc/alpine3.12/Dockerfile | 3 +-- 3.9-rc/buster/Dockerfile | 3 +-- Dockerfile-alpine.template | 4 ++-- Dockerfile-debian.template | 4 ++-- Dockerfile-slim.template | 4 ++-- update.sh | 4 ++++ 29 files changed, 57 insertions(+), 56 deletions(-) diff --git a/3.5/alpine3.11/Dockerfile b/3.5/alpine3.11/Dockerfile index 0f8e1850a..68aeacdc3 100644 --- a/3.5/alpine3.11/Dockerfile +++ b/3.5/alpine3.11/Dockerfile @@ -121,8 +121,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.5/alpine3.12/Dockerfile b/3.5/alpine3.12/Dockerfile index 9940ee77c..1674a3d1d 100644 --- a/3.5/alpine3.12/Dockerfile +++ b/3.5/alpine3.12/Dockerfile @@ -121,8 +121,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.5/buster/Dockerfile b/3.5/buster/Dockerfile index 56198db03..39638273f 100644 --- a/3.5/buster/Dockerfile +++ b/3.5/buster/Dockerfile @@ -89,8 +89,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/3.5/buster/slim/Dockerfile b/3.5/buster/slim/Dockerfile index 950e41296..f0822d680 100644 --- a/3.5/buster/slim/Dockerfile +++ b/3.5/buster/slim/Dockerfile @@ -113,8 +113,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/3.5/stretch/Dockerfile b/3.5/stretch/Dockerfile index a280787e4..3dc49f2e2 100644 --- a/3.5/stretch/Dockerfile +++ b/3.5/stretch/Dockerfile @@ -89,8 +89,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/3.5/stretch/slim/Dockerfile b/3.5/stretch/slim/Dockerfile index 8c078576b..5839b7e04 100644 --- a/3.5/stretch/slim/Dockerfile +++ b/3.5/stretch/slim/Dockerfile @@ -113,8 +113,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/3.6/alpine3.11/Dockerfile b/3.6/alpine3.11/Dockerfile index 1cf68d2dd..70441385b 100644 --- a/3.6/alpine3.11/Dockerfile +++ b/3.6/alpine3.11/Dockerfile @@ -123,8 +123,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.6/alpine3.12/Dockerfile b/3.6/alpine3.12/Dockerfile index 00f58739d..18e7dc859 100644 --- a/3.6/alpine3.12/Dockerfile +++ b/3.6/alpine3.12/Dockerfile @@ -123,8 +123,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.6/buster/Dockerfile b/3.6/buster/Dockerfile index 536450be6..debd13159 100644 --- a/3.6/buster/Dockerfile +++ b/3.6/buster/Dockerfile @@ -89,8 +89,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/3.6/buster/slim/Dockerfile b/3.6/buster/slim/Dockerfile index 25cd6fdcb..4851c2268 100644 --- a/3.6/buster/slim/Dockerfile +++ b/3.6/buster/slim/Dockerfile @@ -113,8 +113,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/3.6/stretch/Dockerfile b/3.6/stretch/Dockerfile index 622884202..a6e1ca8e3 100644 --- a/3.6/stretch/Dockerfile +++ b/3.6/stretch/Dockerfile @@ -89,8 +89,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/3.6/stretch/slim/Dockerfile b/3.6/stretch/slim/Dockerfile index 80c9146eb..e9d6604bc 100644 --- a/3.6/stretch/slim/Dockerfile +++ b/3.6/stretch/slim/Dockerfile @@ -113,8 +113,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/3.7/alpine3.11/Dockerfile b/3.7/alpine3.11/Dockerfile index 4a275b1be..6900905e2 100644 --- a/3.7/alpine3.11/Dockerfile +++ b/3.7/alpine3.11/Dockerfile @@ -124,8 +124,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.7/alpine3.12/Dockerfile b/3.7/alpine3.12/Dockerfile index f20e87645..19de088d8 100644 --- a/3.7/alpine3.12/Dockerfile +++ b/3.7/alpine3.12/Dockerfile @@ -124,8 +124,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.7/buster/Dockerfile b/3.7/buster/Dockerfile index 08cd98454..4db0ecdb6 100644 --- a/3.7/buster/Dockerfile +++ b/3.7/buster/Dockerfile @@ -90,8 +90,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/3.7/buster/slim/Dockerfile b/3.7/buster/slim/Dockerfile index 385b35f07..0cf98ae8d 100644 --- a/3.7/buster/slim/Dockerfile +++ b/3.7/buster/slim/Dockerfile @@ -114,8 +114,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/3.7/stretch/Dockerfile b/3.7/stretch/Dockerfile index 0a3c25495..82e472062 100644 --- a/3.7/stretch/Dockerfile +++ b/3.7/stretch/Dockerfile @@ -90,8 +90,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/3.7/stretch/slim/Dockerfile b/3.7/stretch/slim/Dockerfile index 86dffa057..b37f3f40a 100644 --- a/3.7/stretch/slim/Dockerfile +++ b/3.7/stretch/slim/Dockerfile @@ -114,8 +114,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/3.8/alpine3.11/Dockerfile b/3.8/alpine3.11/Dockerfile index 3caac10eb..92fd497aa 100644 --- a/3.8/alpine3.11/Dockerfile +++ b/3.8/alpine3.11/Dockerfile @@ -88,8 +88,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.8/alpine3.12/Dockerfile b/3.8/alpine3.12/Dockerfile index fc70605cc..d669ff9c0 100644 --- a/3.8/alpine3.12/Dockerfile +++ b/3.8/alpine3.12/Dockerfile @@ -88,8 +88,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.8/buster/Dockerfile b/3.8/buster/Dockerfile index 06ac75c11..2a607d831 100644 --- a/3.8/buster/Dockerfile +++ b/3.8/buster/Dockerfile @@ -54,8 +54,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/3.8/buster/slim/Dockerfile b/3.8/buster/slim/Dockerfile index ac40439a9..18d863782 100644 --- a/3.8/buster/slim/Dockerfile +++ b/3.8/buster/slim/Dockerfile @@ -78,8 +78,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/3.9-rc/alpine3.11/Dockerfile b/3.9-rc/alpine3.11/Dockerfile index 8dea64d72..17a57ba04 100644 --- a/3.9-rc/alpine3.11/Dockerfile +++ b/3.9-rc/alpine3.11/Dockerfile @@ -88,8 +88,7 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.9-rc/alpine3.12/Dockerfile b/3.9-rc/alpine3.12/Dockerfile index fe03e784f..8d695e790 100644 --- a/3.9-rc/alpine3.12/Dockerfile +++ b/3.9-rc/alpine3.12/Dockerfile @@ -88,8 +88,7 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/3.9-rc/buster/Dockerfile b/3.9-rc/buster/Dockerfile index 5723c27d1..057030230 100644 --- a/3.9-rc/buster/Dockerfile +++ b/3.9-rc/buster/Dockerfile @@ -54,8 +54,7 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index d3ed2f0ce..b387d1928 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -118,8 +118,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \ diff --git a/Dockerfile-debian.template b/Dockerfile-debian.template index 0fd2e6f1d..6f0b37388 100644 --- a/Dockerfile-debian.template +++ b/Dockerfile-debian.template @@ -84,8 +84,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && ldconfig \ diff --git a/Dockerfile-slim.template b/Dockerfile-slim.template index 7b4770f9a..f267c9a60 100644 --- a/Dockerfile-slim.template +++ b/Dockerfile-slim.template @@ -108,8 +108,8 @@ RUN set -ex \ && find /usr/local -depth \ \( \ \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \ - -o \ - \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \ + -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ && apt-mark auto '.*' > /dev/null \ diff --git a/update.sh b/update.sh index e1965ec8d..779ba90a3 100755 --- a/update.sh +++ b/update.sh @@ -194,5 +194,9 @@ for version in "${versions[@]}"; do # https://github.com/python/cpython/pull/14910 perl -0 -i -p -e "s![^\n]+PROFILE_TASK(='[^']+?')?[^\n]+\n!!gs" "$dir/Dockerfile" fi + if [ "$minor" -ge 9 ]; then + # "wininst-*.exe" is not installed for Unix platforms on Python 3.9+: https://github.com/python/cpython/pull/14511 + sed -ri -e '/wininst/d' "$dir/Dockerfile" + fi done done From 7a3801aafaae42930ab540c2dd396da06728e48d Mon Sep 17 00:00:00 2001 From: Tianon Gravi Date: Mon, 3 Aug 2020 09:15:00 -0700 Subject: [PATCH 3/3] Fix ldconfig ordering --- 3.5/buster/slim/Dockerfile | 4 ++-- 3.5/stretch/slim/Dockerfile | 4 ++-- 3.6/buster/slim/Dockerfile | 4 ++-- 3.6/stretch/slim/Dockerfile | 4 ++-- 3.7/buster/slim/Dockerfile | 4 ++-- 3.7/stretch/slim/Dockerfile | 4 ++-- 3.8/buster/slim/Dockerfile | 4 ++-- Dockerfile-slim.template | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/3.5/buster/slim/Dockerfile b/3.5/buster/slim/Dockerfile index f0822d680..0021badc2 100644 --- a/3.5/buster/slim/Dockerfile +++ b/3.5/buster/slim/Dockerfile @@ -117,6 +117,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -129,8 +131,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.5/stretch/slim/Dockerfile b/3.5/stretch/slim/Dockerfile index 5839b7e04..7cdbb1260 100644 --- a/3.5/stretch/slim/Dockerfile +++ b/3.5/stretch/slim/Dockerfile @@ -117,6 +117,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -129,8 +131,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.6/buster/slim/Dockerfile b/3.6/buster/slim/Dockerfile index 4851c2268..13f095b50 100644 --- a/3.6/buster/slim/Dockerfile +++ b/3.6/buster/slim/Dockerfile @@ -117,6 +117,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -129,8 +131,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.6/stretch/slim/Dockerfile b/3.6/stretch/slim/Dockerfile index e9d6604bc..0b3e7727e 100644 --- a/3.6/stretch/slim/Dockerfile +++ b/3.6/stretch/slim/Dockerfile @@ -117,6 +117,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -129,8 +131,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.7/buster/slim/Dockerfile b/3.7/buster/slim/Dockerfile index 0cf98ae8d..8b461afbe 100644 --- a/3.7/buster/slim/Dockerfile +++ b/3.7/buster/slim/Dockerfile @@ -118,6 +118,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -130,8 +132,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.7/stretch/slim/Dockerfile b/3.7/stretch/slim/Dockerfile index b37f3f40a..f7444f6bc 100644 --- a/3.7/stretch/slim/Dockerfile +++ b/3.7/stretch/slim/Dockerfile @@ -118,6 +118,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -130,8 +132,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/3.8/buster/slim/Dockerfile b/3.8/buster/slim/Dockerfile index 18d863782..338dcd178 100644 --- a/3.8/buster/slim/Dockerfile +++ b/3.8/buster/slim/Dockerfile @@ -82,6 +82,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -94,8 +96,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist diff --git a/Dockerfile-slim.template b/Dockerfile-slim.template index f267c9a60..7c079a426 100644 --- a/Dockerfile-slim.template +++ b/Dockerfile-slim.template @@ -112,6 +112,8 @@ RUN set -ex \ -o \( -type f -a -name 'wininst-*.exe' \) \ \) -exec rm -rf '{}' + \ \ + && ldconfig \ + \ && apt-mark auto '.*' > /dev/null \ && apt-mark manual $savedAptMark \ && find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \ @@ -124,8 +126,6 @@ RUN set -ex \ && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ && rm -rf /var/lib/apt/lists/* \ \ - && ldconfig \ - \ && python3 --version # make some useful symlinks that are expected to exist