aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2020-02-11 23:50:16 +0100
committerEelco Dolstra <edolstra@gmail.com>2020-03-24 14:26:23 +0100
commit777e21e596ec85f18eddf8b286d9ba4995010835 (patch)
tree5bd690c3111672c5e57c79081d309e5eb76647a2
parent7a8de57d3e7e53a4f6d8060c7201f3fbbe6cd325 (diff)
nix path-info --json: Print hash in SRI format
(cherry picked from commit 442e665d6d3fcbdee7dece2f62a597142f8784b1)
-rw-r--r--src/libstore/store-api.cc6
-rw-r--r--src/libstore/store-api.hh1
-rw-r--r--src/nix/path-info.cc2
3 files changed, 6 insertions, 3 deletions
diff --git a/src/libstore/store-api.cc b/src/libstore/store-api.cc
index aacbe5e0b..b9e894a9a 100644
--- a/src/libstore/store-api.cc
+++ b/src/libstore/store-api.cc
@@ -441,7 +441,9 @@ string Store::makeValidityRegistration(const StorePathSet & paths,
void Store::pathInfoToJSON(JSONPlaceholder & jsonOut, const StorePathSet & storePaths,
- bool includeImpureInfo, bool showClosureSize, AllowInvalidFlag allowInvalid)
+ bool includeImpureInfo, bool showClosureSize,
+ Base hashBase,
+ AllowInvalidFlag allowInvalid)
{
auto jsonList = jsonOut.list();
@@ -453,7 +455,7 @@ void Store::pathInfoToJSON(JSONPlaceholder & jsonOut, const StorePathSet & store
auto info = queryPathInfo(storePath);
jsonPath
- .attr("narHash", info->narHash.to_string())
+ .attr("narHash", info->narHash.to_string(hashBase))
.attr("narSize", info->narSize);
{
diff --git a/src/libstore/store-api.hh b/src/libstore/store-api.hh
index e0484de13..c57a6935e 100644
--- a/src/libstore/store-api.hh
+++ b/src/libstore/store-api.hh
@@ -561,6 +561,7 @@ public:
each path is included. */
void pathInfoToJSON(JSONPlaceholder & jsonOut, const StorePathSet & storePaths,
bool includeImpureInfo, bool showClosureSize,
+ Base hashBase = Base32,
AllowInvalidFlag allowInvalid = DisallowInvalid);
/* Return the size of the closure of the specified path, that is,
diff --git a/src/nix/path-info.cc b/src/nix/path-info.cc
index bffa7b356..45ec297d2 100644
--- a/src/nix/path-info.cc
+++ b/src/nix/path-info.cc
@@ -89,7 +89,7 @@ struct CmdPathInfo : StorePathsCommand, MixJSON
store->pathInfoToJSON(jsonRoot,
// FIXME: preserve order?
storePathsToSet(storePaths),
- true, showClosureSize, AllowInvalid);
+ true, showClosureSize, SRI, AllowInvalid);
}
else {