diff --git a/doc/Makefile b/doc/Makefile
index 2167980234f..c21825e0dc1 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,3 +1,6 @@
+# You may need to override this.
+docbookxsl = $(HOME)/.nix-profile/xml/xsl/docbook
+
XMLLINT = xmllint --catalogs
XSLTPROC = xsltproc --catalogs \
--param section.autolabel 1 \
diff --git a/doc/release-notes.xml b/doc/release-notes.xml
index 6cf2c2bb596..53446a642dd 100644
--- a/doc/release-notes.xml
+++ b/doc/release-notes.xml
@@ -5,7 +5,7 @@
Nixpkgs Release Notes
-Release 0.11 (TBA)
+Release 0.11 (September 11, 2007)This release has the following improvements:
@@ -96,6 +96,56 @@ preConfigure = "configureFlagsArray=(\"CFLAGS=-O0 -g\")";
+ The function fetchurl now has
+ support for two different kinds of mirroring of files. First, it
+ has support for content-addressable mirrors.
+ For example, given the fetchurl call
+
+
+fetchurl {
+ url = http://releases.mozilla.org/.../firefox-2.0.0.6-source.tar.bz2;
+ sha1 = "eb72f55e4a8bf08e8c6ef227c0ade3d068ba1082";
+}
+
+ fetchurl will first try to download this file
+ from .
+ If that file doesn’t exist, it will try the original URL. In
+ general, the “content-addressed” location is
+ mirror/hash-type/hash.
+ There is currently only one content-addressable mirror (), but more can be
+ specified in the hashedMirrors attribute in
+ pkgs/build-support/fetchurl/mirrors.nix, or by
+ setting the NIX_HASHED_MIRRORS environment variable
+ to a whitespace-separated list of URLs.
+
+ Second, fetchurl has support for
+ widely-mirrored distribution sites such as SourceForge or the Linux
+ kernel archives. Given a URL of the form
+ mirror://site/path,
+ it will try to download path from a
+ configurable list of mirrors for site.
+ (This idea was borrowed from Gentoo Linux.) Example:
+
+fetchurl {
+ url = mirror://gnu/gcc/gcc-4.2.0/gcc-core-4.2.0.tar.bz2;
+ sha256 = "0ykhzxhr8857dr97z0j9wyybfz1kjr71xk457cfapfw5fjas4ny1";
+}
+ Currently site can be
+ sourceforge, gnu and
+ kernel. The list of mirrors is defined in
+ pkgs/build-support/fetchurl/mirrors.nix. You
+ can override the list of mirrors for a particular site by setting
+ the environment variable
+ NIX_MIRRORS_site, e.g.
+
+export NIX_MIRRORS_sourceforge=http://osdn.dl.sourceforge.net/sourceforge/
+
+
+
+
+
Important updates:
@@ -108,9 +158,11 @@ preConfigure = "configureFlagsArray=(\"CFLAGS=-O0 -g\")";
X11R7.2.
- Linux 2.6.20.11.
+ Linux 2.6.21.7 and 2.6.22.6.
- .
+ Emacs 22.1.
+
+
@@ -121,6 +173,10 @@ preConfigure = "configureFlagsArray=(\"CFLAGS=-O0 -g\")";
KDE 3.5.6 Base.
+ Wine 0.9.43.
+
+ OpenOffice 2.2.1.
+
Many Linux system packages to support
NixOS.
@@ -132,6 +188,21 @@ preConfigure = "configureFlagsArray=(\"CFLAGS=-O0 -g\")";
+The following people contributed to this release:
+
+ Andres Löh,
+ Arie Middelkoop,
+ Armijn Hemel,
+ Eelco Dolstra,
+ Marc Weber,
+ Mart Kolthof,
+ Martin Bravenboer,
+ Michael Raskin,
+ Wouter den Breejen and
+ Yury G. Kudryashov.
+
+
+
diff --git a/pkgs/applications/networking/browsers/w3m/default.nix b/pkgs/applications/networking/browsers/w3m/default.nix
index a49a0c5793a..640dffd0baa 100644
--- a/pkgs/applications/networking/browsers/w3m/default.nix
+++ b/pkgs/applications/networking/browsers/w3m/default.nix
@@ -8,11 +8,11 @@ assert sslSupport -> openssl != null;
assert graphicsSupport -> gdkpixbuf != null;
stdenv.mkDerivation {
- name = "w3m-0.5.1";
+ name = "w3m-0.5.2";
builder = ./builder.sh;
src = fetchurl {
- url = mirror://sourceforge/w3m/w3m-0.5.1.tar.gz;
- md5 = "0678b72e07e69c41709d71ef0fe5da13";
+ url = mirror://sourceforge/w3m/w3m-0.5.2.tar.gz;
+ md5 = "ba06992d3207666ed1bf2dcf7c72bf58";
};
inherit openssl boehmgc;
buildInputs = [
@@ -20,5 +20,5 @@ stdenv.mkDerivation {
(if sslSupport then openssl else null)
(if graphicsSupport then gdkpixbuf else null)
];
- patches = [./bsd.patch];
+ #patches = [./bsd.patch];
}
diff --git a/pkgs/lib/default.nix b/pkgs/lib/default.nix
index 9ee216f8272..a06090e76be 100644
--- a/pkgs/lib/default.nix
+++ b/pkgs/lib/default.nix
@@ -124,6 +124,7 @@ rec {
then []
else [first] ++ range (builtins.add first 1) last;
+
# Return true only if there is an attribute and it is true.
checkFlag = attrSet: name:
if (name == "true") then true else
@@ -131,9 +132,11 @@ rec {
if (isInList (getAttr ["flags"] [] attrSet) name) then true else
getAttr [name] false attrSet ;
+
logicalOR = x: y: x || y;
logicalAND = x: y: x && y;
+
# Input : attrSet, [ [name default] ... ], name
# Output : its value or default.
getValue = attrSet: argList: name:
@@ -145,6 +148,7 @@ rec {
else (getValue attrSet
(tail argList) name)) attrSet );
+
# Input : attrSet, [[name default] ...], [ [flagname reqs..] ... ]
# Output : are reqs satisfied? It's asserted.
checkReqs = attrSet : argList : condList :
@@ -163,7 +167,8 @@ rec {
if (list == []) then false else
if (x == (head list)) then true else
isInList (tail list) x;
-
+
+
uniqList = {inputList, outputList ? []}:
if (inputList == []) then outputList else
let x=head inputList;
@@ -172,6 +177,7 @@ rec {
in uniqList {outputList=newOutputList;
inputList = (tail inputList);};
+
condConcat = name: list: checker:
if list == [] then name else
if checker (head list) then
diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.22.nix b/pkgs/os-specific/linux/kernel/linux-2.6.22.nix
index f0048b44234..e4262719acc 100644
--- a/pkgs/os-specific/linux/kernel/linux-2.6.22.nix
+++ b/pkgs/os-specific/linux/kernel/linux-2.6.22.nix
@@ -24,7 +24,7 @@ let
lib = import ../../../lib;
- version = "2.6.22.1";
+ version = "2.6.22.6";
in
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
- sha256 = "1n8azbky36l27y6h44pp9abc7h3k3vp6f4y1pvrqgzmywxp6gakb";
+ sha256 = "18qwmcps0cxirn15427mv833pd3iw0kx7zmvvsi6zkqlmslj8i4i";
};
patches = map (p: p.patch) kernelPatches;