summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/networking/newsreaders/liferea/default.nix12
-rw-r--r--pkgs/applications/networking/sync/rsync/default.nix6
-rw-r--r--pkgs/applications/window-managers/windowlab/default.nix34
-rw-r--r--pkgs/development/compilers/arachne-pnr/default.nix35
-rw-r--r--pkgs/development/compilers/julia/default.nix4
-rw-r--r--pkgs/development/compilers/yosys/default.nix50
-rw-r--r--pkgs/development/interpreters/perl/5.20/default.nix2
-rw-r--r--pkgs/development/interpreters/perl/5.20/no-libutil.patch12
-rw-r--r--pkgs/development/interpreters/perl/5.22/default.nix2
-rw-r--r--pkgs/development/interpreters/perl/5.22/no-libutil.patch14
-rw-r--r--pkgs/development/interpreters/regina/default.nix55
-rw-r--r--pkgs/development/libraries/allegro/5-unstable.nix81
-rw-r--r--pkgs/development/libraries/allegro/5-unstable.upstream7
-rw-r--r--pkgs/development/libraries/allegro/5.nix69
-rw-r--r--pkgs/development/libraries/allegro/5.upstream7
-rw-r--r--pkgs/development/libraries/allegro/default.nix75
-rw-r--r--pkgs/development/libraries/box2d/default.nix66
-rw-r--r--pkgs/development/libraries/cgui/default.nix65
-rw-r--r--pkgs/development/libraries/hawknl/default.nix11
-rw-r--r--pkgs/development/libraries/libpng/12.nix4
-rw-r--r--pkgs/development/libraries/ois/default.nix83
-rw-r--r--pkgs/development/libraries/openscenegraph/default.nix76
-rw-r--r--pkgs/development/libraries/unicap/default.nix70
-rw-r--r--pkgs/development/tools/icestorm/default.nix31
-rw-r--r--pkgs/games/super-tux/default.nix16
-rw-r--r--pkgs/tools/compression/lz4/default.nix2
-rw-r--r--pkgs/tools/system/vbetool/default.nix43
-rw-r--r--pkgs/tools/system/vbetool/src-for-default.nix9
-rw-r--r--pkgs/tools/system/vbetool/src-info-for-default.nix4
-rw-r--r--pkgs/top-level/all-packages.nix14
-rw-r--r--pkgs/top-level/emacs-packages.nix15
31 files changed, 419 insertions, 555 deletions
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index def45c7e7565..7c148e3de41f 100644
--- a/pkgs/applications/networking/newsreaders/liferea/default.nix
+++ b/pkgs/applications/networking/newsreaders/liferea/default.nix
@@ -6,14 +6,14 @@
 }:
 
 let pname = "liferea";
-    version = "1.10.16";
+    version = "1.10.17";
 in
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${name}.tar.bz2";
-    sha256 = "0b8cvlyiamc4hwjcxzs0h3mk3gxnmnwyi79mjv36601xgfjs5f9j";
+    sha256 = "0svgl50w3hai31n5sm42sl0cd86c32cka0xzfy4r8gi0lyjdjxyx";
   };
 
   buildInputs = with gst_all_1; [
@@ -37,12 +37,12 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A GTK-based news feed agregator";
     homepage = http://lzone.de/liferea/;
-    license = stdenv.lib.licenses.gpl2Plus;
-    maintainers = with stdenv.lib.maintainers; [ vcunat romildo ];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ vcunat romildo ];
+    platforms = platforms.linux;
 
     longDescription = ''
       Liferea (Linux Feed Reader) is an RSS/RDF feed reader.
diff --git a/pkgs/applications/networking/sync/rsync/default.nix b/pkgs/applications/networking/sync/rsync/default.nix
index 5e09beb4c476..c13bb1b329df 100644
--- a/pkgs/applications/networking/sync/rsync/default.nix
+++ b/pkgs/applications/networking/sync/rsync/default.nix
@@ -7,18 +7,18 @@ assert enableACLs -> acl != null;
 
 stdenv.mkDerivation rec {
   name = "rsync-${version}";
-  version = "3.1.1";
+  version = "3.1.2";
 
   mainSrc = fetchurl {
     # signed with key 0048 C8B0 26D4 C96F 0E58  9C2F 6C85 9FB1 4B96 A8C5
     url = "mirror://samba/rsync/src/rsync-${version}.tar.gz";
-    sha256 = "0896iah6w72q5izpxgkai75bn40dqkqifi2ivcxjzr2zrx7kdr3x";
+    sha256 = "1hm1q04hz15509f0p9bflw4d6jzfvpm1d36dxjwihk1wzakn5ypc";
   };
 
   patchesSrc = fetchurl {
     # signed with key 0048 C8B0 26D4 C96F 0E58  9C2F 6C85 9FB1 4B96 A8C5
     url = "mirror://samba/rsync/rsync-patches-${version}.tar.gz";
-    sha256 = "0iij996xbyn20yr4w3kv3rw3cx4jwkg2k85x6w5hb5xlgsis8zjl";
+    sha256 = "09i3dcl37p22dp75vlnsvx7bm05ggafnrf1zwhf2kbij4ngvxvpd";
   };
 
   srcs = [mainSrc] ++ stdenv.lib.optional enableCopyDevicesPatch patchesSrc;
diff --git a/pkgs/applications/window-managers/windowlab/default.nix b/pkgs/applications/window-managers/windowlab/default.nix
new file mode 100644
index 000000000000..39865c4b3e7d
--- /dev/null
+++ b/pkgs/applications/window-managers/windowlab/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchurl, pkgconfig
+, libX11, libXext, libXft }:
+
+let version = "1.40"; in
+stdenv.mkDerivation {
+  name = "windowlab-${version}";
+
+  src = fetchurl {
+    url = "http://nickgravgaard.com/windowlab/windowlab-${version}.tar";
+    sha256 = "1fx4jwq4s98p2wpvawsiww7d6568bpjgcjpks61dzfj8p2j32s4d";
+  };
+
+  buildInputs = [ pkgconfig libX11 libXext libXft ];
+
+  postPatch =
+    ''
+      mv Makefile Makefile.orig
+      echo \
+         "
+          DEFINES += -DXFT
+          EXTRA_INC += $(pkg-config --cflags xft)
+          EXTRA_LIBS += $(pkg-config --libs xft)
+         " > Makefile
+      sed "s|/usr/local|$out|g" Makefile.orig >> Makefile
+    '';
+
+  meta = with stdenv.lib;
+    { description = "Small and simple stacking window manager";
+      homepage    = "http://nickgravgaard.com/windowlab/";
+      license     = licenses.gpl2;
+      maintainers = with maintainers; [ ehmry ];
+      platforms   = platforms.linux;
+    };
+}
\ No newline at end of file
diff --git a/pkgs/development/compilers/arachne-pnr/default.nix b/pkgs/development/compilers/arachne-pnr/default.nix
new file mode 100644
index 000000000000..7926bf273acb
--- /dev/null
+++ b/pkgs/development/compilers/arachne-pnr/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub, icestorm }:
+
+stdenv.mkDerivation rec {
+  name = "arachne-pnr-${version}";
+  version = "2015.12.29";
+
+  src = fetchFromGitHub {
+    owner = "cseed";
+    repo = "arachne-pnr";
+    rev = "1a4fdf96a7fd08806c032d41a2443c8e17c72c80";
+    sha256 = "1dj7ycffwkmlsh12117fbybkdfnlhxbbxkbfgwfyvcgmg3cacgl1";
+  };
+
+  preBuild = ''
+    makeFlags="DESTDIR=$out $makeFlags"
+  '';
+  makeFlags = "ICEBOX=${icestorm}/share/icebox";
+
+  meta = {
+    description = "Place and route tool for FPGAs";
+    longDescription = ''
+      Arachne-pnr implements the place and route step of
+      the hardware compilation process for FPGAs. It
+      accepts as input a technology-mapped netlist in BLIF
+      format, as output by the Yosys [0] synthesis suite
+      for example. It currently targets the Lattice
+      Semiconductor iCE40 family of FPGAs [1]. Its output
+      is a textual bitstream representation for assembly by
+      the IceStorm [2] icepack command.
+    '';
+    homepage = https://github.com/cseed/arachne-pnr;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.shell ];
+  };
+}
diff --git a/pkgs/development/compilers/julia/default.nix b/pkgs/development/compilers/julia/default.nix
index 81781868b02a..0eddde15a58e 100644
--- a/pkgs/development/compilers/julia/default.nix
+++ b/pkgs/development/compilers/julia/default.nix
@@ -28,10 +28,10 @@ let
     sha256 = "03kaqbjbi6viz0n33dk5jlf6ayxqlsq4804n7kwkndiga9s4hd42";
   };
 
