aboutsummaryrefslogtreecommitdiff
path: root/scripts/nix-pull.in
AgeCommit message (Collapse)Author
2009-02-27* nix-install-package: don't pollute /nix/var/nix/manifests.Eelco Dolstra
2009-02-27* Check the manifest version.Eelco Dolstra
2008-11-20* Urgh.Eelco Dolstra
2007-08-15* Show errors in nix-prefetch-url.Eelco Dolstra
2007-08-14* Fix the tests.Eelco Dolstra
2007-08-12* Get rid of the substitutes database table (NIX-47). Instead, if weEelco Dolstra
need any info on substitutable paths, we just call the substituters (such as download-using-manifests.pl) directly. This means that it's no longer necessary for nix-pull to register substitutes or for nix-channel to clear them, which makes those operations much faster (NIX-95). Also, we don't have to worry about keeping nix-pull manifests (in /nix/var/nix/manifests) and the database in sync with each other. The downside is that there is some overhead in calling an external program to get the substitutes info. For instance, "nix-env -qas" takes a bit longer. Abolishing the substitutes table also makes the logic in local-store.cc simpler, as we don't need to store info for invalid paths. On the downside, you cannot do things like "nix-store -qR" on a substitutable but invalid path (but nobody did that anyway). * Never catch interrupts (the Interrupted exception).
2007-08-10* nix-pull: support bzipped manifests: when doing a nix-pull on $url,Eelco Dolstra
try $url.bz2 first.
2007-08-09* nix-pull: using nix-prefetch-url (so that we get caching for free),Eelco Dolstra
and store the manifests in the Nix store. (So now /nix/var/nix/manifests/ just contains symlinks to the store and is searched for GC roots.)
2007-08-09* nix-prefetch-url: support caching. If the environment variableEelco Dolstra
NIX_DOWNLOAD_CACHE is set, then nix-prefetch-url will store the hash and timestamp of downloaded files in the directory $NIX_DOWNLOAD_CACHE. This allows it to figure out if the file is still in the Nix store.
2007-01-23* New kind of manifest object: "localPath", which denotes that a storeEelco Dolstra
path can be created by copying it from another location in the file system. This is useful in the NixOS installation.
2007-01-23* Successors have been gone for ages.Eelco Dolstra
2006-10-04* tmpnam() -> File::Temp::tempdir().Eelco Dolstra
2006-09-25* In `nix-channel --update', skip manifests that assume a Nix store atEelco Dolstra
a different location than the user's. This makes channels usable as a source deployment mechanism for people who install Nix under non-standard prefixes. (NIX-57)
2006-09-25* Clean up calls to system().Eelco Dolstra
2006-05-31* This may be useful in the future.Eelco Dolstra
2005-09-21* Don't use IPC::Open2, it has a subtle race bug on Mac OS X 10.4. IfEelco Dolstra
the parent runs before the child, it closes some pipe file descriptors which causes the child to fail due to a bad file descriptor. So we just use the normal open() function instead. This fixes NIX-14 (intermittent nix-pull failures).
2005-04-08* nix-store: `--substitute' -> `--register-substitutes'.Eelco Dolstra
2005-02-25* Add a version number to manifests.Eelco Dolstra
2005-02-09* Propagate the deriver of a path through the substitute mechanism.Eelco Dolstra
* 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.
2005-02-08* Set umask to prevent permission problems.Eelco Dolstra
2005-02-08* Better error reporting in readmanifest.Eelco Dolstra
* Use force flag in `mv' to prevent silly interactive questions (this happens with shared Nix stores).
2005-02-01* Make check fixes.Eelco Dolstra
2005-01-25* Really fix the substitute mechanism, i.e., ensure the closureEelco Dolstra
invariant by registering references through the manifest. * Added a test for nix-pull.
2004-12-20* Place manifests in /nix/var/nix/manifests.Eelco Dolstra
* Use the new patch downloader.
2004-12-20* Sync with changed substitute mechanism.Eelco Dolstra
* Accept the NarHash line. * Clear substitutes in `nix-channel --update'.
2004-12-16* Fix nix-pull.Eelco Dolstra
2004-12-16* Remove `prebuilts.conf' file, it's not like anybody was using it.Eelco Dolstra
* Add /nix/var/nix/manifests directory.
2004-12-13* Patch deployment. `download.pl' (intended to be used in theEelco Dolstra
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).
2004-06-21* Adapted nix-pull to use the new substitute mechanism.Eelco Dolstra
2004-04-06* Switched from wget to curl.Eelco Dolstra
* Made the dependencies on bzip2 and the shell explicit.
2004-03-15* Make perl a dependency of Nix.Eelco Dolstra
2004-01-14* Synchronous `nix-pull' with `nix-push'.Eelco Dolstra
* Use curl instead of wget.
2003-12-21* Missing semicolons.Eelco Dolstra
2003-12-05* Refactoring: put the manifest-reading code in a separate file.Eelco Dolstra
2003-12-04* Fix for too long command lines when calling `nix-storeMartin Bravenboer
--register-[substitutes|successors].
2003-12-01* Help text for all (non-script) programs, so no more:Eelco Dolstra
$ nix-instantiate --help error: unknown flag `--help` Try `nix-instantiate --help' for more information. :-)
2003-12-01* Use a system name that does not include the OS manufacturer (i.e.,Eelco Dolstra
"i686-linux" instead of "i686-suse-linux").
2003-11-24* One-click installation :-)Eelco Dolstra
The script nix-install-package takes a `Nix package file' (which contains one or more derivations, along with URLs of Nix caches), unpacks it, pulls the caches, and installs the derivations in the user's environment. For best results, associate the command `xterm -e /nix/bin/nix-install-package' with the MIME type `application/x-nix-package' and visit http://losser.st-lab.cs.uu.nl/~eelco/test/.
2003-11-24* Fix nix-pull.Eelco Dolstra
2003-11-24* Get rid of tab characters.Eelco Dolstra
2003-10-27* Don't cache the manifest.Eelco Dolstra
2003-10-16* Remove some debug output.Eelco Dolstra
2003-10-16* Substitutes and nix-pull now work again.Eelco Dolstra
* Fixed a segfault caused by the buffering of stderr. * Fix now allows the specification of the full output path. This should be used with great care, since it by-passes the normal hash generation. * Incremented the version number to 0.4 (prerelease).
2003-08-15* A script `nix-prefetch-url' to fetch a URL, place it in the NixEelco Dolstra
store, and print its hash.
2003-08-15* Don't use a temporary file.Eelco Dolstra
2003-08-05* Made nix-pull much faster by performing all Fix instantiations atEelco Dolstra
the same time.
2003-07-29* Bug: Fix does not allow empty names, so don't generate them.Eelco Dolstra
2003-07-22* Substitutes now should produce a path with the same id as they areEelco Dolstra
substituting for (obvious, really). * For greater efficiency, nix-pull/unnar will place the output in a path that is probably the same as what is actually needed, thus preventing a path copy. * Even if a output id is given in a Fix package expression, ensure that the resulting Nix derive expression has a different id. This is because Nix expressions that are semantically equivalent (i.e., build the same result) might be different w.r.t. efficiency or divergence. It is absolutely vital for the substitute mechanism that such expressions are not used interchangeably.
2003-07-21* Changed nix-pull to match nix-push.Eelco Dolstra
2003-07-16* Substitute fixes.Eelco Dolstra