diff --git a/source-qualification.nix b/source-qualification.nix index 3ce95ac..4af2934 100644 --- a/source-qualification.nix +++ b/source-qualification.nix @@ -1,8 +1,10 @@ { pkgs, library, + nixpkgsSource, nixpkgsNarHash, }: +assert builtins.isString nixpkgsSource; let comparisonIdentity = import ../tools/local-first/derivation-identity.nix; inspect = import ./source-qualification-metadata.nix; @@ -34,7 +36,9 @@ let narHashContext = builtins.getContext nixpkgsNarHash; evaluatorVersion = builtins.nixVersion; pinnedNixVersion = pkgs.nix.version; - nixpkgs = pkgs.path; + # toJSON ingests path values. Keep the original flake input's outPath + # string, so importing it and interpolating pkgs.path does not copy twice. + nixpkgs = nixpkgsSource; system = pkgs.stdenv.hostPlatform.system; expected = comparisonIdentity library; expectedMetadata = inspect library; @@ -42,7 +46,7 @@ let yarn = comparisonIdentity library.yarn-freestanding; } ); - closure = pkgs.closureInfo { rootPaths = [ pkgs.path ]; }; + closure = pkgs.closureInfo { rootPaths = [ nixpkgsSource ]; }; in pkgs.runCommand "quixos-protocol-source-check" {