-  libuvVersion = "28f5f06b5ff6f010d666ec26552e0badaca5cdcd";
+  libuvVersion = "9ab431a88fe255dd21e19a11f7fa2dd95774abf4";
   libuv = fetchurl {
     url = "https://api.github.com/repos/JuliaLang/libuv/tarball/${libuvVersion}";
-    sha256 = "1ksns0aiayxmxffvq2kc96904mxlmbkfc30xxck69xnidr2jvr4a";
+    sha256 = "1bh973lbrzrjk7pcjbjnh4n92qldi81ql3aqsclywn2yg07a36h5";
   };
 
   rmathVersion = "0.1";
diff --git a/pkgs/development/compilers/yosys/default.nix b/pkgs/development/compilers/yosys/default.nix
new file mode 100644
index 000000000000..cfaabb0a71a9
--- /dev/null
+++ b/pkgs/development/compilers/yosys/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, fetchFromGitHub, fetchFromBitbucket, pkgconfig, tcl, readline, libffi, python3, bison, flex }:
+
+stdenv.mkDerivation rec {
+  name = "yosys-${version}";
+  version = "2015.12.29";
+
+  srcs = [
+    (fetchFromGitHub {
+      owner = "cliffordwolf";
+      repo = "yosys";
+      rev = "1d62f8710f04fec405ef79b9e9a4a031afcf7d42";
+      sha256 = "0q1dk9in3gmrihb58pjckncx56lj7y4b6y34jgb68f0fh91fdvfx";
+      name = "yosys";
+    })
+    (fetchFromBitbucket {
+      owner = "alanmi";
+      repo = "abc";
+      rev = "c3698e053a7a";
+      sha256 = "05p0fvbr7xvb6w3d7j2r6gynr3ljb6r5q6jvn2zs3ysn2b003qwd";
+      name = "abc";
+    })
+  ];
+  sourceRoot = "yosys";
+
+  buildInputs = [ pkgconfig tcl readline libffi python3 bison flex ];
+  preBuild = ''
+    chmod -R u+w ../abc
+    ln -s ../abc abc
+    make config-gcc
+    echo 'ABCREV := default' >> Makefile.conf
+    makeFlags="PREFIX=$out $makeFlags"
+  '';
+
+  meta = {
+    description = "Framework for RTL synthesis tools";
+    longDescription = ''
+      Yosys is a framework for RTL synthesis tools. It currently has
+      extensive Verilog-2005 support and provides a basic set of
+      synthesis algorithms for various application domains.
+
+      Yosys can be adapted to perform any synthesis job by combining
+      the existing passes (algorithms) using synthesis scripts and
+      adding additional passes as needed by extending the yosys C++
+      code base.
+    '';
+    homepage = http://www.clifford.at/yosys/;
+    license = stdenv.lib.licenses.isc;
+    maintainers = [ stdenv.lib.maintainers.shell ];
+  };
+}
diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix
index 659fad6bb9b0..9cc8af5f427d 100644
--- a/pkgs/development/interpreters/perl/5.20/default.nix
+++ b/pkgs/development/interpreters/perl/5.20/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       ./no-sys-dirs.patch
     ]
     ++ optional stdenv.isSunOS ./ld-shared.patch
-    ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ;
+    ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ];
 
   # There's an annoying bug on sandboxed Darwin in Perl's Cwd.pm where it looks for pwd
   # in /bin/pwd and /usr/bin/pwd and then falls back on just "pwd" if it can't get them
diff --git a/pkgs/development/interpreters/perl/5.20/no-libutil.patch b/pkgs/development/interpreters/perl/5.20/no-libutil.patch
deleted file mode 100644
index 68d44612bfe6..000000000000
--- a/pkgs/development/interpreters/perl/5.20/no-libutil.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
---- perl-5.14.2-orig/Configure	2011-09-26 11:44:34.000000000 +0200
-+++ perl-5.14.2/Configure	2012-02-16 17:24:50.779839039 +0100
-@@ -1368,7 +1368,7 @@
- : List of libraries we want.
- : If anyone needs extra -lxxx, put those in a hint file.
- libswanted="socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun"
--libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
-+libswanted="$libswanted m crypt sec c cposix posix ucb bsd BSD"
- : We probably want to search /usr/shlib before most other libraries.
- : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
- glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
diff --git a/pkgs/development/interpreters/perl/5.22/default.nix b/pkgs/development/interpreters/perl/5.22/default.nix
index 53e777c19a11..34a26023adf9 100644
--- a/pkgs/development/interpreters/perl/5.22/default.nix
+++ b/pkgs/development/interpreters/perl/5.22/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       ./no-sys-dirs.patch
     ]
     ++ optional stdenv.isSunOS ./ld-shared.patch
