diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix index 5661edbee2db..bc47e7e1e0dc 100644 --- a/nixos/modules/services/databases/postgresql.nix +++ b/nixos/modules/services/databases/postgresql.nix @@ -12,10 +12,13 @@ let else pkgs.buildEnv { name = "postgresql-and-plugins-${(builtins.parseDrvName pg.name).version}"; paths = [ pg pg.lib ] ++ cfg.extraPlugins; + # We include /bin to ensure the $out/bin directory is created which is + # needed because we'll be removing files from that directory in postBuild + # below. See #22653 + pathsToLink = [ "/" "/bin" ]; buildInputs = [ pkgs.makeWrapper ]; postBuild = '' - mkdir -p $out/bin rm $out/bin/{pg_config,postgres,pg_ctl} cp --target-directory=$out/bin ${pg}/bin/{postgres,pg_config,pg_ctl} wrapProgram $out/bin/postgres --set NIX_PGLIBDIR $out/lib diff --git a/pkgs/servers/sql/postgresql/ext/pg_cron.nix b/pkgs/servers/sql/postgresql/ext/pg_cron.nix index 40fcaeb7ccab..d2d2a00ffd5a 100644 --- a/pkgs/servers/sql/postgresql/ext/pg_cron.nix +++ b/pkgs/servers/sql/postgresql/ext/pg_cron.nix @@ -14,7 +14,6 @@ stdenv.mkDerivation rec { }; installPhase = '' - mkdir -p $out/bin # For buildEnv to setup proper symlinks. See #22653 mkdir -p $out/{lib,share/extension} cp *.so $out/lib diff --git a/pkgs/servers/sql/postgresql/ext/pg_similarity.nix b/pkgs/servers/sql/postgresql/ext/pg_similarity.nix index 85ff50e2eae8..301160ce1324 100644 --- a/pkgs/servers/sql/postgresql/ext/pg_similarity.nix +++ b/pkgs/servers/sql/postgresql/ext/pg_similarity.nix @@ -13,7 +13,6 @@ stdenv.mkDerivation { buildInputs = [ postgresql gcc ]; buildPhase = "USE_PGXS=1 make"; installPhase = '' - mkdir -p $out/bin # for buildEnv to setup proper symlinks install -D pg_similarity.so -t $out/lib/ install -D ./{pg_similarity--unpackaged--1.0.sql,pg_similarity--1.0.sql,pg_similarity.control} -t $out/share/postgresql/extension ''; diff --git a/pkgs/servers/sql/postgresql/ext/pgjwt.nix b/pkgs/servers/sql/postgresql/ext/pgjwt.nix index 69c7a4513b6e..c68ba9b17288 100644 --- a/pkgs/servers/sql/postgresql/ext/pgjwt.nix +++ b/pkgs/servers/sql/postgresql/ext/pgjwt.nix @@ -13,7 +13,6 @@ stdenv.mkDerivation rec { buildPhase = ":"; installPhase = '' - mkdir -p $out/bin # current postgresql extension mechanism in nixos requires bin directory mkdir -p $out/share/postgresql/extension cp pg*sql *.control $out/share/postgresql/extension ''; diff --git a/pkgs/servers/sql/postgresql/ext/pgroonga.nix b/pkgs/servers/sql/postgresql/ext/pgroonga.nix index 9058c443e37e..b8396f674780 100644 --- a/pkgs/servers/sql/postgresql/ext/pgroonga.nix +++ b/pkgs/servers/sql/postgresql/ext/pgroonga.nix @@ -15,7 +15,6 @@ stdenv.mkDerivation rec { makeFlags = [ "HAVE_MSGPACK=1" ]; installPhase = '' - mkdir -p $out/bin install -D pgroonga.so -t $out/lib/ install -D ./{pgroonga-*.sql,pgroonga.control} -t $out/share/postgresql/extension ''; diff --git a/pkgs/servers/sql/postgresql/ext/pgrouting.nix b/pkgs/servers/sql/postgresql/ext/pgrouting.nix index 9f4eda2bde91..6e1c6e3a4fca 100644 --- a/pkgs/servers/sql/postgresql/ext/pgrouting.nix +++ b/pkgs/servers/sql/postgresql/ext/pgrouting.nix @@ -15,7 +15,6 @@ stdenv.mkDerivation rec { }; installPhase = '' - mkdir -p $out/bin # for buildEnv, see https://github.com/NixOS/nixpkgs/issues/22653 install -D lib/*.so -t $out/lib install -D sql/pgrouting--${version}.sql -t $out/share/postgresql/extension install -D sql/common/pgrouting.control -t $out/share/postgresql/extension diff --git a/pkgs/servers/sql/postgresql/ext/plv8.nix b/pkgs/servers/sql/postgresql/ext/plv8.nix index b3befc58295b..89138baa91c2 100644 --- a/pkgs/servers/sql/postgresql/ext/plv8.nix +++ b/pkgs/servers/sql/postgresql/ext/plv8.nix @@ -23,7 +23,6 @@ stdenv.mkDerivation rec { ''; installPhase = '' - mkdir -p $out/bin # For buildEnv to setup proper symlinks. See #22653 install -D plv8*.so -t $out/lib install -D {plls,plcoffee,plv8}{--${version}.sql,.control} -t $out/share/postgresql/extension ''; diff --git a/pkgs/servers/sql/postgresql/ext/timescaledb.nix b/pkgs/servers/sql/postgresql/ext/timescaledb.nix index 5f2facf449e8..8e97e47e2fbf 100644 --- a/pkgs/servers/sql/postgresql/ext/timescaledb.nix +++ b/pkgs/servers/sql/postgresql/ext/timescaledb.nix @@ -36,13 +36,6 @@ stdenv.mkDerivation rec { done ''; - postInstall = '' - # work around an annoying bug, by creating $out/bin, so buildEnv doesn't freak out later - # see https://github.com/NixOS/nixpkgs/issues/22653 - - mkdir -p $out/bin - ''; - meta = with stdenv.lib; { description = "Scales PostgreSQL for time-series data via automatic partitioning across time and space"; homepage = https://www.timescale.com/; diff --git a/pkgs/servers/sql/postgresql/ext/tsearch_extras.nix b/pkgs/servers/sql/postgresql/ext/tsearch_extras.nix index 87c82dd82073..7be23003b584 100644 --- a/pkgs/servers/sql/postgresql/ext/tsearch_extras.nix +++ b/pkgs/servers/sql/postgresql/ext/tsearch_extras.nix @@ -15,7 +15,6 @@ stdenv.mkDerivation rec { buildInputs = [ postgresql ]; installPhase = '' - mkdir -p $out/bin install -D tsearch_extras.so -t $out/lib/ install -D ./{tsearch_extras--1.0.sql,tsearch_extras.control} -t $out/share/postgresql/extension '';