summary refs log tree commit diff
path: root/src/nix.cc
AgeCommit message (Collapse)Author
2003-07-20* Refactorings.Eelco Dolstra
2003-07-17* For debugging: `nix --verify' to check the consistency of theEelco Dolstra
database and store.
2003-07-16* The write() system call can write less than the requested Eelco Dolstra
number of bytes, e.g., in case of a signal like SIGSTOP. This caused `nix --dump' to fail sometimes. Note that this bug went unnoticed because the call to `nix --dump' is in a pipeline, and the shell ignores non-zero exit codes from all but the last element in the pipeline. Is there any way to check the result of the initial elements in the pipeline? (In other words, is it at all possible to write reliable shell scripts?)
2003-07-16* Fix the -qr query.Eelco Dolstra
2003-07-16* Fix self-referential outputs.Eelco Dolstra
* Fix -qp query.
2003-07-15* Get Fix and Nix to work again.Eelco Dolstra
2003-07-11* Fix handling of pipes (read(2) may not return the requiredEelco Dolstra
number of bytes in one call).
2003-07-10* A command to register successor fstate expressions.Eelco Dolstra
Unifying substitutes and successors isn't very feasible for now, since substitutes are only used when no path with a certain is known. Therefore, a normal form of some expression stored as a substitute would not be used unless the expression itself was missing.
2003-07-10* The policy-free derivate sharing now *almost* works. :-) For anyEelco Dolstra
hash for which no local expansion is available, Nix can execute a `substitute' which should produce a path with such a hash. This is policy-free since Nix does not in any way specify how the substitute should work, i.e., it's an arbitrary (unnormalised) fstate expression. For example, `nix-pull' registers substitutes that fetch Nix archives from the network (through `wget') and unpack them, but any other method is possible as well. This is an improvement over the old Nix sharing scheme, which had a policy (fetching through `wget') built in. The sharing scheme doesn't work completely yet because successors from fstate rewriting have to be registered on the receiving side. Probably the whole successor stuff can be folded up into the substitute mechanism; this would be a nice simplification.
2003-07-10* Get `nix-push' working again. It now uses Nix/Fix to create NixEelco Dolstra
archives (using the package in corepkgs/nar). * queryPathByHash -> expandHash, and it takes an argument specifying the target path (which may be empty). * Install the core Fix packages in $prefix/share/fix. TODO: bootstrap Nix and install Nix as a Fix package.
2003-07-09* When computing the set of paths referenced by an expression, alsoEelco Dolstra
include the paths of the subterms.
2003-07-08* The output of a Derive() node is not a referenced path.Eelco Dolstra
2003-07-08* A command to query the paths referenced by an fstate expression.Eelco Dolstra
* Use a temporary directory for build actions.
2003-07-08* Get `--dump' and `--delete' to work again.Eelco Dolstra
2003-07-07* `--realise' -> `--install'.Eelco Dolstra
2003-07-07* Refactoring on the file names.Eelco Dolstra
2003-07-04* Refactoring: move initialisation and argument parsing into a sharedEelco Dolstra
file.
2003-07-04* Caching of expression successors.Eelco Dolstra
2003-06-25* Minor cleanups.Eelco Dolstra
2003-06-23* `nix --delete' command.Eelco Dolstra
2003-06-23* `nix --restore' command.Eelco Dolstra
2003-06-23* A function to restore from a Nix archive.Eelco Dolstra
* addValue() can now import any dumpable FS object.
2003-06-20* Flags to indicate how values are specified on the command lineEelco Dolstra
(--hash, --file, --name).
2003-06-20* Refactoring: move dump function into archive.cc.Eelco Dolstra
2003-06-18* `nix --dump' command.Eelco Dolstra
2003-06-17* Started integrating the new evaluation model into Nix.Eelco Dolstra
* Cleaned up command-line syntax.
2003-06-16* Started implementing the new evaluation model.Eelco Dolstra
* Lots of refactorings. * Unit tests.
2003-06-16* AST for Nix expressions.Eelco Dolstra
2003-06-15* Refactoring: hash class.Eelco Dolstra
2003-05-30* Send log output to stderr.Eelco Dolstra
2003-05-30* Log the output of builders to $prefix/var/log/nix.Eelco Dolstra
2003-05-26* FreeBSD / ISO C++ compatibility fixes.Eelco Dolstra
2003-05-26* Removed some debug code that prevented packages from building.Eelco Dolstra
2003-05-26* Some refactoring.Eelco Dolstra
2003-05-26* Nix can now fetch prebuilts (and other files) from the network, iffEelco Dolstra
a mapping from the hash to a url has been registered through `nix regurl'. * Bug fix in nix: don't pollute stdout when running tar, it made nix-switch barf. * Bug fix in nix-push-prebuilts: don't create a subdirectory on the target when rsync'ing.
2003-05-25* Prebuilt package sharing. We allow transparent binary deployment byEelco Dolstra
sharing package directories (i.e., the result of building a Nix descriptor). `nix-pull-prebuilts' obtains a list of all known prebuilts by consulting the paths and URLs specified in $prefix/etc/nix/prebuilts.conf. The mappings ($pkghash, $prebuilthash) and ($prebuilthash, $location) are registered with Nix so that it can use the prebuilt with hash $prebuilthash when installing a package with hash $pkghash by downloading and unpacking $location. `nix-push-prebuilts' creates prebuilts for all packages for which no prebuilt is known to exist. It can then optionally upload these to the network through rsync. `nix-[pull|push]-prebuilts' just provide a policy. Nix provides the mechanism through the `nix [export|regprebuilt|regurl]' commands.
2003-04-25* Remove build directory from a package directory after building it.Eelco Dolstra
2003-04-24* getpkg, delpkg, and so on now accept multiple arguments.Eelco Dolstra
2003-04-23* Redirect stdout to stderr when executing the build script.Eelco Dolstra
2003-04-08* FreeBSD / gcc 2.95 compatibility fixes.Eelco Dolstra
* A script to generate prebuilt registration scripts.
2003-04-08* `Fix' is a high-level descriptor instantiator for Nix. It replacesEelco Dolstra
nix-instantiate.
2003-04-04* Autoconf / Automake configuration and building.Eelco Dolstra
2003-04-04* Minor refactoring: use iterators to process arguments.Eelco Dolstra
2003-04-02* Importing and exporting of pre-built packages.Eelco Dolstra
2003-04-01* Use ATerms for Nix descriptors.Eelco Dolstra
2003-03-28* Don't fork in `nix run'.Eelco Dolstra
2003-03-28* Allow arguments to be passed to programs in `nix run'.Eelco Dolstra
2003-03-24* For efficiency: md5 integrated into nix.Eelco Dolstra
* Command `nix ensure' which is like `nix getpkg' except that if the has refers to a run action it will just ensure that the imports are there. * Command `nix closure' to print out the closure of the set of descriptors under the import relation, starting at a set of roots. This can be used for garbage collection (e.g., given a list of `activated' packages, we can delete all packages not reachable from those). * Command `nix graph' to print out a Dot graph of the dependency graph. * `nix-addroot' adds a root for the (unimplemented) garbage collector.
2003-03-24* Descriptors now have a "system" field specifying the platform thatEelco Dolstra
the build or run action should be perfomed on. This ensures that descriptors have different hashes on different platforms.
2003-03-24* Refactoring.Eelco Dolstra