From be52b4640f72d5489407728983dcca236affba72 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Tue, 16 Nov 2021 09:36:33 +0300 Subject: [PATCH 1/5] mariadb: move fix mytop to common stage --- pkgs/servers/sql/mariadb/default.nix | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index a46fdd1ee36d..ce592eb457db 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -30,7 +30,8 @@ common = rec { # attributes common to both builds }; nativeBuildInputs = [ cmake pkg-config ] - ++ optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames; + ++ optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames + ++ optional (!stdenv.hostPlatform.isDarwin) makeWrapper; buildInputs = [ ncurses openssl zlib pcre2 libiconv curl @@ -96,6 +97,11 @@ common = rec { # attributes common to both builds rm -r $out/lib/pkgconfig ''; + # perlPackages.DBDmysql is broken on darwin + postFixup = optionalString (!stdenv.hostPlatform.isDarwin) '' + wrapProgram $out/bin/mytop --set PATH ${makeBinPath [ less ncurses ]} + ''; + passthru.mysqlVersion = "5.7"; passthru.tests = { @@ -146,7 +152,7 @@ server = stdenv.mkDerivation (common // { outputs = [ "out" "man" ]; - nativeBuildInputs = common.nativeBuildInputs ++ [ bison boost.dev ] ++ optional (!stdenv.hostPlatform.isDarwin) makeWrapper; + nativeBuildInputs = common.nativeBuildInputs ++ [ bison boost.dev ]; buildInputs = common.buildInputs ++ [ bzip2 lz4 lzo snappy xz zstd @@ -207,11 +213,6 @@ server = stdenv.mkDerivation (common // { rm -r "$out"/OFF ''; - # perlPackages.DBDmysql is broken on darwin - postFixup = optionalString (!stdenv.hostPlatform.isDarwin) '' - wrapProgram $out/bin/mytop --set PATH ${makeBinPath [ less ncurses ]} - ''; - CXXFLAGS = optionalString stdenv.hostPlatform.isi686 "-fpermissive"; }); in mariadb From cff899a959785e507f3443211ba8d5d92c8437ba Mon Sep 17 00:00:00 2001 From: Izorkin Date: Tue, 16 Nov 2021 09:41:34 +0300 Subject: [PATCH 2/5] mariadb: add pmem support --- pkgs/servers/sql/mariadb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index ce592eb457db..540382a27c41 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchurl, fetchFromGitHub, cmake, pkg-config, makeWrapper, ncurses, nixosTests -, libiconv, openssl, pcre2, boost, judy, bison, libxml2, libkrb5, linux-pam, curl +, libiconv, openssl, pcre2, boost, judy, bison, libxml2, libkrb5, linux-pam, pmdk, curl , liburing, libevent, jemalloc, cracklib, systemd, perl , bzip2, lz4, lzo, snappy, xz, zlib, zstd , fixDarwinDylibNames, cctools, CoreServices, less @@ -159,7 +159,7 @@ server = stdenv.mkDerivation (common // { libxml2 judy libevent cracklib ] ++ optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl ++ optionals withStorageMroonga [ kytea libsodium msgpack zeromq ] - ++ optional stdenv.hostPlatform.isLinux linux-pam + ++ optionals stdenv.hostPlatform.isLinux [ linux-pam pmdk.dev ] ++ optional (!stdenv.hostPlatform.isDarwin) mytopEnv; patches = common.patches; From 595511e63283fb705c98c07732d63755a729bf5e Mon Sep 17 00:00:00 2001 From: Izorkin Date: Tue, 16 Nov 2021 10:53:46 +0300 Subject: [PATCH 3/5] mariadb: cleanup build configuration --- pkgs/servers/sql/mariadb/default.nix | 32 +++++++++++++++++----------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index 540382a27c41..fca3bdedf9fb 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -1,9 +1,15 @@ -{ lib, stdenv, fetchurl, fetchFromGitHub, cmake, pkg-config, makeWrapper, ncurses, nixosTests -, libiconv, openssl, pcre2, boost, judy, bison, libxml2, libkrb5, linux-pam, pmdk, curl -, liburing, libevent, jemalloc, cracklib, systemd, perl +{ lib, stdenv, fetchurl, nixosTests +# Native buildInputs components +, bison, boost, cmake, fixDarwinDylibNames, flex, makeWrapper, pkg-config +# Common components +, curl, libiconv, ncurses, openssl, pcre2 +, libkrb5, liburing, systemd +, CoreServices, cctools, perl +, jemalloc, less +# Server components , bzip2, lz4, lzo, snappy, xz, zlib, zstd -, fixDarwinDylibNames, cctools, CoreServices, less -, numactl # NUMA Support +, cracklib, judy, libevent, libxml2 +, linux-pam, numactl, pmdk , withStorageMroonga ? true, kytea, libsodium, msgpack, zeromq , withStorageRocks ? true }: @@ -34,9 +40,9 @@ common = rec { # attributes common to both builds ++ optional (!stdenv.hostPlatform.isDarwin) makeWrapper; buildInputs = [ - ncurses openssl zlib pcre2 libiconv curl - ] ++ optionals stdenv.hostPlatform.isLinux [ liburing systemd libkrb5 ] - ++ optionals stdenv.hostPlatform.isDarwin [ perl cctools CoreServices ] + curl libiconv ncurses openssl pcre2 zlib + ] ++ optionals stdenv.hostPlatform.isLinux [ libkrb5 liburing systemd ] + ++ optionals stdenv.hostPlatform.isDarwin [ CoreServices cctools perl ] ++ optional (!stdenv.hostPlatform.isDarwin) [ jemalloc ]; prePatch = '' @@ -152,15 +158,15 @@ server = stdenv.mkDerivation (common // { outputs = [ "out" "man" ]; - nativeBuildInputs = common.nativeBuildInputs ++ [ bison boost.dev ]; + nativeBuildInputs = common.nativeBuildInputs ++ [ bison boost.dev flex ]; buildInputs = common.buildInputs ++ [ bzip2 lz4 lzo snappy xz zstd - libxml2 judy libevent cracklib + cracklib judy libevent libxml2 ] ++ optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl - ++ optionals withStorageMroonga [ kytea libsodium msgpack zeromq ] ++ optionals stdenv.hostPlatform.isLinux [ linux-pam pmdk.dev ] - ++ optional (!stdenv.hostPlatform.isDarwin) mytopEnv; + ++ optional (!stdenv.hostPlatform.isDarwin) mytopEnv + ++ optionals withStorageMroonga [ kytea libsodium msgpack zeromq ]; patches = common.patches; @@ -202,7 +208,7 @@ server = stdenv.mkDerivation (common // { ''; postInstall = common.postInstall + '' - rm -rf "$out"/share/aclocal + rm -r "$out"/share/aclocal chmod +x "$out"/bin/wsrep_sst_common rm "$out"/bin/{mariadb-client-test,mariadb-test,mysql_client_test,mysqltest} '' + optionalString withStorageMroonga '' From 1fa2e5fdc98cde196b4c8fa97314254b11138e96 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Thu, 18 Nov 2021 10:46:01 +0300 Subject: [PATCH 4/5] mariadb: move patches to subfolder --- pkgs/servers/sql/mariadb/default.nix | 6 +++--- pkgs/servers/sql/mariadb/{ => patch}/cmake-includedir.patch | 0 .../sql/mariadb/{ => patch}/cmake-plugin-includedir.patch | 0 .../{ => patch}/macos-MDEV-26769-regression-fix.patch | 0 4 files changed, 3 insertions(+), 3 deletions(-) rename pkgs/servers/sql/mariadb/{ => patch}/cmake-includedir.patch (100%) rename pkgs/servers/sql/mariadb/{ => patch}/cmake-plugin-includedir.patch (100%) rename pkgs/servers/sql/mariadb/{ => patch}/macos-MDEV-26769-regression-fix.patch (100%) diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index fca3bdedf9fb..41b7bc383b60 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -50,11 +50,11 @@ common = rec { # attributes common to both builds ''; patches = [ - ./cmake-includedir.patch + ./patch/cmake-includedir.patch ] # Fixes a build issue as documented on # https://jira.mariadb.org/browse/MDEV-26769?focusedCommentId=206073&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-206073 - ++ lib.optional (!stdenv.isLinux) ./macos-MDEV-26769-regression-fix.patch; + ++ lib.optional (!stdenv.isLinux) ./patch/macos-MDEV-26769-regression-fix.patch; cmakeFlags = [ "-DBUILD_CONFIG=mysql_release" @@ -134,7 +134,7 @@ client = stdenv.mkDerivation (common // { outputs = [ "out" "man" ]; patches = common.patches ++ [ - ./cmake-plugin-includedir.patch + ./patch/cmake-plugin-includedir.patch ]; cmakeFlags = common.cmakeFlags ++ [ diff --git a/pkgs/servers/sql/mariadb/cmake-includedir.patch b/pkgs/servers/sql/mariadb/patch/cmake-includedir.patch similarity index 100% rename from pkgs/servers/sql/mariadb/cmake-includedir.patch rename to pkgs/servers/sql/mariadb/patch/cmake-includedir.patch diff --git a/pkgs/servers/sql/mariadb/cmake-plugin-includedir.patch b/pkgs/servers/sql/mariadb/patch/cmake-plugin-includedir.patch similarity index 100% rename from pkgs/servers/sql/mariadb/cmake-plugin-includedir.patch rename to pkgs/servers/sql/mariadb/patch/cmake-plugin-includedir.patch diff --git a/pkgs/servers/sql/mariadb/macos-MDEV-26769-regression-fix.patch b/pkgs/servers/sql/mariadb/patch/macos-MDEV-26769-regression-fix.patch similarity index 100% rename from pkgs/servers/sql/mariadb/macos-MDEV-26769-regression-fix.patch rename to pkgs/servers/sql/mariadb/patch/macos-MDEV-26769-regression-fix.patch From 8aa3e1f42a4b80921c979802360ae185de2e0d4e Mon Sep 17 00:00:00 2001 From: Izorkin Date: Tue, 16 Nov 2021 11:30:19 +0300 Subject: [PATCH 5/5] mariadb-galera: 26.4.9 -> 26.4.10 --- pkgs/servers/sql/mariadb/galera/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/sql/mariadb/galera/default.nix b/pkgs/servers/sql/mariadb/galera/default.nix index 1f4bbc0586ff..5a79dcd7d2cd 100644 --- a/pkgs/servers/sql/mariadb/galera/default.nix +++ b/pkgs/servers/sql/mariadb/galera/default.nix @@ -4,17 +4,19 @@ stdenv.mkDerivation rec { pname = "mariadb-galera"; - version = "26.4.9"; + version = "26.4.10"; src = fetchFromGitHub { owner = "codership"; repo = "galera"; rev = "release_${version}"; - sha256 = "1nf8vv0b9v7rjsxl93avgvv0lz5jjg91brnric0dhlnp2dzzxi6g"; + sha256 = "sha256-v3fKadoHCAKHZGPjuh/uLnmAaaPESrax73GEI/mH39g="; fetchSubmodules = true; }; - buildInputs = [ asio boost check openssl cmake ]; + nativeBuildInputs = [ cmake ]; + + buildInputs = [ asio boost.dev check openssl ]; preConfigure = '' # make sure bundled asio cannot be used, but leave behind license, because it gets installed