forked from lix-project/lix
Update release notes for 1.7
This commit is contained in:
parent
25386e5edc
commit
e9934bb5ad
|
@ -9,26 +9,228 @@
|
||||||
|
|
||||||
<section xml:id="ssec-relnotes-1.7"><title>Release 1.7 (TBA)</title>
|
<section xml:id="ssec-relnotes-1.7"><title>Release 1.7 (TBA)</title>
|
||||||
|
|
||||||
<para>This release has the following changes:</para>
|
<para>In addition to the usual bug fixes, this release has the
|
||||||
|
following new features:</para>
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Antiquotation is now allowed inside of quoted attribute
|
||||||
|
names (e.g. <literal>set."${foo}"</literal>). In the case where
|
||||||
|
the attribute name is just a single antiquotation, the quotes can
|
||||||
|
be dropped (e.g. the above example can be written
|
||||||
|
<literal>set.${foo}</literal>). If an attribute name inside of a
|
||||||
|
set declaration evaluates to <literal>null</literal> (e.g.
|
||||||
|
<literal>{ ${null} = false; }</literal>), then that attribute is
|
||||||
|
not added to the set.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Experimental support for cryptographically signed binary
|
||||||
|
caches. See <link
|
||||||
|
xlink:href="https://github.com/NixOS/nix/commit/0fdf4da0e979f992db75cc17376e455ddc5a96d8">the
|
||||||
|
commit for details</link>.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>An experimental new substituter,
|
||||||
|
<command>download-via-ssh</command>, that fetches binaries from
|
||||||
|
remote machines via SSH. Specifying the flags <literal>--option
|
||||||
|
use-ssh-substituter true --option ssh-substituter-hosts
|
||||||
|
<replaceable>user@hostname</replaceable></literal> will cause Nix
|
||||||
|
to download binaries from the specified machine, if it has
|
||||||
|
them.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para><command>nix-store -r</command> and
|
||||||
|
<command>nix-build</command> have a new flag,
|
||||||
|
<option>--check</option>, that builds a previously built
|
||||||
|
derivation again, and prints an error message if the output is not
|
||||||
|
exactly the same. This helps to verify whether a derivation is
|
||||||
|
truly deterministic. For example:
|
||||||
|
|
||||||
|
<screen>
|
||||||
|
$ nix-build '<nixpkgs>' -A patchelf
|
||||||
|
<replaceable>…</replaceable>
|
||||||
|
$ nix-build '<nixpkgs>' -A patchelf --check
|
||||||
|
<replaceable>…</replaceable>
|
||||||
|
error: derivation `/nix/store/1ipvxs…-patchelf-0.6' may not be deterministic:
|
||||||
|
hash mismatch in output `/nix/store/4pc1dm…-patchelf-0.6.drv'
|
||||||
|
</screen>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>The <command>nix-instantiate</command> flags
|
||||||
|
<option>--eval-only</option> and <option>--parse-only</option>
|
||||||
|
have been renamed to <option>--eval</option> and
|
||||||
|
<option>--parse</option>, respectively.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para><command>nix-instantiate</command>,
|
||||||
|
<command>nix-build</command> and <command>nix-shell</command> now
|
||||||
|
have a flag <option>--expr</option> (or <option>-E</option>) that
|
||||||
|
allows you to specify the expression to be evaluated as a command
|
||||||
|
line argument. For instance, <literal>nix-instantiate --eval -E
|
||||||
|
'1 + 2'</literal> will print <literal>3</literal>.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para><command>nix-shell</command> improvements:</para>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>It has a new flag, <option>--packages</option> (or
|
||||||
|
<option>-p</option>), that sets up a build environment
|
||||||
|
containing the specified packages from Nixpkgs. For example,
|
||||||
|
the command
|
||||||
|
|
||||||
|
<screen>
|
||||||
|
$ nix-shell -p sqlite xorg.libX11 hello
|
||||||
|
</screen>
|
||||||
|
|
||||||
|
will start a shell in which the given packages are
|
||||||
|
present.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>It now uses <filename>shell.nix</filename> as the
|
||||||
|
default expression, falling back to
|
||||||
|
<filename>default.nix</filename> if the former doesn’t
|
||||||
|
exist. This makes it convenient to have a
|
||||||
|
<filename>shell.nix</filename> in your project to set up a
|
||||||
|
nice development environment.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>It evaluates the derivation attribute
|
||||||
|
<varname>shellHook</varname>, if set. Since
|
||||||
|
<literal>stdenv</literal> does not normally execute this hook,
|
||||||
|
it allows you to do <command>nix-shell</command>-specific
|
||||||
|
setup.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>It preserves the user’s timezone setting.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>In chroots, Nix now sets up a <filename>/dev</filename>
|
||||||
|
containing only a minimal set of devices (such as
|
||||||
|
<filename>/dev/null</filename>). Note that it only does this if
|
||||||
|
you <emphasis>don’t</emphasis> have <filename>/dev</filename>
|
||||||
|
listed in your <option>build-chroot-dirs</option> setting;
|
||||||
|
otherwise, it will bind-mount the <literal>/dev</literal> from
|
||||||
|
outside the chroot.</para>
|
||||||
|
|
||||||
|
<para>Similarly, if you don’t have <filename>/dev/pts</filename> listed
|
||||||
|
in <option>build-chroot-dirs</option>, Nix will mount a private
|
||||||
|
<literal>devpts</literal> filesystem on the chroot’s
|
||||||
|
<filename>/dev/pts</filename>.</para>
|
||||||
|
|
||||||
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>New built-in function: <function>builtins.toJSON</function>,
|
<para>New built-in function: <function>builtins.toJSON</function>,
|
||||||
which returns a JSON representation of a value.</para>
|
which returns a JSON representation of a value.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem><para><command>nix-setuid-helper</command> is
|
<listitem>
|
||||||
gone.</para></listitem>
|
<para><command>nix-env -q</command> has a new flag
|
||||||
|
<option>--json</option> to print a JSON representation of the
|
||||||
|
installed or available packages.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
<listitem><para>Now antiquotation is allowed inside of quoted
|
<listitem>
|
||||||
attribute names (e.g. <literal>set."${foo}"</literal>). In the
|
<para><command>nix-env</command> now supports meta attributes with
|
||||||
case where the attribute name is just a single antiquotation,
|
more complex values, such as attribute sets.</para>
|
||||||
the quotes can be dropped (e.g. the above example can be written
|
</listitem>
|
||||||
<literal>set.${foo}</literal>). If an attribute name inside of a
|
|
||||||
set declaration evaluates to <literal>null</literal> (e.g.
|
<listitem>
|
||||||
<literal>{ ${null} = false; }</literal>), then that attribute is not
|
<para>The <option>-A</option> flag now allows attribute names with
|
||||||
added to the set.</para></listitem>
|
dots in them, e.g.
|
||||||
|
|
||||||
|
<screen>
|
||||||
|
$ nix-instantiate --eval '<nixos>' -A 'config.systemd.units."nscd.service".text'
|
||||||
|
</screen>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>The <option>--max-freed</option> option to
|
||||||
|
<command>nix-store --gc</command> now accepts a unit
|
||||||
|
specifier. For example, <literal>nix-store --gc --max-freed
|
||||||
|
1G</literal> will free up to 1 gigabyte of disk space.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Nix now heuristically detects whether a build failure was
|
||||||
|
due to a disk-full condition. In that case, the build is not
|
||||||
|
flagged as “permanently failed”. This is mostly useful for Hydra,
|
||||||
|
which needs to distinguish between permanent and transient build
|
||||||
|
failures.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>There is a new symbol <literal>__curPos</literal> that
|
||||||
|
expands to an attribute set containing its file name and line and
|
||||||
|
column numbers, e.g. <literal>{ file = "foo.nix"; line = 10;
|
||||||
|
column = 5; }</literal>. There also is a new builtin function,
|
||||||
|
<varname>unsafeGetAttrPos</varname>, that returns the position of
|
||||||
|
an attribute. This is used by Nixpkgs to provide location
|
||||||
|
information in error messages, e.g.
|
||||||
|
|
||||||
|
<screen>
|
||||||
|
$ nix-build '<nixpkgs>' -A libreoffice --argstr system x86_64-darwin
|
||||||
|
error: the package ‘libreoffice-4.0.5.2’ in ‘.../applications/office/libreoffice/default.nix:263’
|
||||||
|
is not supported on ‘x86_64-darwin’
|
||||||
|
</screen>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>The garbage collector is now more concurrent with other Nix
|
||||||
|
processes because it releases certain locks earlier.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>The binary tarball installer has been improved. You can now
|
||||||
|
install Nix by running:
|
||||||
|
|
||||||
|
<screen>
|
||||||
|
$ bash <(curl https://nixos.org/nix/install)
|
||||||
|
</screen>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>The command <command>nix-setuid-helper</command> is
|
||||||
|
gone.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Nix no longer uses Automake, but instead has a
|
||||||
|
non-recursive, GNU Make-based build system.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>All installed libraries now have the prefix
|
||||||
|
<literal>libnix</literal>. In particular, this gets rid of
|
||||||
|
<literal>libutil</literal>, which could clash with libraries with
|
||||||
|
the same name from other packages.</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
|
@ -606,7 +808,7 @@ Friesdorf, Mats Erik Andersson and Shea Levy.</para>
|
||||||
<para>When using the Nix daemon, the <option>-s</option> flag in
|
<para>When using the Nix daemon, the <option>-s</option> flag in
|
||||||
<command>nix-env -qa</command> is now much faster.</para>
|
<command>nix-env -qa</command> is now much faster.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
|
@ -636,7 +838,7 @@ previous release. Here are the most significant:</para>
|
||||||
<filename>/nix/var/nix/manifests</filename>, resulting in a
|
<filename>/nix/var/nix/manifests</filename>, resulting in a
|
||||||
significant speedup.</para>
|
significant speedup.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Nix now has an search path for expressions. The search path
|
<para>Nix now has an search path for expressions. The search path
|
||||||
is set using the environment variable <envar>NIX_PATH</envar> and
|
is set using the environment variable <envar>NIX_PATH</envar> and
|
||||||
|
@ -673,7 +875,7 @@ previous release. Here are the most significant:</para>
|
||||||
you can write <literal>{ "foo-1.2" = …; "bla bla" = …; }."bla
|
you can write <literal>{ "foo-1.2" = …; "bla bla" = …; }."bla
|
||||||
bla"</literal>.</para>
|
bla"</literal>.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Attribute selection can now provide a default value using
|
<para>Attribute selection can now provide a default value using
|
||||||
the <literal>or</literal> operator. For instance, the expression
|
the <literal>or</literal> operator. For instance, the expression
|
||||||
|
@ -872,7 +1074,7 @@ features:</para>
|
||||||
</programlisting>
|
</programlisting>
|
||||||
|
|
||||||
This is useful, for instance, in NixOS configuration files.</para>
|
This is useful, for instance, in NixOS configuration files.</para>
|
||||||
|
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -889,7 +1091,7 @@ features:</para>
|
||||||
which causes <command>uname</command> to return
|
which causes <command>uname</command> to return
|
||||||
<literal>i686</literal> in child processes.</para>
|
<literal>i686</literal> in child processes.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Various improvements to the <literal>chroot</literal>
|
<para>Various improvements to the <literal>chroot</literal>
|
||||||
support. Building in a <literal>chroot</literal> works quite well
|
support. Building in a <literal>chroot</literal> works quite well
|
||||||
|
@ -906,12 +1108,12 @@ features:</para>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Support for large (> 4 GiB) files in NAR archives.</para>
|
<para>Support for large (> 4 GiB) files in NAR archives.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Various (performance) improvements to the remote build
|
<para>Various (performance) improvements to the remote build
|
||||||
mechanism.</para>
|
mechanism.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>New primops: <varname>builtins.addErrorContext</varname> (to
|
<para>New primops: <varname>builtins.addErrorContext</varname> (to
|
||||||
add a string to stack traces — useful for debugging),
|
add a string to stack traces — useful for debugging),
|
||||||
|
@ -1050,8 +1252,8 @@ the following derivations will be built:
|
||||||
the following paths will be downloaded/copied (30.02 MiB):
|
the following paths will be downloaded/copied (30.02 MiB):
|
||||||
/nix/store/4m8pvgy2dcjgppf5b4cj5l6wyshjhalj-samba-3.2.4
|
/nix/store/4m8pvgy2dcjgppf5b4cj5l6wyshjhalj-samba-3.2.4
|
||||||
/nix/store/7h1kwcj29ip8vk26rhmx6bfjraxp0g4l-libunwind-0.98.6
|
/nix/store/7h1kwcj29ip8vk26rhmx6bfjraxp0g4l-libunwind-0.98.6
|
||||||
...</screen>
|
...</screen>
|
||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
<listitem><para>Language features:
|
<listitem><para>Language features:
|
||||||
|
@ -1091,7 +1293,7 @@ the following paths will be downloaded/copied (30.02 MiB):
|
||||||
division).
|
division).
|
||||||
<!-- <varname>builtins.genericClosure</varname> -->
|
<!-- <varname>builtins.genericClosure</varname> -->
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
@ -1162,7 +1364,7 @@ on Nix. Here is an (incomplete) list:</para>
|
||||||
<literal>nix-env -p /nix/var/nix/profiles/browser --set
|
<literal>nix-env -p /nix/var/nix/profiles/browser --set
|
||||||
firefox</literal> lets the profile named
|
firefox</literal> lets the profile named
|
||||||
<filename>browser</filename> contain just Firefox.</para></listitem>
|
<filename>browser</filename> contain just Firefox.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para><command>nix-env</command> now maintains
|
<listitem><para><command>nix-env</command> now maintains
|
||||||
meta-information about installed packages in profiles. The
|
meta-information about installed packages in profiles. The
|
||||||
|
@ -1171,7 +1373,7 @@ on Nix. Here is an (incomplete) list:</para>
|
||||||
<varname>homepage</varname>. The command <literal>nix-env -q --xml
|
<varname>homepage</varname>. The command <literal>nix-env -q --xml
|
||||||
--meta</literal> shows all meta-information.</para></listitem>
|
--meta</literal> shows all meta-information.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para><command>nix-env</command> now uses the
|
<listitem><para><command>nix-env</command> now uses the
|
||||||
<varname>meta.priority</varname> attribute of derivations to resolve
|
<varname>meta.priority</varname> attribute of derivations to resolve
|
||||||
filename collisions between packages. Lower priority values denote
|
filename collisions between packages. Lower priority values denote
|
||||||
|
@ -1227,7 +1429,7 @@ on Nix. Here is an (incomplete) list:</para>
|
||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para><command>nix-env -q</command> now has a flag
|
<listitem><para><command>nix-env -q</command> now has a flag
|
||||||
<option>--prebuilt-only</option> (<option>-b</option>) that causes
|
<option>--prebuilt-only</option> (<option>-b</option>) that causes
|
||||||
<command>nix-env</command> to show only those derivations whose
|
<command>nix-env</command> to show only those derivations whose
|
||||||
|
@ -1238,7 +1440,7 @@ on Nix. Here is an (incomplete) list:</para>
|
||||||
<command>nix-env -i</command> and <command>nix-env -u</command> to
|
<command>nix-env -i</command> and <command>nix-env -u</command> to
|
||||||
filter out derivations for which no pre-built binary is
|
filter out derivations for which no pre-built binary is
|
||||||
available.</para></listitem>
|
available.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>The new option <option>--argstr</option> (in
|
<listitem><para>The new option <option>--argstr</option> (in
|
||||||
<command>nix-env</command>, <command>nix-instantiate</command> and
|
<command>nix-env</command>, <command>nix-instantiate</command> and
|
||||||
|
@ -1254,7 +1456,7 @@ on Nix. Here is an (incomplete) list:</para>
|
||||||
<parameter>paths</parameter> that shows the build log of the given
|
<parameter>paths</parameter> that shows the build log of the given
|
||||||
paths.</para></listitem>
|
paths.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
<listitem><para>TODO: semantic cleanups of string concatenation
|
<listitem><para>TODO: semantic cleanups of string concatenation
|
||||||
etc. (mostly in r6740).</para></listitem>
|
etc. (mostly in r6740).</para></listitem>
|
||||||
|
@ -1312,12 +1514,12 @@ on Nix. Here is an (incomplete) list:</para>
|
||||||
<literal>md5</literal>. You can pass either a hexadecimal or a
|
<literal>md5</literal>. You can pass either a hexadecimal or a
|
||||||
base-32 encoding of the hash.</para></listitem>
|
base-32 encoding of the hash.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>Nix can now perform builds in an automatically
|
<listitem><para>Nix can now perform builds in an automatically
|
||||||
generated “chroot”. This prevents a builder from accessing stuff
|
generated “chroot”. This prevents a builder from accessing stuff
|
||||||
outside of the Nix store, and thus helps ensure purity. This is an
|
outside of the Nix store, and thus helps ensure purity. This is an
|
||||||
experimental feature.</para></listitem>
|
experimental feature.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>The new command <command>nix-store
|
<listitem><para>The new command <command>nix-store
|
||||||
--optimise</command> reduces Nix store disk space usage by finding
|
--optimise</command> reduces Nix store disk space usage by finding
|
||||||
|
@ -1325,7 +1527,7 @@ on Nix. Here is an (incomplete) list:</para>
|
||||||
It typically reduces the size of the store by something like
|
It typically reduces the size of the store by something like
|
||||||
25-35%.</para></listitem>
|
25-35%.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para><filename>~/.nix-defexpr</filename> can now be a
|
<listitem><para><filename>~/.nix-defexpr</filename> can now be a
|
||||||
directory, in which case the Nix expressions in that directory are
|
directory, in which case the Nix expressions in that directory are
|
||||||
combined into an attribute set, with the file names used as the
|
combined into an attribute set, with the file names used as the
|
||||||
|
@ -1411,10 +1613,10 @@ irreversible.</para></warning>
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
|
||||||
|
|
||||||
<!-- Usability / features -->
|
<!-- Usability / features -->
|
||||||
|
|
||||||
|
|
||||||
<listitem><para><command>nix-env</command> usability improvements:
|
<listitem><para><command>nix-env</command> usability improvements:
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
@ -1450,9 +1652,9 @@ irreversible.</para></warning>
|
||||||
most packages in Nixpkgs don’t have yet).</para></listitem>
|
most packages in Nixpkgs don’t have yet).</para></listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>New language features:
|
<listitem><para>New language features:
|
||||||
|
|
||||||
|
@ -1475,7 +1677,7 @@ irreversible.</para></warning>
|
||||||
You can write arbitrary expressions within
|
You can write arbitrary expressions within
|
||||||
<literal>${<replaceable>...</replaceable>}</literal>, not just
|
<literal>${<replaceable>...</replaceable>}</literal>, not just
|
||||||
identifiers.</para></listitem>
|
identifiers.</para></listitem>
|
||||||
|
|
||||||
<listitem><para>Multi-line string literals.</para></listitem>
|
<listitem><para>Multi-line string literals.</para></listitem>
|
||||||
|
|
||||||
<listitem><para>String concatenations can now involve
|
<listitem><para>String concatenations can now involve
|
||||||
|
@ -1517,7 +1719,7 @@ irreversible.</para></warning>
|
||||||
Very convenient whenever you have some package on your machine and
|
Very convenient whenever you have some package on your machine and
|
||||||
you want to copy it somewhere else.</para></listitem>
|
you want to copy it somewhere else.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>XML support:
|
<listitem><para>XML support:
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
@ -1540,7 +1742,7 @@ irreversible.</para></warning>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>You can now unambiguously specify which derivation to
|
<listitem><para>You can now unambiguously specify which derivation to
|
||||||
build or install in <command>nix-env</command>,
|
build or install in <command>nix-env</command>,
|
||||||
|
@ -1554,7 +1756,7 @@ irreversible.</para></warning>
|
||||||
<replaceable>foo</replaceable></literal>. <literal>nix-env -q
|
<replaceable>foo</replaceable></literal>. <literal>nix-env -q
|
||||||
--attr</literal> shows the attribute names corresponding to each
|
--attr</literal> shows the attribute names corresponding to each
|
||||||
derivation.</para></listitem>
|
derivation.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>If the top-level Nix expression used by
|
<listitem><para>If the top-level Nix expression used by
|
||||||
<command>nix-env</command>, <command>nix-instantiate</command> or
|
<command>nix-env</command>, <command>nix-instantiate</command> or
|
||||||
|
@ -1565,7 +1767,7 @@ irreversible.</para></warning>
|
||||||
<replaceable>value</replaceable></option> can be used to specify
|
<replaceable>value</replaceable></option> can be used to specify
|
||||||
function arguments on the command line.</para></listitem>
|
function arguments on the command line.</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para><literal>nix-install-package --url
|
<listitem><para><literal>nix-install-package --url
|
||||||
<replaceable>URL</replaceable></literal> allows a package to be
|
<replaceable>URL</replaceable></literal> allows a package to be
|
||||||
installed directly from the given URL.</para></listitem>
|
installed directly from the given URL.</para></listitem>
|
||||||
|
@ -1611,7 +1813,7 @@ irreversible.</para></warning>
|
||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>Garbage collector improvements:
|
<listitem><para>Garbage collector improvements:
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
@ -1643,12 +1845,12 @@ irreversible.</para></warning>
|
||||||
from the Nix store. It won’t delete reachable (non-garbage)
|
from the Nix store. It won’t delete reachable (non-garbage)
|
||||||
paths unless <option>--ignore-liveness</option> is
|
paths unless <option>--ignore-liveness</option> is
|
||||||
specified.</para></listitem>
|
specified.</para></listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
|
|
||||||
<listitem><para>Berkeley DB 4.4’s process registry feature is used
|
<listitem><para>Berkeley DB 4.4’s process registry feature is used
|
||||||
to recover from crashed Nix processes.</para></listitem>
|
to recover from crashed Nix processes.</para></listitem>
|
||||||
|
|
||||||
|
@ -1814,7 +2016,7 @@ svnService = derivation {
|
||||||
};</programlisting>
|
};</programlisting>
|
||||||
|
|
||||||
Previously, this would yield a black hole (infinite recursion).</para>
|
Previously, this would yield a black hole (infinite recursion).</para>
|
||||||
|
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem><para><command>nix-build</command> now defaults to using
|
<listitem><para><command>nix-build</command> now defaults to using
|
||||||
|
@ -1956,7 +2158,7 @@ $ nix-store -q --referrers-closure \
|
||||||
/nix/store/8lz9yc6zgmc0vlqmn2ipcpkjlmbi51vv-glibc-2.3.4</screen>
|
/nix/store/8lz9yc6zgmc0vlqmn2ipcpkjlmbi51vv-glibc-2.3.4</screen>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem><para>The concept of fixed-output derivations has been
|
<listitem><para>The concept of fixed-output derivations has been
|
||||||
|
@ -2220,7 +2422,7 @@ $ nix-env -f .../i686-linux.nix -i -E 'x: x.firefoxWrapper'</screen>
|
||||||
columnised).</para></listitem>
|
columnised).</para></listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
</listitem>
|
</listitem>
|
||||||
|
@ -2234,7 +2436,7 @@ $ nix-env -f .../i686-linux.nix -i -E 'x: x.firefoxWrapper'</screen>
|
||||||
<para>Nix expression language changes:
|
<para>Nix expression language changes:
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
|
||||||
<listitem><para>New language construct: <literal>with
|
<listitem><para>New language construct: <literal>with
|
||||||
<replaceable>E1</replaceable>;
|
<replaceable>E1</replaceable>;
|
||||||
<replaceable>E2</replaceable></literal> brings all attributes
|
<replaceable>E2</replaceable></literal> brings all attributes
|
||||||
|
|
Loading…
Reference in a new issue