Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2003-08-13 | * Split the book.xml into several xml files. | Eelco Dolstra | 7 | -470/+481 | |
2003-08-12 | * Documented some Nix operations. | Eelco Dolstra | 1 | -10/+159 | |
2003-08-12 | * Generate man pages from the manual. | Eelco Dolstra | 6 | -14/+92 | |
2003-08-08 | * deletePath(): some operating systems (e.g., Mac OS X) don't like it | Eelco Dolstra | 1 | -1/+8 | |
when we delete entries from a directory while we are reading it. So read the directory into memory, then delete its contents. | |||||
2003-08-07 | * Started on the introduction. | Eelco Dolstra | 1 | -2/+189 | |
2003-08-07 | * Start of manual; installation instructions. | Eelco Dolstra | 2 | -4/+107 | |
2003-08-06 | * Allow a name to be given to a system configuration through `--name | Eelco Dolstra | 1 | -3/+7 | |
NAME'. E.g., on the losser Subversion server, I do `nix-switch --name svn $(fix ...)' to atomically upgrade the server (the SVN server uses the Apache and Subversion installations in /nix/var/nix/links/svn). | |||||
2003-08-06 | * `==' is not a valid operator. | Eelco Dolstra | 1 | -1/+1 | |
2003-08-06 | * Scan for wget and use the full path in fetchurl.sh. | Eelco Dolstra | 3 | -2/+5 | |
* Use nix-hash (not md5sum) in fetchurl.sh. | |||||
2003-08-06 | * Allow locks on paths to be acquired recursively (that is, if the | Eelco Dolstra | 1 | -2/+4 | |
process is already holding a lock on a path, it may acquire the lock again without blocking or failing). (This might be dangerous, not sure). Necessary for fast builds to work. | |||||
2003-08-06 | * A flag `--flat' to just compute the MD5 checksum of the contents of | Eelco Dolstra | 1 | -3/+7 | |
a regular file. I.e., `nix-hash --flat' is equivalent to the coreutils `md5sum' command (which doesn't exist on all systems). | |||||
2003-08-06 | * App -> Call. | Eelco Dolstra | 1 | -1/+8 | |
* Allow booleans in package environment bindings (True maps to "1", False maps to ""). | |||||
2003-08-05 | * Conditionals. | Eelco Dolstra | 1 | -0/+33 | |
2003-08-05 | * Made nix-push much faster. | Eelco Dolstra | 1 | -18/+33 | |
2003-08-05 | * Cache result of fstatePaths(). TODO: do this in fstore.cc. | Eelco Dolstra | 1 | -2/+17 | |
2003-08-05 | * Made nix-pull much faster by performing all Fix instantiations at | Eelco Dolstra | 1 | -14/+32 | |
the same time. | |||||
2003-08-05 | * Allow the top-level expression to be a list of expressions that | Eelco Dolstra | 1 | -5/+19 | |
normalise to Nix expression. | |||||
2003-08-05 | * Delete obstructed paths prior to building. | Eelco Dolstra | 1 | -3/+12 | |
2003-08-04 | * Path locking in addToStore() and expandPath(). | Eelco Dolstra | 2 | -1/+16 | |
2003-08-01 | * In normaliseFState(), wrap registration of the output paths and the | Eelco Dolstra | 6 | -28/+44 | |
normal form in a single transaction to ensure that if we crash, either everything is registered or nothing is. This is for recoverability: unregistered paths in the store can be deleted arbitrarily, while registered paths can only be deleted by running the garbage collector. | |||||
2003-08-01 | * Defensive programming against POSIX locking idiocy. | Eelco Dolstra | 3 | -25/+18 | |
* Simplified realiseSlice(). | |||||
2003-08-01 | * normaliseFState() now locks all output paths prior to building, thus | Eelco Dolstra | 5 | -30/+151 | |
ensuring that simultaneous invocations of Nix don't clobber each other's builds. * Fixed a bug in `make install'. | |||||
2003-08-01 | * Don't use substitutes in addToStore(). | Eelco Dolstra | 2 | -15/+21 | |
2003-07-31 | * Put the database verifier in a transaction. | Eelco Dolstra | 1 | -17/+23 | |
2003-07-31 | * Enclose most operations that update the database in transactions. | Eelco Dolstra | 6 | -96/+145 | |
* Open all database tables (Db objects) at initialisation time, not every time they are used. This is necessary because tables have to outlive all transactions that refer to them. | |||||
2003-07-31 | * Use a more reasonable log file size (256 KB instead of 10 MB). | Eelco Dolstra | 1 | -2/+6 | |
* Checkpoint on exit. | |||||
2003-07-31 | * Started using Berkeley DB environments. This is necessary for | Eelco Dolstra | 12 | -102/+251 | |
transaction support (but we don't actually use transactions yet). | |||||
2003-07-31 | * Set execute bit. | Eelco Dolstra | 2 | -0/+0 | |
2003-07-31 | * Basic makefile. | Eelco Dolstra | 1 | -0/+7 | |
2003-07-30 | * A better test case for Nix race conditions. | Eelco Dolstra | 2 | -0/+19 | |
2003-07-30 | * Directories for the manual. | Eelco Dolstra | 1 | -0/+3 | |
2003-07-30 | * Test cases for races. | Eelco Dolstra | 2 | -0/+19 | |
2003-07-30 | * INSTALL_DATA -> INSTALL_PROGRAM to ensure that the execute bit | Eelco Dolstra | 2 | -3/+3 | |
remains set. | |||||
2003-07-30 | * Don't make the builder executable. | Eelco Dolstra | 1 | -4/+0 | |
2003-07-29 | * Bug: Fix does not allow empty names, so don't generate them. | Eelco Dolstra | 1 | -10/+10 | |
2003-07-29 | * Use `--query --requisites' and include successors when pushing. Don't | Eelco Dolstra | 1 | -8/+8 | |
use `--query --generators' anymore. | |||||
2003-07-29 | * Typo: if -> elsif. | Eelco Dolstra | 1 | -1/+1 | |
2003-07-29 | * Get garbage collection and cache population to work *properly*. | Eelco Dolstra | 7 | -30/+86 | |
Renamed `fstateRefs' to `fstateRequisites'. The semantics of this function is that it returns a list of all paths necessary to realise a given expression. For a derive expression, this is the union of requisites of the inputs; for a slice expression, it is the path of each element in the slice. Also included are the paths of the expressions themselves. Optionally, one can also include the requisites of successor expressions (to recycle intermediate results). * `nix-switch' now distinguishes between an expression and its normal form. Usually, only the normal form is registered as a root of the garbage collector. With the `--source-root' flag, it will also register the original expression as a root. * `nix-collect-garbage' now has a flag `--keep-successors' which causes successors not to be included in the list of garbage paths. * `nix-collect-garbage' now has a flag `--invert' which will print all paths that should *not* be garbage collected. | |||||
2003-07-29 | * Nicer dot graphs. | Eelco Dolstra | 1 | -1/+7 | |
2003-07-29 | * `fstateRefs' now works on derive expressions as well. TODO: make | Eelco Dolstra | 4 | -14/+40 | |
this more efficient. * A flag `-n' in 'nix --query' to normalise the argument. Default is not to normalise. | |||||
2003-07-29 | * Let `nix --install' print out the id of the normal form. | Eelco Dolstra | 5 | -34/+35 | |
* Some minor refactoring. | |||||
2003-07-28 | * Do not set LD_LIBRARY_PATH; it breaks many things. E.g., SuSE's ssh | Eelco Dolstra | 1 | -1/+1 | |
dynamically links against libdb4 (?!), due to LD_LIBRARY_PATH it picks up our libdb4 instead of SuSE's libdb4, but our libdb4 uses another glibc so loading barfs. Instead, all packages should use rpaths to store library locations in executables/libraries. The disadvantage is that overriding rpaths is harder. (It is possible by invoking the dynamic linker directly, e.g., `/lib/ld-linux.so.2 --ignore-path LIST program args...' to ignore the rpath for the libraries in LIST). It would be better to use DT_RUNPATH, which is consulted by the dynamic linker *after* LD_LIBRARY_PATH but *before* ld.so.cache and the system directories. | |||||
2003-07-28 | * Check for the pthread library (db4 needs it on some platforms). | Eelco Dolstra | 2 | -1/+4 | |
2003-07-28 | * `nix --help'. | Eelco Dolstra | 3 | -37/+116 | |
* `nix --query --graph' to print a dot dependency graph of derive expressions. | |||||
2003-07-24 | * Fix message. | Eelco Dolstra | 1 | -1/+2 | |
2003-07-24 | * Prevent spurious rebuilds of db/aterm. | Eelco Dolstra | 1 | -2/+10 | |
2003-07-24 | * The `-v' flag no longer takes an argument; it should be repeated | Eelco Dolstra | 6 | -38/+29 | |
instead (e.g., `-vvvv' for lots of output). Default is to only print error messages. | |||||
2003-07-24 | * Do sync the database, since not doing so caused database changes not | Eelco Dolstra | 1 | -1/+1 | |
to reach the disk at all. Looks like a bug. | |||||
2003-07-24 | * Debug levels. Use `--verbose / -v LEVEL' to display only messages | Eelco Dolstra | 8 | -25/+68 | |
up to the given verbosity levels. These currently are: lvlError = 0, lvlNormal = 5, lvlDebug = 10, lvlDebugMore = 15 although only lvlError and lvlDebug are actually used right now. | |||||
2003-07-24 | * Don't sync the database on close. This was killing performance. | Eelco Dolstra | 1 | -1/+1 | |
(Of course, the real problem is that we open the database for *every* operation; we should only open it once. And we should use transactions.) |