diff options
Diffstat (limited to 'pkgs/servers/sql')
-rw-r--r-- | pkgs/servers/sql/mariadb/default.nix | 4 | ||||
-rw-r--r-- | pkgs/servers/sql/postgresql/default.nix | 53 | ||||
-rw-r--r-- | pkgs/servers/sql/postgresql/hardcode-pgxs-path-96.patch | 14 | ||||
-rw-r--r-- | pkgs/servers/sql/postgresql/less-is-more-96.patch | 12 |
4 files changed, 61 insertions, 22 deletions
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index 422715925b88..f50a97afd20d 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -15,11 +15,11 @@ mariadb = everything // { }; common = rec { # attributes common to both builds - version = "10.1.18"; + version = "10.1.19"; src = fetchurl { url = "https://downloads.mariadb.org/interstitial/mariadb-${version}/source/mariadb-${version}.tar.gz"; - sha256 = "0wrvhyck95czhz553834i9im7ljvn8k2byakcinlji7zx43njcyp"; + sha256 = "108s4mimdbmgmmn5pcr9a405j70cyny9adzv49s75lg22krp74sv"; }; prePatch = '' diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix index c0e97dab8125..d5ffd5361e45 100644 --- a/pkgs/servers/sql/postgresql/default.nix +++ b/pkgs/servers/sql/postgresql/default.nix @@ -1,8 +1,9 @@ -{ lib, stdenv, fetchurl, zlib, readline, libossp_uuid, openssl }: +{ lib, stdenv, glibc, fetchurl, zlib, readline, libossp_uuid, openssl, makeWrapper }: let - common = { version, sha256, psqlSchema } @ args: stdenv.mkDerivation (rec { + common = { version, sha256, psqlSchema } @ args: + let atLeast = lib.versionAtLeast version; in stdenv.mkDerivation (rec { name = "postgresql-${version}"; src = fetchurl { @@ -14,7 +15,7 @@ let setOutputFlags = false; # $out retains configureFlags :-/ buildInputs = - [ zlib readline openssl ] + [ zlib readline openssl makeWrapper ] ++ lib.optionals (!stdenv.isDarwin) [ libossp_uuid ]; enableParallelBuilding = true; @@ -30,9 +31,9 @@ let ++ lib.optional (!stdenv.isDarwin) "--with-ossp-uuid"; patches = - [ (if lib.versionAtLeast version "9.4" then ./disable-resolve_symlinks-94.patch else ./disable-resolve_symlinks.patch) - ./less-is-more.patch - ./hardcode-pgxs-path.patch + [ (if atLeast "9.4" then ./disable-resolve_symlinks-94.patch else ./disable-resolve_symlinks.patch) + (if atLeast "9.6" then ./less-is-more-96.patch else ./less-is-more.patch) + (if atLeast "9.6" then ./hardcode-pgxs-path-96.patch else ./hardcode-pgxs-path.patch) ./specify_pkglibdir_at_runtime.patch ]; @@ -41,10 +42,11 @@ let LC_ALL = "C"; postConfigure = - '' - # Hardcode the path to pgxs so pg_config returns the path in $out - substituteInPlace "src/bin/pg_config/pg_config.c" --replace HARDCODED_PGXS_PATH $out/lib - ''; + let path = if atLeast "9.6" then "src/common/config_info.c" else "src/bin/pg_config/pg_config.c"; in + '' + # Hardcode the path to pgxs so pg_config returns the path in $out + substituteInPlace "${path}" --replace HARDCODED_PGXS_PATH $out/lib + ''; postInstall = '' @@ -56,6 +58,12 @@ let substituteInPlace "$out/lib/pgxs/src/Makefile.global" --replace ${stdenv.cc}/bin/ld ld ''; + postFixup = lib.optionalString (!stdenv.isDarwin) + '' + # initdb needs access to "locale" command from glibc. + wrapProgram $out/bin/initdb --prefix PATH ":" ${glibc.bin}/bin + ''; + disallowedReferences = [ stdenv.cc ]; passthru = { @@ -75,34 +83,39 @@ let in { postgresql91 = common { - version = "9.1.23"; + version = "9.1.24"; psqlSchema = "9.1"; - sha256 = "1mgnfm65fspkq62skfy48rjkprnxcfhydw0x3ipp4sdkngl72x3z"; + sha256 = "1lz5ibvgz6cxprxlnd7a8iwv387idr7k53bdsvy4bw9ayglq83fy"; }; postgresql92 = common { - version = "9.2.18"; + version = "9.2.19"; psqlSchema = "9.2"; - sha256 = "1x1mxbwqvgj9s4y8pb4vv6fmmr36z5zl3b2ggb84ckdfhvakganp"; + sha256 = "1bfvx1h1baxp40y4xi88974p43vazz13mwc0h8scq3sr9wxdfa8x"; }; postgresql93 = common { - version = "9.3.14"; + version = "9.3.15"; psqlSchema = "9.3"; - sha256 = "1783kl0abf9az90mvs08pdh63d33cv2njc1q515zz89bqkqj4hsw"; + sha256 = "0kswvs4rzcmjz12hhyi61w5x2wh4dxskar8v7rgajfm98qabmz59"; }; postgresql94 = common { - version = "9.4.9"; + version = "9.4.10"; psqlSchema = "9.4"; - sha256 = "1jg1l6vrfwhfyqrx07bgcpqxb5zcp8zwm8qd2vcj0k11j0pac861"; + sha256 = "1kvfhalf3rs59887b5qa14zp85zcnsc6pislrs0wd08rxn5nfqbh"; }; postgresql95 = common { - version = "9.5.4"; + version = "9.5.5"; psqlSchema = "9.5"; - sha256 = "1l3fqxlpxgl6nrcd4h6lpi2hsiv56yg83n3xrn704rmdch8mfpng"; + sha256 = "157kf6mdazmxfmd11f0akya2xcz6sfgprn7yqc26dpklps855ih2"; }; + postgresql96 = common { + version = "9.6.1"; + psqlSchema = "9.6"; + sha256 = "1k8zwnabsl8f7vlp3azm4lrklkb9jkaxmihqf0mc27ql9451w475"; + }; } diff --git a/pkgs/servers/sql/postgresql/hardcode-pgxs-path-96.patch b/pkgs/servers/sql/postgresql/hardcode-pgxs-path-96.patch new file mode 100644 index 000000000000..6cd449769baa --- /dev/null +++ b/pkgs/servers/sql/postgresql/hardcode-pgxs-path-96.patch @@ -0,0 +1,14 @@ +diff -Naur postgresql-9.6.1-orig/src/common/config_info.c postgresql-9.6.1/src/common/config_info.c +--- postgresql-9.6.1-orig/src/common/config_info.c 2016-11-22 21:39:29.231929261 +0100 ++++ postgresql-9.6.1/src/common/config_info.c 2016-11-22 23:36:53.685163543 +0100 +@@ -118,7 +118,10 @@ + i++; + + configdata[i].name = pstrdup("PGXS"); ++ strlcpy(path, "HARDCODED_PGXS_PATH", sizeof(path)); ++/* commented out to be able to point to nix $out path + get_pkglib_path(my_exec_path, path); ++*/ + strlcat(path, "/pgxs/src/makefiles/pgxs.mk", sizeof(path)); + cleanup_path(path); + configdata[i].setting = pstrdup(path); diff --git a/pkgs/servers/sql/postgresql/less-is-more-96.patch b/pkgs/servers/sql/postgresql/less-is-more-96.patch new file mode 100644 index 000000000000..f14af9dc2207 --- /dev/null +++ b/pkgs/servers/sql/postgresql/less-is-more-96.patch @@ -0,0 +1,12 @@ +diff -Naur postgresql-9.6.1-orig/src/include/fe_utils/print.h postgresql-9.6.1/src/include/fe_utils/print.h +--- postgresql-9.6.1-orig/src/include/fe_utils/print.h 2016-11-22 21:39:29.148932827 +0100 ++++ postgresql-9.6.1/src/include/fe_utils/print.h 2016-11-22 21:39:36.283626258 +0100 +@@ -18,7 +18,7 @@ + + /* This is not a particularly great place for this ... */ + #ifndef __CYGWIN__ +-#define DEFAULT_PAGER "more" ++#define DEFAULT_PAGER "less" + #else + #define DEFAULT_PAGER "less" + #endif |