diff options
author | Philip Taron <philip.taron@gmail.com> | 2024-03-14 10:46:35 -0700 |
---|---|---|
committer | Valentin Gagarin <valentin.gagarin@tweag.io> | 2024-03-19 22:31:19 +0100 |
commit | 7c4a71081cb4a52e5fac535f6a27143bb354ec77 (patch) | |
tree | 97f4fdce1423da9caee95dc8429c03a7b85851b2 /pkgs/build-support | |
parent | b7bcfbaeeb0cbf328441a08ccb0fea087150c67d (diff) |
Avoid top-level `with ...;` in pkgs/build-support/replace-dependency.nix
Diffstat (limited to 'pkgs/build-support')
-rw-r--r-- | pkgs/build-support/replace-dependency.nix | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/pkgs/build-support/replace-dependency.nix b/pkgs/build-support/replace-dependency.nix index 5b4c127cdd8e7..7912d21bfd692 100644 --- a/pkgs/build-support/replace-dependency.nix +++ b/pkgs/build-support/replace-dependency.nix @@ -19,9 +19,20 @@ # (and all of its dependencies) without rebuilding further. { drv, oldDependency, newDependency, verbose ? true }: -with lib; - let + inherit (lib) + any + attrNames + concatStringsSep + elem + filter + filterAttrs + listToAttrs + mapAttrsToList + stringLength + substring + ; + warn = if verbose then builtins.trace else (x: y: y); references = import (runCommandLocal "references.nix" { exportReferencesGraph = [ "graph" drv ]; } '' (echo { @@ -54,7 +65,7 @@ let (drv: { name = discard (toString drv); value = elem oldStorepath (referencesOf drv) || any dependsOnOld (referencesOf drv); - }) (builtins.attrNames references)); + }) (attrNames references)); dependsOnOld = drv: dependsOnOldMemo.${discard (toString drv)}; @@ -74,9 +85,9 @@ let rewriteMemo = listToAttrs (map (drv: { name = discard (toString drv); value = rewriteHashes (builtins.storePath drv) - (filterAttrs (n: v: builtins.elem (builtins.storePath (discard (toString n))) (referencesOf drv)) rewriteMemo); + (filterAttrs (n: v: elem (builtins.storePath (discard (toString n))) (referencesOf drv)) rewriteMemo); }) - (filter dependsOnOld (builtins.attrNames references))) // rewrittenDeps; + (filter dependsOnOld (attrNames references))) // rewrittenDeps; drvHash = discard (toString drv); in assert (stringLength (drvName (toString oldDependency)) == stringLength (drvName (toString newDependency))); |