diff --git a/doc/src/mysql.md b/doc/src/mysql.md index 38269f0db..979399a75 100644 --- a/doc/src/mysql.md +++ b/doc/src/mysql.md @@ -4,14 +4,28 @@ This component sets up a managed instance of the MySQL database server. +We use the [Percona Distribution for MySQL](https://percona.com/software/mysql-database) +which provides useful improvements over the standard Oracle MySQL/MariaDB implementations. + +## Supported versions + There's a role for each supported major version, currently: - mysql57: Percona 5.7.x (End-of-life) -- percona80: Percona 8.0.x -- percona81: Percona 8.1.x - -We use the [Percona Distribution for MySQL](https://percona.com/software/mysql-database) -which provides useful improvements over the standard Oracle MySQL/MariaDB implementations. +- percona80: Percona 8.0.x (*LTS* release) +- percona83: Percona 8.3.x (*Innovation* release) + +Percona and MySQL currently follow a [two-fold release model](https://www.percona.com/blog/lts-and-innovation-releases-for-percona-server-for-mysql/) +and provide support for 2 releases in parallel: + +- *LTS (recommended)*: These long-term support releases are supported throughout the full release life-time + of this NixOS platform release and only receive minor bug and security fixes. +- *Innovation*: A new innovation release is made roughly each quarter of a year, + containing new features and potentially breaking changes.\ + Please note that these releases won't receive any further upstream support once the successor + is out. Our platform will keep each Innovation release made during the release life-time + available, enabling you to update at your own pace. But we won't backport changes from + newer Percona Innovation releases. ## Configuration diff --git a/flake.lock b/flake.lock index e371aef74..0acd11355 100644 --- a/flake.lock +++ b/flake.lock @@ -57,11 +57,11 @@ "pre-commit-hooks": "pre-commit-hooks" }, "locked": { - "lastModified": 1715187131, - "narHash": "sha256-0QwlM89Hk4/1+46mOmt3yYegYxnPUmMFbYJbZU5AT+Y=", + "lastModified": 1716283962, + "narHash": "sha256-7uR/kbcILAcVh8WQH3rNIoKJUxK2JL6AEv5v5XFVUd0=", "owner": "cachix", "repo": "devenv", - "rev": "a2bc5aedb207ecf2fae89bd4d7e372003e916fec", + "rev": "493a90dce3d276fb976f872bdbaa1af422b05b62", "type": "github" }, "original": { @@ -154,11 +154,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1714641030, - "narHash": "sha256-yzcRNDoyVP7+SCNX0wmuDju1NUCt8Dz9+lyUXEI0dbI=", + "lastModified": 1715865404, + "narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "e5d10a24b66c3ea8f150e47dfdb0416ab7c3390e", + "rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9", "type": "github" }, "original": { @@ -411,11 +411,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1715201905, - "narHash": "sha256-+IyGJ+b6oRND6Kh6ICbiVZAiP21ird63kUaGxZIi9Eg=", + "lastModified": 1716293225, + "narHash": "sha256-pU9ViBVE3XYb70xZx+jK6SEVphvt7xMTbm6yDIF4xPs=", "owner": "flyingcircusio", "repo": "nixpkgs", - "rev": "193a627b73d4f6dec6db649a4c8ec812a88db5fd", + "rev": "3eaeaeb6b1e08a016380c279f8846e0bd8808916", "type": "github" }, "original": { diff --git a/nixos/roles/mysql.nix b/nixos/roles/mysql.nix index 7e73ea01f..b64b9533a 100644 --- a/nixos/roles/mysql.nix +++ b/nixos/roles/mysql.nix @@ -8,6 +8,8 @@ with builtins; let fclib = config.fclib; + supportedPerconaVersions = ["8.0" "8.3"]; + removeDot = builtins.replaceStrings ["."] [""]; in { options = with lib; @@ -55,31 +57,35 @@ in }; mysql57 = mkRole "5.7"; - percona80 = mkRole "8.0"; - percona81 = mkRole "8.1"; - }; + } + // lib.listToAttrs (builtins.map + (ver: lib.nameValuePair "percona${removeDot ver}" (mkRole ver) + ) supportedPerconaVersions); }; config = let - mysqlRoles = with config.flyingcircus.roles; { - "5.7" = mysql57.enable; - "8.0" = percona80.enable; - "8.1" = percona81.enable; - }; - - mysqlPackages = with pkgs; { - "5.7" = percona57; - "8.0" = percona80; - "8.1" = percona81; - }; + mysqlRoles = { + "5.7" = config.flyingcircus.roles.mysql57.enable; + } + // lib.listToAttrs (builtins.map ( + ver: lib.nameValuePair ver config.flyingcircus.roles."percona${removeDot ver}".enable + ) supportedPerconaVersions); + + mysqlPackages = { + "5.7" = pkgs.percona57; + } + // lib.listToAttrs (builtins.map ( + ver: lib.nameValuePair ver pkgs."percona${removeDot ver}" + ) supportedPerconaVersions); xtrabackupPackages = with pkgs; { "5.7" = percona-xtrabackup_2_4; - "8.0" = percona-xtrabackup_8_0; - "8.1" = percona-xtrabackup_8_1; - }; + } + // lib.listToAttrs (builtins.map ( + ver: lib.nameValuePair ver pkgs."percona-xtrabackup_${builtins.replaceStrings ["."] ["_"] ver}" + ) supportedPerconaVersions); cfg = config.flyingcircus.roles.mysql; fclib = config.fclib; diff --git a/pkgs/overlay.nix b/pkgs/overlay.nix index 0066b148c..c2f4e1863 100644 --- a/pkgs/overlay.nix +++ b/pkgs/overlay.nix @@ -341,11 +341,15 @@ builtins.mapAttrs (_: patchPhps phpLogPermissionPatch) { percona80 = super.percona-server_8_0; + # assertion notifies us about the need to vendor the old innovation releases + percona83 = assert self.percona-server_innovation.mysqlVersion == "8.3"; self.percona-server_innovation; + percona-xtrabackup_2_4 = super.callPackage ./percona-xtrabackup/2_4.nix { boost = self.boost159; openssl = self.openssl_1_1; }; + percona-xtrabackup_8_3 = assert self.percona-xtrabackup_innovation.mysqlVersion == "8.3"; self.percona-xtrabackup_innovation; # Has been renamed upstream, backy-extract still wants to use it. pkgconfig = super.pkg-config; diff --git a/pkgs/percona-xtrabackup/8_1.nix b/pkgs/percona-xtrabackup/8_1.nix deleted file mode 100644 index 859640089..000000000 --- a/pkgs/percona-xtrabackup/8_1.nix +++ /dev/null @@ -1,56 +0,0 @@ -{ lib, stdenv, fetchurl, bison, boost, cmake, makeWrapper, pkg-config -, curl, cyrus_sasl, libaio, libedit, libev, libevent, libgcrypt, libgpg-error, lz4 -, ncurses, numactl, openssl, procps, protobuf, valgrind, xxd, zlib -, perlPackages -, fetchSubmodules ? false, extraPatches ? [], extraPostInstall ? "", ... -}: - -# TODO: rebase this onto the generic.nix when upstreaming -stdenv.mkDerivation (finalAttrs: { - pname = "percona-xtrabackup"; - version = "8.1.0-1"; - - src = fetchurl { - url = "https://downloads.percona.com/downloads/Percona-XtraBackup-innovative-release/Percona-XtraBackup-${finalAttrs.version}/source/tarball/percona-xtrabackup-${finalAttrs.version}.tar.gz"; - hash = "sha256-4FjRjiqAg4lAqo+AoJVBPZlPWk6P9cFiKP2TgruCb+Y="; - }; - - nativeBuildInputs = [ bison boost cmake makeWrapper pkg-config ]; - - buildInputs = [ - (curl.override { inherit openssl; }) cyrus_sasl libaio libedit libevent libev libgcrypt libgpg-error lz4 - ncurses numactl openssl procps protobuf valgrind xxd zlib - ] ++ (with perlPackages; [ perl DBI DBDmysql ]); - - patches = extraPatches; - - cmakeFlags = [ - "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock" - "-DBUILD_CONFIG=xtrabackup_release" - "-DINSTALL_MYSQLTESTDIR=OFF" - "-DWITH_BOOST=system" - "-DWITH_CURL=system" - "-DWITH_EDITLINE=system" - "-DWITH_LIBEVENT=system" - "-DWITH_LZ4=system" - "-DWITH_PROTOBUF=system" - "-DWITH_SASL=system" - "-DWITH_SSL=system" - "-DWITH_ZLIB=system" - "-DWITH_VALGRIND=ON" - "-DWITH_MAN_PAGES=OFF" - ]; - - postInstall = '' - wrapProgram "$out"/bin/xtrabackup --prefix PERL5LIB : $PERL5LIB - rm -r "$out"/lib/plugin/debug - '' + extraPostInstall; - - meta = with lib; { - description = "Non-blocking backup tool for MySQL"; - homepage = "http://www.percona.com/software/percona-xtrabackup"; - license = licenses.lgpl2; - platforms = platforms.linux; - maintainers = with maintainers; [ izorkin ]; - }; -}) diff --git a/pkgs/percona/8.1.nix b/pkgs/percona/8.1.nix deleted file mode 100644 index 55f029d33..000000000 --- a/pkgs/percona/8.1.nix +++ /dev/null @@ -1,108 +0,0 @@ -{ lib, stdenv, fetchurl, bison, cmake, pkg-config -, boost, icu, libedit, libevent, lz4, ncurses, openssl, perl, protobuf, re2, readline, zlib, zstd, libfido2 -, numactl, cctools, CoreServices, developer_cmds, libtirpc, rpcsvc-proto, curl, DarwinTools, nixosTests -, systemd -# Percona-specific deps -, coreutils, cyrus_sasl, gnumake, openldap -}: - - -stdenv.mkDerivation (finalAttrs: { - pname = "percona_8_1"; - version = "8.1.0-1"; - - src = fetchurl { - url = "https://www.percona.com/downloads/Percona-Server-8.1/Percona-Server-${finalAttrs.version}/source/tarball/percona-server-${finalAttrs.version}.tar.gz"; - hash = "sha256-m4XFDMLnDPvbhtpv8qcjVBNmP4YZIVpaVYMdoMPw2NM="; - }; - - nativeBuildInputs = [ bison cmake pkg-config ] - ++ lib.optionals (!stdenv.isDarwin) [ rpcsvc-proto ]; - - patches = [ - ./no-force-outline-atomics.patch # Do not force compilers to turn on -moutline-atomics switch - ]; - - ## 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.isLinux [ - numactl libtirpc systemd - ] ++ lib.optionals stdenv.isDarwin [ - cctools CoreServices 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" - - - ] ++ lib.optionals stdenv.isLinux [ - # TODO: decide whether to offer tcmalloc or jemalloc again - #"-DWITH_JEMALLOC=1" - "-DWITH_SYSTEMD=1" - "-DWITH_SYSTEMD_DEBUG=1" - ]; - - postInstall = '' - moveToOutput "lib/*.a" $static - so=${stdenv.hostPlatform.extensions.sharedLibrary} - ln -s libmysqlclient$so $out/lib/libmysqlclient_r$so - ''; - - passthru = { - client = finalAttrs.finalPackage; - connector-c = finalAttrs.finalPackage; - server = finalAttrs.finalPackage; - mysqlVersion = lib.versions.majorMinor finalAttrs.version; - # TODO when upstreaming: adapt NixOS tests - #tests = nixosTests.mysql.percona-server_8_0; - }; - - - meta = with lib; { - 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. - ''; - license = licenses.gpl2; - platforms = platforms.unix; - }; -}) diff --git a/release/important_packages.json b/release/important_packages.json index 3d8b942e1..ee6e69e7a 100644 --- a/release/important_packages.json +++ b/release/important_packages.json @@ -127,9 +127,14 @@ "percona", "percona-server", "percona-xtrabackup_8_0", + "percona-xtrabackup_8_3", + "percona-xtrabackup_lts", + "percona-xtrabackup_innovation", "percona57", "percona80", - "percona81", + "percona83", + "percona-server_lts", + "percona-server_innovation", "php72", "php73", "php74", diff --git a/release/package-versions.json b/release/package-versions.json index ee891e324..5ccc4cde0 100644 --- a/release/package-versions.json +++ b/release/package-versions.json @@ -25,9 +25,9 @@ "version": "1.16.5" }, "awscli": { - "name": "awscli-1.32.58", + "name": "awscli-1.32.87", "pname": "awscli", - "version": "1.32.58" + "version": "1.32.87" }, "awscli2": { "name": "awscli2-2.15.43", @@ -40,9 +40,9 @@ "version": "5.2p26" }, "bind": { - "name": "bind-9.18.26", + "name": "bind-9.18.27", "pname": "bind", - "version": "9.18.26" + "version": "9.18.27" }, "binutils": { "name": "binutils-wrapper-2.41", @@ -70,14 +70,14 @@ "version": "18.2.1" }, "chromedriver": { - "name": "chromedriver-124.0.6367.91", + "name": "chromedriver-125.0.6422.60", "pname": "chromedriver", - "version": "124.0.6367.91" + "version": "125.0.6422.60" }, "chromium": { - "name": "chromium-124.0.6367.118", + "name": "chromium-125.0.6422.60", "pname": "chromium", - "version": "124.0.6367.118" + "version": "125.0.6422.60" }, "cifs-utils": { "name": "cifs-utils-7.0", @@ -95,9 +95,9 @@ "version": "3.29.2" }, "consul": { - "name": "consul-1.18.1", + "name": "consul-1.18.2", "pname": "consul", - "version": "1.18.1" + "version": "1.18.2" }, "containerd": { "name": "containerd-1.7.16", @@ -140,9 +140,9 @@ "version": "2.90" }, "docker": { - "name": "docker-24.0.5", + "name": "docker-24.0.9", "pname": "docker", - "version": "24.0.5" + "version": "24.0.9" }, "docker-compose": { "name": "docker-compose-2.27.0", @@ -155,14 +155,14 @@ "version": "2.3.21" }, "element-web": { - "name": "element-web-1.11.65", + "name": "element-web-1.11.66", "pname": "element-web", - "version": "1.11.65" + "version": "1.11.66" }, "erlang": { - "name": "erlang-25.3.2.11", + "name": "erlang-25.3.2.12", "pname": "erlang", - "version": "25.3.2.11" + "version": "25.3.2.12" }, "exif": { "name": "exif-0.6.22", @@ -190,9 +190,9 @@ "version": "7.17.16" }, "firefox": { - "name": "firefox-125.0.3", + "name": "firefox-126.0", "pname": "firefox", - "version": "125.0.3" + "version": "126.0" }, "gcc": { "name": "gcc-wrapper-13.2.0", @@ -220,9 +220,9 @@ "version": "2.44.0" }, "gitaly": { - "name": "gitaly-16.10.4", + "name": "gitaly-16.10.5", "pname": "gitaly", - "version": "16.10.4" + "version": "16.10.5" }, "github-runner": { "name": "github-runner-2.316.1", @@ -230,34 +230,34 @@ "version": "2.316.1" }, "gitlab": { - "name": "gitlab-16.10.4", + "name": "gitlab-16.10.5", "pname": "gitlab", - "version": "16.10.4" + "version": "16.10.5" }, "gitlab-container-registry": { - "name": "gitlab-container-registry-3.93.0", + "name": "gitlab-container-registry-4.1.0", "pname": "gitlab-container-registry", - "version": "3.93.0" + "version": "4.1.0" }, "gitlab-ee": { - "name": "gitlab-ee-16.10.4", + "name": "gitlab-ee-16.10.5", "pname": "gitlab-ee", - "version": "16.10.4" + "version": "16.10.5" }, "gitlab-pages": { - "name": "gitlab-pages-16.10.4", + "name": "gitlab-pages-16.10.5", "pname": "gitlab-pages", - "version": "16.10.4" + "version": "16.10.5" }, "gitlab-runner": { - "name": "gitlab-runner-16.11.0", + "name": "gitlab-runner-16.11.1", "pname": "gitlab-runner", - "version": "16.11.0" + "version": "16.11.1" }, "gitlab-workhorse": { - "name": "gitlab-workhorse-16.10.4", + "name": "gitlab-workhorse-16.10.5", "pname": "gitlab-workhorse", - "version": "16.10.4" + "version": "16.10.5" }, "glibc": { "name": "glibc-2.39-31", @@ -297,19 +297,14 @@ "version": "2.9.7" }, "imagemagick": { - "name": "imagemagick-7.1.1-30", + "name": "imagemagick-7.1.1-32", "pname": "imagemagick", - "version": "7.1.1-30" - }, - "imagemagick6": { - "name": "imagemagick-6.9.12-68", - "pname": "imagemagick", - "version": "6.9.12-68" + "version": "7.1.1-32" }, "imagemagick7": { - "name": "imagemagick-7.1.1-30", + "name": "imagemagick-7.1.1-32", "pname": "imagemagick", - "version": "7.1.1-30" + "version": "7.1.1-32" }, "inetutils": { "name": "inetutils-2.5", @@ -357,19 +352,19 @@ "version": "21+35" }, "k3s": { - "name": "k3s-1.29.4+k3s1", + "name": "k3s-1.30.0+k3s1", "pname": "k3s", - "version": "1.29.4+k3s1" + "version": "1.30.0+k3s1" }, "keycloak": { - "name": "keycloak-24.0.3", + "name": "keycloak-24.0.4", "pname": "keycloak", - "version": "24.0.3" + "version": "24.0.4" }, "kubernetes-helm": { - "name": "kubernetes-helm-3.14.4", + "name": "kubernetes-helm-3.15.0", "pname": "kubernetes-helm", - "version": "3.14.4" + "version": "3.15.0" }, "libffi": { "name": "libffi-3.4.6", @@ -397,9 +392,9 @@ "version": "3.3.5" }, "libressl": { - "name": "libressl-3.9.1", + "name": "libressl-3.9.2", "pname": "libressl", - "version": "3.9.1" + "version": "3.9.2" }, "libtiff": { "name": "libtiff-4.6.0", @@ -427,9 +422,9 @@ "version": "0.2.5" }, "linux_5_15": { - "name": "linux-5.15.158", + "name": "linux-5.15.159", "pname": "linux", - "version": "5.15.158" + "version": "5.15.159" }, "logrotate": { "name": "logrotate-3.21.0", @@ -467,9 +462,9 @@ "version": "4.16.1" }, "matrix-synapse": { - "name": "matrix-synapse-wrapped-1.106.0", + "name": "matrix-synapse-wrapped-1.107.0", "pname": "matrix-synapse-wrapped", - "version": "1.106.0" + "version": "1.107.0" }, "mcpp": { "name": "mcpp-2.7.2.1", @@ -502,9 +497,9 @@ "version": "2.6.2" }, "nginx": { - "name": "nginx-1.24.0", + "name": "nginx-1.26.0", "pname": "nginx", - "version": "1.24.0" + "version": "1.26.0" }, "nginxMainline": { "name": "nginx-1.25.4", @@ -512,9 +507,9 @@ "version": "1.25.4" }, "nginxStable": { - "name": "nginx-1.24.0", + "name": "nginx-1.26.0", "pname": "nginx", - "version": "1.24.0" + "version": "1.26.0" }, "nix": { "name": "nix-2.18.2", @@ -543,9 +538,9 @@ "version": "4.35" }, "nss_latest": { - "name": "nss-3.99", + "name": "nss-3.100", "pname": "nss", - "version": "3.99" + "version": "3.100" }, "openjdk": { "name": "openjdk-21+35", @@ -568,9 +563,9 @@ "version": "2.4.58" }, "opensearch": { - "name": "opensearch-2.13.0", + "name": "opensearch-2.14.0", "pname": "opensearch", - "version": "2.13.0" + "version": "2.14.0" }, "opensearch-dashboards": { "name": "opensearch-dashboards-2.11.0", @@ -613,30 +608,59 @@ "version": "10.43" }, "percona": { - "name": "percona-server-8.0.36-28", - "pname": "percona-server", + "name": "percona-server_lts-8.0.36-28", + "pname": "percona-server_lts", + "version": "8.0.36-28" + }, + "percona-server": { + "name": "percona-server_lts-8.0.36-28", + "pname": "percona-server_lts", + "version": "8.0.36-28" + }, + "percona-server_innovation": { + "name": "percona-server_innovation-8.3.0-1", + "pname": "percona-server_innovation", + "version": "8.3.0-1" + }, + "percona-server_lts": { + "name": "percona-server_lts-8.0.36-28", + "pname": "percona-server_lts", "version": "8.0.36-28" }, - "percona-server": {}, "percona-xtrabackup_8_0": { "name": "percona-xtrabackup-8.0.35-30", "pname": "percona-xtrabackup", "version": "8.0.35-30" }, + "percona-xtrabackup_8_3": { + "name": "percona-xtrabackup-8.3.0-1", + "pname": "percona-xtrabackup", + "version": "8.3.0-1" + }, + "percona-xtrabackup_innovation": { + "name": "percona-xtrabackup-8.3.0-1", + "pname": "percona-xtrabackup", + "version": "8.3.0-1" + }, + "percona-xtrabackup_lts": { + "name": "percona-xtrabackup-8.0.35-30", + "pname": "percona-xtrabackup", + "version": "8.0.35-30" + }, "percona57": { "name": "percona-5.7.42-45", "pname": "percona", "version": "5.7.42-45" }, "percona80": { - "name": "percona-server-8.0.36-28", - "pname": "percona-server", + "name": "percona-server_lts-8.0.36-28", + "pname": "percona-server_lts", "version": "8.0.36-28" }, - "percona81": { - "name": "percona_8_1-8.1.0-1", - "pname": "percona_8_1", - "version": "8.1.0-1" + "percona83": { + "name": "percona-server_innovation-8.3.0-1", + "pname": "percona-server_innovation", + "version": "8.3.0-1" }, "php72": { "name": "php-with-extensions-7.2.34", @@ -664,14 +688,14 @@ "version": "8.1.28" }, "php82": { - "name": "php-with-extensions-8.2.18", + "name": "php-with-extensions-8.2.19", "pname": "php-with-extensions", - "version": "8.2.18" + "version": "8.2.19" }, "php83": { - "name": "php-with-extensions-8.3.6", + "name": "php-with-extensions-8.3.7", "pname": "php-with-extensions", - "version": "8.3.6" + "version": "8.3.7" }, "phpPackages.composer": { "name": "composer-2.7.6", @@ -684,14 +708,14 @@ "version": "0.29.2" }, "podman": { - "name": "podman-5.0.2", + "name": "podman-5.0.3", "pname": "podman", - "version": "5.0.2" + "version": "5.0.3" }, "poetry": { - "name": "poetry-1.8.2", + "name": "poetry-1.8.3", "pname": "poetry", - "version": "1.8.2" + "version": "1.8.3" }, "polkit": { "name": "polkit-123", @@ -739,9 +763,9 @@ "version": "4.9.0" }, "prometheus": { - "name": "prometheus-2.49.1", + "name": "prometheus-2.52.0", "pname": "prometheus", - "version": "2.49.1" + "version": "2.52.0" }, "prosody": { "name": "prosody-0.12.4", @@ -845,9 +869,9 @@ "version": "2.2.1" }, "qemu": { - "name": "qemu-8.2.3", + "name": "qemu-8.2.4", "pname": "qemu", - "version": "8.2.3" + "version": "8.2.4" }, "rabbitmq-server": { "name": "rabbitmq-server-3.12.13", @@ -870,9 +894,9 @@ "version": "7.2.4" }, "roundcube": { - "name": "roundcube-1.6.6", + "name": "roundcube-1.6.7", "pname": "roundcube", - "version": "1.6.6" + "version": "1.6.7" }, "rsync": { "name": "rsync-3.3.0", @@ -911,9 +935,9 @@ "version": "8.11.2" }, "strace": { - "name": "strace-6.8", + "name": "strace-6.9", "pname": "strace", - "version": "6.8" + "version": "6.9" }, "strongswan": { "name": "strongswan-5.9.14", @@ -981,9 +1005,9 @@ "version": "7.4.3" }, "vim": { - "name": "vim-9.1.0200", + "name": "vim-9.1.0377", "pname": "vim", - "version": "9.1.0200" + "version": "9.1.0377" }, "webkitgtk": { "name": "webkitgtk-2.44.1+abi=4.0", diff --git a/release/versions.json b/release/versions.json index 8bafc702d..eb37acd17 100644 --- a/release/versions.json +++ b/release/versions.json @@ -8,9 +8,9 @@ "url": "https://gitlab.flyingcircus.io/flyingcircus/nixos-mailserver.git/" }, "nixpkgs": { - "hash": "sha256-+IyGJ+b6oRND6Kh6ICbiVZAiP21ird63kUaGxZIi9Eg=", + "hash": "sha256-pU9ViBVE3XYb70xZx+jK6SEVphvt7xMTbm6yDIF4xPs=", "owner": "flyingcircusio", "repo": "nixpkgs", - "rev": "193a627b73d4f6dec6db649a4c8ec812a88db5fd" + "rev": "3eaeaeb6b1e08a016380c279f8846e0bd8808916" } } diff --git a/tests/default.nix b/tests/default.nix index 97e6eddd6..22e6673fd 100644 --- a/tests/default.nix +++ b/tests/default.nix @@ -93,6 +93,7 @@ in { # opensearch_dashboards = callTest ./opensearch_dashboards.nix {}; openvpn = callTest ./openvpn.nix {}; percona80 = callTest ./mysql.nix { rolename = "percona80"; }; + percona83 = callTest ./mysql.nix { rolename = "percona83"; }; physical-installer = callTest ./physical-installer.nix { inherit nixpkgs; }; postgresql12 = callTest ./postgresql { version = "12"; }; postgresql13 = callTest ./postgresql { version = "13"; }; diff --git a/tests/nginx.nix b/tests/nginx.nix index 799ebc96d..0bb55ba8c 100644 --- a/tests/nginx.nix +++ b/tests/nginx.nix @@ -15,7 +15,7 @@ let ${server4Fe} = [ "server" "other" ]; }; - expectedNginxMajorVersion = "1.24"; + expectedNginxMajorVersion = "1.26"; rootInitial = pkgs.writeTextFile { name = "nginx-root-initial";