From 943e55d314b4540c322fc9ac42e04dbda8ac01c1 Mon Sep 17 00:00:00 2001 From: J0WI Date: Thu, 14 Aug 2025 19:55:08 +0000 Subject: [PATCH] Debian Trixie (#2454) Signed-off-by: J0WI --- 30/apache/Dockerfile | 16 ++++++++-------- 30/fpm-alpine/Dockerfile | 1 - 30/fpm/Dockerfile | 16 ++++++++-------- 31/apache/Dockerfile | 16 ++++++++-------- 31/fpm-alpine/Dockerfile | 1 - 31/fpm/Dockerfile | 16 ++++++++-------- Dockerfile-alpine.template | 1 - Dockerfile-debian.template | 14 +++++++------- update.sh | 2 +- versions.json | 8 ++++---- 10 files changed, 44 insertions(+), 47 deletions(-) diff --git a/30/apache/Dockerfile b/30/apache/Dockerfile index 110f6fe9..845e1e75 100644 --- a/30/apache/Dockerfile +++ b/30/apache/Dockerfile @@ -1,5 +1,5 @@ # DO NOT EDIT: created by update.sh from Dockerfile-debian.template -FROM php:8.3-apache-bookworm +FROM php:8.3-apache-trixie # entrypoint.sh and cron.sh dependencies RUN set -ex; \ @@ -9,10 +9,10 @@ RUN set -ex; \ busybox-static \ bzip2 \ libldap-common \ - libmagickcore-6.q16-6-extra \ + libmagickcore-7.q16-10-extra \ rsync \ ; \ - rm -rf /var/lib/apt/lists/*; \ + apt-get dist-clean; \ \ mkdir -p /var/spool/cron/crontabs; \ echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data @@ -57,7 +57,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ @@ -89,13 +88,14 @@ RUN set -ex; \ ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \ | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \ | sort -u \ - | xargs -r dpkg-query --search \ - | cut -d: -f1 \ + | xargs -rt dpkg-query --search \ +# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file) + | awk 'sub(":$", "", $1) { print $1 }' \ | sort -u \ | xargs -rt apt-mark manual; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean # set recommended PHP.ini settings # see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache @@ -175,7 +175,7 @@ RUN set -ex; \ chmod +x /usr/src/nextcloud/occ; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean COPY *.sh upgrade.exclude / COPY config/* /usr/src/nextcloud/config/ diff --git a/30/fpm-alpine/Dockerfile b/30/fpm-alpine/Dockerfile index 6c2c4371..53dba22b 100644 --- a/30/fpm-alpine/Dockerfile +++ b/30/fpm-alpine/Dockerfile @@ -54,7 +54,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ diff --git a/30/fpm/Dockerfile b/30/fpm/Dockerfile index 8443a588..0a66b4e6 100644 --- a/30/fpm/Dockerfile +++ b/30/fpm/Dockerfile @@ -1,5 +1,5 @@ # DO NOT EDIT: created by update.sh from Dockerfile-debian.template -FROM php:8.3-fpm-bookworm +FROM php:8.3-fpm-trixie # entrypoint.sh and cron.sh dependencies RUN set -ex; \ @@ -9,10 +9,10 @@ RUN set -ex; \ busybox-static \ bzip2 \ libldap-common \ - libmagickcore-6.q16-6-extra \ + libmagickcore-7.q16-10-extra \ rsync \ ; \ - rm -rf /var/lib/apt/lists/*; \ + apt-get dist-clean; \ \ mkdir -p /var/spool/cron/crontabs; \ echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data @@ -57,7 +57,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ @@ -89,13 +88,14 @@ RUN set -ex; \ ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \ | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \ | sort -u \ - | xargs -r dpkg-query --search \ - | cut -d: -f1 \ + | xargs -rt dpkg-query --search \ +# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file) + | awk 'sub(":$", "", $1) { print $1 }' \ | sort -u \ | xargs -rt apt-mark manual; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean # set recommended PHP.ini settings # see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache @@ -160,7 +160,7 @@ RUN set -ex; \ chmod +x /usr/src/nextcloud/occ; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean COPY *.sh upgrade.exclude / COPY config/* /usr/src/nextcloud/config/ diff --git a/31/apache/Dockerfile b/31/apache/Dockerfile index f4af7ff2..f559d096 100644 --- a/31/apache/Dockerfile +++ b/31/apache/Dockerfile @@ -1,5 +1,5 @@ # DO NOT EDIT: created by update.sh from Dockerfile-debian.template -FROM php:8.3-apache-bookworm +FROM php:8.3-apache-trixie # entrypoint.sh and cron.sh dependencies RUN set -ex; \ @@ -9,10 +9,10 @@ RUN set -ex; \ busybox-static \ bzip2 \ libldap-common \ - libmagickcore-6.q16-6-extra \ + libmagickcore-7.q16-10-extra \ rsync \ ; \ - rm -rf /var/lib/apt/lists/*; \ + apt-get dist-clean; \ \ mkdir -p /var/spool/cron/crontabs; \ echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data @@ -57,7 +57,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ @@ -89,13 +88,14 @@ RUN set -ex; \ ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \ | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \ | sort -u \ - | xargs -r dpkg-query --search \ - | cut -d: -f1 \ + | xargs -rt dpkg-query --search \ +# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file) + | awk 'sub(":$", "", $1) { print $1 }' \ | sort -u \ | xargs -rt apt-mark manual; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean # set recommended PHP.ini settings # see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache @@ -175,7 +175,7 @@ RUN set -ex; \ chmod +x /usr/src/nextcloud/occ; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean COPY *.sh upgrade.exclude / COPY config/* /usr/src/nextcloud/config/ diff --git a/31/fpm-alpine/Dockerfile b/31/fpm-alpine/Dockerfile index 3b645db2..19b04260 100644 --- a/31/fpm-alpine/Dockerfile +++ b/31/fpm-alpine/Dockerfile @@ -54,7 +54,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ diff --git a/31/fpm/Dockerfile b/31/fpm/Dockerfile index 26af48df..78610bef 100644 --- a/31/fpm/Dockerfile +++ b/31/fpm/Dockerfile @@ -1,5 +1,5 @@ # DO NOT EDIT: created by update.sh from Dockerfile-debian.template -FROM php:8.3-fpm-bookworm +FROM php:8.3-fpm-trixie # entrypoint.sh and cron.sh dependencies RUN set -ex; \ @@ -9,10 +9,10 @@ RUN set -ex; \ busybox-static \ bzip2 \ libldap-common \ - libmagickcore-6.q16-6-extra \ + libmagickcore-7.q16-10-extra \ rsync \ ; \ - rm -rf /var/lib/apt/lists/*; \ + apt-get dist-clean; \ \ mkdir -p /var/spool/cron/crontabs; \ echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data @@ -57,7 +57,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ @@ -89,13 +88,14 @@ RUN set -ex; \ ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \ | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \ | sort -u \ - | xargs -r dpkg-query --search \ - | cut -d: -f1 \ + | xargs -rt dpkg-query --search \ +# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file) + | awk 'sub(":$", "", $1) { print $1 }' \ | sort -u \ | xargs -rt apt-mark manual; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean # set recommended PHP.ini settings # see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache @@ -160,7 +160,7 @@ RUN set -ex; \ chmod +x /usr/src/nextcloud/occ; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean COPY *.sh upgrade.exclude / COPY config/* /usr/src/nextcloud/config/ diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index cf6af0ff..60a82315 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -53,7 +53,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ diff --git a/Dockerfile-debian.template b/Dockerfile-debian.template index cadae18a..cbbc7a0e 100644 --- a/Dockerfile-debian.template +++ b/Dockerfile-debian.template @@ -8,10 +8,10 @@ RUN set -ex; \ busybox-static \ bzip2 \ libldap-common \ - libmagickcore-6.q16-6-extra \ + libmagickcore-7.q16-10-extra \ rsync \ ; \ - rm -rf /var/lib/apt/lists/*; \ + apt-get dist-clean; \ \ mkdir -p /var/spool/cron/crontabs; \ echo '*/%%CRONTAB_INT%% * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data @@ -56,7 +56,6 @@ RUN set -ex; \ gmp \ intl \ ldap \ - opcache \ pcntl \ pdo_mysql \ pdo_pgsql \ @@ -88,13 +87,14 @@ RUN set -ex; \ ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \ | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \ | sort -u \ - | xargs -r dpkg-query --search \ - | cut -d: -f1 \ + | xargs -rt dpkg-query --search \ +# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file) + | awk 'sub(":$", "", $1) { print $1 }' \ | sort -u \ | xargs -rt apt-mark manual; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean # set recommended PHP.ini settings # see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache @@ -159,7 +159,7 @@ RUN set -ex; \ chmod +x /usr/src/nextcloud/occ; \ \ apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \ - rm -rf /var/lib/apt/lists/* + apt-get dist-clean COPY *.sh upgrade.exclude / COPY config/* /usr/src/nextcloud/config/ diff --git a/update.sh b/update.sh index c7e4a2d4..c1d8478e 100755 --- a/update.sh +++ b/update.sh @@ -6,7 +6,7 @@ declare -A alpine_version=( ) declare -A debian_version=( - [default]='bookworm' + [default]='trixie' ) declare -A php_version=( diff --git a/versions.json b/versions.json index b35a9900..f068d07a 100644 --- a/versions.json +++ b/versions.json @@ -8,13 +8,13 @@ "apache": { "variant": "apache", "base": "debian", - "baseVersion": "bookworm", + "baseVersion": "trixie", "phpVersion": "8.3" }, "fpm": { "variant": "fpm", "base": "debian", - "baseVersion": "bookworm", + "baseVersion": "trixie", "phpVersion": "8.3" }, "fpm-alpine": { @@ -34,13 +34,13 @@ "apache": { "variant": "apache", "base": "debian", - "baseVersion": "bookworm", + "baseVersion": "trixie", "phpVersion": "8.3" }, "fpm": { "variant": "fpm", "base": "debian", - "baseVersion": "bookworm", + "baseVersion": "trixie", "phpVersion": "8.3" }, "fpm-alpine": {