forked from lix-project/lix
Merge pull request #9809 from obsidiansystems/nix-store-add-algo
Add missing `--hash-algo` flag to `nix store add`
This commit is contained in:
commit
9b896bf7e9
7
doc/manual/rl-next/nix-store-add.md
Normal file
7
doc/manual/rl-next/nix-store-add.md
Normal file
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
synopsis: Give `nix store add` a `--hash-algo` flag
|
||||
prs: 9809
|
||||
---
|
||||
|
||||
Adds a missing feature that was present in the old CLI, and matches our
|
||||
plans to have similar flags for `nix hash convert` and `hash hash path`.
|
|
@ -22,6 +22,7 @@ struct CmdAddToStore : MixDryRun, StoreCommand
|
|||
Path path;
|
||||
std::optional<std::string> namePart;
|
||||
ContentAddressMethod caMethod = FileIngestionMethod::Recursive;
|
||||
HashAlgorithm hashAlgo = HashAlgorithm::SHA256;
|
||||
|
||||
CmdAddToStore()
|
||||
{
|
||||
|
@ -51,6 +52,8 @@ struct CmdAddToStore : MixDryRun, StoreCommand
|
|||
this->caMethod = parseIngestionMethod(s);
|
||||
}},
|
||||
});
|
||||
|
||||
addFlag(Flag::mkHashAlgoFlag("hash-algo", &hashAlgo));
|
||||
}
|
||||
|
||||
void run(ref<Store> store) override
|
||||
|
@ -63,9 +66,9 @@ struct CmdAddToStore : MixDryRun, StoreCommand
|
|||
|
||||
auto storePath = dryRun
|
||||
? store->computeStorePath(
|
||||
*namePart, accessor, path2, caMethod, HashAlgorithm::SHA256, {}).first
|
||||
*namePart, accessor, path2, caMethod, hashAlgo, {}).first
|
||||
: store->addToStoreSlow(
|
||||
*namePart, accessor, path2, caMethod, HashAlgorithm::SHA256, {}).path;
|
||||
*namePart, accessor, path2, caMethod, hashAlgo, {}).path;
|
||||
|
||||
logger->cout("%s", store->printStorePath(storePath));
|
||||
}
|
||||
|
|
|
@ -37,9 +37,11 @@ clearStore
|
|||
path3=$(nix store add-path ./dummy)
|
||||
[[ "$path1" == "$path2" ]]
|
||||
[[ "$path1" == "$path3" ]]
|
||||
path4=$(nix store add --mode nar --hash-algo sha1 ./dummy)
|
||||
)
|
||||
(
|
||||
path1=$(nix store add --mode flat ./dummy)
|
||||
path2=$(nix store add-file ./dummy)
|
||||
[[ "$path1" == "$path2" ]]
|
||||
path4=$(nix store add --mode flat --hash-algo sha1 ./dummy)
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue