postgresql.withPackages: add dev output
This avoids leaking the dev output and all its dependencies into regular postgresql.withPackages builds, most notably postgresql_jit.
This commit is contained in:
parent
b6e14a059a
commit
7451df7a5e
@ -641,7 +641,8 @@ let
|
|||||||
f:
|
f:
|
||||||
let
|
let
|
||||||
installedExtensions = f postgresql.pkgs;
|
installedExtensions = f postgresql.pkgs;
|
||||||
finalPackage = buildEnv {
|
finalPackage =
|
||||||
|
(buildEnv {
|
||||||
name = "${postgresql.pname}-and-plugins-${postgresql.version}";
|
name = "${postgresql.pname}-and-plugins-${postgresql.version}";
|
||||||
paths = installedExtensions ++ [
|
paths = installedExtensions ++ [
|
||||||
# consider keeping in-sync with `postBuild` below
|
# consider keeping in-sync with `postBuild` below
|
||||||
@ -666,8 +667,8 @@ let
|
|||||||
''
|
''
|
||||||
wrapProgram "$out/bin/postgres" ${lib.concatStringsSep " " args}
|
wrapProgram "$out/bin/postgres" ${lib.concatStringsSep " " args}
|
||||||
|
|
||||||
mkdir -p "$out/nix-support"
|
mkdir -p "$dev/nix-support"
|
||||||
substitute "${lib.getDev postgresql}/nix-support/pg_config.env" "$out/nix-support/pg_config.env" \
|
substitute "${lib.getDev postgresql}/nix-support/pg_config.env" "$dev/nix-support/pg_config.env" \
|
||||||
--replace-fail "${postgresql}" "$out" \
|
--replace-fail "${postgresql}" "$out" \
|
||||||
--replace-fail "${postgresql.man}" "$out"
|
--replace-fail "${postgresql.man}" "$out"
|
||||||
'';
|
'';
|
||||||
@ -710,6 +711,13 @@ let
|
|||||||
;
|
;
|
||||||
} (ps: installedExtensions ++ f' ps);
|
} (ps: installedExtensions ++ f' ps);
|
||||||
};
|
};
|
||||||
|
}).overrideAttrs
|
||||||
|
{
|
||||||
|
# buildEnv doesn't support passing `outputs`, so going via overrideAttrs.
|
||||||
|
outputs = [
|
||||||
|
"out"
|
||||||
|
"dev"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
finalPackage;
|
finalPackage;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user