treewide: Get rid of most parseDrvName without breaking compat

That is because this commit should be merged to both master and
release-19.09.
This commit is contained in:
John Ericson
2019-11-24 17:22:28 +00:00
parent 99537e994f
commit 9b090ccbca
38 changed files with 74 additions and 90 deletions

View File

@@ -1,16 +1,15 @@
{ stdenv, nodePackages_10_x }:
let
drvName = drv: (builtins.parseDrvName drv).name;
linkNodeDeps = ({ pkg, deps, name ? "" }:
let
targetModule = if name != "" then name else drvName pkg;
targetModule = if name != "" then name else stdenv.lib.getName pkg;
in nodePackages_10_x.${pkg}.override (oldAttrs: {
postInstall = ''
mkdir -p $out/lib/node_modules/${targetModule}/node_modules
${stdenv.lib.concatStringsSep "\n" (map (dep: ''
ln -s ${nodePackages_10_x.${dep}}/lib/node_modules/${drvName dep} \
$out/lib/node_modules/${targetModule}/node_modules/${drvName dep}
ln -s ${nodePackages_10_x.${dep}}/lib/node_modules/${stdenv.lib.getName dep} \
$out/lib/node_modules/${targetModule}/node_modules/${stdenv.lib.getName dep}
'') deps
)}
'';