From 22a216849bf82ec65e3de86b7ea30e9c6b11efa4 Mon Sep 17 00:00:00 2001 From: Vladimír Čunát Date: Sun, 22 Sep 2019 09:38:09 +0200 Subject: Re-Revert "Merge branch 'staging-next'" This reverts commit f8a8fc6c7c079de430fa528f688ddac781bcef16. --- pkgs/servers/clickhouse/default.nix | 4 +- pkgs/servers/computing/slurm/default.nix | 4 +- pkgs/servers/freeradius/default.nix | 6 +- pkgs/servers/http/lighttpd/default.nix | 6 +- pkgs/servers/mail/dovecot/default.nix | 4 +- pkgs/servers/mail/exim/default.nix | 12 +-- pkgs/servers/mail/opensmtpd/extras.nix | 6 +- pkgs/servers/mail/postfix/default.nix | 6 +- pkgs/servers/monitoring/plugins/default.nix | 4 +- pkgs/servers/monitoring/zabbix/proxy.nix | 4 +- pkgs/servers/monitoring/zabbix/server.nix | 4 +- pkgs/servers/sql/mariadb/connector-c/3_1.nix | 6 ++ pkgs/servers/sql/mariadb/connector-c/default.nix | 54 +++++++++++++ pkgs/servers/sql/mariadb/default.nix | 98 ------------------------ pkgs/servers/sql/mariadb/galera/25.nix | 6 ++ pkgs/servers/sql/mariadb/galera/default.nix | 63 +++++++++++++++ pkgs/servers/uwsgi/default.nix | 4 +- 17 files changed, 161 insertions(+), 130 deletions(-) create mode 100644 pkgs/servers/sql/mariadb/connector-c/3_1.nix create mode 100644 pkgs/servers/sql/mariadb/connector-c/default.nix create mode 100644 pkgs/servers/sql/mariadb/galera/25.nix create mode 100644 pkgs/servers/sql/mariadb/galera/default.nix (limited to 'pkgs/servers') diff --git a/pkgs/servers/clickhouse/default.nix b/pkgs/servers/clickhouse/default.nix index e48dec7d20c..ab2d44577c0 100644 --- a/pkgs/servers/clickhouse/default.nix +++ b/pkgs/servers/clickhouse/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchFromGitHub, cmake, libtool , boost, capnproto, cctz, clang-unwrapped, double-conversion, gperftools, icu -, libcpuid, libxml2, lld, llvm, lz4 , mysql, openssl, poco, re2, rdkafka +, libcpuid, libxml2, lld, llvm, lz4 , libmysqlclient, openssl, poco, re2, rdkafka , readline, sparsehash, unixODBC, zstd, ninja, jemalloc, brotli, protobuf, xxHash }: @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake libtool ninja ]; buildInputs = [ boost capnproto cctz clang-unwrapped double-conversion gperftools icu - libcpuid libxml2 lld llvm lz4 mysql.connector-c openssl poco re2 rdkafka + libcpuid libxml2 lld llvm lz4 libmysqlclient openssl poco re2 rdkafka readline sparsehash unixODBC zstd jemalloc brotli protobuf xxHash ]; diff --git a/pkgs/servers/computing/slurm/default.nix b/pkgs/servers/computing/slurm/default.nix index c448e4936f6..93e1a31abb1 100644 --- a/pkgs/servers/computing/slurm/default.nix +++ b/pkgs/servers/computing/slurm/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchFromGitHub, pkgconfig, libtool, curl , python, munge, perl, pam, openssl, zlib -, ncurses, mysql, gtk2, lua, hwloc, numactl +, ncurses, libmysqlclient, gtk2, lua, hwloc, numactl , readline, freeipmi, libssh2, xorg, lz4 # enable internal X11 support via libssh2 , enableX11 ? true @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig libtool ]; buildInputs = [ curl python munge perl pam openssl zlib - mysql.connector-c ncurses gtk2 lz4 + libmysqlclient ncurses gtk2 lz4 lua hwloc numactl readline freeipmi ] ++ stdenv.lib.optionals enableX11 [ libssh2 xorg.xauth ]; diff --git a/pkgs/servers/freeradius/default.nix b/pkgs/servers/freeradius/default.nix index 6c6eb2b0c09..eeea3298ecd 100644 --- a/pkgs/servers/freeradius/default.nix +++ b/pkgs/servers/freeradius/default.nix @@ -13,7 +13,7 @@ , withMemcached ? false , hiredis , withRedis ? false -, mysql +, libmysqlclient , withMysql ? false , json_c , withJson ? false @@ -31,7 +31,7 @@ assert withPcap -> libpcap != null; assert withCap -> libcap != null; assert withMemcached -> libmemcached != null; assert withRedis -> hiredis != null; -assert withMysql -> mysql != null; +assert withMysql -> libmysqlclient != null; assert withYubikey -> libyubikey != null; assert withCollectd -> collectd != null; assert withRest -> curl != null && withJson; @@ -59,7 +59,7 @@ stdenv.mkDerivation rec { ++ optional withCap libcap ++ optional withMemcached libmemcached ++ optional withRedis hiredis - ++ optional withMysql mysql.connector-c + ++ optional withMysql libmysqlclient ++ optional withJson json_c ++ optional withYubikey libyubikey ++ optional withCollectd collectd diff --git a/pkgs/servers/http/lighttpd/default.nix b/pkgs/servers/http/lighttpd/default.nix index 7dacb997d47..f67bc5b0045 100644 --- a/pkgs/servers/http/lighttpd/default.nix +++ b/pkgs/servers/http/lighttpd/default.nix @@ -1,6 +1,6 @@ { stdenv, buildPackages, fetchurl, pkgconfig, pcre, libxml2, zlib, bzip2, which, file , openssl, enableMagnet ? false, lua5_1 ? null -, enableMysql ? false, mysql ? null +, enableMysql ? false, libmysqlclient ? null , enableLdap ? false, openldap ? null , enableWebDAV ? false, sqlite ? null, libuuid ? null , enableExtendedAttrs ? false, attr ? null @@ -8,7 +8,7 @@ }: assert enableMagnet -> lua5_1 != null; -assert enableMysql -> mysql != null; +assert enableMysql -> libmysqlclient != null; assert enableLdap -> openldap != null; assert enableWebDAV -> sqlite != null; assert enableWebDAV -> libuuid != null; @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; buildInputs = [ pcre pcre.dev libxml2 zlib bzip2 which file openssl ] ++ stdenv.lib.optional enableMagnet lua5_1 - ++ stdenv.lib.optional enableMysql mysql.connector-c + ++ stdenv.lib.optional enableMysql libmysqlclient ++ stdenv.lib.optional enableLdap openldap ++ stdenv.lib.optional enableWebDAV sqlite ++ stdenv.lib.optional enableWebDAV libuuid; diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix index e3afd1f9879..4104b0443ff 100644 --- a/pkgs/servers/mail/dovecot/default.nix +++ b/pkgs/servers/mail/dovecot/default.nix @@ -3,7 +3,7 @@ , clucene_core_2, icu, openldap, libsodium, libstemmer, cyrus_sasl , nixosTests # Auth modules -, withMySQL ? false, mysql +, withMySQL ? false, libmysqlclient , withPgSQL ? false, postgresql , withSQLite ? true, sqlite }: @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { buildInputs = [ openssl bzip2 zlib lz4 clucene_core_2 icu openldap libsodium libstemmer cyrus_sasl.dev ] ++ lib.optionals (stdenv.isLinux) [ systemd pam libcap inotify-tools ] - ++ lib.optional withMySQL mysql.connector-c + ++ lib.optional withMySQL libmysqlclient ++ lib.optional withPgSQL postgresql ++ lib.optional withSQLite sqlite; diff --git a/pkgs/servers/mail/exim/default.nix b/pkgs/servers/mail/exim/default.nix index fcafd5817d4..96c8ad4a383 100644 --- a/pkgs/servers/mail/exim/default.nix +++ b/pkgs/servers/mail/exim/default.nix @@ -1,6 +1,6 @@ { coreutils, db, fetchurl, openssl, pcre, perl, pkgconfig, stdenv , enableLDAP ? false, openldap -, enableMySQL ? false, mysql, zlib +, enableMySQL ? false, libmysqlclient, zlib , enableAuthDovecot ? false, dovecot , enablePAM ? false, pam , enableSPF ? true, libspf2 @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; buildInputs = [ coreutils db openssl perl pcre ] ++ stdenv.lib.optional enableLDAP openldap - ++ stdenv.lib.optionals enableMySQL [ mysql.connector-c zlib ] + ++ stdenv.lib.optionals enableMySQL [ libmysqlclient zlib ] ++ stdenv.lib.optional enableAuthDovecot dovecot ++ stdenv.lib.optional enablePAM pam ++ stdenv.lib.optional enableSPF libspf2; @@ -53,10 +53,10 @@ stdenv.mkDerivation rec { ''} ${stdenv.lib.optionalString enableMySQL '' s:^# \(LOOKUP_MYSQL=yes\)$:\1: - s:^# \(LOOKUP_MYSQL_PC=mysql.connector-c\)$:\1: - s:^\(LOOKUP_LIBS\)=\(.*\):\1=\2 -lmysqlclient -L${mysql.connector-c}/lib/mysql -lssl -ldl -lm -lpthread -lz: - s:^# \(LOOKUP_LIBS\)=.*:\1=-lmysqlclient -L${mysql.connector-c}/lib/mysql -lssl -ldl -lm -lpthread -lz: - s:^# \(LOOKUP_INCLUDE\)=.*:\1=-I${mysql.connector-c}/include/mysql/: + s:^# \(LOOKUP_MYSQL_PC=libmysqlclient\)$:\1: + s:^\(LOOKUP_LIBS\)=\(.*\):\1=\2 -lmysqlclient -L${libmysqlclient}/lib/mysql -lssl -ldl -lm -lpthread -lz: + s:^# \(LOOKUP_LIBS\)=.*:\1=-lmysqlclient -L${libmysqlclient}/lib/mysql -lssl -ldl -lm -lpthread -lz: + s:^# \(LOOKUP_INCLUDE\)=.*:\1=-I${libmysqlclient}/include/mysql/: ''} ${stdenv.lib.optionalString enableAuthDovecot '' s:^# \(AUTH_DOVECOT\)=.*:\1=yes: diff --git a/pkgs/servers/mail/opensmtpd/extras.nix b/pkgs/servers/mail/opensmtpd/extras.nix index 71b27facbab..f7ed6382a7b 100644 --- a/pkgs/servers/mail/opensmtpd/extras.nix +++ b/pkgs/servers/mail/opensmtpd/extras.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, openssl, libevent, libasr, - python2, pkgconfig, lua5, perl, mysql, postgresql, sqlite, hiredis, + python2, pkgconfig, lua5, perl, libmysqlclient, postgresql, sqlite, hiredis, enablePython ? true, enableLua ? true, enablePerl ? true, @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; buildInputs = [ openssl libevent - libasr python2 lua5 perl mysql.connector-c postgresql sqlite hiredis ]; + libasr python2 lua5 perl libmysqlclient postgresql sqlite hiredis ]; configureFlags = [ "--sysconfdir=/etc" @@ -80,7 +80,7 @@ stdenv.mkDerivation rec { stdenv.lib.optional enableRedis "-I${hiredis}/include/hiredis -lhiredis" ++ stdenv.lib.optional enableMysql - "-L${mysql.connector-c}/lib/mysql"; + "-L${libmysqlclient}/lib/mysql"; meta = with stdenv.lib; { homepage = https://www.opensmtpd.org/; diff --git a/pkgs/servers/mail/postfix/default.nix b/pkgs/servers/mail/postfix/default.nix index 39845f12f03..b299d212a18 100644 --- a/pkgs/servers/mail/postfix/default.nix +++ b/pkgs/servers/mail/postfix/default.nix @@ -3,7 +3,7 @@ , buildPackages , withLDAP ? true, openldap , withPgSQL ? false, postgresql -, withMySQL ? false, mysql +, withMySQL ? false, libmysqlclient , withSQLite ? false, sqlite }: @@ -12,7 +12,7 @@ let "-DUSE_TLS" "-DUSE_SASL_AUTH" "-DUSE_CYRUS_SASL" "-I${cyrus_sasl.dev}/include/sasl" "-DHAS_DB_BYPASS_MAKEDEFS_CHECK" ] ++ lib.optional withPgSQL "-DHAS_PGSQL" - ++ lib.optionals withMySQL [ "-DHAS_MYSQL" "-I${mysql.connector-c}/include/mysql" "-L${mysql.connector-c}/lib/mysql" ] + ++ lib.optionals withMySQL [ "-DHAS_MYSQL" "-I${libmysqlclient}/include/mysql" "-L${libmysqlclient}/lib/mysql" ] ++ lib.optional withSQLite "-DHAS_SQLITE" ++ lib.optionals withLDAP ["-DHAS_LDAP" "-DUSE_LDAP_SASL"]); auxlibs = lib.concatStringsSep " " ([ @@ -36,7 +36,7 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper m4 ]; buildInputs = [ db openssl cyrus_sasl icu libnsl pcre ] ++ lib.optional withPgSQL postgresql - ++ lib.optional withMySQL mysql.connector-c + ++ lib.optional withMySQL libmysqlclient ++ lib.optional withSQLite sqlite ++ lib.optional withLDAP openldap; diff --git a/pkgs/servers/monitoring/plugins/default.nix b/pkgs/servers/monitoring/plugins/default.nix index 9f23cc3e54c..62f40b59d37 100644 --- a/pkgs/servers/monitoring/plugins/default.nix +++ b/pkgs/servers/monitoring/plugins/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchFromGitHub, fetchpatch, autoreconfHook , coreutils, gnugrep, gnused, lm_sensors, net_snmp, openssh, openssl, perl -, dnsutils, libdbi, mysql, zlib, openldap, procps +, dnsutils, libdbi, libmysqlclient, zlib, openldap, procps , runtimeShell }: with stdenv.lib; @@ -48,7 +48,7 @@ in stdenv.mkDerivation { ''; # !!! make openssh a runtime dependency only - buildInputs = [ dnsutils libdbi mysql net_snmp openldap openssh openssl perl procps zlib ]; + buildInputs = [ dnsutils libdbi libmysqlclient net_snmp openldap openssh openssl perl procps zlib ]; nativeBuildInputs = [ autoreconfHook ]; diff --git a/pkgs/servers/monitoring/zabbix/proxy.nix b/pkgs/servers/monitoring/zabbix/proxy.nix index 48b72dc0590..53932af6a18 100644 --- a/pkgs/servers/monitoring/zabbix/proxy.nix +++ b/pkgs/servers/monitoring/zabbix/proxy.nix @@ -3,7 +3,7 @@ , snmpSupport ? true, net_snmp , sshSupport ? true, libssh2 , sqliteSupport ? false, sqlite -, mysqlSupport ? false, mysql +, mysqlSupport ? false, libmysqlclient , postgresqlSupport ? false, postgresql }: @@ -37,7 +37,7 @@ in ++ optional snmpSupport net_snmp ++ optional sqliteSupport sqlite ++ optional sshSupport libssh2 - ++ optional mysqlSupport mysql.connector-c + ++ optional mysqlSupport libmysqlclient ++ optional postgresqlSupport postgresql; configureFlags = [ diff --git a/pkgs/servers/monitoring/zabbix/server.nix b/pkgs/servers/monitoring/zabbix/server.nix index 51ca38e8cfc..ac5dcca901d 100644 --- a/pkgs/servers/monitoring/zabbix/server.nix +++ b/pkgs/servers/monitoring/zabbix/server.nix @@ -4,7 +4,7 @@ , odbcSupport ? true, unixODBC , snmpSupport ? true, net_snmp , sshSupport ? true, libssh2 -, mysqlSupport ? false, mysql +, mysqlSupport ? false, libmysqlclient , postgresqlSupport ? false, postgresql }: @@ -40,7 +40,7 @@ in ++ optional ldapSupport openldap ++ optional snmpSupport net_snmp ++ optional sshSupport libssh2 - ++ optional mysqlSupport mysql.connector-c + ++ optional mysqlSupport libmysqlclient ++ optional postgresqlSupport postgresql; configureFlags = [ diff --git a/pkgs/servers/sql/mariadb/connector-c/3_1.nix b/pkgs/servers/sql/mariadb/connector-c/3_1.nix new file mode 100644 index 00000000000..c8bc4858f71 --- /dev/null +++ b/pkgs/servers/sql/mariadb/connector-c/3_1.nix @@ -0,0 +1,6 @@ +{ callPackage, ... } @ args: + +callPackage ./. (args // { + version = "3.1.2"; + sha256 = "0pgz8m8d39mvj9wnjll6c83xvdl2h24273b3dkx0g5pxj7ga4shm"; +}) diff --git a/pkgs/servers/sql/mariadb/connector-c/default.nix b/pkgs/servers/sql/mariadb/connector-c/default.nix new file mode 100644 index 00000000000..0e030268540 --- /dev/null +++ b/pkgs/servers/sql/mariadb/connector-c/default.nix @@ -0,0 +1,54 @@ +{ stdenv, fetchurl, cmake +, curl, openssl, zlib +, libiconv +, version, sha256, ... +}: + +with stdenv.lib; + +stdenv.mkDerivation { + pname = "mariadb-connector-c"; + inherit version; + + src = fetchurl { + urls = [ + "https://downloads.mariadb.org/f/connector-c-${version}/mariadb-connector-c-${version}-src.tar.gz" + "https://downloads.mariadb.com/Connectors/c/connector-c-${version}/mariadb-connector-c-${version}-src.tar.gz" + ]; + inherit sha256; + }; + + cmakeFlags = [ + "-DWITH_EXTERNAL_ZLIB=ON" + "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock" + "-DWITH_CURL=ON" + ]; + + # The cmake setup-hook uses $out/lib by default, this is not the case here. + preConfigure = optionalString stdenv.isDarwin '' + cmakeFlagsArray+=("-DCMAKE_INSTALL_NAME_DIR=$out/lib/mariadb") + ''; + + nativeBuildInputs = [ cmake ]; + propagatedBuildInputs = [ curl openssl zlib ]; + buildInputs = [ libiconv ]; + + enableParallelBuilding = true; + + postFixup = '' + ln -sv mariadb_config $out/bin/mysql_config + ln -sv mariadb $out/lib/mysql + ln -sv mariadb $out/include/mysql + ln -sv libmariadbclient.a $out/lib/mariadb/libmysqlclient.a + ln -sv libmariadbclient.a $out/lib/mariadb/libmysqlclient_r.a + ln -sv libmariadb.so $out/lib/mariadb/libmysqlclient.so + ln -sv libmariadb.so $out/lib/mariadb/libmysqlclient_r.so + ''; + + meta = { + description = "Client library that can be used to connect to MySQL or MariaDB"; + license = licenses.lgpl21; + maintainers = with maintainers; [ globin ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index 15553055457..2352d7c1088 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -18,13 +18,6 @@ mytopEnv = perl.withPackages (p: with p; [ DataDumper DBDmysql DBI TermReadKey ] mariadb = server // { inherit client; # MariaDB Client server = server; # MariaDB Server - inherit connector-c; # libmysqlclient.so - inherit galera; -}; - -galeraLibs = buildEnv { - name = "galera-lib-inputs-united"; - paths = [ openssl.out boost check ]; }; common = rec { # attributes common to both builds @@ -218,95 +211,4 @@ server = stdenv.mkDerivation (common // { CXXFLAGS = optionalString stdenv.isi686 "-fpermissive"; }); - -connector-c = stdenv.mkDerivation rec { - pname = "mariadb-connector-c"; - version = "2.3.7"; - - src = fetchurl { - url = "https://downloads.mariadb.org/interstitial/connector-c-${version}/mariadb-connector-c-${version}-src.tar.gz/from/http%3A//nyc2.mirrors.digitalocean.com/mariadb/"; - sha256 = "13izi35vvxhiwl2dsnqrz75ciisy2s2k30giv7hrm01qlwnmiycl"; - name = "mariadb-connector-c-${version}-src.tar.gz"; - }; - - # outputs = [ "dev" "out" ]; FIXME: cmake variables don't allow that < 3.0 - cmakeFlags = [ - "-DWITH_EXTERNAL_ZLIB=ON" - "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock" - ]; - - # The cmake setup-hook uses $out/lib by default, this is not the case here. - preConfigure = stdenv.lib.optionalString stdenv.isDarwin '' - cmakeFlagsArray+=("-DCMAKE_INSTALL_NAME_DIR=$out/lib/mariadb") - ''; - - nativeBuildInputs = [ cmake ]; - propagatedBuildInputs = [ openssl zlib ]; - buildInputs = [ libiconv ]; - - enableParallelBuilding = true; - - postFixup = '' - ln -sv mariadb_config $out/bin/mysql_config - ln -sv mariadb $out/lib/mysql - ln -sv mariadb $out/include/mysql - ''; - - meta = with stdenv.lib; { - description = "Client library that can be used to connect to MySQL or MariaDB"; - license = licenses.lgpl21; - maintainers = with maintainers; [ globin ]; - platforms = platforms.all; - }; -}; - -galera = stdenv.mkDerivation rec { - pname = "mariadb-galera"; - version = "25.3.26"; - - src = fetchFromGitHub { - owner = "codership"; - repo = "galera"; - rev = "release_${version}"; - sha256 = "0fs0c1px9lknf1a5wwb12z1hj7j7b6hsfjddggikvkdkrnr2xs1f"; - fetchSubmodules = true; - }; - - buildInputs = [ asio boost check openssl scons ]; - - postPatch = '' - substituteInPlace SConstruct \ - --replace "boost_library_path = '''" "boost_library_path = '${boost}/lib'" - ''; - - preConfigure = '' - export CPPFLAGS="-I${asio}/include -I${boost.dev}/include -I${check}/include -I${openssl.dev}/include" - export LIBPATH="${galeraLibs}/lib" - ''; - - sconsFlags = "ssl=1 system_asio=0 strict_build_flags=0"; - - installPhase = '' - # copied with modifications from scripts/packages/freebsd.sh - GALERA_LICENSE_DIR="$share/licenses/${pname}-${version}" - install -d $out/{bin,lib/galera,share/doc/galera,$GALERA_LICENSE_DIR} - install -m 555 "garb/garbd" "$out/bin/garbd" - install -m 444 "libgalera_smm.so" "$out/lib/galera/libgalera_smm.so" - install -m 444 "scripts/packages/README" "$out/share/doc/galera/" - install -m 444 "scripts/packages/README-MySQL" "$out/share/doc/galera/" - install -m 444 "scripts/packages/freebsd/LICENSE" "$out/$GALERA_LICENSE_DIR" - install -m 444 "LICENSE" "$out/$GALERA_LICENSE_DIR/GPLv2" - install -m 444 "asio/LICENSE_1_0.txt" "$out/$GALERA_LICENSE_DIR/LICENSE.asio" - install -m 444 "www.evanjones.ca/LICENSE" "$out/$GALERA_LICENSE_DIR/LICENSE.crc32c" - install -m 444 "chromium/LICENSE" "$out/$GALERA_LICENSE_DIR/LICENSE.chromium" - ''; - - meta = { - description = "Galera 3 wsrep provider library"; - homepage = http://galeracluster.com/; - license = licenses.lgpl2; - maintainers = with maintainers; [ izorkin ]; - platforms = platforms.all; - }; -}; in mariadb diff --git a/pkgs/servers/sql/mariadb/galera/25.nix b/pkgs/servers/sql/mariadb/galera/25.nix new file mode 100644 index 00000000000..2772d60e398 --- /dev/null +++ b/pkgs/servers/sql/mariadb/galera/25.nix @@ -0,0 +1,6 @@ +{ callPackage, ... } @ args: + +callPackage ./. (args // { + version = "25.3.27"; + sha256 = "143kzj0fmak1gdww4qkqmmliw8klxm6mwk5531748swlwm6gqr5q"; +}) diff --git a/pkgs/servers/sql/mariadb/galera/default.nix b/pkgs/servers/sql/mariadb/galera/default.nix new file mode 100644 index 00000000000..263a21983e2 --- /dev/null +++ b/pkgs/servers/sql/mariadb/galera/default.nix @@ -0,0 +1,63 @@ +{ stdenv, fetchFromGitHub, buildEnv +, asio, boost, check, openssl, scons +, version, sha256, ... +}: + +let + pname = "mariadb-galera"; + galeraLibs = buildEnv { + name = "galera-lib-inputs-united"; + paths = [ openssl.out boost check ]; + }; + +in stdenv.mkDerivation { + inherit pname; + inherit version; + + src = fetchFromGitHub { + owner = "codership"; + repo = "galera"; + rev = "release_${version}"; + inherit sha256; + fetchSubmodules = true; + }; + + buildInputs = [ asio boost check openssl scons ]; + + postPatch = '' + substituteInPlace SConstruct \ + --replace "boost_library_path = '''" "boost_library_path = '${boost}/lib'" + ''; + + preConfigure = '' + export CPPFLAGS="-I${asio}/include -I${boost.dev}/include -I${check}/include -I${openssl.dev}/include" + export LIBPATH="${galeraLibs}/lib" + ''; + + sconsFlags = "ssl=1 system_asio=1 strict_build_flags=0"; + + enableParallelBuilding = true; + + installPhase = '' + # copied with modifications from scripts/packages/freebsd.sh + GALERA_LICENSE_DIR="$share/licenses/${pname}" + install -d $out/{bin,lib/galera,share/doc/galera,$GALERA_LICENSE_DIR} + install -m 555 "garb/garbd" "$out/bin/garbd" + install -m 444 "libgalera_smm.so" "$out/lib/galera/libgalera_smm.so" + install -m 444 "scripts/packages/README" "$out/share/doc/galera/" + install -m 444 "scripts/packages/README-MySQL" "$out/share/doc/galera/" + install -m 444 "scripts/packages/freebsd/LICENSE" "$out/$GALERA_LICENSE_DIR" + install -m 444 "LICENSE" "$out/$GALERA_LICENSE_DIR/GPLv2" + install -m 444 "asio/LICENSE_1_0.txt" "$out/$GALERA_LICENSE_DIR/LICENSE.asio" + install -m 444 "www.evanjones.ca/LICENSE" "$out/$GALERA_LICENSE_DIR/LICENSE.crc32c" + install -m 444 "chromium/LICENSE" "$out/$GALERA_LICENSE_DIR/LICENSE.chromium" + ''; + + meta = with stdenv.lib; { + description = "Galera 3 wsrep provider library"; + homepage = http://galeracluster.com/; + license = licenses.lgpl2; + maintainers = with maintainers; [ izorkin ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix index 85fa6cd8006..556c44b61a7 100644 --- a/pkgs/servers/uwsgi/default.nix +++ b/pkgs/servers/uwsgi/default.nix @@ -4,7 +4,7 @@ , pam, withPAM ? stdenv.isLinux , systemd, withSystemd ? stdenv.isLinux , python2, python3, ncurses -, ruby, php-embed, mysql +, ruby, php-embed, libmysqlclient }: let pythonPlugin = pkg : lib.nameValuePair "python${if pkg.isPy2 then "2" else "3"}" { @@ -34,7 +34,7 @@ let pythonPlugin = pkg : lib.nameValuePair "python${if pkg.isPy2 then "2" else " # usage: https://uwsgi-docs.readthedocs.io/en/latest/PHP.html#running-php-apps-with-nginx path = "plugins/php"; inputs = [ php-embed ] ++ php-embed.buildInputs; - NIX_CFLAGS_LINK = [ "-L${mysql.connector-c}/lib/mysql" ]; + NIX_CFLAGS_LINK = [ "-L${libmysqlclient}/lib/mysql" ]; }) ]; -- cgit 1.4.1