aboutsummaryrefslogtreecommitdiff
path: root/src/nix-store/nix-store.cc
AgeCommit message (Collapse)Author
2007-11-29* nix-env -e: support uninstalling by path, so that one can sayEelco Dolstra
$ nix-env -e $(which firefox) or $ nix-env -e /nix/store/nywzlygrkfcgz7dfmhm5xixlx1l0m60v-pan-0.132 * nix-env -i: if an argument contains a slash anywhere, treat it as a path and follow it through symlinks into the Nix store. This allows things like $ nix-build -A firefox $ nix-env -i ./result * nix-env -q/-i/-e: don't complain when the `*' selector doesn't match anything. In particular, `nix-env -q \*' doesn't fail anymore on an empty profile.
2007-11-16* nix-store --import: add a flag --require-signature.Eelco Dolstra
2007-10-10* Doh.Eelco Dolstra
2007-10-10* nix-store --optimise: flag "--dry-run" to just query what the diskEelco Dolstra
savings would be.
2007-10-09* New command `nix-store --optimise' to reduce Nix store disk spaceEelco Dolstra
usage by finding identical files in the store and hard-linking them to each other. It typically reduces the size of the store by something like 25-35%. This is what the optimise-store.pl script did, but the new command is faster and more correct (it's safe wrt garbage collection and concurrent builds).
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-06-12* Support queryDeriver() in multi-user installations.Eelco Dolstra
2007-02-21* Flush cout to show progress.Eelco Dolstra
2007-02-21* Export/import many paths in one go.Eelco Dolstra
2007-02-21* `nix-store -qR' and friends: print the paths sorted topologicallyEelco Dolstra
under the references relation. This is useful for commands that want to copy paths to another Nix store in the right order.
2007-02-21* Flag `--print-invalid' in `nix-store --check-validity' to print outEelco Dolstra
which paths specified on the command line are invalid (i.e., don't barf when encountering an invalid path, just print it). This is useful for build-remote.pl to figure out which paths need to be copied to a remote machine. (Currently we use rsync, but that's rather inefficient.)
2007-02-21* `nix-store --import': import an archive created by `nix-storeEelco Dolstra
--export' into the Nix store, and optionally check the cryptographic signatures against /nix/etc/nix/signing-key.pub. (TODO: verify against a set of public keys.)
2007-02-21* `nix-store --export --sign': sign the Nix archive using the RSA keyEelco Dolstra
in /nix/etc/nix/signing-key.sec
2007-02-20* Start of `nix-store --export' operation for serialising a storeEelco Dolstra
path. This is like `nix-store --dump', only it also dumps the meta-information of the store path (references, deriver). Will add a `--sign' flag later to add a cryptographic signature, which we will use for exchanging store paths between build farm machines in a secure manner.
2007-01-13* nix-pack-closure: store the top-level store paths in the closure.Eelco Dolstra
* nix-unpack-closure: extract the top-level paths from the closure and print them on stdout. This allows them to be installed, e.g., "nix-env -i $(nix-unpack-closure)". (NIX-64)
2006-12-07* Rename all those main.cc files.Eelco Dolstra