summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pkgs/stdenv/generic/make-derivation.nix22
1 files changed, 10 insertions, 12 deletions
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index c646b6d715bd..90dbb102fae9 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -81,8 +81,6 @@ rec {
, ... } @ attrs:
let
- computedName = if name != "" then name else "${attrs.pname}-${attrs.version}";
-
# TODO(@oxij, @Ericson2314): This is here to keep the old semantics, remove when
# no package has `doCheck = true`.
doCheck' = doCheck && stdenv.hostPlatform == stdenv.buildPlatform;
@@ -179,15 +177,15 @@ rec {
"checkInputs" "installCheckInputs"
"__impureHostDeps" "__propagatedImpureHostDeps"
"sandboxProfile" "propagatedSandboxProfile"])
- // {
- name = computedName + lib.optionalString
- # Fixed-output derivations like source tarballs shouldn't get a host
- # suffix. But we have some weird ones with run-time deps that are
- # just used for their side-affects. Those might as well since the
- # hash can't be the same. See #32986.
- (stdenv.hostPlatform != stdenv.buildPlatform && !dontAddHostSuffix)
- ("-" + stdenv.hostPlatform.config);
-
+ // (lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform && !dontAddHostSuffix)) {
+ # Fixed-output derivations like source tarballs shouldn't get a host
+ # suffix. But we have some weird ones with run-time deps that are
+ # just used for their side-affects. Those might as well since the
+ # hash can't be the same. See #32986.
+ name = "${if name != "" then name else "${attrs.pname}-${attrs.version}"}-${stdenv.hostPlatform.config}";
+ } // (lib.optionalAttrs (name == "")) {
+ name = "${attrs.pname}-${attrs.version}";
+ } // {
builder = attrs.realBuilder or stdenv.shell;
args = attrs.args or ["-e" (attrs.builder or ./default-builder.sh)];
inherit stdenv;
@@ -276,7 +274,7 @@ rec {
meta = {
# `name` above includes cross-compilation cruft (and is under assert),
# lets have a clean always accessible version here.
- name = computedName;
+ name = if name != "" then name else "${attrs.pname}-${attrs.version}";
# If the packager hasn't specified `outputsToInstall`, choose a default,
# which is the name of `p.bin or p.out or p`;