From 943baed7885c0fd7e841a0c1594ea044bb21e77f Mon Sep 17 00:00:00 2001 From: Niklas Hambüchen Date: Sun, 21 Jul 2019 21:13:06 +0200 Subject: postgresql: Make systemd support configurable. See #61580. (#61581) On by default, as was before. The systemd dependency means that all libraries or applications using only libpq will also pull systemd into their closures. Further, no application or library using libpq can be built against musl, as systemd relies on glibc-only features and thus does not build with musl. With it being configurable, packages that need only the library can at least turn it off to reduce their closure size. --- pkgs/servers/sql/postgresql/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'pkgs/servers') diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix index 774ed62a11a3..6e2c928837c6 100644 --- a/pkgs/servers/sql/postgresql/default.nix +++ b/pkgs/servers/sql/postgresql/default.nix @@ -6,6 +6,9 @@ let , glibc, zlib, readline, openssl, icu, systemd, libossp_uuid , pkgconfig, libxml2, tzdata + # This is important to obtain a version of `libpq` that does not depend on systemd. + , enableSystemd ? (lib.versionAtLeast "9.6" version && !stdenv.isDarwin) + # for postgreql.pkgs , this, self, newScope, buildEnv @@ -31,7 +34,7 @@ let buildInputs = [ zlib readline openssl libxml2 makeWrapper ] ++ lib.optionals icuEnabled [ icu ] - ++ lib.optionals (atLeast "9.6" && !stdenv.isDarwin) [ systemd ] + ++ lib.optionals enableSystemd [ systemd ] ++ lib.optionals (!stdenv.isDarwin) [ libossp_uuid ]; nativeBuildInputs = lib.optionals icuEnabled [ pkgconfig ]; @@ -51,7 +54,7 @@ let "--sysconfdir=/etc" "--libdir=$(lib)/lib" "--with-system-tzdata=${tzdata}/share/zoneinfo" - (lib.optionalString (atLeast "9.6" && !stdenv.isDarwin) "--with-systemd") + (lib.optionalString enableSystemd "--with-systemd") (if stdenv.isDarwin then "--with-uuid=e2fs" else "--with-ossp-uuid") ] ++ lib.optionals icuEnabled [ "--with-icu" ]; -- cgit 1.4.1