diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix index 2465449867cb..8749e8b75552 100644 --- a/pkgs/stdenv/generic/make-derivation.nix +++ b/pkgs/stdenv/generic/make-derivation.nix @@ -219,9 +219,11 @@ else let # it again. staticMarker = lib.optionalString stdenv.hostPlatform.isStatic "-static"; in + lib.strings.sanitizeDerivationName ( if attrs ? name then attrs.name + hostSuffix - else "${attrs.pname}${staticMarker}${hostSuffix}-${attrs.version}"; + else "${attrs.pname}${staticMarker}${hostSuffix}-${attrs.version}" + ); }) // { builder = attrs.realBuilder or stdenv.shell; args = attrs.args or ["-e" (attrs.builder or ./default-builder.sh)]; @@ -340,8 +342,9 @@ else let # passed to the builder and is not a dependency. But since we # include it in the result, it *is* available to nix-env for queries. meta = { - # `name` above includes cross-compilation cruft (and is under assert), - # lets have a clean always accessible version here. + # `name` above includes cross-compilation cruft, + # is under assert, and is sanitized. + # Let's have a clean always accessible version here. name = attrs.name or "${attrs.pname}-${attrs.version}"; # If the packager hasn't specified `outputsToInstall`, choose a default,