-    ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ];
+    ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ];
 
   # Build a thread-safe Perl with a dynamic libperls.o.  We need the
   # "installstyle" option to ensure that modules are put under
diff --git a/pkgs/development/interpreters/perl/5.22/no-libutil.patch b/pkgs/development/interpreters/perl/5.22/no-libutil.patch
deleted file mode 100644
index d6356a524370..000000000000
--- a/pkgs/development/interpreters/perl/5.22/no-libutil.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/Configure b/Configure
-index 0a405d3..1871298 100755
---- a/Configure
-+++ b/Configure
-@@ -1455,7 +1455,7 @@ libswanted_uselargefiles=''
- : List of libraries we want.
- : If anyone needs extra -lxxx, put those in a hint file.
- libswanted="cl pthread socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld"
--libswanted="$libswanted sun m crypt sec util c cposix posix ucb bsd BSD"
-+libswanted="$libswanted sun m crypt sec c cposix posix ucb bsd BSD"
- : We probably want to search /usr/shlib before most other libraries.
- : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
- glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
-
diff --git a/pkgs/development/interpreters/regina/default.nix b/pkgs/development/interpreters/regina/default.nix
index 596b748a4f61..1d67193a73cf 100644
--- a/pkgs/development/interpreters/regina/default.nix
+++ b/pkgs/development/interpreters/regina/default.nix
@@ -1,49 +1,24 @@
-x@{builderDefsPackage
-  , ncurses
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+{ stdenv, fetchurl, ncurses }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="Regina-REXX";
-    pname="regina-rexx";
-    version = "3.9.1";
-    name="${baseName}-${version}";
-    url="mirror://sourceforge/${pname}/${pname}/${version}/${name}.tar.gz";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
+stdenv.mkDerivation rec {
+  name = "Regina-REXX-${version}";
+  version = "3.9.1";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/regina-rexx/regina-rexx/${version}/${name}.tar.gz";
     sha256 = "1vpksnjmg6y5zag9li6sxqxj2xapgalfz8krfxgg49vyk0kdy4sx";
   };
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall"];
+  buildInputs = [ ncurses ];
 
   configureFlags = [
-    "--libdir=$out/lib"
+    "--libdir=$(out)/lib"
   ];
-      
-  meta = {
+
+  meta = with stdenv.lib; {
     description = "REXX interpreter";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.lgpl2;
-    downloadPage = "http://sourceforge.net/projects/regina-rexx/files/regina-rexx/";
-    inherit version;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
+    license = licenses.lgpl2;
   };
-}) x
-
+}
diff --git a/pkgs/development/libraries/allegro/5-unstable.nix b/pkgs/development/libraries/allegro/5-unstable.nix
index dd0df768a689..e5a2c38ddab7 100644
--- a/pkgs/development/libraries/allegro/5-unstable.nix
+++ b/pkgs/development/libraries/allegro/5-unstable.nix
@@ -1,61 +1,36 @@
-
-x@{builderDefsPackage
-  , texinfo, libXext, xextproto, libX11, xproto, libXpm, libXt, libXcursor
-  , alsaLib, cmake, zlib, libpng, libvorbis, libXxf86dga, libXxf86misc
-  , xf86dgaproto, xf86miscproto, xf86vidmodeproto, libXxf86vm, openal, mesa
-  , kbproto, libjpeg, flac, inputproto, libXi, fixesproto, libXfixes
-  , ...}:
-builderDefsPackage
-(a :
-let
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
-    [];
-
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="allegro";
-    folderSuffix = "-unstable";
-    version = "5.1.11";
-    name="${baseName}-${version}";
-    project="alleg";
-    url="mirror://sourceforge/project/${project}/${baseName}${folderSuffix}/${version}/${name}.tar.gz";
-    hash="18fdppaqaf3g3rcqwhyvsmkzk3y14clz4l8cvmg4hvjgyf011f3i";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
+{ stdenv, fetchurl, texinfo, libXext, xextproto, libX11, xproto
+, libXpm, libXt, libXcursor, alsaLib, cmake, zlib, libpng, libvorbis
+, libXxf86dga, libXxf86misc, xf86dgaproto, xf86miscproto
+, xf86vidmodeproto, libXxf86vm, openal, mesa, kbproto, libjpeg, flac
+, inputproto, libXi, fixesproto, libXfixes }:
+
+stdenv.mkDerivation rec {
+  name = "allegro-${version}";
+  version = "5.1.11";
+
+  src = fetchurl {
+    url = "http://download.gna.org/allegro/allegro-unstable/${version}/${name}.tar.gz";
     sha256 = "0zz07gdyc6xflpvkknwgzsyyyh9qiwd69j42rm9cw1ciwcsic1vs";
   };
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["patchIncludes" "doCmake" "doMakeInstall"];
-
-  patchIncludes = a.fullDepEntry ''
-    sed -e 's@/XInput2.h@/XI2.h@g' -i CMakeLists.txt src/*.c
-  '' ["minInit" "doUnpack"];
+  buildInputs = [
+    texinfo libXext xextproto libX11 xproto libXpm libXt libXcursor
+    alsaLib cmake zlib libpng libvorbis libXxf86dga libXxf86misc
+    xf86dgaproto xf86miscproto xf86vidmodeproto libXxf86vm openal mesa
+    kbproto libjpeg flac inputproto libXi fixesproto libXfixes
+  ];
 
-  doCmake = a.fullDepEntry (''
-    export NIX_LDFLAGS="$NIX_LDFLAGS -lXext -lX11 -lXpm -lXcursor -lXxf86vm -lXi -lXfixes"
-    cmake -D CMAKE_INSTALL_PREFIX=$out -D CMAKE_SKIP_RPATH=ON .
-  '') ["minInit" "doUnpack" "addInputs"];
+  patchPhase = ''
+    sed -e 's@/XInput2.h@/XI2.h@g' -i CMakeLists.txt "src/"*.c
+  '';
 
-  makeFlags = [
-  ];
+  cmakeFlags = [ "-DCMAKE_SKIP_RPATH=ON" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A game programming library";
-    license = a.lib.licenses.free; # giftware
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    inherit version;
+    homepage = http://liballeg.org/;
+    license = licenses.zlib;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
   };
-}) x
+}
diff --git a/pkgs/development/libraries/allegro/5-unstable.upstream b/pkgs/development/libraries/allegro/5-unstable.upstream
deleted file mode 100644
index e07829c08cc4..000000000000
--- a/pkgs/development/libraries/allegro/5-unstable.upstream
+++ /dev/null
@@ -1,7 +0,0 @@
-attribute_name allegro5
-url http://alleg.sourceforge.net/download.html
-version_link '/allegro-unstable/.*[.]tar[.].*/download$'
-SF_redirect
-do_overwrite () {
-  do_overwrite_just_version
-}
diff --git a/pkgs/development/libraries/allegro/5.nix b/pkgs/development/libraries/allegro/5.nix
index 793b57c676b5..6f05afa4f480 100644
--- a/pkgs/development/libraries/allegro/5.nix
+++ b/pkgs/development/libraries/allegro/5.nix
@@ -1,56 +1,31 @@
+{ stdenv, fetchurl, texinfo, libXext, xextproto, libX11, xproto
+, libXpm, libXt, libXcursor, alsaLib, cmake, zlib, libpng, libvorbis
+, libXxf86dga, libXxf86misc, xf86dgaproto, xf86miscproto
+, xf86vidmodeproto, libXxf86vm, openal, mesa, kbproto, libjpeg, flac }:
 
-x@{builderDefsPackage
-  , texinfo, libXext, xextproto, libX11, xproto, libXpm, libXt, libXcursor
-  , alsaLib, cmake, zlib, libpng, libvorbis, libXxf86dga, libXxf86misc
-  , xf86dgaproto, xf86miscproto, xf86vidmodeproto, libXxf86vm, openal, mesa
-  , kbproto, libjpeg, flac
-  , ...}:
-builderDefsPackage
-(a :
-let
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
-    [];
+stdenv.mkDerivation rec {
+  name = "allegro-${version}";
+  version = "5.0.11";
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="allegro";
-    version = "5.0.11";
-    name="${baseName}-${version}";
-    project="alleg";
-    url="mirror://sourceforge/project/${project}/${baseName}/${version}/${name}.tar.gz";
-    hash="18fdppaqaf3g3rcqwhyvsmkzk3y14clz4l8cvmg4hvjgyf011f3i";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
+  src = fetchurl {
+    url = "http://download.gna.org/allegro/allegro/${version}/${name}.tar.gz";
     sha256 = "0cd51qrh97jrr0xdmnivqgwljpmizg8pixsgvc4blqqlaz4i9zj9";
   };
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doCmake" "doMakeInstall"];
-
-  doCmake = a.fullDepEntry (''
-    export NIX_LDFLAGS="$NIX_LDFLAGS -lXext -lX11 -lXpm -lXcursor -lXxf86vm"
-    cmake -D CMAKE_INSTALL_PREFIX=$out -D CMAKE_SKIP_RPATH=ON .
-  '') ["minInit" "doUnpack" "addInputs"];
-
-  makeFlags = [
+  buildInputs = [
+    texinfo libXext xextproto libX11 xproto libXpm libXt libXcursor
+    alsaLib cmake zlib libpng libvorbis libXxf86dga libXxf86misc
+    xf86dgaproto xf86miscproto xf86vidmodeproto libXxf86vm openal mesa
+    kbproto libjpeg flac
   ];
 
-  meta = {
+  cmakeFlags = [ "-DCMAKE_SKIP_RPATH=ON" ];
+
+  meta = with stdenv.lib; {
     description = "A game programming library";
-    license = a.lib.licenses.free; # giftware
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    inherit version;
+    homepage = http://liballeg.org/;
+    license = licenses.zlib;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
   };
-}) x
+}
diff --git a/pkgs/development/libraries/allegro/5.upstream b/pkgs/development/libraries/allegro/5.upstream
deleted file mode 100644
index 9d139383fe3d..000000000000
--- a/pkgs/development/libraries/allegro/5.upstream
+++ /dev/null
@@ -1,7 +0,0 @@
-attribute_name allegro5
-url http://alleg.sourceforge.net/download.html
-version_link '[.]tar[.].*/download$'
-SF_redirect
-do_overwrite () {
-  do_overwrite_just_version
-}
diff --git a/pkgs/development/libraries/allegro/default.nix b/pkgs/development/libraries/allegro/default.nix
index 6d31087968cc..deb3a6877e89 100644
--- a/pkgs/development/libraries/allegro/default.nix
+++ b/pkgs/development/libraries/allegro/default.nix
@@ -1,59 +1,30 @@
-x@{builderDefsPackage
-  , texinfo, libXext, xextproto, libX11, xproto, libXpm, libXt, libXcursor
-  , alsaLib, cmake, zlib, libpng, libvorbis, libXxf86dga, libXxf86misc
-  , xf86dgaproto, xf86miscproto, xf86vidmodeproto, libXxf86vm, openal, mesa
-  , ...}:
-builderDefsPackage
-(a :
-let
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
-    [];
+{ stdenv, fetchurl, texinfo, libXext, xextproto, libX11, xproto
+, libXpm, libXt, libXcursor, alsaLib, cmake, zlib, libpng, libvorbis
+, libXxf86dga, libXxf86misc, xf86dgaproto, xf86miscproto
+, xf86vidmodeproto, libXxf86vm, openal, mesa }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="allegro";
-    version="4.4.2";
-    name="${baseName}-${version}";
-    project="alleg";
-    url="mirror://sourceforge/project/${project}/${baseName}/${version}/${name}.tar.gz";
-    hash="1p0ghkmpc4kwij1z9rzxfv7adnpy4ayi0ifahlns1bdzgmbyf88v";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
-
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doCmake" "doMakeInstall"];
+stdenv.mkDerivation rec {
+  name = "allegro-${version}";
+  version="4.4.2";
 
-  doCmake = a.fullDepEntry (''
-    export NIX_LDFLAGS="$NIX_LDFLAGS -lXext -lX11 -lXpm -lXcursor -lXxf86vm"
-    cmake -D CMAKE_INSTALL_PREFIX=$out -D CMAKE_SKIP_RPATH=ON .
-  '') ["minInit" "doUnpack" "addInputs"];
+  src = fetchurl {
+    url = "http://download.gna.org/allegro/allegro/${version}/${name}.tar.gz";
+    sha256 = "1p0ghkmpc4kwij1z9rzxfv7adnpy4ayi0ifahlns1bdzgmbyf88v";
+  };
 
-  makeFlags = [
+  buildInputs = [
+    texinfo libXext xextproto libX11 xproto libXpm libXt libXcursor
+    alsaLib cmake zlib libpng libvorbis libXxf86dga libXxf86misc
+    xf86dgaproto xf86miscproto xf86vidmodeproto libXxf86vm openal mesa
   ];
 
-  meta = {
-    branch = "4";
+  cmakeFlags = [ "-DCMAKE_SKIP_RPATH=ON" ];
+
+  meta = with stdenv.lib; {
     description = "A game programming library";
-    license = a.lib.licenses.free; # giftware
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://sourceforge.net/projects/alleg/files/";
-    };
+    homepage = http://liballeg.org/;
+    license = licenses.free; # giftware
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
   };
-}) x
+}
diff --git a/pkgs/development/libraries/box2d/default.nix b/pkgs/development/libraries/box2d/default.nix
index 10a7ca549521..25d291da3327 100644
--- a/pkgs/development/libraries/box2d/default.nix
+++ b/pkgs/development/libraries/box2d/default.nix
@@ -1,51 +1,33 @@
-x@{builderDefsPackage
-  , unzip, cmake, mesa, freeglut, libX11, xproto
-  , inputproto, libXi, fetchsvn, pkgconfig
-  , ...}:
-builderDefsPackage
-(a :
-let
-  helperArgNames = ["stdenv" "fetchsvn" "builderDefsPackage"] ++
-    [];
+{ stdenv, fetchurl, unzip, cmake, mesa, freeglut, libX11, xproto, inputproto
+, libXi, pkgconfig }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-in
-rec {
-  version = "2.3.0";
+stdenv.mkDerivation rec {
   name = "box2d-${version}";
-  srcDrv = a.fetchsvn {
-    url = "http://box2d.googlecode.com/svn/trunk";
-    rev = "277";
-    sha256 = "1xp93yw2zcqhmh999v7cwqaqxq1glgyg5r8kfm4yabc1ypba3in4";
+  version = "2.3.0";
+
+  src = fetchurl {
+    url = "https://github.com/erincatto/Box2D/archive/v${version}.tar.gz";
+    sha256 = "1dmbswh4x2n5l3c9h0k72m0z4rdpzfy1xl8m8p3rf5rwkvk3bkg2";
   };
-  src = srcDrv + "/";
 
-  inherit buildInputs;
+  sourceRoot = "Box2D-${version}/Box2D";
 
-  phaseNames = ["changeSettings" "doCmake" "doMakeInstall"];
+  buildInputs = [
+    unzip cmake mesa freeglut libX11 xproto inputproto libXi pkgconfig
+  ];
 
-  changeSettings = a.fullDepEntry ''
-    sed -i Box2D/Common/b2Settings.h -e 's@b2_maxPolygonVertices .*@b2_maxPolygonVertices 15@'
-  '' ["minInit" "addInputs" "doUnpack"];
-      
-  goSrcDir = ''cd Box2D'';
+  cmakeFlags = [ "-DBOX2D_INSTALL=ON" "-DBOX2D_BUILD_SHARED=ON" ];
 
-  doCmake = a.fullDepEntry ''
-    cd Build; 
-    cmake -DBOX2D_INSTALL=ON -DBOX2D_BUILD_SHARED=ON -DCMAKE_INSTALL_PREFIX=$out ..
-  '' ["minInit" "addInputs" "doUnpack"];
-      
-  meta = {
+  prePatch = ''
+    substituteInPlace Box2D/Common/b2Settings.h \
+      --replace 'b2_maxPolygonVertices	8' 'b2_maxPolygonVertices	15'
+  '';
+
+  meta = with stdenv.lib; {
     description = "2D physics engine";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = "bsd";
-    inherit version;
+    homepage = http://box2d.org/;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
+    license = licenses.zlib;
   };
-}) x
-
+}
diff --git a/pkgs/development/libraries/cgui/default.nix b/pkgs/development/libraries/cgui/default.nix
index 6bd3dd41de74..0f1178622360 100644
--- a/pkgs/development/libraries/cgui/default.nix
+++ b/pkgs/development/libraries/cgui/default.nix
@@ -1,57 +1,26 @@
-x@{builderDefsPackage
-  , texinfo, allegro, perl
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+{ stdenv, fetchurl, texinfo, allegro, perl }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="cgui";
-    version="2.0.3";
-    name="${baseName}-${version}";
-    project="${baseName}";
-    url="mirror://sourceforge/project/${project}/${version}/${name}.tar.gz";
-    hash="00kk4xaw68m44awy8zq4g5plx372swwccvzshn68a0a8f3f2wi4x";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
+stdenv.mkDerivation rec {
+  name = "cgui-${version}";
+  version="2.0.3";
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
+  src = fetchurl {
+    url = "mirror://sourceforge/project/cgui/${version}/${name}.tar.gz";
+    sha256 = "00kk4xaw68m44awy8zq4g5plx372swwccvzshn68a0a8f3f2wi4x";
+  };
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["genMakefile" "doMakeInstall"];
+  buildInputs = [ texinfo allegro perl ];
 
-  genMakefile = a.fullDepEntry (''
+  configurePhase = ''
     export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fPIC"
     sh fix.sh unix
-  '') ["minInit" "doUnpack" "addInputs"];
-      
-  makeFlags = [
-    "SYSTEM_DIR=$out"
-  ];
+  '';
 
-  meta = {
+  makeFlags = [ "SYSTEM_DIR=$(out)" ];
+
+  meta = with stdenv.lib; {
     description = "A multiplatform basic GUI library";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://sourceforge.net/projects/cgui/files/";
-    };
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
   };
-}) x
-
+}
diff --git a/pkgs/development/libraries/hawknl/default.nix b/pkgs/development/libraries/hawknl/default.nix
index 290f411cbf49..372a8b8c1122 100644
--- a/pkgs/development/libraries/hawknl/default.nix
+++ b/pkgs/development/libraries/hawknl/default.nix
@@ -1,11 +1,12 @@
 {stdenv, fetchurl, unzip}:
 
 stdenv.mkDerivation {
-	name = "hawknl-1.34";
-	src = fetchurl {
-		url = http://hawksoft.com/download/files/HawkNL168src.zip;
-		sha256 = "11shn2fbxj3w0j77w0234pqyj1368x686kkgv09q5yqhi1cdp028";
-	};
+  name = "hawknl-1.68";
+
+  src = fetchurl {
+    url = http://urchlay.naptime.net/~urchlay/src/HawkNL168src.zip;
+    sha256 = "11shn2fbxj3w0j77w0234pqyj1368x686kkgv09q5yqhi1cdp028";
+  };
 
   buildInputs = [ unzip ];
 
diff --git a/pkgs/development/libraries/libpng/12.nix b/pkgs/development/libraries/libpng/12.nix
index d2fa6b184d64..7ae3d0e1d682 100644
--- a/pkgs/development/libraries/libpng/12.nix
+++ b/pkgs/development/libraries/libpng/12.nix
@@ -3,11 +3,11 @@
 assert !(stdenv ? cross) -> zlib != null;
 
 stdenv.mkDerivation rec {
-  name = "libpng-1.2.54";
+  name = "libpng-1.2.55";
 
   src = fetchurl {
     url = "mirror://sourceforge/libpng/${name}.tar.xz";
-    sha256 = "0wnjy7gqn0f24qrlggs7kl0ij59by413j1xmqp12n3vqh9j531fg";
+    sha256 = "0zkra0b9lrpk2axassdgkqinmc2ba6b473sm52xbpyknaqs2fljy";
   };
 
   propagatedBuildInputs = [ zlib ];
diff --git a/pkgs/development/libraries/ois/default.nix b/pkgs/development/libraries/ois/default.nix
index 67df3645eb90..25bb7a365f28 100644
--- a/pkgs/development/libraries/ois/default.nix
+++ b/pkgs/development/libraries/ois/default.nix
@@ -1,60 +1,41 @@
-x@{builderDefsPackage, fetchurl
-  , autoconf, automake, libtool, m4
-  , libX11, xproto, libXi, inputproto
-  , libXaw, libXmu, libXt
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
-
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="ois";
-    majorVersion="1";
-    minorVersion="3";
-    version="${majorVersion}.${minorVersion}";
-    name="${baseName}-${version}";
-    url="mirror://sourceforge/project/wgois/Source%20Release/${version}/ois_v${majorVersion}-${minorVersion}.tar.gz";
-    hash="18gs6xxhbqb91x2gm95hh1pmakimqim1k9c65h7ah6g14zc7dyjh";
-  };
+{ stdenv, fetchurl, autoconf, automake, libtool, libX11, xproto
+, libXi, inputproto, libXaw, libXmu, libXt }:
+
+let
+  majorVersion = "1";
+  minorVersion = "3";
 in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
+stdenv.mkDerivation rec {
+  name = "ois-${version}";
+  version = "${majorVersion}.${minorVersion}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/project/wgois/Source%20Release/${version}/ois_v${majorVersion}-${minorVersion}.tar.gz";
+    sha256 = "18gs6xxhbqb91x2gm95hh1pmakimqim1k9c65h7ah6g14zc7dyjh";
+  };
 
-  phaseNames = ["doPatch" "doConfigure" "doMakeInstall"];
+  patches = [
+    (fetchurl {
+      url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-games/ois/files/ois-1.3-gcc47.patch;
+      sha256 = "026jw06n42bcrmg0sbdhzc4cqxsnf7fw30a2z9cigd9x282zhii8";
+      name = "gcc47.patch";
+    })
+  ];
 
-  patches = [(fetchurl {
-    url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-games/ois/files/ois-1.3-gcc47.patch;
-    sha256 = "026jw06n42bcrmg0sbdhzc4cqxsnf7fw30a2z9cigd9x282zhii8";
-    name = "gcc47.patch";
-  })];
   patchFlags = "-p0";
 
-  configureCommand = ''sh bootstrap; sh configure'';
+  buildInputs = [
+    autoconf automake libtool libX11 xproto libXi inputproto libXaw
+    libXmu libXt
+  ];
+
+  preConfigure = "sh bootstrap";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Object-oriented C++ input system";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.zlib;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
+    license = licenses.zlib;
   };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://sourceforge.net/projects/wgois/files/Source Release/";
-    };
-  };
-}) x
-
+}
diff --git a/pkgs/development/libraries/openscenegraph/default.nix b/pkgs/development/libraries/openscenegraph/default.nix
index ecb4d82c9658..578d0219c020 100644
--- a/pkgs/development/libraries/openscenegraph/default.nix
+++ b/pkgs/development/libraries/openscenegraph/default.nix
@@ -1,60 +1,36 @@
-x@{builderDefsPackage
-  , cmake, giflib, libjpeg, libtiff, lib3ds, freetype, libpng
-  , coin3d, jasper, gdal_1_11, xproto, libX11, libXmu, freeglut, mesa
-  , doxygen, ffmpeg, xineLib, unzip, zlib, openal, libxml2
-  , curl, a52dec, faad2, gdk_pixbuf, pkgconfig, kbproto, SDL
-  , qt4, poppler, librsvg, gtk
-  , ...}:
-builderDefsPackage
-(a :
-let
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
-    [];
+{ stdenv, fetchurl, cmake, giflib, libjpeg, libtiff, lib3ds, freetype
+, libpng, coin3d, jasper, gdal_1_11, xproto, libX11, libXmu
+, freeglut, mesa, doxygen, ffmpeg, xineLib, unzip, zlib, openal
+, libxml2, curl, a52dec, faad2, gdk_pixbuf, pkgconfig, kbproto, SDL
+, qt4, poppler, librsvg, gtk }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="OpenSceneGraph";
-    version="3.2.1";
-    name="${baseName}-${version}";
-    url="http://trac.openscenegraph.org/downloads/developer_releases/${name}.zip";
-    hash="0v9y1gxb16y0mj994jd0mhcz32flhv2r6kc01xdqb4817lk75bnr";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
+stdenv.mkDerivation rec {
+  name = "openscenegraph-${version}";
+  version = "3.2.1";
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
+  src = fetchurl {
+    url = "http://trac.openscenegraph.org/downloads/developer_releases/${name}.zip";
+    sha256 = "0v9y1gxb16y0mj994jd0mhcz32flhv2r6kc01xdqb4817lk75bnr";
+  };
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["setVars" "addInputs" "doUnpack" "doPatch" "doCmake" "doMakeInstall"];
+  buildInputs = [
+    cmake giflib libjpeg libtiff lib3ds freetype libpng coin3d jasper
+    gdal_1_11 xproto libX11 libXmu freeglut mesa doxygen ffmpeg
+    xineLib unzip zlib openal libxml2 curl a52dec faad2 gdk_pixbuf
+    pkgconfig kbproto SDL qt4 poppler librsvg gtk
+  ];
 
   cmakeFlags = [
-    "-D MATH_LIBRARY="
+    "-DMATH_LIBRARY="
+    "-DCMAKE_C_FLAGS=-D__STDC_CONSTANT_MACROS=1"
+    "-DCMAKE_CXX_FLAGS=-D__STDC_CONSTANT_MACROS=1"
   ];
 
-  setVars = a.noDepEntry ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -D__STDC_CONSTANT_MACROS=1"
-  '';
-
-  meta = {
+  meta = with stdenv.lib; {
     description = "A 3D graphics toolkit";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
+    homepage = http://www.openscenegraph.org/;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
     license = "OpenSceneGraph Public License - free LGPL-based license";
   };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://www.openscenegraph.org/projects/osg/wiki/Downloads";
-    };
-  };
-}) x
-
+}
diff --git a/pkgs/development/libraries/unicap/default.nix b/pkgs/development/libraries/unicap/default.nix
index daec5a785662..604a1b7012af 100644
--- a/pkgs/development/libraries/unicap/default.nix
+++ b/pkgs/development/libraries/unicap/default.nix
@@ -1,56 +1,34 @@
-x@{builderDefsPackage
-  , libusb, libraw1394, dcraw, intltool, perl
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+{ stdenv, fetchurl, libusb, libraw1394, dcraw, intltool, perl, v4l_utils }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="libunicap";
-    version="0.9.12";
-    name="${baseName}-${version}";
-    url="http://www.unicap-imaging.org/downloads/${name}.tar.gz";
-    hash="05zcnnm4dfc6idihfi0fq5xka6x86zi89wip2ca19yz768sd33s9";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+stdenv.mkDerivation rec {
+  name = "libunicap-${version}";
+  version="0.9.12";
+
+  src = fetchurl {
+    url = "http://www.unicap-imaging.org/downloads/${name}.tar.gz";
+    sha256 = "05zcnnm4dfc6idihfi0fq5xka6x86zi89wip2ca19yz768sd33s9";
   };
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
+  buildInputs = [ libusb libraw1394 dcraw intltool perl v4l_utils ];
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["fixIncludes" "fixMakefiles" "doConfigure" "doMakeInstall"];
+  patches = [
+    # Debian has a patch that fixes the build.
+    (fetchurl {
+      url = "https://sources.debian.net/data/main/u/unicap/0.9.12-2/debian/patches/1009_v4l1.patch";
+      sha256 = "1lgypmhdj681m7d1nmzgvh19cz8agj2f31wlnfib0ha8i3g5hg5w";
+    })
+  ];
 
-  fixIncludes = a.fullDepEntry (''
+  postPatch = ''
     find . -type f -exec sed -e '/linux\/types\.h/d' -i '{}' ';'
-  '') ["minInit" "doUnpack"];
-
-  fixMakefiles = a.fullDepEntry (''
     sed -e 's@/etc/udev@'"$out"'/&@' -i data/Makefile.*
-  '') ["minInit" "doUnpack"];
+  '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Universal video capture API";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    broken = true;
+    homepage = http://www.unicap-imaging.org/;
+    maintainers = [ maintainers.raskin ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
   };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://unicap-imaging.org/download.htm";
-    };
-  };
-}) x
-
+}
diff --git a/pkgs/development/tools/icestorm/default.nix b/pkgs/development/tools/icestorm/default.nix
new file mode 100644
index 000000000000..726b805fe91a
--- /dev/null
+++ b/pkgs/development/tools/icestorm/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, python3, libftdi }:
+
+stdenv.mkDerivation rec {
+  name = "icestorm-${version}";
+  version = "2015.12.29";
+
+  src = fetchFromGitHub {
+    owner = "cliffordwolf";
+    repo = "icestorm";
+    rev = "7852514c2cde208da87b62777b2c5e482092f50d";
+    sha256 = "1ya1nk5h28hjdmd8jdrlfiayr2434rnvi133gs1p0ay21qb3iwfz";
+  };
+
+  buildInputs = [ python3 libftdi ];
+  preBuild = ''
+    makeFlags="DESTDIR=$out $makeFlags"
+  '';
+
+  meta = {
+    description = "Documentation and tools for Lattice iCE40 FPGAs";
+    longDescription = ''
+      Project IceStorm aims at reverse engineering and
+      documenting the bitstream format of Lattice iCE40
+      FPGAs and providing simple tools for analyzing and
+      creating bitstream files.
+    '';
+    homepage = http://www.clifford.at/icestorm/;
+    license = stdenv.lib.licenses.isc;
+    maintainers = [ stdenv.lib.maintainers.shell ];
+  };
+}
diff --git a/pkgs/games/super-tux/default.nix b/pkgs/games/super-tux/default.nix
index 11429cfadd2f..163320d8ae2c 100644
--- a/pkgs/games/super-tux/default.nix
+++ b/pkgs/games/super-tux/default.nix
@@ -1,25 +1,19 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, SDL2, SDL2_image, SDL2_mixer
+{ stdenv, fetchurl, cmake, pkgconfig, SDL2, SDL2_image, SDL2_mixer
 , curl, gettext, libogg, libvorbis, mesa, openal, physfs, boost, glew
 , libiconv }:
 
 stdenv.mkDerivation rec {
   name = "supertux-${version}";
-  version = "0.3.5a";
+  version = "0.4.0";
 
-  src = fetchFromGitHub {
-    owner = "SuperTux";
-    repo = "supertux";
-    rev = "v${version}";
-    sha256 = "0f522wsv0gx7v1h70x8xznklaqr5bm2l9h7ls9vjywy0z4iy1ahp";
+  src = fetchurl {
+    url = https://github.com/SuperTux/supertux/releases/download/v0.4.0/supertux-0.4.0.tar.bz2;
+    sha256 = "10ppmy6w77lxj8bdzjahc9bidgl4qgzr9rimn15rnqay84ydx3fi";
   };
 
   buildInputs = [ pkgconfig cmake SDL2 SDL2_image SDL2_mixer curl gettext
                   libogg libvorbis mesa openal physfs boost glew libiconv ];
 
-  preConfigure = ''
-    patchShebangs configure
-  '';
-
   postInstall = ''
     mkdir $out/bin
     ln -s $out/games/supertux2 $out/bin
diff --git a/pkgs/tools/compression/lz4/default.nix b/pkgs/tools/compression/lz4/default.nix
index e91fae778fdb..6c5d28d6bcc2 100644
--- a/pkgs/tools/compression/lz4/default.nix
+++ b/pkgs/tools/compression/lz4/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = https://code.google.com/p/lz4/;
     license = with licenses; [ bsd2 gpl2Plus ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ nckx ];
   };
 }
