git-subtree-dir: third_party/nix
git-subtree-mainline: cf8cd640c1
git-subtree-split: be66c7a6b24e3c3c6157fd37b86c7203d14acf10
		
	
			
		
			
				
	
	
		
			141 lines
		
	
	
	
		
			4.9 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			141 lines
		
	
	
	
		
			4.9 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<section xmlns="http://docbook.org/ns/docbook"
 | 
						||
      xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
						||
      xmlns:xi="http://www.w3.org/2001/XInclude"
 | 
						||
      version="5.0"
 | 
						||
      xml:id="ssec-relnotes-1.11">
 | 
						||
 | 
						||
<title>Release 1.11 (2016-01-19)</title>
 | 
						||
 | 
						||
<para>This is primarily a bug fix release. It also has a number of new
 | 
						||
features:</para>
 | 
						||
 | 
						||
<itemizedlist>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para><command>nix-prefetch-url</command> can now download URLs
 | 
						||
    specified in a Nix expression. For example,
 | 
						||
 | 
						||
<screen>
 | 
						||
$ nix-prefetch-url -A hello.src
 | 
						||
</screen>
 | 
						||
 | 
						||
    will prefetch the file specified by the
 | 
						||
    <function>fetchurl</function> call in the attribute
 | 
						||
    <literal>hello.src</literal> from the Nix expression in the
 | 
						||
    current directory, and print the cryptographic hash of the
 | 
						||
    resulting file on stdout. This differs from <literal>nix-build -A
 | 
						||
    hello.src</literal> in that it doesn't verify the hash, and is
 | 
						||
    thus useful when you’re updating a Nix expression.</para>
 | 
						||
 | 
						||
    <para>You can also prefetch the result of functions that unpack a
 | 
						||
    tarball, such as <function>fetchFromGitHub</function>. For example:
 | 
						||
 | 
						||
<screen>
 | 
						||
$ nix-prefetch-url --unpack https://github.com/NixOS/patchelf/archive/0.8.tar.gz
 | 
						||
</screen>
 | 
						||
 | 
						||
    or from a Nix expression:
 | 
						||
 | 
						||
<screen>
 | 
						||
$ nix-prefetch-url -A nix-repl.src
 | 
						||
</screen>
 | 
						||
 | 
						||
    </para>
 | 
						||
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>The builtin function
 | 
						||
    <function><nix/fetchurl.nix></function> now supports
 | 
						||
    downloading and unpacking NARs. This removes the need to have
 | 
						||
    multiple downloads in the Nixpkgs stdenv bootstrap process (like a
 | 
						||
    separate busybox binary for Linux, or curl/mkdir/sh/bzip2 for
 | 
						||
    Darwin). Now all those files can be combined into a single NAR,
 | 
						||
    optionally compressed using <command>xz</command>.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Nix now supports SHA-512 hashes for verifying fixed-output
 | 
						||
    derivations, and in <function>builtins.hashString</function>.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>
 | 
						||
      The new flag <option>--option build-repeat
 | 
						||
      <replaceable>N</replaceable></option> will cause every build to
 | 
						||
      be executed <replaceable>N</replaceable>+1 times. If the build
 | 
						||
      output differs between any round, the build is rejected, and the
 | 
						||
      output paths are not registered as valid. This is primarily
 | 
						||
      useful to verify build determinism. (We already had a
 | 
						||
      <option>--check</option> option to repeat a previously succeeded
 | 
						||
      build. However, with <option>--check</option>, non-deterministic
 | 
						||
      builds are registered in the DB. Preventing that is useful for
 | 
						||
      Hydra to ensure that non-deterministic builds don't end up
 | 
						||
      getting published to the binary cache.)
 | 
						||
    </para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>
 | 
						||
      The options <option>--check</option> and <option>--option
 | 
						||
      build-repeat <replaceable>N</replaceable></option>, if they
 | 
						||
      detect a difference between two runs of the same derivation and
 | 
						||
      <option>-K</option> is given, will make the output of the other
 | 
						||
      run available under
 | 
						||
      <filename><replaceable>store-path</replaceable>-check</filename>. This
 | 
						||
      makes it easier to investigate the non-determinism using tools
 | 
						||
      like <command>diffoscope</command>, e.g.,
 | 
						||
 | 
						||
<screen>
 | 
						||
$ nix-build pkgs/stdenv/linux -A stage1.pkgs.zlib --check -K
 | 
						||
error: derivation ‘/nix/store/l54i8wlw2265…-zlib-1.2.8.drv’ may not
 | 
						||
be deterministic: output ‘/nix/store/11a27shh6n2i…-zlib-1.2.8’
 | 
						||
differs from ‘/nix/store/11a27shh6n2i…-zlib-1.2.8-check’
 | 
						||
 | 
						||
$ diffoscope /nix/store/11a27shh6n2i…-zlib-1.2.8 /nix/store/11a27shh6n2i…-zlib-1.2.8-check
 | 
						||
…
 | 
						||
├── lib/libz.a
 | 
						||
│   ├── metadata
 | 
						||
│   │ @@ -1,15 +1,15 @@
 | 
						||
│   │ -rw-r--r-- 30001/30000   3096 Jan 12 15:20 2016 adler32.o
 | 
						||
…
 | 
						||
│   │ +rw-r--r-- 30001/30000   3096 Jan 12 15:28 2016 adler32.o
 | 
						||
…
 | 
						||
</screen>
 | 
						||
 | 
						||
    </para></listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Improved FreeBSD support.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para><command>nix-env -qa --xml --meta</command> now prints
 | 
						||
    license information.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>The maximum number of parallel TCP connections that the
 | 
						||
    binary cache substituter will use has been decreased from 150 to
 | 
						||
    25. This should prevent upsetting some broken NAT routers, and
 | 
						||
    also improves performance.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>All "chroot"-containing strings got renamed to "sandbox".
 | 
						||
      In particular, some Nix options got renamed, but the old names
 | 
						||
      are still accepted as lower-priority aliases.
 | 
						||
    </para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
</itemizedlist>
 | 
						||
 | 
						||
<para>This release has contributions from Anders Claesson, Anthony
 | 
						||
Cowley, Bjørn Forsman, Brian McKenna, Danny Wilson, davidak, Eelco Dolstra,
 | 
						||
Fabian Schmitthenner, FrankHB, Ilya Novoselov, janus, Jim Garrison, John
 | 
						||
Ericson, Jude Taylor, Ludovic Courtès, Manuel Jacob, Mathnerd314,
 | 
						||
Pascal Wittmann, Peter Simons, Philip Potter, Preston Bennes, Rommel
 | 
						||
M. Martinez, Sander van der Burg, Shea Levy, Tim Cuthbertson, Tuomas
 | 
						||
Tynkkynen, Utku Demir and Vladimír Čunát.</para>
 | 
						||
 | 
						||
</section>
 |