From 3ed2bc9727caa2382b4be96ff6525c6d5239dc0e Mon Sep 17 00:00:00 2001 From: Leona Maroni Date: Thu, 9 Apr 2026 21:32:27 +0200 Subject: [PATCH 1/4] percona-server_8_0: drop as it's EOL soon It reaches it's EOL before the NixOS 26.05 release, so drop as release preperation. --- doc/release-notes/rl-2605.section.md | 2 + nixos/tests/mysql/common.nix | 2 +- pkgs/servers/sql/percona-server/8_0.nix | 216 -------------------- pkgs/servers/sql/percona-server/default.nix | 8 - pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 1 - 6 files changed, 4 insertions(+), 226 deletions(-) delete mode 100644 pkgs/servers/sql/percona-server/8_0.nix diff --git a/doc/release-notes/rl-2605.section.md b/doc/release-notes/rl-2605.section.md index 74248d2317f6..2288cf3326ec 100644 --- a/doc/release-notes/rl-2605.section.md +++ b/doc/release-notes/rl-2605.section.md @@ -174,6 +174,8 @@ - `vicinae` has been updated to v0.20. This includes, among several other breaking changes, a complete overhaul of the configuration system. For update instructions, see the [upstream configuration documentation](https://docs.vicinae.com/config#migration-from-v0-16-x-to-v0-17-x). +- `percona-server_8_4` has been removed. Please update to `percona-server_8_0`, `mysql84` or `mariadb`. + - The `man-pages` package's outputs have been split. The manual pages are installed into the `man` output, which is installed by default. Binaries (including `diffman-git`, `mansect`, `pdfman`, and `sortman`) are installed into the `out` output, which is not installed by default. - All Log4Shell vulnerability scanners were removed, as they were all unmaintained upstream and are no longer relevant given that the vulnerability has been fixed upstream for several years. diff --git a/nixos/tests/mysql/common.nix b/nixos/tests/mysql/common.nix index 04be129482fe..c4f14a6dc50d 100644 --- a/nixos/tests/mysql/common.nix +++ b/nixos/tests/mysql/common.nix @@ -7,7 +7,7 @@ inherit (pkgs) mysql84; }; perconaPackages = { - inherit (pkgs) percona-server_8_0 percona-server_8_4; + inherit (pkgs) percona-server_8_4; }; mkTestName = pkg: "mariadb_${builtins.replaceStrings [ "." ] [ "" ] (lib.versions.majorMinor pkg.version)}"; diff --git a/pkgs/servers/sql/percona-server/8_0.nix b/pkgs/servers/sql/percona-server/8_0.nix deleted file mode 100644 index d174dea84b5e..000000000000 --- a/pkgs/servers/sql/percona-server/8_0.nix +++ /dev/null @@ -1,216 +0,0 @@ -{ - lib, - stdenv, - fetchurl, - fetchpatch, - gitUpdater, - bison, - cmake, - pkg-config, - boost, - icu, - libedit, - libevent, - lz4, - ncurses, - openssl, - perl, - protobuf, - re2, - readline, - zlib, - zstd, - libfido2, - numactl, - cctools, - developer_cmds, - libtirpc, - rpcsvc-proto, - curl, - DarwinTools, - nixosTests, - coreutils, - procps, - gnused, - gnugrep, - hostname, - makeWrapper, - # Percona-specific deps - cyrus_sasl, - gnumake, - openldap, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "percona-server"; - version = "8.0.45-36"; - - src = fetchurl { - url = "https://downloads.percona.com/downloads/Percona-Server-8.0/Percona-Server-${finalAttrs.version}/source/tarball/percona-server-${finalAttrs.version}.tar.gz"; - hash = "sha256-E3zbJKH1uK+9H+84RXuY6tjXPjzHPCKjxvrMlKs4cd4="; - }; - - nativeBuildInputs = [ - bison - cmake - pkg-config - makeWrapper - # required for scripts/CMakeLists.txt - coreutils - gnugrep - procps - ] - ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ rpcsvc-proto ]; - - patches = [ - # fixes using -DWITH_SSL=system with CMAKE_PREFIX_PATH on darwin - # https://github.com/Homebrew/homebrew-core/pull/204799 - (fetchpatch { - name = "fix-system-ssl-darwin.patch"; - url = "https://github.com/percona/percona-server/pull/5537/commits/a693e5d67abf6f27f5284c86361604babec529c6.patch"; - hash = "sha256-fFBy3AYTMLvHvbsh0g0UvuPkmVMKZzxPsxeBKbsN8Ho="; - }) - ./no-force-outline-atomics.patch # Do not force compilers to turn on -moutline-atomics switch - ./coredumper-explicitly-import-unistd.patch # fix build on aarch64-linux - ]; - - ## NOTE: MySQL upstream frequently twiddles the invocations of libtool. When updating, you might proactively grep for libtool references. - postPatch = '' - substituteInPlace cmake/libutils.cmake --replace /usr/bin/libtool libtool - substituteInPlace cmake/os/Darwin.cmake --replace /usr/bin/libtool libtool - # The rocksdb setup script is called with `env -i` and cannot find anything in PATH. - patchShebangs storage/rocksdb/get_rocksdb_files.sh - substituteInPlace storage/rocksdb/get_rocksdb_files.sh --replace mktemp ${coreutils}/bin/mktemp - substituteInPlace storage/rocksdb/get_rocksdb_files.sh --replace "rm $MKFILE" "${coreutils}/bin/rm $MKFILE" - substituteInPlace storage/rocksdb/get_rocksdb_files.sh --replace "make --" "${gnumake}/bin/make --" - ''; - - buildInputs = [ - boost - (curl.override { inherit openssl; }) - icu - libedit - libevent - lz4 - ncurses - openssl - protobuf - re2 - readline - zlib - zstd - libfido2 - openldap - perl - cyrus_sasl - ] - ++ lib.optionals stdenv.hostPlatform.isLinux [ - numactl - libtirpc - ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - cctools - developer_cmds - DarwinTools - ]; - - outputs = [ - "out" - "static" - ]; - - cmakeFlags = [ - # Percona-specific flags. - "-DPORTABLE=1" - "-DWITH_LDAP=system" - "-DROCKSDB_DISABLE_AVX2=1" - "-DROCKSDB_DISABLE_MARCH_NATIVE=1" - - # Flags taken from mysql package. - "-DFORCE_UNSUPPORTED_COMPILER=1" # To configure on Darwin. - "-DWITH_ROUTER=OFF" # It may be packaged separately. - "-DWITH_SYSTEM_LIBS=ON" - "-DWITH_UNIT_TESTS=OFF" - "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock" - "-DMYSQL_DATADIR=/var/lib/mysql" - "-DINSTALL_INFODIR=share/mysql/docs" - "-DINSTALL_MANDIR=share/man" - "-DINSTALL_PLUGINDIR=lib/mysql/plugin" - "-DINSTALL_INCLUDEDIR=include/mysql" - "-DINSTALL_DOCREADMEDIR=share/mysql" - "-DINSTALL_SUPPORTFILESDIR=share/mysql" - "-DINSTALL_MYSQLSHAREDIR=share/mysql" - "-DINSTALL_MYSQLTESTDIR=" - "-DINSTALL_DOCDIR=share/mysql/docs" - "-DINSTALL_SHAREDIR=share/mysql" - ]; - - postInstall = '' - moveToOutput "lib/*.a" $static - so=${stdenv.hostPlatform.extensions.sharedLibrary} - ln -s libperconaserverclient$so $out/lib/libmysqlclient_r$so - - wrapProgram $out/bin/mysqld_safe --prefix PATH : ${ - lib.makeBinPath [ - coreutils - procps - gnugrep - gnused - hostname - ] - } - wrapProgram $out/bin/mysql_config --prefix PATH : ${ - lib.makeBinPath [ - coreutils - gnused - ] - } - wrapProgram $out/bin/ps_mysqld_helper --prefix PATH : ${ - lib.makeBinPath [ - coreutils - gnugrep - ] - } - wrapProgram $out/bin/ps-admin --prefix PATH : ${ - lib.makeBinPath [ - coreutils - gnugrep - ] - } - wrapProgram $out/bin/mysqld_multi --prefix PATH : ${ - lib.makeBinPath [ - coreutils - gnugrep - ] - } - ''; - - passthru = { - client = finalAttrs.finalPackage; - connector-c = finalAttrs.finalPackage; - server = finalAttrs.finalPackage; - mysqlVersion = lib.versions.majorMinor finalAttrs.version; - tests.percona-server = - nixosTests.mysql."percona-server_${lib.versions.major finalAttrs.version}_${lib.versions.minor finalAttrs.version}"; - updateScript = gitUpdater { - url = "https://github.com/percona/percona-server"; - rev-prefix = "Percona-Server-"; - allowedVersions = "${lib.versions.major finalAttrs.version}\\.${lib.versions.minor finalAttrs.version}\\..+"; - }; - }; - - meta = { - homepage = "https://www.percona.com/software/mysql-database/percona-server"; - description = '' - A free, fully compatible, enhanced, open source drop-in replacement for - MySQL® that provides superior performance, scalability and instrumentation. - Long-term support release. - ''; - license = lib.licenses.gpl2Only; - maintainers = [ - lib.maintainers.leona - lib.maintainers.osnyx - ]; - platforms = lib.platforms.unix; - }; -}) diff --git a/pkgs/servers/sql/percona-server/default.nix b/pkgs/servers/sql/percona-server/default.nix index 50255a8f5397..4c97cbc977cc 100644 --- a/pkgs/servers/sql/percona-server/default.nix +++ b/pkgs/servers/sql/percona-server/default.nix @@ -1,12 +1,4 @@ pkgs: { - # old lts - percona-server_8_0 = pkgs.callPackage ./8_0.nix { - inherit (pkgs.darwin) developer_cmds DarwinTools; - boost = pkgs.boost177; # Configure checks for specific version. - icu = pkgs.icu69; - # newer versions cause linking failures against `libabsl_spinlock_wait` - protobuf = pkgs.protobuf_21; - }; percona-server_8_4 = pkgs.callPackage ./8_4.nix { inherit (pkgs.darwin) developer_cmds DarwinTools; # newer versions cause linking failures against `libabsl_spinlock_wait` diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 86ff9d86da7a..cf98ae37ccc7 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1585,6 +1585,7 @@ mapAliases { perceptual-diff = throw "perceptual-diff was removed due to numerous vulnerabilities in freeimage"; # Added 2025-10-23 percona-server_innovation = throw "'percona-server_innovation' has been renamed to/replaced by 'percona-server'"; # Converted to throw 2025-10-27 percona-server_lts = throw "'percona-server_lts' has been renamed to/replaced by 'percona-server'"; # Converted to throw 2025-10-27 + percona-server_8_0 = throw "'percona-server_8_0' reaches end of life on 2026-04-30 and has been removed. Use 'percona-server_8_4'"; # Added 2026-04-09 percona-xtrabackup_innovation = throw "'percona-xtrabackup_innovation' has been renamed to/replaced by 'percona-xtrabackup'"; # Converted to throw 2025-10-27 percona-xtrabackup_lts = throw "'percona-xtrabackup_lts' has been renamed to/replaced by 'percona-xtrabackup'"; # Converted to throw 2025-10-27 peruse = throw "'peruse' has been removed as it depends on KDE Gear 5, which has reached EOL"; # Added 2025-08-20 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4e6cc40f54d9..48c0acb01b13 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3128,7 +3128,6 @@ with pkgs; patchutils_0_4_2 = callPackage ../tools/text/patchutils/0.4.2.nix { }; inherit (import ../servers/sql/percona-server pkgs) - percona-server_8_0 percona-server_8_4 percona-server ; From 1de69f5ef78f97b1d678078c0972cc02403e4ccb Mon Sep 17 00:00:00 2001 From: Leona Maroni Date: Thu, 9 Apr 2026 21:32:27 +0200 Subject: [PATCH 2/4] percona-xtrabackup_8_0: drop as it's EOL soon It reaches it's EOL before the NixOS 26.05 release, so drop as release preperation. --- pkgs/tools/backup/percona-xtrabackup/8_0.nix | 16 ---------------- pkgs/tools/backup/percona-xtrabackup/default.nix | 3 --- pkgs/top-level/aliases.nix | 3 ++- pkgs/top-level/all-packages.nix | 1 - 4 files changed, 2 insertions(+), 21 deletions(-) delete mode 100644 pkgs/tools/backup/percona-xtrabackup/8_0.nix diff --git a/pkgs/tools/backup/percona-xtrabackup/8_0.nix b/pkgs/tools/backup/percona-xtrabackup/8_0.nix deleted file mode 100644 index 5136aed309df..000000000000 --- a/pkgs/tools/backup/percona-xtrabackup/8_0.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ callPackage, ... }@args: - -callPackage ./generic.nix ( - args - // { - version = "8.0.35-34"; - hash = "sha256-DqjDBLSQqlWazWJjdb+n7RwqSe/OMlZI2ca/JNTX2W8="; - - # includes https://github.com/Percona-Lab/libkmip.git - fetchSubmodules = true; - - extraPatches = [ - ./abi-check.patch - ]; - } -) diff --git a/pkgs/tools/backup/percona-xtrabackup/default.nix b/pkgs/tools/backup/percona-xtrabackup/default.nix index 9fd2e627c17e..59c66c979333 100644 --- a/pkgs/tools/backup/percona-xtrabackup/default.nix +++ b/pkgs/tools/backup/percona-xtrabackup/default.nix @@ -1,7 +1,4 @@ pkgs: { - percona-xtrabackup_8_0 = pkgs.callPackage ./8_0.nix { - boost = pkgs.boost177; - }; percona-xtrabackup_8_4 = pkgs.callPackage ./8_4.nix { }; percona-xtrabackup = pkgs.percona-xtrabackup_8_4; } diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index cf98ae37ccc7..a34be7c1d642 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1583,9 +1583,10 @@ mapAliases { pell = throw "'pell' has been removed as it is unused and unmaintained upstream"; # Added 2025-12-18 pentablet-driver = throw "'pentablet-driver' has been renamed to/replaced by 'xp-pen-g430-driver'"; # Converted to throw 2025-10-27 perceptual-diff = throw "perceptual-diff was removed due to numerous vulnerabilities in freeimage"; # Added 2025-10-23 + percona-server_8_0 = throw "'percona-server_8_0' reaches end of life on 2026-04-30 and has been removed. Use 'percona-server_8_4'"; # Added 2026-04-09 percona-server_innovation = throw "'percona-server_innovation' has been renamed to/replaced by 'percona-server'"; # Converted to throw 2025-10-27 percona-server_lts = throw "'percona-server_lts' has been renamed to/replaced by 'percona-server'"; # Converted to throw 2025-10-27 - percona-server_8_0 = throw "'percona-server_8_0' reaches end of life on 2026-04-30 and has been removed. Use 'percona-server_8_4'"; # Added 2026-04-09 + percona-xtrabackup_8_0 = throw "'percona-xtrabackup_8_0' reaches end of life on 2026-04-30 and has been removed. Use 'percona-xtrabackup_8_4'"; # Added 2026-04-09 percona-xtrabackup_innovation = throw "'percona-xtrabackup_innovation' has been renamed to/replaced by 'percona-xtrabackup'"; # Converted to throw 2025-10-27 percona-xtrabackup_lts = throw "'percona-xtrabackup_lts' has been renamed to/replaced by 'percona-xtrabackup'"; # Converted to throw 2025-10-27 peruse = throw "'peruse' has been removed as it depends on KDE Gear 5, which has reached EOL"; # Added 2025-08-20 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 48c0acb01b13..36a404c33690 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3132,7 +3132,6 @@ with pkgs; percona-server ; inherit (import ../tools/backup/percona-xtrabackup pkgs) - percona-xtrabackup_8_0 percona-xtrabackup_8_4 percona-xtrabackup ; From 6481a63c1309282a242db76712b4e2570c565764 Mon Sep 17 00:00:00 2001 From: Leona Maroni Date: Mon, 20 Apr 2026 08:38:24 +0200 Subject: [PATCH 3/4] boost177: drop only consumer inside nixpkgs was dropped. --- pkgs/development/libraries/boost/1.77.nix | 19 ------------------- pkgs/development/libraries/boost/default.nix | 1 - pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 1 - 4 files changed, 1 insertion(+), 21 deletions(-) delete mode 100644 pkgs/development/libraries/boost/1.77.nix diff --git a/pkgs/development/libraries/boost/1.77.nix b/pkgs/development/libraries/boost/1.77.nix deleted file mode 100644 index 998107521e22..000000000000 --- a/pkgs/development/libraries/boost/1.77.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ callPackage, fetchurl, ... }@args: - -callPackage ./generic.nix ( - args - // rec { - version = "1.77.0"; - - src = fetchurl { - urls = [ - "mirror://sourceforge/boost/boost_${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.bz2" - "https://boostorg.jfrog.io/artifactory/main/release/${version}/source/boost_${ - builtins.replaceStrings [ "." ] [ "_" ] version - }.tar.bz2" - ]; - # SHA256 from http://www.boost.org/users/history/version_1_77_0.html - sha256 = "sha256-/J+F/AMOIzFCkIJBr3qEbmBjCqc4jeml+vsfOiaECFQ="; - }; - } -) diff --git a/pkgs/development/libraries/boost/default.nix b/pkgs/development/libraries/boost/default.nix index 87449ec03aa0..930cfab4e8bf 100644 --- a/pkgs/development/libraries/boost/default.nix +++ b/pkgs/development/libraries/boost/default.nix @@ -20,7 +20,6 @@ let ); in { - boost177 = makeBoost ./1.77.nix; boost178 = makeBoost ./1.78.nix; boost179 = makeBoost ./1.79.nix; boost180 = makeBoost ./1.80.nix; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index a34be7c1d642..f5c142c04ce3 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -396,6 +396,7 @@ mapAliases { blueberry = throw "'blueberry' has been removed as it is unmaintained upstream. Consider using blueman instead"; # Added 2026-03-09 bmap-tools = throw "'bmap-tools' has been renamed to/replaced by 'bmaptool'"; # Converted to throw 2025-10-27 bob = throw "'bob' has been removed as it is unmaintained upstream and has vulnerable dependencies."; # Added 2025-12-29 + boost177 = throw "Boost 1.77 has been removed as it is obsolete and no longer used by anything in Nixpkgs"; # Added 2026-04-20 botan2 = throw "botan2 has been removed as it is EOL"; # Added 2025-10-20 bower2nix = throw "bower2nix has been removed as bower was removed. It is recommended to migrate to yarn."; # Added 2025-09-17 brasero-original = throw "'brasero-original' has been renamed to/replaced by 'brasero-unwrapped'"; # Converted to throw 2025-10-27 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 36a404c33690..b1210f0b5b75 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6099,7 +6099,6 @@ with pkgs; callPackage ../os-specific/linux/bionic-prebuilt { }; inherit (callPackage ../development/libraries/boost { inherit (buildPackages) boost-build; }) - boost177 boost178 boost179 boost180 From 39cbac3b25dcbd762b7d630a2f9aad4c73449ebe Mon Sep 17 00:00:00 2001 From: Leona Maroni Date: Mon, 20 Apr 2026 08:38:24 +0200 Subject: [PATCH 4/4] icu69: drop only consumer inside nixpkgs was dropped. --- pkgs/development/libraries/icu/default.nix | 4 ---- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 1 - 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/development/libraries/icu/default.nix b/pkgs/development/libraries/icu/default.nix index a330d11e7855..e2cc58b95a9c 100644 --- a/pkgs/development/libraries/icu/default.nix +++ b/pkgs/development/libraries/icu/default.nix @@ -59,10 +59,6 @@ in version = "70.1"; hash = "sha256-jSBUKMF78Tu1NTAGae0oszihV7HAGuZtMdDT4tR8P9U="; }; - icu69 = make-icu { - version = "69.1"; - hash = "sha256-TLp7es0dPELES7DBS+ZjcJjH+vKzMM6Ha8XzuRXQl0U="; - }; icu67 = make-icu { version = "67.1"; hash = "sha256-lKgM1vJRpTvSqZf28bWsZlP+eR36tm4esCJ3QPuG1dw="; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index f5c142c04ce3..1effacd9bfce 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -927,6 +927,7 @@ mapAliases { i3-gaps = throw "'i3-gaps' has been renamed to/replaced by 'i3'"; # Converted to throw 2025-10-27 i3lock-pixeled = throw "'i3lock-pixeled' has been unmaintained for several years now."; # Converted to throw 2026-01-24 ibm-sw-tpm2 = throw "ibm-sw-tpm2 has been removed, as it was broken"; # Added 2025-08-25 + icu69 = throw "ICU 69 has been removed as it is obsolete and no longer used by anything in Nixpkgs"; # Added 2026-04-20 igvm-tooling = throw "'igvm-tooling' has been removed as it is poorly maintained upstream and a dependency has been marked insecure."; # Added 2025-09-03 ikos = throw "ikos has been removed, as it does not build with supported LLVM versions"; # Added 2025-08-10 imagemagick6 = throw "'imagemagick6' was removed because it is outdated. Use 'imagemagick' instead."; # added 2026-02-27 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b1210f0b5b75..5851bf04a461 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6521,7 +6521,6 @@ with pkgs; icu64 icu66 icu67 - icu69 icu70 icu71 icu72