about summary refs log tree commit diff
path: root/scripts/nix-prefetch-url.in
AgeCommit message (Collapse)AuthorFilesLines
2005-02-24 * Properly specify the hash algorithm in the manifests, and read itEelco Dolstra1-1/+4
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).
2005-02-22 * Support for fixed-output hashes over directory trees (i.e., over theEelco Dolstra1-2/+2
NAR dump of the path).
2005-01-25 * Really fix the substitute mechanism, i.e., ensure the closureEelco Dolstra1-3/+1
invariant by registering references through the manifest. * Added a test for nix-pull.
2005-01-17 * Removed the `id' attribute hack.Eelco Dolstra1-2/+6
* Formalise the notion of fixed-output derivations, i.e., derivations for which a cryptographic hash of the output is known in advance. Changes to such derivations should not propagate upwards through the dependency graph. Previously this was done by specifying the hash component of the output path through the `id' attribute, but this is insecure since you can lie about it (i.e., you can specify any hash and then produce a completely different output). Now the responsibility for checking the output is moved from the builder to Nix itself. A fixed-output derivation can be created by specifying the `outputHash' and `outputHashAlgo' attributes, the latter taking values `md5', `sha1', and `sha256', and the former specifying the actual hash in hexadecimal or in base-32 (auto-detected by looking at the length of the attribute value). MD5 is included for compatibility but should be considered deprecated. * Removed the `drvPath' pseudo-attribute in derivation results. It's no longer necessary. * Cleaned up the support for multiple output paths in derivation store expressions. Each output now has a unique identifier (e.g., `out', `devel', `docs'). Previously there was no way to tell output paths apart at the store expression level. * `nix-hash' now has a flag `--base32' to specify that the hash should be printed in base-32 notation. * `fetchurl' accepts parameters `sha256' and `sha1' in addition to `md5'. * `nix-prefetch-url' now prints out a SHA-1 hash in base-32. (TODO: a flag to specify the hash.)
2004-12-20 * Sync with changed substitute mechanism.Eelco Dolstra1-1/+3
* Accept the NarHash line. * Clear substitutes in `nix-channel --update'.
2004-12-13 * Allow an optional hash to be provided. This prevents redundantEelco Dolstra1-20/+26
fetches.
2004-10-20 * Fix nix-prefetch-url in setuid Nix installations.Eelco Dolstra1-9/+20
2004-06-21 * Adapted nix-pull to use the new substitute mechanism.Eelco Dolstra1-2/+6
2004-04-21 * Channels. These allow you to stay current with an evolving set ofEelco Dolstra1-45/+26
Nix expressions. To subscribe to a channel (needs to be done only once): nix-channel --add \ http://catamaran.labs.cs.uu.nl/dist/nix/channels/nixpkgs-unstable This just adds the given URL to ~/.nix-channels (which can also be edited manually). To update from all channels: nix-channel --update This fetches the latest expressions and pulls cache manifests. The default Nix expression (~/.nix-defexpr) is made to point to the conjunction of the expressions downloaded from all channels. So to update all installed derivations in the current user environment: nix-channel --update nix-env --upgrade '*' If you are really courageous, you can put this in a cronjob or something. You can subscribe to multiple channels. It is not entirely clear what happens when there are name clashes between derivations from different channels. From nix-env/main.cc it appears that the one with the lowest (highest?) hash will be used, which is pretty meaningless.
2004-04-06 * Switched from wget to curl.Eelco Dolstra1-6/+12
* Made the dependencies on bzip2 and the shell explicit.
2004-03-15 * Make perl a dependency of Nix.Eelco Dolstra1-1/+1
2004-02-20 * Use $(storedir) instead of $(prefix)/store.Eelco Dolstra1-2/+2
2004-02-10 * Lots of manual stuff. Reference pages for most Nix commands.Eelco Dolstra1-1/+1
* nix-pull now requires the full url to the manifest, i.e., `/MANIFEST/' is no longer automatically appended. * nix-prefetch-url works again.
2003-12-01 * Use a system name that does not include the OS manufacturer (i.e.,Eelco Dolstra1-1/+1
"i686-linux" instead of "i686-suse-linux").
2003-11-22 * Maintain integrity of the substitute and successor mappings whenEelco Dolstra1-13/+15
deleting a path in the store. * Allow absolute paths in Nix expressions. * Get nix-prefetch-url to work again. * Various other fixes.
2003-10-02 * Use passive FTP in wget.Eelco Dolstra1-1/+1
2003-08-15 * A script `nix-prefetch-url' to fetch a URL, place it in the NixEelco Dolstra1-0/+48
store, and print its hash.