Age | Commit message (Collapse) | Author |
|
|
|
|
|
unique.
* Drop `hashAlgo' attribute in manifests; prefix hashes with the hash
algorithm instead.
|
|
|
|
too.
* Change the default hash for nix-prefetch-url back to md5, since
that's what we use in Nixpkgs (for now; a birthday attack is rather
unlikely there).
|
|
* Removed some dead code (successor stuff) from nix-push.
* Updated terminology in the tests (store expr -> drv path).
* Check that the deriver is set properly in the tests.
|
|
* Use force flag in `mv' to prevent silly interactive questions (this
happens with shared Nix stores).
|
|
invariant by registering references through the manifest.
* Added a test for nix-pull.
|
|
distribution insofar they are applicable.
|
|
|
|
manifests.
|
|
|
|
* Use the new patch downloader.
|
|
substitute mechanism) creates a store path by downloading full NAR
archives and/or patches specified in the available manifests.
Any combination of present paths, full downloads, and patches can be
used to construct the target path. In particular, patches can be
chained in sequence; and full NAR archives of the target path can be
omitted (i.e., patch-only deployment is possible). A shortest path
algorithm is used to find the smallest set of files to be downloaded
(the edge weights are currently file sizes, but one can imagine
taking the network speed to the various source into account).
Patches are binary deltas between two store paths. To be precise,
they are the output of the `bsdiff' program applied to the NAR
archives obtained by dumping (`nix-store --dump') the two store
paths. The advantage of diff'ing NAR archives (and not, say, doing
file-by-file diffs) is that file renames/moves are handled
automatically. The disadvantage is that we cannot optimise creation
of unchanged files (by hard-linking).
|
|
|
|
|
|
* Made the dependencies on bzip2 and the shell explicit.
|
|
* nix-pull now requires the full url to the manifest, i.e.,
`/MANIFEST/' is no longer automatically appended.
* nix-prefetch-url works again.
|
|
|
|
|