diff --git a/pkgs/tools/system/vbetool/default.nix b/pkgs/tools/system/vbetool/default.nix
index 402f93ec8fba..a8c27a42b1dd 100644
--- a/pkgs/tools/system/vbetool/default.nix
+++ b/pkgs/tools/system/vbetool/default.nix
@@ -1,31 +1,26 @@
-a @ {pciutils, libx86, zlib, ...} :
-let
-  s = import ./src-for-default.nix;
-  buildInputs = with a; [
-    libx86 pciutils zlib
-  ];
-in
-rec {
-  src = a.fetchUrlFromSrcInfo s;
+{ stdenv, fetchurl, pciutils, libx86, zlib }:
 
-  inherit (s) name;
-  inherit buildInputs;
-  configureFlags = [];
+stdenv.mkDerivation rec {
+  name = "vbetool-${version}";
+  version = "1.1";
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["fixPCIref" "doConfigure" "doMakeInstall"];
+  src = fetchurl {
+    url = "http://www.codon.org.uk/~mjg59/vbetool/download/${name}.tar.gz";
+    sha256 = "0m7rc9v8nz6w9x4x96maza139kin6lg4hscy6i13fna4672ds9jd";
+  };
+
+  buildInputs = [ pciutils libx86 zlib ];
+
+  patchPhase = ''
+    substituteInPlace Makefile.in --replace '$(libdir)/libpci.a' ""
+  '';
 
-  fixPCIref = a.fullDepEntry (''
-    sed -e 's@$(libdir)/libpci.a@${a.pciutils}/lib/libpci.so@' -i Makefile.in
-    export NIX_LDFLAGS="$NIX_LDFLAGS -lpci"
-  '') ["doUnpack" "minInit"];
+  configureFlags = [ "LDFLAGS=-lpci" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Video BIOS execution tool";
-    maintainers = [
-      a.lib.maintainers.raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
+    homepage = http://www.codon.org.uk/~mjg59/vbetool/;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/system/vbetool/src-for-default.nix b/pkgs/tools/system/vbetool/src-for-default.nix
deleted file mode 100644
index 97621fd516b4..000000000000
--- a/pkgs/tools/system/vbetool/src-for-default.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-rec {
-   version="1.1";
-   name="vbetool-1.1";
-   hash="0m7rc9v8nz6w9x4x96maza139kin6lg4hscy6i13fna4672ds9jd";
-   url="http://www.codon.org.uk/~mjg59/vbetool/download/vbetool-${version}.tar.gz";
-   advertisedUrl="http://www.codon.org.uk/~mjg59/vbetool/download/vbetool-1.1.tar.gz";
-  
-  
-}
diff --git a/pkgs/tools/system/vbetool/src-info-for-default.nix b/pkgs/tools/system/vbetool/src-info-for-default.nix
deleted file mode 100644
index 40c721bc4908..000000000000
--- a/pkgs/tools/system/vbetool/src-info-for-default.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-  downloadPage = "http://www.codon.org.uk/~mjg59/vbetool/download/?C=M;O=D";
-  baseName = "vbetool";
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 24a1a7d0af0f..a4a25a31d6f5 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3365,7 +3365,7 @@ let
 
   vidalia = callPackage ../tools/security/vidalia { };
 
-  vbetool = builderDefsPackage (callPackage ../tools/system/vbetool) { };
+  vbetool = callPackage ../tools/system/vbetool { };
 
   vde2 = callPackage ../tools/networking/vde2 { };
 
@@ -3776,6 +3776,8 @@ let
 
   aliceml = callPackage ../development/compilers/aliceml { };
 
+  arachne-pnr = callPackage ../development/compilers/arachne-pnr { };
+
   aspectj = callPackage ../development/compilers/aspectj { };
 
   ats = callPackage ../development/compilers/ats { };
@@ -4999,6 +5001,8 @@ let
 
   yasm = callPackage ../development/compilers/yasm { };
 
+  yosys = callPackage ../development/compilers/yosys { };
+
 
   ### DEVELOPMENT / INTERPRETERS
 
@@ -5755,6 +5759,8 @@ let
 
   hyenae = callPackage ../tools/networking/hyenae { };
 
+  icestorm = callPackage ../development/tools/icestorm { };
+
   icmake = callPackage ../development/tools/build-managers/icmake { };
 
   iconnamingutils = callPackage ../development/tools/misc/icon-naming-utils {
@@ -13575,6 +13581,8 @@ let
     freerdp = freerdpUnstable;
   };
 
+  windowlab = callPackage ../applications/window-managers/windowlab { };
+
   windowmaker = callPackage ../applications/window-managers/windowmaker { };
 
   alsamixer.app = callPackage ../applications/window-managers/windowmaker/dockapps/alsamixer.app.nix { };
@@ -14070,7 +14078,9 @@ let
 
   fish-fillets-ng = callPackage ../games/fish-fillets-ng {};
 
-  flightgear = qt5.callPackage ../games/flightgear { };
+  flightgear = qt5.callPackage ../games/flightgear {
+    fltk13 = fltk13.override { cfg.xftSupport = true; };
+  };
 
   freecell-solver = callPackage ../games/freecell-solver { };
 
diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix
index 17610ddb232b..fc2e60d7fd11 100644
--- a/pkgs/top-level/emacs-packages.nix
+++ b/pkgs/top-level/emacs-packages.nix
@@ -1493,21 +1493,6 @@ let
     };
   };
 
-  popup = melpaBuild rec {
-    pname   = "popup";
-    version = "0.5.2";
-    src = fetchFromGitHub {
-      owner  = "auto-complete";
-      repo   = "${pname}-el";
-      rev    = "v${version}";
-      sha256 = "0aazkczrzpp75793bpi0pz0cs7vinhdrpxfdlzi0cr39njird2yj";
-    };
-    meta = {
-      description = "Popup tooltips and popup menus for Emacs";
-      license = gpl3Plus;
-    };
-  };
-
   projectile = melpaBuild rec {
     pname   = "projectile";
     version = "0.13.0";