1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-27 00:11:17 +02:00

BinaryCacheStore: Implement addToStore()

So now you can do

  $ NIX_REMOTE=file:///tmp/binary-cache nix-instantiate '<nixpkgs>' -A hello

and lots of other operations.
This commit is contained in:
Eelco Dolstra 2016-02-24 16:52:28 +01:00
parent 30e9d01516
commit 9ccbd55c5b
4 changed files with 74 additions and 12 deletions

View file

@ -68,6 +68,8 @@ private:
Stats stats;
std::string narMagic;
std::string narInfoFileFor(const Path & storePath);
void addToCache(const ValidPathInfo & info, const string & nar);
@ -96,10 +98,10 @@ public:
{ notImpl(); }
Path queryDeriver(const Path & path) override
{ notImpl(); }
{ return ""; }
PathSet queryValidDerivers(const Path & path) override
{ notImpl(); }
{ return {}; }
PathSet queryDerivationOutputs(const Path & path) override
{ notImpl(); }
@ -111,19 +113,17 @@ public:
{ notImpl(); }
PathSet querySubstitutablePaths(const PathSet & paths) override
{ notImpl(); }
{ return {}; }
void querySubstitutablePathInfos(const PathSet & paths,
SubstitutablePathInfos & infos) override;
Path addToStore(const string & name, const Path & srcPath,
bool recursive = true, HashType hashAlgo = htSHA256,
PathFilter & filter = defaultPathFilter, bool repair = false) override
{ notImpl(); }
PathFilter & filter = defaultPathFilter, bool repair = false) override;
Path addTextToStore(const string & name, const string & s,
const PathSet & references, bool repair = false) override
{ notImpl(); }
const PathSet & references, bool repair = false) override;
void exportPath(const Path & path, bool sign,
Sink & sink) override;
@ -156,7 +156,7 @@ public:
{ notImpl(); }
PathSet queryFailedPaths() override
{ return PathSet(); }
{ return {}; }
void clearFailedPaths(const PathSet & paths) override
{ }