Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2006-11-29 | * Example script to set permissions for setuid operation. | Roy van den Broek | 1 | -1/+1 | |
2006-11-29 | * Remove --enable-setuid, --with-nix-user and --with-nix-group. | Eelco Dolstra | 2 | -36/+46 | |
Rather, setuid support is now always compiled in (at least on platforms that have the setresuid system call, e.g., Linux and FreeBSD), but it must enabled by chowning/chmodding the Nix binaries. | |||||
2006-11-24 | * Doh! Path sizes need to be computed recursively of course. | Eelco Dolstra | 3 | -6/+28 | |
(NIX-70) | |||||
2006-11-24 | * Dead files. | Eelco Dolstra | 2 | -12/+0 | |
2006-11-18 | * Turn off synchronisation between C and C++ I/O functions. This | Eelco Dolstra | 2 | -1/+3 | |
gives a huge speedup in operations that read or write from standard input/output. (So libstdc++'s I/O isn't that bad, you just have to call std::ios::sync_with_stdio(false).) For instance, `nix-store --register-substitutes' went from 1.4 seconds to 0.1 seconds on a certain input. Another victory for Valgrind. | |||||
2006-11-13 | * Remove the undocumented `noscan' feature. It's no longer necessary | Eelco Dolstra | 1 | -15/+12 | |
now that reference scanning is sufficiently streamy. | |||||
2006-11-13 | * Magic attribute `exportReferencesGraph' that allows the references | Eelco Dolstra | 2 | -20/+60 | |
graph to be passed to a builder. This attribute should be a list of pairs [name1 path1 name2 path2 ...]. The references graph of each `pathN' will be stored in a text file `nameN' in the temporary build directory. The text files have the format used by `nix-store --register-validity'. However, the deriver fields are left empty. `exportReferencesGraph' is useful for builders that want to do something with the closure of a store path. Examples: the builders that make initrds and ISO images for NixOS. `exportReferencesGraph' is entirely pure. It's necessary because otherwise the only way for a builder to get this information would be to call `nix-store' directly, which is not allowed (though unfortunately possible). | |||||
2006-11-13 | * Option `--reregister' in `nix-store --register-validity'. We need | Eelco Dolstra | 1 | -8/+18 | |
this in the NixOS installer (or in the buildfarm) to ensure that the cryptographic hash of the path contents still matches the actual contents. | |||||
2006-11-03 | * Fix importing of derivation outputs. | Eelco Dolstra | 1 | -2/+9 | |
2006-10-30 | * readFile: don't overflow the stack on large files. | Eelco Dolstra | 1 | -1/+15 | |
2006-10-28 | * `nix-store --read-log / -l PATH' shows the build log of PATH, if | Eelco Dolstra | 4 | -4/+43 | |
available. For instance, $ nix-store -l $(which svn) | less lets you read the build log of the Subversion instance in your profile. * `nix-store -qb': if applied to a non-derivation, take the deriver. | |||||
2006-10-23 | * Some better error messages. | Eelco Dolstra | 2 | -5/+12 | |
2006-10-19 | * Better message. | Eelco Dolstra | 1 | -1/+1 | |
2006-10-19 | * toFile: maintain the references. | Eelco Dolstra | 1 | -10/+4 | |
2006-10-19 | * Special derivation attribute `allowedReferences' that causes Nix to | Eelco Dolstra | 1 | -0/+31 | |
check that the references of the output of a derivation are in the specified set. For instance, allowedReferences = []; specifies that the output cannot have any references. (This is useful, for instance, for the generation of bootstrap binaries for stdenv-linux, which must not have any references for purity). It could also be used to guard against undesired runtime dependencies, e.g., {gcc, dynlib}: derivation { ... allowedReferences = [dynlib]; } says that the output can refer to the path of `dynlib' but not `gcc'. A `forbiddedReferences' attribute would be more useful for this, though. | |||||
2006-10-17 | * Backwards compatibility hack for user environments made by Nix <= 0.10. | Eelco Dolstra | 1 | -0/+7 | |
2006-10-17 | * Backwards compatibility with old user environment manifests. | Eelco Dolstra | 2 | -4/+8 | |
2006-10-17 | * Print out the offending path. | Eelco Dolstra | 1 | -2/+3 | |
2006-10-17 | * An awful backwards compatibility hack. | Eelco Dolstra | 1 | -0/+24 | |
2006-10-17 | * baseNameOf: paths don't have to be absolute. | Eelco Dolstra | 1 | -1/+1 | |
2006-10-17 | * Maintain the references for the user environment properly. | Eelco Dolstra | 1 | -1/+1 | |
2006-10-17 | * toPath: should be the identity on paths. | Eelco Dolstra | 1 | -3/+1 | |
2006-10-17 | * dirOf: return a path if the argument is a path. | Eelco Dolstra | 1 | -2/+6 | |
2006-10-17 | * toString: don't copy paths. So toString can be used to pass | Eelco Dolstra | 1 | -3/+4 | |
non-store paths to a builder. | |||||
2006-10-17 | * Do the path check on the normal form. | Eelco Dolstra | 1 | -2/+5 | |
2006-10-17 | * Don't generate an empty drvPath attribute in the manifest. | Eelco Dolstra | 1 | -6/+6 | |
2006-10-16 | * Big cleanup of the semantics of paths, strings, contexts, string | Eelco Dolstra | 17 | -391/+326 | |
concatenation and string coercion. This was a big mess (see e.g. NIX-67). Contexts are now folded into strings, so that they don't cause evaluation errors when they're not expected. The semantics of paths has been clarified (see nixexpr-ast.def). toString() and coerceToString() have been merged. Semantic change: paths are now copied to the store when they're in a concatenation (and in most other situations - that's the formalisation of the meaning of a path). So "foo " + ./bla evaluates to "foo /nix/store/hash...-bla", not "foo /path/to/current-dir/bla". This prevents accidental impurities, and is more consistent with the treatment of derivation outputs, e.g., `"foo " + bla' where `bla' is a derivation. (Here `bla' would be replaced by the output path of `bla'.) | |||||
2006-10-13 | * A helpful message. | Eelco Dolstra | 1 | -0/+2 | |
2006-10-13 | * Don't crash when upgrading the Berkeley DB environment. | Eelco Dolstra | 1 | -1/+6 | |
2006-10-11 | * Removed URIs from the evaluator (NIX-66). They are now just another | Eelco Dolstra | 6 | -13/+4 | |
kind of notation for strings. | |||||
2006-10-10 | * Quick hack to fix NIX-67: evaluation result differing if the Nix | Eelco Dolstra | 2 | -13/+16 | |
expression resides in the store. | |||||
2006-10-10 | * `import': unwrap the context. Necessary to make `import (x + y)' | Eelco Dolstra | 1 | -13/+14 | |
work, where x is a store path. | |||||
2006-10-05 | * Documented nix-store --dump / --restore. | Eelco Dolstra | 1 | -1/+1 | |
2006-10-03 | * toXML: propagate the context to allow derivations to be used in the | Eelco Dolstra | 4 | -10/+21 | |
argument. | |||||
2006-10-03 | * toFile: added an additional argument to specify the store path | Eelco Dolstra | 3 | -4/+40 | |
suffix, e.g., `builtins.toFile "builder.sh" "..."'. * toFile: handle references to other files correctly. | |||||
2006-10-02 | * Finally, a real "let" syntax: `let x = ...; ... z = ...; in ...'. | Eelco Dolstra | 2 | -1/+4 | |
2006-10-02 | * Hack for Bison 2.3 compatability. | Eelco Dolstra | 2 | -2/+14 | |
2006-09-27 | * Fix setuid builds. | Eelco Dolstra | 2 | -9/+9 | |
2006-09-25 | * Quick hack to let nix-install-package set the package name properly | Eelco Dolstra | 1 | -1/+11 | |
(e.g., "java-front-0.9pre15899" instead of "java-front"; particularly important when doing upgrades later on). | |||||
2006-09-24 | * The result of a concatenation with a derivation on the left-hand | Eelco Dolstra | 2 | -4/+13 | |
side should be a path, I guess. * Handle paths that are in the store but not direct children of the store directory. * Ugh, hack to prevent double context wrapping. | |||||
2006-09-24 | * Primop `toPath' to convert a string to a path. | Eelco Dolstra | 1 | -7/+26 | |
* Primop `pathExists' to check for path existence. | |||||
2006-09-24 | * Builtin function `getEnv' for getting environment variables. | Eelco Dolstra | 1 | -6/+18 | |
2006-09-24 | * lessThan primitive for integer comparison. | Eelco Dolstra | 1 | -0/+9 | |
2006-09-22 | * Builtin function `add' to add integers. | Eelco Dolstra | 3 | -0/+20 | |
* Put common test functions in tests/lang/lib.nix. | |||||
2006-09-22 | * Added a builtin function `isList' to test whether a value is a list. | Eelco Dolstra | 1 | -0/+9 | |
With this primitive, a list-flattening function can be implemented (NIX-55, example is in tests/lang/eval-okay-flatten.nix). | |||||
2006-09-22 | * Builtin functions `head' and `tail' to return the head and tail of | Eelco Dolstra | 1 | -0/+25 | |
list. Useful for lots of things, such as implementing a fold function (see NIX-30, example is in tests/lang/eval-okay-list.nix). | |||||
2006-09-22 | * New builtin functions builtins.{hasAttr, getAttr} to check for | Eelco Dolstra | 1 | -0/+16 | |
attribute existence and to return an attribute from an attribute set, respectively. Example: `hasAttr "foo" {foo = 1;}'. They differ from the `?' and `.' operators in that the attribute name is an arbitrary expression. (NIX-61) | |||||
2006-09-22 | * Use a bounded amount of memory in scanForReferences() by not reading | Eelco Dolstra | 1 | -9/+26 | |
regular files into memory all at once. | |||||
2006-09-22 | * Don't allocate the buffer twice. | Eelco Dolstra | 1 | -7/+9 | |
2006-09-22 | * Don't allocate more than SIZE_MAX bytes. | Eelco Dolstra | 1 | -0/+7 | |