[Nix-dev] Nix 1.6.1 released

Eelco Dolstra eelco.dolstra at logicblox.com
Tue Oct 29 12:35:02 CET 2013


I'm pleased to announce the availability of a new stable release of the
Nix package manager.  Release 1.6.1 can be found at




This is primarily a bug fix release. Changes of interest are:

  * Nix 1.6 accidentally changed the semantics of antiquoted paths in strings,
    such as "${/foo}/bar". This release reverts to the Nix 1.5.3 behaviour.

  * Previously, Nix optimised expressions such as "${expr}" to expr. Thus it
    neither checked whether expr could be coerced to a string, nor applied such
    coercions. This meant that "${123}" evaluatued to 123, and "${./foo}"
    evaluated to ./foo (even though "${./foo} " evaluates to
    "/nix/store/hash-foo "). Nix now checks the type of antiquoted expressions
    and applies coercions.

  * Nix now shows the exact position of undefined variables. In particular,
    undefined variable errors in a with previously didn't show any position
    information, so this makes it a lot easier to fix such errors.

  * Undefined variables are now treated consistently. Previously, the tryEval
    function would catch undefined variables inside a with but not outside. Now
    tryEval never catches undefined variables.

  * Bash completion in nix-shell now works correctly.

  * Stack traces are less verbose: they no longer show calls to builtin
    functions and only show a single line for each derivation on the call

  * New built-in function: builtins.typeOf, which returns the type of its
    argument as a string.

Eelco Dolstra | LogicBlox, Inc. | http://nixos.org/~eelco/

More information about the nix-dev mailing list