Mark content-addressed paths in the Nix database and in .narinfo
This allows such paths to be imported without signatures.
This commit is contained in:
parent
36a51ecab3
commit
d961c29c9c
11 changed files with 146 additions and 43 deletions
|
|
@ -73,6 +73,7 @@ struct CmdPathInfo : StorePathsCommand
|
|||
std::cout << '\t';
|
||||
Strings ss;
|
||||
if (info->ultimate) ss.push_back("ultimate");
|
||||
if (info->ca != "") ss.push_back("ca:" + info->ca);
|
||||
for (auto & sig : info->sigs) ss.push_back(sig);
|
||||
std::cout << concatStringsSep(" ", ss);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -116,12 +116,16 @@ struct CmdVerify : StorePathsCommand
|
|||
}
|
||||
};
|
||||
|
||||
if (info->isContentAddressed(*store)) validSigs = ValidPathInfo::maxSigs;
|
||||
|
||||
doSigs(info->sigs);
|
||||
|
||||
for (auto & store2 : substituters) {
|
||||
if (validSigs >= actualSigsNeeded) break;
|
||||
try {
|
||||
doSigs(store2->queryPathInfo(info->path)->sigs);
|
||||
auto info2 = store2->queryPathInfo(info->path);
|
||||
if (info2->isContentAddressed(*store)) validSigs = ValidPathInfo::maxSigs;
|
||||
doSigs(info2->sigs);
|
||||
} catch (InvalidPath &) {
|
||||
} catch (Error & e) {
|
||||
printMsg(lvlError, format(ANSI_RED "error:" ANSI_NORMAL " %s") % e.what());
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue