about summary refs log tree commit diff
path: root/doc/manual/release-notes.xml
AgeCommit message (Collapse)AuthorFilesLines
2008-11-18 * Get rid of nix-pack-closure / nix-unpack-closure, they're redundant.Eelco Dolstra1-0/+7
2008-08-05 * Moved some stuff to the Nixpkgs manual.Eelco Dolstra1-0/+22
* Updated the release notes.
2008-07-11 * Generalised the dependencyClosure primop to builtins.genericClosure,Eelco Dolstra1-2/+7
which is hopefully more useful. * New primops: length, mul, div.
2008-07-01 * Export the nix-env derivation name parsing and version comparisonEelco Dolstra1-0/+6
logic through the `parseDrvName' and `compareVersions' primops. This will allow expressions to easily check whether some dependency is a specific needed version or falls in some version range. See tests/lang/eval-okay-versions.nix for examples.
2008-01-29 * nix-store --dump-db / --load-db to dump/load the Nix DB.Eelco Dolstra1-0/+13
* nix-store --register-validity: option to supply the content hash of each path. * Removed compatibility with Nix <= 0.7 stores.
2007-12-31 (no commit message)Eelco Dolstra1-4/+5
2007-12-31 (no commit message)Eelco Dolstra1-89/+89
2007-12-31 (no commit message)Eelco Dolstra1-9/+8
2007-12-31 * More release notes.Eelco Dolstra1-0/+44
2007-12-30 * Documented indented string literals.Eelco Dolstra1-39/+121
* Release notes.
2007-11-30 * Added a new kind of multi-line string literal delimited by twoEelco Dolstra1-0/+4
single quotes. Example (from NixOS): job = '' start on network-interfaces start script rm -f /var/run/opengl-driver ${if videoDriver == "nvidia" then "ln -sf ${nvidiaDrivers} /var/run/opengl-driver" else if cfg.driSupport then "ln -sf ${mesa} /var/run/opengl-driver" else "" } rm -f /var/log/slim.log end script ''; This style has two big advantages: - \, ' and " aren't special, only '' and ${. So you get a lot less escaping in shell scripts / configuration files in Nixpkgs/NixOS. The delimiter '' is rare in scripts (and can usually be written as ""). ${ is also fairly rare. Other delimiters such as <<...>>, {{...}} and <|...|> were also considered but this one appears to have the fewest drawbacks (thanks Martin). - Indentation is intelligently stripped so that multi-line strings can follow the nesting structure of the containing Nix expression. E.g. in the example above 6 spaces are stripped from the start of each line. This prevents unnecessary indentation in generated files (which sometimes even breaks things). See tests/lang/eval-okay-ind-string.nix for some examples.
2007-11-01 * Documented some of the more obscure derivation attributes (includingEelco Dolstra1-7/+16
fixed-output derivations).
2007-10-29 * Make the `--prebuilt-only' / `-b' option work not just for queriesEelco Dolstra1-1/+2
but installations/upgrades as well. So `nix-env -ub \*' will upgrade only those packages for which a substitute is available (or to be precise, it will upgrade each package to the highest version for which a substitute is available).
2007-10-27 * Delete the chroot directory automatically.Eelco Dolstra1-0/+3
* Removed some debug messages.
2007-09-19 * Manpage for nix-copy-closure.Eelco Dolstra1-5/+22
2007-05-16 (no commit message)Eelco Dolstra1-1/+3
2007-05-01 * nix-env -i: instead of breaking package ties by version, break themEelco Dolstra1-0/+6
by priority and version install. That is, if there are multiple packages with the same name, then pick the package with the highest priority, and only use the version if there are multiple packages with the same priority. This makes it possible to mark specific versions/variant in Nixpkgs more or less desirable than others. A typical example would be a beta version of some package (e.g., "gcc-4.2.0rc1") which should not be installed even though it is the highest version, except when it is explicitly selected (e.g., "nix-env -i gcc-4.2.0rc1"). * Idem for nix-env -u, only the semantics are a bit trickier since we also need to take into account the priority of the currently installed package (we never upgrade to a lower priority, unless --always is given).
2007-05-01 * `nix-env -q --xml --meta' to show all meta attributes.Eelco Dolstra1-2/+2
2007-04-27 * Package flag "keep" that prevents a package from being removed fromEelco Dolstra1-2/+2
a user environment by an install or upgrade action. This is particularly useful if you have a version installed that you don't want to upgrade (e.g., because the newer versions are broken). Example: $ nix-env -u zapping --dry-run (dry run; not doing anything) upgrading `zapping-0.9.6' to `zapping-0.10cvs6' $ nix-env --set-flag keep true zapping $ nix-env -u zapping --dry-run (dry run; not doing anything) However, "-e" will still uninstall the package. (Maybe we should require the keep flag to be explicitly set to false before it can be uninstalled.)
2007-04-27 * Package conflict resolution through priority levels. If there is aEelco Dolstra1-1/+3
user environment collission between two packages due to overlapping file names, then a package with a higher priority will overwrite the symlinks of a package with a lower priority. E.g., $ nix-env --set-flag priority 5 gcc $ nix-env --set-flag priority 10 binutils gives gcc a higher priority than binutils (higher number = lower priority).
2007-04-26 * nix-env -q now has a flag --prebuilt-only (-b<) that causes nix-envEelco Dolstra1-0/+9
to show only those derivations whose output is already in the Nix store or that can be substituted (i.e., downloaded from somewhere). In other words, it shows the packages that can be installed “quickly”, i.e., don’t need to be built from source.
2007-03-26 * `nix-copy-closure --from': copy from a remote machine instead of toEelco Dolstra1-0/+5
a remote machine.
2007-02-02 * nix-env now maintains meta info (from the `meta' derivationEelco Dolstra1-0/+16
attribute) about installed packages in user environments. Thus, an operation like `nix-env -q --description' shows useful information not only on available packages but also on installed packages. * nix-env now passes the entire manifest as an argument to the Nix expression of the user environment builder (not just a list of paths), so that in particular the user environment builder has access to the meta attributes. * New operation `--set-flag' in nix-env to change meta info of installed packages. This will be useful to pass per-package policies to the user environment builder (e.g., how to resolve collision or whether to disable a package (NIX-80)) or upgrade policies in nix-env (e.g., that a package should be "masked", that is, left untouched by upgrade actions). Example: $ nix-env --set-flag enabled false ghc-6.4
2007-01-29 New primitives:Eelco Dolstra1-1/+4
* `sub' to subtract two numbers. * `stringLength' to get the length of a string. * `substring' to get a substring of a string. These should be enough to allow most string operations to be expressed.
2007-01-14 * Option --argstr for passing string arguments easily. (NIX-75)Eelco Dolstra1-0/+3
2006-12-12 * New primop builtins.filterSource, which can be used to filter filesEelco Dolstra1-1/+6
from a source directory. All files for which a predicate function returns true are copied to the store. Typical example is to leave out the .svn directory: stdenv.mkDerivation { ... src = builtins.filterSource (path: baseNameOf (toString path) != ".svn") ./source-dir; # as opposed to # src = ./source-dir; } This is important because the .svn directory influences the hash in a rather unpredictable and variable way.
2006-12-12 * Push.Eelco Dolstra1-1/+1
2006-12-12 * New operation `nix-env --set' which sets a user environment to aEelco Dolstra1-0/+3
single derivation specified by the argument. This is useful when we want to have a profile for a single derivation, such as a server configuration. Then we can just say (e.g.) $ nix-env -p /.../server-profile -f server.nix --set -A server We can't do queries or upgrades on such a profile, but we can do rollbacks. The advantage over -i is that we don't have to worry about other packages having been installed in the profile previously; --set gets rid of them.
2006-12-09 (no commit message)Eelco Dolstra1-0/+3
2006-12-08 * Kill a build if it has gone for more than a certain number ofEelco Dolstra1-0/+5
seconds without producing output on stdout or stderr (NIX-65). This timeout can be specified using the `--max-silent-time' option or the `build-max-silent-time' configuration setting. The default is infinity (0). * Fix a tricky race condition: if we kill the build user before the child has done its setuid() to the build user uid, then it won't be killed, and we'll potentially lock up in pid.wait(). So also send a conventional kill to the child.
2006-11-14 * Push.Eelco Dolstra1-1/+2
2006-11-13 * Magic attribute `exportReferencesGraph' that allows the referencesEelco Dolstra1-1/+5
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 needEelco Dolstra1-0/+4
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-10-30 * Release notes.Eelco Dolstra1-0/+14
2006-10-28 * `nix-store --read-log / -l PATH' shows the build log of PATH, ifEelco Dolstra1-0/+17
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-11 * Merge 0.10.1 release notes.Eelco Dolstra1-0/+12
2006-10-06 * Translate Unicode quote characters to ASCII equivalents whenEelco Dolstra1-12/+12
generating NEWS.txt.
2006-10-06 * Typos etc.Eelco Dolstra1-5/+5
* Set the release date.
2006-10-02 * Document the new let.Eelco Dolstra1-0/+3
2006-10-02 * Manual updates (especially how nix-build makes testing packages muchEelco Dolstra1-7/+10
easier; no longer need a helper expression).
2006-09-27 * Release notes.Eelco Dolstra1-84/+131
2006-09-27 * Release notes.Eelco Dolstra1-34/+100
2006-09-26 * Release notes.Eelco Dolstra1-1/+2
2006-09-06 * Release notes.Eelco Dolstra1-8/+29
2006-08-23 * Allow --arg in nix-env as well, example:Eelco Dolstra1-10/+17
$ nix-env -qa --system-filter \* --arg system '"powerpc-darwin"' to override the system from the default value (__currentSystem in all-packages.nix).
2006-08-22 * Release notes.Eelco Dolstra1-13/+132
2006-08-21 * Convert to DocBook 5.Eelco Dolstra1-9/+11
* Use Jing for RelaxNG validation, xmllint seems buggy.
2006-07-25 * Doh.Eelco Dolstra1-1/+1
2006-07-25 * Support the --attr / -A flag in nix-env as well. So now we can do,Eelco Dolstra1-0/+3
e.g., $ nix-env -i -A subversion xorg.xorgserver The main advantage over using symbolic names is that using attribute names is unambiguous and much, much faster.
2006-07-20 * Call find-runtime-roots.pl from the garbage collector to preventEelco Dolstra1-0/+3
running applications etc. from being garbage collected.