summary refs log tree commit diff
path: root/doc/release-notes.xml
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2006-10-27 09:42:01 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2006-10-27 09:42:01 +0000
commit35dfb5b43ea11a92ef0e421f452fea9c98e9d475 (patch)
treedc589ab75de51b0727dc55e171fdeb1652e4dd27 /doc/release-notes.xml
parent0e776c19d2f057670353384d79ba0df9631f67ab (diff)
downloadnixpkgs-35dfb5b43ea11a92ef0e421f452fea9c98e9d475.tar
nixpkgs-35dfb5b43ea11a92ef0e421f452fea9c98e9d475.tar.gz
nixpkgs-35dfb5b43ea11a92ef0e421f452fea9c98e9d475.tar.bz2
nixpkgs-35dfb5b43ea11a92ef0e421f452fea9c98e9d475.tar.lz
nixpkgs-35dfb5b43ea11a92ef0e421f452fea9c98e9d475.tar.xz
nixpkgs-35dfb5b43ea11a92ef0e421f452fea9c98e9d475.tar.zst
nixpkgs-35dfb5b43ea11a92ef0e421f452fea9c98e9d475.zip
* Release notes.
svn path=/nixpkgs/trunk/; revision=6871
Diffstat (limited to 'doc/release-notes.xml')
-rw-r--r--doc/release-notes.xml97
1 files changed, 97 insertions, 0 deletions
diff --git a/doc/release-notes.xml b/doc/release-notes.xml
index 0d119e17be1..be5682021df 100644
--- a/doc/release-notes.xml
+++ b/doc/release-notes.xml
@@ -5,6 +5,103 @@
 <title>Nixpkgs Release Notes</title>
 
 
+<section><title>Release 0.11 (TBA)</title>
+
+<para>This release has the following improvements:
+
+<itemizedlist>
+
+  <listitem><para>The standard build environment
+  (<literal>stdenv</literal>) is now pure on the
+  <literal>x86_64-linux</literal> and <literal>powerpc-linux</literal>
+  platforms, just like <literal>i686-linux</literal>.  (Purity means
+  that building and using the standard environment has no dependencies
+  outside of the Nix store.  For instance, it doesn’t require an
+  external C compiler such as <filename>/usr/bin/gcc</filename>.)
+  Also, the statically linked binaries used in the bootstrap process
+  are now automatically reproducible, making it easy to update the
+  bootstrap tools and to add support for other Linux platforms.  See
+  <filename>pkgs/stdenv/linux/make-bootstrap-tools.nix</filename> for
+  details.</para></listitem>
+
+  
+  <listitem><para>Hook variables in the generic builder are now
+  executed using the <function>eval</function> shell command.  This
+  has a major advantage: you can write hooks directly in Nix
+  expressions.  For instance, rather than write a builder like this:
+
+<programlisting>
+source $stdenv/setup
+
+postInstall=postInstall
+postInstall() {
+    ln -sf gzip $out/bin/gunzip
+    ln -sf gzip $out/bin/zcat
+}
+
+genericBuild</programlisting>
+
+  (the <literal>gzip</literal> builder), you can just add this
+  attribute to the derivation:
+
+<programlisting>
+postInstall = "ln -sf gzip $out/bin/gunzip; ln -sf gzip $out/bin/zcat";</programlisting>
+
+  and so a separate build script becomes unnecessary.  This should
+  allow us to get rid of most builders in Nixpkgs.</para></listitem>
+
+
+  <listitem><para>It is now possible to have the generic builder pass
+  arguments to <command>configure</command> and
+  <command>make</command> that contain whitespace.  Previously, for
+  example, you could say in a builder,
+
+<programlisting>
+configureFlags="CFLAGS=-O0"</programlisting>
+
+  but not
+
+<programlisting>
+configureFlags="CFLAGS=-O0 -g"</programlisting>
+
+  since the <literal>-g</literal> would be interpreted as a separate
+  argument to <command>configure</command>.  Now you can say
+
+<programlisting>
+configureFlagsArray=("CFLAGS=-O0 -g")</programlisting>
+
+  or similarly
+
+<programlisting>
+configureFlagsArray=("CFLAGS=-O0 -g" "LDFLAGS=-L/foo -L/bar")</programlisting>
+
+  which does the right thing.  Idem for <literal>makeFlags</literal>,
+  <literal>installFlags</literal>, <literal>checkFlags</literal> and
+  <literal>distFlags</literal>.</para>
+
+  <para>Unfortunately you can't pass arrays to Bash through the
+  environment, so you can't put the array above in a Nix expression,
+  e.g.,
+
+<programlisting>
+configureFlagsArray = ["CFLAGS=-O0 -g"];</programlisting>
+
+  since it would just be flattened to a since string.  However, you
+  <emphasis>can</emphasis> use the inline hooks described above:
+
+<programlisting>
+preConfigure = "configureFlagsArray=(\"CFLAGS=-O0 -g\")";</programlisting>
+
+  </para></listitem>
+
+
+</itemizedlist>
+
+</para>
+
+</section>
+
+
 <section><title>Release 0.10 (October 12, 2006)</title>
 
 <note><para>This release of Nixpkgs requires <link