diff --git a/maintainers/docs/cross.txt b/doc/old/cross.txt similarity index 100% rename from maintainers/docs/cross.txt rename to doc/old/cross.txt diff --git a/maintainers/docs/update-upstream-data.txt b/doc/old/update-upstream-data.txt similarity index 100% rename from maintainers/docs/update-upstream-data.txt rename to doc/old/update-upstream-data.txt diff --git a/doc/package-notes.xml b/doc/package-notes.xml index 6dae036b3382..8a35e640324d 100644 --- a/doc/package-notes.xml +++ b/doc/package-notes.xml @@ -105,16 +105,6 @@ $ make menuconfig ARCH=arch - - Make sure that - CONFIG_FB_TILEBLITTING is not - set (otherwise fbsplash won't - work). This option has a tendency to be enabled as a - side-effect of other options. If it is, investigate why - (there's probably another option that forces it to be on) - and fix it. - - Copy .config over the new config file (e.g. config-2.6.22-i686-smp). @@ -137,22 +127,9 @@ $ make menuconfig ARCH=arch kernel modules and kernel-dependent packages listed in the kernelPackagesFor function in all-packages.nix (such as the NVIDIA drivers, - AUFS, splashutils, etc.). If the updated packages aren’t - backwards compatible with older kernels, you need to keep the - older versions and use some conditionals. For example, new - kernels require splashutils 1.5 while old kernel require 1.3, so - kernelPackagesFor says: - - -splashutils = - if kernel.features ? fbSplash then splashutils_13 else - if kernel.features ? fbConDecor then splashutils_15 else - null; - -splashutils_13 = ...; -splashutils_15 = ...; - - + AUFS, etc.). If the updated packages aren’t backwards compatible + with older kernels, you may need to keep the older versions + around. diff --git a/doc/quick-start.xml b/doc/quick-start.xml index a14de4077dbd..46578619e1f4 100644 --- a/doc/quick-start.xml +++ b/doc/quick-start.xml @@ -71,7 +71,7 @@ $ git add pkgs/development/libraries/libfoo/default.nix GNU Multiple Precision arithmetic library (GMP): pkgs/development/libraries/gmp/default.nix. + xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/gmp/5.1.1.nix">pkgs/development/libraries/gmp/5.1.1.nix. Also done by the generic builder, but has a dependency on m4. @@ -86,7 +86,7 @@ $ git add pkgs/development/libraries/libfoo/default.nix Apache HTTPD: pkgs/servers/http/apache-httpd/default.nix. + xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/servers/http/apache-httpd/2.4.nix">pkgs/servers/http/apache-httpd/2.4.nix. A bunch of optional features, variable substitutions in the configure flags, a post-install hook, and miscellaneous hackery. @@ -105,7 +105,7 @@ $ git add pkgs/development/libraries/libfoo/default.nix Thunderbird: pkgs/applications/networking/mailreaders/thunderbird/3.x.nix. + xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/networking/mailreaders/thunderbird/default.nix">pkgs/applications/networking/mailreaders/thunderbird/default.nix. Lots of dependencies. diff --git a/maintainers/docs/uclibc-cross.txt b/maintainers/docs/uclibc-cross.txt deleted file mode 100644 index c32a95eb2b25..000000000000 --- a/maintainers/docs/uclibc-cross.txt +++ /dev/null @@ -1,27 +0,0 @@ -Adding uClibc support for a new platform - -Sometimes you want to cross-compile to another architecture, for example an -embedded devices. For embedded devices the uClibc C library is popular. -In Nixpkgs there is support for uClibc for several architectures but not -everything is supported. - -Adding support is not very difficult, - -* Add your architecture to the buildfiles in -$nixpkgs/development/tools/misc/binutils-cross - -* Add your architecture to the buildfiles in -$nixpkgs/development/compilers/gcc-4.0-cross - -* Add your architecture to the buildfiles in -$nixpkgs/os-specific/linux/kernel-headers-cross - -* Add your architecture to the buildfiles in -$nixpkgs/development/uclibc - -In the latter directory you will also need a configuration file for uClibc. -You can make these by unpacking the uClibc sources and run a "make menuconfig". -In the configuration a few things need to be adapted: - -- kernel sources -> need to point at our own kernel headers -- install -> needs to point at $out diff --git a/pkgs/applications/audio/mopidy/default.nix b/pkgs/applications/audio/mopidy/default.nix index e31798a101b9..089751947cc4 100644 --- a/pkgs/applications/audio/mopidy/default.nix +++ b/pkgs/applications/audio/mopidy/default.nix @@ -5,11 +5,11 @@ pythonPackages.buildPythonPackage rec { name = "mopidy-${version}"; - version = "0.14.2"; + version = "0.15.0"; src = fetchurl { url = "https://github.com/mopidy/mopidy/archive/v${version}.tar.gz"; - sha256 = "0fqx7lk9g61d744b951cwx0szqbyji58dhw2ravnq9785nkhi7i4"; + sha256 = "1fpnddcx6343wgxzh10s035w21g8jmfh2kzgx32w0xsshpra3gn1"; }; propagatedBuildInputs = with pythonPackages; [ diff --git a/pkgs/applications/audio/mopidy/git.nix b/pkgs/applications/audio/mopidy/git.nix deleted file mode 100644 index 2b5e1627ac63..000000000000 --- a/pkgs/applications/audio/mopidy/git.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ stdenv, fetchgit, pythonPackages, pygobject, gst_python -, gst_plugins_good, gst_plugins_base -}: - -pythonPackages.buildPythonPackage rec { - name = "mopidy-${version}"; - - version = "git-20130226"; - - src = fetchgit { - url = "https://github.com/mopidy/mopidy.git"; - rev = "86a7c2d7519680c6b9130795d35c4654958f4c04"; - sha256 = "00fxcfkpl19nslv4f4bspzw0kvjjp6hhcwag7rknmb8scfinqfac"; - }; - - propagatedBuildInputs = with pythonPackages; [ - gst_python pygobject pykka pyspotify pylast cherrypy ws4py - ]; - - # python zip complains about old timestamps - preConfigure = '' - find -print0 | xargs -0 touch - ''; - - # There are no tests - doCheck = false; - - postInstall = '' - for p in $out/bin/mopidy $out/bin/mopidy-scan; do - wrapProgram $p \ - --prefix GST_PLUGIN_PATH : ${gst_plugins_good}/lib/gstreamer-0.10 \ - --prefix GST_PLUGIN_PATH : ${gst_plugins_base}/lib/gstreamer-0.10 - done - ''; - - meta = { - homepage = http://www.mopidy.com/; - description = '' - A music server which can play music from Spotify and from your - local hard drive. - ''; - maintainers = [ stdenv.lib.maintainers.rickynils ]; - }; -} diff --git a/pkgs/applications/audio/mpc/default.nix b/pkgs/applications/audio/mpc/default.nix new file mode 100755 index 000000000000..bd21550a64cf --- /dev/null +++ b/pkgs/applications/audio/mpc/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchurl, mpd_clientlib }: + +stdenv.mkDerivation rec { + version = "0.23"; + name = "mpc-${version}"; + + src = fetchurl { + url = "http://www.musicpd.org/download/mpc/0/${name}.tar.bz2"; + sha256 = "1ir96wfgq5qfdd2s06zfycv38g3bhn3bpndwx9hwf1w507rvifi9"; + }; + + buildInputs = [ mpd_clientlib ]; + + preConfigure = + '' + export LIBMPDCLIENT_LIBS=${mpd_clientlib}/lib/libmpdclient.so.${mpd_clientlib.majorVersion}.0.${mpd_clientlib.minorVersion} + export LIBMPDCLIENT_CFLAGS=${mpd_clientlib} + ''; + + meta = { + description = "A minimalist command line interface to MPD"; + homepage = http://www.musicpd.org/clients/mpc/; + license = "GPL2"; + maintainers = [ stdenv.lib.maintainers.algorith ]; + platforms = stdenv.lib.platforms.linux; + }; +} \ No newline at end of file diff --git a/pkgs/applications/audio/rubyripper/default.nix b/pkgs/applications/audio/rubyripper/default.nix new file mode 100644 index 000000000000..36f1fc8312fb --- /dev/null +++ b/pkgs/applications/audio/rubyripper/default.nix @@ -0,0 +1,16 @@ +{ stdenv, fetchurl, ruby, cdparanoia, makeWrapper }: +stdenv.mkDerivation rec { + version = "0.6.2"; + name = "rubyripper-${version}"; + src = fetchurl { + url = "https://rubyripper.googlecode.com/files/rubyripper-${version}.tar.bz2"; + sha256 = "1fwyk3y0f45l2vi3a481qd7drsy82ccqdb8g2flakv58m45q0yl1"; + }; + configureFlags = [ "--enable-cli" ]; + buildInputs = [ ruby cdparanoia makeWrapper ]; + postInstall = '' + wrapProgram "$out/bin/rrip_cli" \ + --prefix PATH : "${ruby}/bin" \ + --prefix PATH : "${cdparanoia}/bin" + ''; +} diff --git a/pkgs/applications/editors/aseprite/default.nix b/pkgs/applications/editors/aseprite/default.nix new file mode 100644 index 000000000000..43180bd04e31 --- /dev/null +++ b/pkgs/applications/editors/aseprite/default.nix @@ -0,0 +1,48 @@ +{ stdenv, fetchurl, cmake, pkgconfig +, giflib, libjpeg, zlib, libpng, tinyxml, allegro +, libX11, libXext, libXcursor, libXpm, libXxf86vm, libXxf86dga +}: + +stdenv.mkDerivation rec { + name = "aseprite-0.9.5"; + + src = fetchurl { + url = "http://aseprite.googlecode.com/files/${name}.tar.xz"; + sha256 = "0m7i6ybj2bym4w9rybacnnaaq2jjn76vlpbp932xcclakl6kdq41"; + }; + + buildInputs = [ + cmake pkgconfig + giflib libjpeg zlib libpng tinyxml allegro + libX11 libXext libXcursor libXpm libXxf86vm libXxf86dga + ]; + + patchPhase = '' + sed -i '/^find_unittests/d' src/CMakeLists.txt + sed -i '/include_directories(.*third_party\/gtest.*)/d' src/CMakeLists.txt + sed -i '/add_subdirectory(gtest)/d' third_party/CMakeLists.txt + sed -i 's/png_\(sizeof\)/\1/g' src/file/png_format.cpp + ''; + + cmakeFlags = '' + -DUSE_SHARED_GIFLIB=ON + -DUSE_SHARED_JPEGLIB=ON + -DUSE_SHARED_ZLIB=ON + -DUSE_SHARED_LIBPNG=ON + -DUSE_SHARED_LIBLOADPNG=ON + -DUSE_SHARED_TINYXML=ON + -DUSE_SHARED_GTEST=ON + -DUSE_SHARED_ALLEGRO4=ON + -DENABLE_UPDATER=OFF + ''; + + NIX_LDFLAGS = "-lX11"; + + meta = { + description = "Animated sprite editor & pixel art tool"; + homepage = "http://www.aseprite.org/"; + license = stdenv.lib.licenses.gpl2Plus; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [iyzsong]; + }; +} diff --git a/pkgs/applications/editors/emacs-modes/org/default.nix b/pkgs/applications/editors/emacs-modes/org/default.nix index 51263a6aa0e2..df78be6adacc 100644 --- a/pkgs/applications/editors/emacs-modes/org/default.nix +++ b/pkgs/applications/editors/emacs-modes/org/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, emacs, texinfo, which, texLive }: stdenv.mkDerivation rec { - name = "org-7.9.1"; - + name = "org-8.2.1"; + src = fetchurl { url = "http://orgmode.org/${name}.tar.gz"; - sha256 = "0kz1dnzfpmmslwal150z9rxrnddjpaw2glx26qihpxzs0zzpw201"; + sha256 = "625e2b6786158bcf6c43194075f7638ab8048c68a60025289a051c407e467823"; }; buildInputs = [ emacs ]; diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix index 1c3bff2e36d7..c2a661c82fdf 100644 --- a/pkgs/applications/graphics/ImageMagick/default.nix +++ b/pkgs/applications/graphics/ImageMagick/default.nix @@ -2,7 +2,6 @@ , fetchurl , bzip2 , freetype -, graphviz , ghostscript ? null , libjpeg , libpng @@ -27,6 +26,8 @@ stdenv.mkDerivation rec { sha256 = "1bpj8676mph5cvyjsdgf27i6yg2iw9iskk5c69mvpxkyawgjw1vg"; }; + enableParallelBuilding = true; + preConfigure = if tetex != null then '' export DVIDecodeDelegate=${tetex}/bin/dvips @@ -42,9 +43,10 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ bzip2 freetype libjpeg libpng libtiff libxml2 zlib librsvg - libtool jasper libX11 ] ++ stdenv.lib.optional (ghostscript != null && stdenv.system != "x86_64-darwin") ghostscript; + libtool jasper libX11 + ] ++ stdenv.lib.optional (ghostscript != null && stdenv.system != "x86_64-darwin") ghostscript; - buildInputs = [ tetex graphviz ]; + buildInputs = [ tetex ]; postInstall = ''(cd "$out/include" && ln -s ImageMagick* ImageMagick)''; diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix index 315e101857eb..766696265812 100644 --- a/pkgs/applications/graphics/darktable/default.nix +++ b/pkgs/applications/graphics/darktable/default.nix @@ -1,19 +1,20 @@ -{ stdenv, fetchurl +{ stdenv, fetchurl, libsoup, graphicsmagick, SDL, json_glib , GConf, atk, cairo, cmake, curl, dbus_glib, exiv2, glib -, libgnome_keyring, gphoto2, gtk, ilmbase, intltool, lcms, lcms2 +, libgnome_keyring, gtk, ilmbase, intltool, lcms, lcms2 , lensfun, libXau, libXdmcp, libexif, libglade, libgphoto2, libjpeg , libpng, libpthreadstubs, libraw1394, librsvg, libtiff, libxcb -, openexr, pixman, pkgconfig, sqlite, bash, libxslt }: +, openexr, pixman, pkgconfig, sqlite, bash, libxslt, openjpeg +, mesa }: assert stdenv ? glibc; stdenv.mkDerivation rec { - version = "1.2.2"; + version = "1.2.3"; name = "darktable-${version}"; src = fetchurl { url = "mirror://sourceforge/darktable/darktable/1.2/darktable-${version}.tar.xz"; - sha256 = "0nf85wjhlisbgwkfkc1wb8y7dpnx3v8zk9g3ghbd51gi7s62x40j"; + sha256 = "05kkkz13a5rhb246rq1nxv7h91pcvm15filvik8n8gn143h64sv8"; }; buildInputs = @@ -21,6 +22,7 @@ stdenv.mkDerivation rec { ilmbase intltool lcms lcms2 lensfun libXau libXdmcp libexif libglade libgphoto2 libjpeg libpng libpthreadstubs libraw1394 librsvg libtiff libxcb openexr pixman pkgconfig sqlite libxslt + libsoup graphicsmagick SDL json_glib openjpeg mesa ]; preConfigure = '' @@ -30,16 +32,16 @@ stdenv.mkDerivation rec { export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${atk}/include/atk-1.0" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${ilmbase}/include/OpenEXR" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${openexr}/include/OpenEXR" - - substituteInPlace tools/create_preferences.sh.in --replace '#!/usr/bin/env bash' '#!${bash}/bin/bash' ''; cmakeFlags = [ "-DPTHREAD_INCLUDE_DIR=${stdenv.glibc}/include" "-DPTHREAD_LIBRARY=${stdenv.glibc}/lib/libpthread.so" "-DCMAKE_BUILD_TYPE=Release" + "-DBINARY_PACKAGE_BUILD=1" "-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib}/lib/glib-2.0/include" "-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk}/lib/gtk-2.0/include" + "-DBUILD_USERMANUAL=False" ]; meta = with stdenv.lib; { @@ -47,6 +49,6 @@ stdenv.mkDerivation rec { homepage = http://darktable.sourceforge.net; license = licenses.gpl3Plus; platforms = platforms.linux; - maintainers = [ maintainers.goibhniu ]; + maintainers = [ maintainers.goibhniu maintainers.rickynils ]; }; } diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix index cf4e7e635d09..d34eeba207ce 100644 --- a/pkgs/applications/graphics/openscad/default.nix +++ b/pkgs/applications/graphics/openscad/default.nix @@ -1,9 +1,8 @@ -{stdenv, fetchurl, qt4, bison, flex, eigen, boost, mesa, glew, opencsg, cgal - , mpfr, gmp - }: +{ stdenv, fetchurl, qt4, bison, flex, eigen, boost, mesa, glew, opencsg, cgal +, mpfr, gmp }: stdenv.mkDerivation rec { - version = "2013.01"; + version = "2013.06"; name = "openscad-${version}"; src = fetchurl { @@ -11,7 +10,7 @@ stdenv.mkDerivation rec { sha256 = "01r013l8zyfkgmqn05axh3rlfsjwd6j403w5ffl7nby4i2spiw1f"; }; - buildInputs = [qt4 bison flex eigen boost mesa glew opencsg cgal gmp mpfr]; + buildInputs = [ qt4 bison flex eigen boost mesa glew opencsg cgal gmp mpfr ]; configurePhase = '' export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${eigen}/include/eigen*) " @@ -35,9 +34,8 @@ stdenv.mkDerivation rec { ''; homepage = "http://openscad.org/"; license = stdenv.lib.licenses.gpl2; - platforms = with stdenv.lib.platforms; - linux; + platforms = stdenv.lib.platforms.linux; maintainers = with stdenv.lib.maintainers; - [raskin bjornfor]; + [ bjornfor raskin the-kenny ]; }; } diff --git a/pkgs/applications/graphics/sane/backends.nix b/pkgs/applications/graphics/sane/backends.nix index 0fcfca747410..a53466ae8188 100644 --- a/pkgs/applications/graphics/sane/backends.nix +++ b/pkgs/applications/graphics/sane/backends.nix @@ -16,6 +16,8 @@ stdenv.mkDerivation rec { udevSupport = hotplugSupport; + configureFlags = stdenv.lib.optional (libusb != null) "--enable-libusb_1_0"; + buildInputs = [] ++ stdenv.lib.optional (libusb != null) libusb ++ stdenv.lib.optional (libv4l != null) libv4l diff --git a/pkgs/applications/misc/fbreader/default.nix b/pkgs/applications/misc/fbreader/default.nix new file mode 100644 index 000000000000..fa361308ff1a --- /dev/null +++ b/pkgs/applications/misc/fbreader/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, pkgconfig, bzip2, curl, expat, fribidi +, libunibreak, qt4, sqlite, zlib }: + +stdenv.mkDerivation { + name = "fbreader-0.99.4"; + + src = fetchurl { + url = http://fbreader.org/files/desktop/fbreader-sources-0.99.4.tgz; + sha256 = "1sdq3vvwkq4bkyrvh0p884d66gaddz8hlab3m798ji9ixbak2z1x"; + }; + + buildInputs = [ + pkgconfig bzip2 curl expat fribidi libunibreak + qt4 sqlite zlib + ]; + + makeFlags = "INSTALLDIR=$(out)"; + + patchPhase = '' + # don't try to use ccache + substituteInPlace makefiles/arch/desktop.mk \ + --replace "CCACHE = " "# CCACHE = " + + substituteInPlace fbreader/desktop/Makefile \ + --replace "/usr/share" "$out/share" + ''; + + meta = { + description = "An e-book reader for Linux"; + homepage = http://www.fbreader.org/; + license = "GPL"; + maintainer = [ stdenv.lib.maintainers.coroa ]; + }; +} diff --git a/pkgs/applications/misc/rxvt_unicode/default.nix b/pkgs/applications/misc/rxvt_unicode/default.nix index 2afa6c086961..8c16d290f86e 100644 --- a/pkgs/applications/misc/rxvt_unicode/default.nix +++ b/pkgs/applications/misc/rxvt_unicode/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, perlSupport, libX11, libXt, libXft, ncurses, perl, fontconfig, freetype, pkgconfig, libXrender, gdkPixbufSupport, gdk_pixbuf }: -let +let name = "rxvt-unicode"; version = "9.16"; n = "${name}-${version}"; @@ -17,14 +17,14 @@ stdenv.mkDerivation (rec { }; buildInputs = - [ libX11 libXt libXft ncurses /* required to build the terminfo file */ + [ libX11 libXt libXft ncurses /* required to build the terminfo file */ fontconfig freetype pkgconfig libXrender ] ++ stdenv.lib.optional perlSupport perl ++ stdenv.lib.optional gdkPixbufSupport gdk_pixbuf; preConfigure = '' - configureFlags="--with-terminfo=$out/share/terminfo ${if perlSupport then "--enable-perl" else "--disable-perl"}"; + configureFlags="--with-terminfo=$out/share/terminfo --enable-256-color ${if perlSupport then "--enable-perl" else "--disable-perl"}"; export TERMINFO=$out/share/terminfo # without this the terminfo won't be compiled by tic, see man tic NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${freetype}/include/freetype2" NIX_LDFLAGS="$NIX_LDFLAGS -lfontconfig -lXrender " diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix index 18fb7fefeffe..fa91a877fdc0 100644 --- a/pkgs/applications/networking/browsers/chromium/default.nix +++ b/pkgs/applications/networking/browsers/chromium/default.nix @@ -7,8 +7,8 @@ , xdg_utils, yasm, zlib , libusb1, libexif, pciutils -, python, perl, pkgconfig -, nspr, udev, krb5 +, python, pythonPackages, perl, pkgconfig +, nspr, udev, krb5, file , utillinux, alsaLib , gcc, bison, gperf , glib, gtk, dbus_glib @@ -18,9 +18,6 @@ # optional dependencies , libgcrypt ? null # gnomeSupport || cupsSupport -# dependency for version 30 -, file - # package customization , channel ? "stable" , enableSELinux ? false, libselinux ? null @@ -36,7 +33,65 @@ with stdenv.lib; let - sourceInfo = builtins.getAttr channel (import ./sources.nix); + src = with getAttr channel (import ./sources.nix); stdenv.mkDerivation { + name = "chromium-source-${version}"; + + src = fetchurl { + inherit url sha256; + }; + + phases = [ "unpackPhase" "patchPhase" "installPhase" ]; + + opensslPatches = optional useOpenSSL openssl.patches; + + prePatch = "patchShebangs ."; + + patches = singleton ( + if versionOlder version "31.0.0.0" + then ./sandbox_userns_30.patch + else ./sandbox_userns_31.patch + ); + + postPatch = '' + sed -i -r -e 's/-f(stack-protector)(-all)?/-fno-\1/' build/common.gypi + sed -i -e 's|/usr/bin/gcc|gcc|' third_party/WebKit/Source/core/core.gypi + '' + optionalString useOpenSSL '' + cat $opensslPatches | patch -p1 -d third_party/openssl/openssl + ''; + + outputs = [ "out" "sandbox" "bundled" "main" ]; + installPhase = '' + ensureDir "$out" "$sandbox" "$bundled" "$main" + + header "copying browser main sources to $main" + find . -mindepth 1 -maxdepth 1 \ + \! -path ./sandbox \ + \! -path ./third_party \ + \! -path ./build \ + \! -path ./tools \ + \! -name '.*' \ + -print | xargs cp -rt "$main" + stopNest + + header "copying sandbox components to $sandbox" + cp -rt "$sandbox" sandbox/* + stopNest + + header "copying third party sources to $bundled" + cp -rt "$bundled" third_party/* + stopNest + + header "copying build requisites to $out" + cp -rt "$out" build tools + stopNest + + rm -rf "$out/tools/gyp" # XXX: Don't even copy it in the first place. + ''; + + passthru = { + inherit version; + }; + }; mkGypFlags = let @@ -81,29 +136,22 @@ let libusb1 libexif ]; + sandbox = import ./sandbox.nix { + inherit stdenv; + src = src.sandbox; + binary = "${packageName}_sandbox"; + }; + # build paths and release info packageName = "chromium"; buildType = "Release"; buildPath = "out/${buildType}"; libExecPath = "$out/libexec/${packageName}"; - - # user namespace sandbox patch - userns_patch = if versionOlder sourceInfo.version "30.0.0.0" - then ./sandbox_userns_29.patch - else if versionOlder sourceInfo.version "31.0.0.0" - then ./sandbox_userns_30.patch - else ./sandbox_userns_31.patch; + sandboxPath = "${sandbox}/bin/${packageName}_sandbox"; in stdenv.mkDerivation rec { - name = "${packageName}-${version}"; - inherit packageName; - - version = sourceInfo.version; - - src = fetchurl { - url = sourceInfo.url; - sha256 = sourceInfo.sha256; - }; + name = "${packageName}-${src.version}"; + inherit packageName src; buildInputs = defaultDependencies ++ [ which makeWrapper @@ -112,32 +160,31 @@ in stdenv.mkDerivation rec { (if useOpenSSL then openssl else nss) utillinux alsaLib gcc bison gperf - krb5 + krb5 file glib gtk dbus_glib libXScrnSaver libXcursor libXtst mesa pciutils protobuf speechd libXdamage + pythonPackages.gyp ] ++ optional gnomeKeyringSupport libgnome_keyring ++ optionals gnomeSupport [ gconf libgcrypt ] ++ optional enableSELinux libselinux ++ optional cupsSupport libgcrypt - ++ optional pulseSupport pulseaudio - ++ optional (!versionOlder sourceInfo.version "30.0.0.0") file; + ++ optional pulseSupport pulseaudio; - opensslPatches = optional useOpenSSL openssl.patches; - - prePatch = "patchShebangs ."; - - patches = [ userns_patch ]; + prePatch = '' + # XXX: Figure out a way how to split these properly. + #cpflags="-dsr --no-preserve=mode" + cpflags="-dr" + cp $cpflags "${src.main}"/* . + cp $cpflags "${src.bundled}" third_party + cp $cpflags "${src.sandbox}" sandbox + chmod -R u+w . # XXX! + ''; postPatch = '' - sed -i -r -e 's/-f(stack-protector)(-all)?/-fno-\1/' build/common.gypi - sed -i -e 's|/usr/bin/gcc|gcc|' third_party/WebKit/Source/core/core.gypi - '' + optionalString useOpenSSL '' - cat $opensslPatches | patch -p1 -d third_party/openssl/openssl - '' + optionalString (!versionOlder sourceInfo.version "30.0.0.0") '' sed -i -e '/base::FilePath exe_dir/,/^ *} *$/c \ sandbox_binary = \ - base::FilePath("'"${libExecPath}/${packageName}_sandbox"'"); + base::FilePath("'"${sandboxPath}"'"); ' content/browser/browser_main_loop.cc ''; @@ -153,7 +200,7 @@ in stdenv.mkDerivation rec { use_openssl = useOpenSSL; selinux = enableSELinux; use_cups = cupsSupport; - linux_sandbox_path="${libExecPath}/${packageName}_sandbox"; + linux_sandbox_path="${sandboxPath}"; linux_sandbox_chrome_path="${libExecPath}/${packageName}"; werror = ""; @@ -175,7 +222,7 @@ in stdenv.mkDerivation rec { }); configurePhase = '' - GYP_GENERATORS=ninja python build/gyp_chromium --depth "$(pwd)" ${gypFlags} + python build/gyp_chromium -f ninja --depth "$(pwd)" ${gypFlags} ''; buildPhase = let @@ -185,13 +232,13 @@ in stdenv.mkDerivation rec { CC="${CC}" CC_host="${CC}" \ CXX="${CXX}" CXX_host="${CXX}" \ LINK_host="${CXX}" \ - "${ninja}/bin/ninja" -C "out/${buildType}" \ - -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES \ + "${ninja}/bin/ninja" -C "${buildPath}" \ + -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES \ chrome ${optionalString (!enableSELinux) "chrome_sandbox"} ''; installPhase = '' - mkdir -vp "${libExecPath}" + ensureDir "${libExecPath}" cp -v "${buildPath}/"*.pak "${libExecPath}/" cp -vR "${buildPath}/locales" "${buildPath}/resources" "${libExecPath}/" cp -v ${buildPath}/libffmpegsumo.so "${libExecPath}/" @@ -200,7 +247,6 @@ in stdenv.mkDerivation rec { mkdir -vp "$out/bin" makeWrapper "${libExecPath}/${packageName}" "$out/bin/${packageName}" - cp -v "${buildPath}/chrome_sandbox" "${libExecPath}/${packageName}_sandbox" mkdir -vp "$out/share/man/man1" cp -v "${buildPath}/chrome.1" "$out/share/man/man1/${packageName}.1" @@ -216,6 +262,10 @@ in stdenv.mkDerivation rec { done ''; + passthru = { + inherit sandbox; + }; + meta = { description = "An open source web browser from Google"; homepage = http://www.chromium.org/; diff --git a/pkgs/applications/networking/browsers/chromium/sandbox.nix b/pkgs/applications/networking/browsers/chromium/sandbox.nix new file mode 100644 index 000000000000..b43385e86338 --- /dev/null +++ b/pkgs/applications/networking/browsers/chromium/sandbox.nix @@ -0,0 +1,20 @@ +{ stdenv, src, binary }: + +stdenv.mkDerivation { + name = "chromium-sandbox-${src.version}"; + inherit src; + + patchPhase = '' + sed -i -e '/#include.*base_export/c \ + #define BASE_EXPORT __attribute__((visibility("default"))) + ' linux/suid/*.[hc] + ''; + + buildPhase = '' + gcc -Wall -std=gnu99 -o sandbox linux/suid/*.c + ''; + + installPhase = '' + install -svD sandbox "$out/bin/${binary}" + ''; +} diff --git a/pkgs/applications/networking/browsers/chromium/sandbox_userns_29.patch b/pkgs/applications/networking/browsers/chromium/sandbox_userns_29.patch deleted file mode 100644 index c1987c43e150..000000000000 --- a/pkgs/applications/networking/browsers/chromium/sandbox_userns_29.patch +++ /dev/null @@ -1,287 +0,0 @@ -commit 557daf9cc9c02b8f17e6ee84f9b1ae6e6132d478 -Author: aszlig -Date: Thu May 16 14:17:56 2013 +0200 - - zygote: Add support for user namespaces on Linux. - - The implementation is done by patching the Zygote host to execute the sandbox - binary with CLONE_NEWUSER and setting the uid and gid mapping so that the child - process is using uid 0 and gid 0 which map to the current user of the parent. - Afterwards, the sandbox will continue as if it was called as a setuid binary. - - In addition, this adds new_user_namespace as an option in process_util in order - to set the UID and GID mapping correctly. The reason for this is that just - passing CLONE_NEWUSER to clone_flags doesn't help in LaunchProcess(), because - without setting the mappings exec*() will clear the process's capability sets. - - If the kernel doesn't support unprivileged user namespaces and the sandbox - binary doesn't have the setuid flag, the Zygote main process will run without a - sandbox. This is to mimic the behaviour if no SUID sandbox binary path is set. - - Signed-off-by: aszlig - -diff --git a/base/process_util.h b/base/process_util.h -index 0bec8e0..6b6f566 100644 ---- a/base/process_util.h -+++ b/base/process_util.h -@@ -175,6 +175,7 @@ struct LaunchOptions { - new_process_group(false) - #if defined(OS_LINUX) - , clone_flags(0) -+ , new_user_namespace(false) - #endif // OS_LINUX - #if defined(OS_CHROMEOS) - , ctrl_terminal_fd(-1) -@@ -249,6 +250,9 @@ struct LaunchOptions { - #if defined(OS_LINUX) - // If non-zero, start the process using clone(), using flags as provided. - int clone_flags; -+ -+ // If true, start the process in a new user namespace. -+ bool new_user_namespace; - #endif // defined(OS_LINUX) - - #if defined(OS_CHROMEOS) -diff --git a/base/process_util_posix.cc b/base/process_util_posix.cc -index 83afe44..e529b2b 100644 ---- a/base/process_util_posix.cc -+++ b/base/process_util_posix.cc -@@ -34,6 +34,13 @@ - #include "base/threading/platform_thread.h" - #include "base/threading/thread_restrictions.h" - -+#if defined(OS_LINUX) -+#include -+#if !defined(CLONE_NEWUSER) -+#define CLONE_NEWUSER 0x10000000 -+#endif -+#endif -+ - #if defined(OS_CHROMEOS) - #include - #endif -@@ -621,8 +628,19 @@ bool LaunchProcess(const std::vector& argv, - - pid_t pid; - #if defined(OS_LINUX) -- if (options.clone_flags) { -- pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0); -+ int map_pipe_fd[2]; -+ int flags = options.clone_flags; -+ -+ if (options.new_user_namespace) { -+ flags |= CLONE_NEWUSER; -+ if (pipe(map_pipe_fd) < 0) { -+ DPLOG(ERROR) << "user namespace pipe"; -+ return false; -+ } -+ } -+ -+ if (options.clone_flags || options.new_user_namespace) { -+ pid = syscall(__NR_clone, flags, 0, 0, 0); - } else - #endif - { -@@ -635,6 +653,21 @@ bool LaunchProcess(const std::vector& argv, - } else if (pid == 0) { - // Child process - -+#if defined(OS_LINUX) -+ if (options.new_user_namespace) { -+ // Close the write end of the pipe so we get an EOF when the parent closes -+ // the FD. This is to avoid race conditions when the UID/GID mappings are -+ // written _after_ execvp(). -+ close(map_pipe_fd[1]); -+ -+ char dummy; -+ if (HANDLE_EINTR(read(map_pipe_fd[0], &dummy, 1)) != 0) { -+ RAW_LOG(ERROR, "Unexpected input in uid/gid mapping pipe."); -+ _exit(127); -+ } -+ } -+#endif -+ - // DANGER: fork() rule: in the child, if you don't end up doing exec*(), - // you call _exit() instead of exit(). This is because _exit() does not - // call any previously-registered (in the parent) exit handlers, which -@@ -749,6 +782,40 @@ bool LaunchProcess(const std::vector& argv, - _exit(127); - } else { - // Parent process -+#if defined(OS_LINUX) -+ if (options.new_user_namespace) { -+ // We need to write UID/GID mapping here to map the current user outside -+ // the namespace to the root user inside the namespace in order to -+ // correctly "fool" the child process. -+ char buf[256]; -+ int map_fd, map_len; -+ -+ snprintf(buf, sizeof(buf), "/proc/%d/uid_map", pid); -+ map_fd = open(buf, O_RDWR); -+ DPCHECK(map_fd >= 0); -+ snprintf(buf, sizeof(buf), "0 %d 1", geteuid()); -+ map_len = strlen(buf); -+ if (write(map_fd, buf, map_len) != map_len) { -+ RAW_LOG(WARNING, "Can't write to uid_map."); -+ } -+ close(map_fd); -+ -+ snprintf(buf, sizeof(buf), "/proc/%d/gid_map", pid); -+ map_fd = open(buf, O_RDWR); -+ DPCHECK(map_fd >= 0); -+ snprintf(buf, sizeof(buf), "0 %d 1", getegid()); -+ map_len = strlen(buf); -+ if (write(map_fd, buf, map_len) != map_len) { -+ RAW_LOG(WARNING, "Can't write to gid_map."); -+ } -+ close(map_fd); -+ -+ // Close the pipe on the parent, so the child can continue doing the -+ // execvp() call. -+ close(map_pipe_fd[1]); -+ } -+#endif -+ - if (options.wait) { - // While this isn't strictly disk IO, waiting for another process to - // finish is the sort of thing ThreadRestrictions is trying to prevent. -diff --git a/content/browser/zygote_host/zygote_host_impl_linux.cc b/content/browser/zygote_host/zygote_host_impl_linux.cc -index 130f44a..c1232d4 100644 ---- a/content/browser/zygote_host/zygote_host_impl_linux.cc -+++ b/content/browser/zygote_host/zygote_host_impl_linux.cc -@@ -118,25 +118,31 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) { - - sandbox_binary_ = sandbox_cmd.c_str(); - -- // A non empty sandbox_cmd means we want a SUID sandbox. -- using_suid_sandbox_ = !sandbox_cmd.empty(); -+ bool userns_sandbox = false; -+ const std::vector cmd_line_unwrapped(cmd_line.argv()); - -- if (using_suid_sandbox_) { -+ if (!sandbox_cmd.empty()) { - struct stat st; - if (stat(sandbox_binary_.c_str(), &st) != 0) { - LOG(FATAL) << "The SUID sandbox helper binary is missing: " - << sandbox_binary_ << " Aborting now."; - } - -- if (access(sandbox_binary_.c_str(), X_OK) == 0 && -- (st.st_uid == 0) && -- (st.st_mode & S_ISUID) && -- (st.st_mode & S_IXOTH)) { -+ if (access(sandbox_binary_.c_str(), X_OK) == 0) { -+ using_suid_sandbox_ = true; -+ - cmd_line.PrependWrapper(sandbox_binary_); - - scoped_ptr - sandbox_client(sandbox::SetuidSandboxClient::Create()); - sandbox_client->SetupLaunchEnvironment(); -+ -+ if (!((st.st_uid == 0) && -+ (st.st_mode & S_ISUID) && -+ (st.st_mode & S_IXOTH))) { -+ userns_sandbox = true; -+ sandbox_client->SetNoSuid(); -+ } - } else { - LOG(FATAL) << "The SUID sandbox helper binary was found, but is not " - "configured correctly. Rather than run without sandboxing " -@@ -160,7 +166,19 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) { - base::ProcessHandle process = -1; - base::LaunchOptions options; - options.fds_to_remap = &fds_to_map; -+ if (userns_sandbox) -+ options.new_user_namespace = true; - base::LaunchProcess(cmd_line.argv(), options, &process); -+ -+ if (process == -1 && userns_sandbox) { -+ LOG(ERROR) << "User namespace sandbox failed to start, running without " -+ << "sandbox! You need at least kernel 3.8.0 with CONFIG_USER_NS " -+ << "enabled in order to use the sandbox without setuid bit."; -+ using_suid_sandbox_ = false; -+ options.new_user_namespace = false; -+ base::LaunchProcess(cmd_line_unwrapped, options, &process); -+ } -+ - CHECK(process != -1) << "Failed to launch zygote process"; - - if (using_suid_sandbox_) { -diff --git a/content/zygote/zygote_main_linux.cc b/content/zygote/zygote_main_linux.cc -index 7d01722..2f445ef 100644 ---- a/content/zygote/zygote_main_linux.cc -+++ b/content/zygote/zygote_main_linux.cc -@@ -395,6 +395,13 @@ static bool EnterSandbox(sandbox::SetuidSandboxClient* setuid_sandbox, - *has_started_new_init = true; - } - -+ // Don't set non-dumpable, as it causes trouble when the host tries to find -+ // the zygote process (XXX: Not quite sure why this happens with user -+ // namespaces). Fortunately, we also have the seccomp filter sandbox which -+ // should disallow the use of ptrace. -+ if (setuid_sandbox->IsNoSuid()) -+ return true; -+ - #if !defined(OS_OPENBSD) - // Previously, we required that the binary be non-readable. This causes the - // kernel to mark the process as non-dumpable at startup. The thinking was -diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc -index 34231d4..36e3201 100644 ---- a/sandbox/linux/suid/client/setuid_sandbox_client.cc -+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc -@@ -166,6 +166,10 @@ bool SetuidSandboxClient::IsInNewNETNamespace() const { - return env_->HasVar(kSandboxNETNSEnvironmentVarName); - } - -+bool SetuidSandboxClient::IsNoSuid() const { -+ return env_->HasVar(kSandboxNoSuidVarName); -+} -+ - bool SetuidSandboxClient::IsSandboxed() const { - return sandboxed_; - } -@@ -175,5 +179,9 @@ void SetuidSandboxClient::SetupLaunchEnvironment() { - SetSandboxAPIEnvironmentVariable(env_); - } - -+void SetuidSandboxClient::SetNoSuid() { -+ env_->SetVar(kSandboxNoSuidVarName, "1"); -+} -+ - } // namespace sandbox - -diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.h b/sandbox/linux/suid/client/setuid_sandbox_client.h -index a9f6536..2e8113a 100644 ---- a/sandbox/linux/suid/client/setuid_sandbox_client.h -+++ b/sandbox/linux/suid/client/setuid_sandbox_client.h -@@ -39,6 +39,8 @@ class SetuidSandboxClient { - bool IsInNewPIDNamespace() const; - // Did the setuid helper create a new network namespace ? - bool IsInNewNETNamespace() const; -+ // Is sandboxed without SUID binary ? -+ bool IsNoSuid() const; - // Are we done and fully sandboxed ? - bool IsSandboxed() const; - -@@ -46,6 +48,8 @@ class SetuidSandboxClient { - // helper. - void SetupLaunchEnvironment(); - -+ void SetNoSuid(); -+ - private: - // Holds the environment. Will never be NULL. - base::Environment* env_; -diff --git a/sandbox/linux/suid/common/sandbox.h b/sandbox/linux/suid/common/sandbox.h -index aad4ff8..bd710d5 100644 ---- a/sandbox/linux/suid/common/sandbox.h -+++ b/sandbox/linux/suid/common/sandbox.h -@@ -18,6 +18,7 @@ static const char kAdjustLowMemMarginSwitch[] = "--adjust-low-mem"; - - static const char kSandboxDescriptorEnvironmentVarName[] = "SBX_D"; - static const char kSandboxHelperPidEnvironmentVarName[] = "SBX_HELPER_PID"; -+static const char kSandboxNoSuidVarName[] = "SBX_NO_SUID"; - - static const long kSUIDSandboxApiNumber = 1; - static const char kSandboxEnvironmentApiRequest[] = "SBX_CHROME_API_RQ"; diff --git a/pkgs/applications/networking/browsers/chromium/sources.nix b/pkgs/applications/networking/browsers/chromium/sources.nix index 79aa06192c55..96c58ef8e9c9 100644 --- a/pkgs/applications/networking/browsers/chromium/sources.nix +++ b/pkgs/applications/networking/browsers/chromium/sources.nix @@ -1,18 +1,18 @@ # This file is autogenerated from update.sh in the same directory. { dev = { - version = "31.0.1626.0"; - url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-31.0.1626.0.tar.xz"; - sha256 = "15rbh8hjs9ipkl4c34701p1zpfmrsw6dya03a8ym5pa5dha949mp"; + version = "31.0.1650.4"; + url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-31.0.1650.4.tar.xz"; + sha256 = "1i61izfn06ldxkgdrisdibbn5hrghyjslf81yszpw69k0z87k3lm"; }; beta = { - version = "30.0.1599.37"; - url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.37.tar.xz"; - sha256 = "05xxafl1dgbi040zmhzi5v5m6myi7c6jgq2nrksmrx2i91kfir2k"; + version = "30.0.1599.66"; + url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.66.tar.xz"; + sha256 = "092ps4y4s544lswrqqk8qij5n7ax4bsfl5vdj5cwfncvsqpjds4g"; }; stable = { - version = "29.0.1547.65"; - url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.65.tar.xz"; - sha256 = "0vmb5dsh61jyr68838pnczlc2mhvvil4hjkrmwklzlfz30c8s2w6"; + version = "30.0.1599.66"; + url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.66.tar.xz"; + sha256 = "092ps4y4s544lswrqqk8qij5n7ax4bsfl5vdj5cwfncvsqpjds4g"; }; } diff --git a/pkgs/applications/networking/dropbox-cli/default.nix b/pkgs/applications/networking/dropbox-cli/default.nix index 34fe6db8932b..194b7d92c403 100644 --- a/pkgs/applications/networking/dropbox-cli/default.nix +++ b/pkgs/applications/networking/dropbox-cli/default.nix @@ -1,7 +1,8 @@ { stdenv, coreutils, fetchurl, python, dropbox }: stdenv.mkDerivation { - name = "dropbox-cli"; + # 1.6.0 because it's the only version mentioned in the script + name = "dropbox-cli-1.6.0"; src = fetchurl { # Note: dropbox doesn't version this file. Annoying. @@ -29,7 +30,7 @@ stdenv.mkDerivation { meta = { homepage = http://dropbox.com; - description = "Command line client for the dropbox daemon."; + description = "Command line client for the dropbox daemon"; license = stdenv.lib.licenses.gpl3; maintainers = with stdenv.lib.maintainers; [ the-kenny ]; # NOTE: Dropbox itself only works on linux, so this is ok. diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix index 4c8204b37ee3..51505d614399 100644 --- a/pkgs/applications/science/math/R/default.nix +++ b/pkgs/applications/science/math/R/default.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "R-3.0.1"; + name = "R-3.0.2"; src = fetchurl { - url = "http://ftp5.gwdg.de/pub/misc/cran/src/base/R-3/${name}.tar.gz"; - sha256 = "0d3iv382bsyz6ad5fk382x7sy3qzgpqvd0fw26r0648lyf54i45g"; + url = "http://cran.r-project.org/src/base/R-3/${name}.tar.gz"; + sha256 = "0jq2vk6bgksbvgmdjvv7vfj6llp091d0nhl5j825aya4c2nhavlm"; }; buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt @@ -55,6 +55,8 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + setupHook = ./setup-hook.sh; + meta = { homepage = "http://www.r-project.org/"; description = "a free software environment for statistical computing and graphics"; diff --git a/pkgs/applications/science/math/R/setup-hook.sh b/pkgs/applications/science/math/R/setup-hook.sh new file mode 100644 index 000000000000..a31289bbfba9 --- /dev/null +++ b/pkgs/applications/science/math/R/setup-hook.sh @@ -0,0 +1,5 @@ +addRLibPath () { + addToSearchPath R_LIBS_SITE $1/library +} + +envHooks=(${envHooks[@]} addRLibPath) diff --git a/pkgs/applications/science/math/mathematica/default.nix b/pkgs/applications/science/math/mathematica/default.nix index d0429a45190e..cedb491cc8b9 100644 --- a/pkgs/applications/science/math/mathematica/default.nix +++ b/pkgs/applications/science/math/mathematica/default.nix @@ -23,7 +23,7 @@ let else if stdenv.system == "x86_64-linux" then "Linux-x86-64" else - abort "Mathematica requires i686-linux or x86_64 linux"; + throw "Mathematica requires i686-linux or x86_64 linux"; in stdenv.mkDerivation rec { diff --git a/pkgs/applications/science/math/pssp/default.nix b/pkgs/applications/science/math/pssp/default.nix new file mode 100644 index 000000000000..587f41fe998b --- /dev/null +++ b/pkgs/applications/science/math/pssp/default.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchurl, libxml2, readline, zlib, perl, cairo, gtk, gsl +, pkgconfig, gtksourceview, pango, gettext, libglade +}: + +stdenv.mkDerivation rec { + name = "pspp-0.8.1"; + + src = fetchurl { + url = "mirror://gnu/pspp/${name}.tar.gz"; + sha256 = "0qhxsdbwxd3cn1shc13wxvx2lg32lp4z6sz24kv3jz7p5xfi8j7x"; + }; + + buildInputs = [ libxml2 readline zlib perl cairo gtk gsl pkgconfig + gtksourceview pango gettext libglade ]; + + doCheck = false; + + enableParallelBuilding = true; + + meta = { + homepage = "http://www.gnu.org/software/pspp/"; + description = "a free replacement for SPSS, a program for statistical analysis of sampled data"; + license = stdenv.lib.licenses.gpl3Plus; + + longDescription = '' + PSPP is a program for statistical analysis of sampled data. It is + a Free replacement for the proprietary program SPSS. + + PSPP can perform descriptive statistics, T-tests, anova, linear + and logistic regression, cluster analysis, factor analysis, + non-parametric tests and more. Its backend is designed to perform + its analyses as fast as possible, regardless of the size of the + input data. You can use PSPP with its graphical interface or the + more traditional syntax commands. + ''; + + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.simons ]; + }; +} diff --git a/pkgs/applications/science/math/speedcrunch/default.nix b/pkgs/applications/science/math/speedcrunch/default.nix new file mode 100644 index 000000000000..dee33a04be22 --- /dev/null +++ b/pkgs/applications/science/math/speedcrunch/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchurl, qt, cmake }: + +stdenv.mkDerivation rec { + name = "speedcrunch-0.11-alpha"; + + src = fetchurl { + url = "http://speedcrunch.googlecode.com/files/${name}.tar.gz"; + sha256 = "c6d6328e0c018cd8b98a0e86fb6c49fedbab5dcc831b47fbbc1537730ff80882"; + }; + + patches = [./speedcrunch-0.11-alpha-dso_linking.patch]; + + buildInputs = [cmake qt]; + + dontUseCmakeBuildDir = true; + + cmakeDir = "../src"; + + preConfigure = '' + mkdir -p build + cd build + ''; + + buildFlags = "VERBOSE=1"; + + meta = { + homepage = "http://speedcrunch.digitalfanatics.org"; + license = "GPLv2+"; + description = "A fast power user calculator"; + longDescription = '' + SpeedCrunch is a fast, high precision and powerful desktop calculator. + Among its distinctive features are a scrollable display, up to 50 decimal + precisions, unlimited variable storage, intelligent automatic completion + full keyboard-friendly and more than 15 built-in math function. + ''; + }; + +} diff --git a/pkgs/applications/science/math/speedcrunch/speedcrunch-0.11-alpha-dso_linking.patch b/pkgs/applications/science/math/speedcrunch/speedcrunch-0.11-alpha-dso_linking.patch new file mode 100644 index 000000000000..1b03c16b63d1 --- /dev/null +++ b/pkgs/applications/science/math/speedcrunch/speedcrunch-0.11-alpha-dso_linking.patch @@ -0,0 +1,23 @@ +diff -up speedcrunch-0.11-alpha/src/CMakeLists.txt.dso_linking speedcrunch-0.11-alpha/src/CMakeLists.txt +--- speedcrunch-0.11-alpha/src/CMakeLists.txt.dso_linking 2009-11-04 15:37:15.000000000 -0600 ++++ speedcrunch-0.11-alpha/src/CMakeLists.txt 2010-06-25 13:25:07.133460528 -0500 +@@ -54,6 +54,10 @@ ENDIF(CMAKE_COMPILER_IS_GNUCXX ) + SET(QT_USE_QTNETWORK TRUE) + #SET(QT_USE_QTXML TRUE) + find_package(Qt4 REQUIRED) ++if (Q_WS_X11) ++ find_package(X11 REQUIRED) ++endif (Q_WS_X11) ++ + include(${QT_USE_FILE}) + + # build everything +@@ -80,7 +84,7 @@ ENDIF( APPLE ) + + ADD_CUSTOM_TARGET( confclean COMMAND rm -rf Makefile CMakeFiles/ CMakeCache.txt cmake_install.cmake DartTestfile.txt install_manifest.txt ) + +-TARGET_LINK_LIBRARIES(${PROGNAME} ${QT_LIBRARIES}) ++TARGET_LINK_LIBRARIES(${PROGNAME} ${QT_LIBRARIES} ${X11_X11_LIB} ) + # only needed for static builds when directx is enabled in qt and you + # get a linker error because of missing a directx function + #IF(WIN32) diff --git a/pkgs/applications/version-management/git-and-tools/fast-export/default.nix b/pkgs/applications/version-management/git-and-tools/fast-export/default.nix index 44e9cd535be6..dcfcce1fcf63 100644 --- a/pkgs/applications/version-management/git-and-tools/fast-export/default.nix +++ b/pkgs/applications/version-management/git-and-tools/fast-export/default.nix @@ -5,7 +5,8 @@ stdenv.mkDerivation { src = fetchgit { url = "git://repo.or.cz/fast-export.git"; - rev = "refs/heads/master"; + rev = "aaccfba"; + sha256 = "c9d1498e31d32b8271c1e651175794718611f93b4843dea569d831005de0a750"; }; buildInputs = [mercurial.python mercurial makeWrapper subversion]; @@ -19,7 +20,6 @@ stdenv.mkDerivation { sed -i "s@/usr/bin/env.*@$(type -p python)@" *.py l=$out/libexec/git-fast-export mkdir -p $out/{bin,doc/git-fast-export} $l - mv *.txt $out/doc/git-fast-export sed -i "s@ROOT=.*@ROOT=$l@" *.sh mv *.sh $out/bin mv *.py $l diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix index 8b1afc2505a1..d71c1dff209e 100644 --- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix @@ -1,35 +1,35 @@ { cabal, aeson, async, blazeBuilder, bloomfilter, bup -, caseInsensitive, clientsession, cryptoApi, curl, dataDefault -, dataenc, DAV, dbus, dlist, dns, editDistance +, caseInsensitive, clientsession, cryptoApi, cryptohash, curl +, dataDefault, dataenc, DAV, dbus, dlist, dns, editDistance , extensibleExceptions, feed, filepath, git, gnupg1, gnutls, hamlet , hinotify, hS3, hslogger, HTTP, httpConduit, httpTypes, HUnit , IfElse, json, lsof, MissingH, MonadCatchIOTransformers , monadControl, mtl, network, networkInfo, networkMulticast -, networkProtocolXmpp, openssh, QuickCheck, random, regexTdfa +, networkProtocolXmpp, openssh, perl, QuickCheck, random, regexTdfa , rsync, SafeSemaphore, SHA, stm, text, time, transformers , unixCompat, utf8String, uuid, wai, waiLogger, warp, which , xmlConduit, xmlTypes, yesod, yesodCore, yesodDefault, yesodForm -, yesodStatic, fetchurl, perl +, yesodStatic }: cabal.mkDerivation (self: { pname = "git-annex"; - version = "4.20130909"; - sha256 = "0rqbaz4hqfv1nxks62bx282vsvv7vzaxxz1576wk93f659rd06jp"; + version = "4.20130927"; + sha256 = "0ycfdwqicmqfj5ygrk11z7cz2b28ccvb45ny8h5i0wr6mg3apj38"; isLibrary = false; isExecutable = true; buildDepends = [ aeson async blazeBuilder bloomfilter caseInsensitive clientsession - cryptoApi dataDefault dataenc DAV dbus dlist dns editDistance - extensibleExceptions feed filepath gnutls hamlet hinotify hS3 - hslogger HTTP httpConduit httpTypes HUnit IfElse json MissingH - MonadCatchIOTransformers monadControl mtl network networkInfo - networkMulticast networkProtocolXmpp QuickCheck random regexTdfa - SafeSemaphore SHA stm text time transformers unixCompat utf8String - uuid wai waiLogger warp xmlConduit xmlTypes yesod yesodCore - yesodDefault yesodForm yesodStatic + cryptoApi cryptohash dataDefault dataenc DAV dbus dlist dns + editDistance extensibleExceptions feed filepath gnutls hamlet + hinotify hS3 hslogger HTTP httpConduit httpTypes HUnit IfElse json + MissingH MonadCatchIOTransformers monadControl mtl network + networkInfo networkMulticast networkProtocolXmpp QuickCheck random + regexTdfa SafeSemaphore SHA stm text time transformers unixCompat + utf8String uuid wai waiLogger warp xmlConduit xmlTypes yesod + yesodCore yesodDefault yesodForm yesodStatic ]; - buildTools = [ bup curl git gnupg1 lsof openssh rsync which perl ]; + buildTools = [ bup curl git gnupg1 lsof openssh perl rsync which ]; configureFlags = "-fS3 -fWebDAV -fInotify @@ -42,18 +42,12 @@ cabal.mkDerivation (self: { -fProduction -fTDFA"; preConfigure = "patchShebangs ."; - installPhase = "make PREFIX=$out CABAL=./Setup docs install"; checkPhase = '' export HOME="$NIX_BUILD_TOP/tmp" mkdir "$HOME" cp dist/build/git-annex/git-annex git-annex ./git-annex test ''; - patches = [ (fetchurl { url = "https://github.com/joeyh/git-annex/commit/e4d0b2f180627472b017af8bcfc2ae3fc04d6767.patch"; - sha256 = "08lz0zq5y3b3wgi1vbzka7kyihkhzjv02pmq8ab02674yrqrnr5k"; }) - (fetchurl { url = "https://github.com/joeyh/git-annex/commit/26baae8967d55d0793d0609475a75d265bdd64a3.patch"; - sha256 = "0yzgj55jjcqv1975bnj4wafyh4vdzjjn4ajx3wahsyg0gsrm5lpv"; }) - ]; meta = { homepage = "http://git-annex.branchable.com/"; description = "manage files with git, without checking their contents into git"; diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix index df9b91ca32de..6009493b4dbc 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -10,7 +10,7 @@ let - version = "1.8.3.4"; + version = "1.8.4"; svn = subversionClient.override { perlBindings = true; }; @@ -21,7 +21,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://git-core.googlecode.com/files/git-${version}.tar.gz"; - sha256 = "1nfr4hgqs3b6k9wanqcix0wlw71q61h5irxiavlspd4jvzrcv8nz"; + sha256 = "156bwqqgaw65rsvbb4wih5jfg94bxyf6p16mdwf0ky3f4ln55s2i"; }; patches = [ ./docbook2texi.patch ./symlinks-in-bin.patch ]; diff --git a/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch b/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch index c89842c180e6..bf36b2d321f3 100644 --- a/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch +++ b/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch @@ -2,19 +2,19 @@ This patch does two things: (1) use the right name for `docbook2texi', and (2) make sure `gitman.info' isn't produced since it's broken (duplicate node names). -diff -u -r -w git-1.6.3.3.orig/Documentation/Makefile git-1.6.3.3/Documentation/Makefile ---- git-1.6.3.3.orig/Documentation/Makefile 2009-07-02 17:07:17.000000000 +0200 -+++ git-1.6.3.3/Documentation/Makefile 2009-07-02 17:08:49.000000000 +0200 -@@ -51,7 +51,7 @@ - infodir?=$(prefix)/share/info - MAKEINFO=makeinfo - INSTALL_INFO=install-info --DOCBOOK2X_TEXI=docbook2x-texi -+DOCBOOK2X_TEXI=docbook2texi - DBLATEX=dblatex +diff -ru git-1.8.4-orig/Documentation/Makefile git-1.8.4/Documentation/Makefile +--- git-1.8.4-orig/Documentation/Makefile 2013-08-23 21:38:43.000000000 +0200 ++++ git-1.8.4/Documentation/Makefile 2013-09-30 14:48:51.532890378 +0200 +@@ -101,7 +101,7 @@ + + MAKEINFO = makeinfo + INSTALL_INFO = install-info +-DOCBOOK2X_TEXI = docbook2x-texi ++DOCBOOK2X_TEXI = docbook2texi + DBLATEX = dblatex ifndef PERL_PATH PERL_PATH = /usr/bin/perl -@@ -153,7 +153,7 @@ +@@ -205,7 +205,7 @@ man5: $(DOC_MAN5) man7: $(DOC_MAN7) @@ -23,7 +23,7 @@ diff -u -r -w git-1.6.3.3.orig/Documentation/Makefile git-1.6.3.3/Documentation/ pdf: user-manual.pdf -@@ -169,10 +169,9 @@ +@@ -221,10 +221,9 @@ install-info: info $(INSTALL) -d -m 755 $(DESTDIR)$(infodir) @@ -35,5 +35,3 @@ diff -u -r -w git-1.6.3.3.orig/Documentation/Makefile git-1.6.3.3/Documentation/ else \ echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \ fi -Only in git-1.6.3.3/Documentation: Makefile.orig -Only in git-1.6.3.3/Documentation: Makefile.rej diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix index 95b244e7d91e..b1469038d42d 100644 --- a/pkgs/applications/version-management/subversion/default.nix +++ b/pkgs/applications/version-management/subversion/default.nix @@ -21,13 +21,13 @@ assert compressionSupport -> neon.compressionSupport; stdenv.mkDerivation rec { - version = "1.7.11"; + version = "1.7.13"; name = "subversion-${version}"; src = fetchurl { url = "mirror://apache/subversion//${name}.tar.bz2"; - sha1 = "d82e187803043b74c072cd5a861ac02e4a027684"; + sha1 = "844bb756ec505edaa12b9610832bcd21567139f1"; }; buildInputs = [ zlib apr aprutil sqlite ] diff --git a/pkgs/applications/video/gpac/default.nix b/pkgs/applications/video/gpac/default.nix index 6a863a5e2c4b..84848d587533 100644 --- a/pkgs/applications/video/gpac/default.nix +++ b/pkgs/applications/video/gpac/default.nix @@ -4,9 +4,9 @@ stdenv.mkDerivation rec { name = "gpac-0.5.0-svn"; src = fetchsvn { - url = "https://gpac.svn.sourceforge.net/svnroot/gpac/trunk/gpac"; - rev = "4253"; - sha256 = "0z4bd63c805q53hpb09gq0m0apy12z5a90zxx4jjx3ln64xq0pnn"; + url = "http://svn.code.sf.net/p/gpac/code/trunk/gpac"; + rev = "4749"; + sha256 = "0y38pmp64a2l70y1yby90qzxfzx8y7r0cdmgjxzw86jh6si5ndhp"; }; # this is the bare minimum configuration, as I'm only interested in MP4Box diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix index 412d03daa2e7..3d48b296ad9d 100644 --- a/pkgs/applications/video/vlc/default.nix +++ b/pkgs/applications/video/vlc/default.nix @@ -9,12 +9,12 @@ }: stdenv.mkDerivation rec { - name = "vlc-${version}a"; - version = "2.0.8"; + name = "vlc-${version}"; + version = "2.1.0"; src = fetchurl { url = "http://download.videolan.org/pub/videolan/vlc/${version}/${name}.tar.xz"; - sha256 = "1lilj14il52731h7qvrjcss0zivghcxv8jmmxf23qwl7qhs5y885"; + sha256 = "1xs1zsjip6ljqyy5jlqf14ncda4pjx166bqvjqgcyskq66m7s5yj"; }; buildInputs = diff --git a/pkgs/applications/video/xbmc/default.nix b/pkgs/applications/video/xbmc/default.nix index d3b3556baf4d..59537c7dce02 100644 --- a/pkgs/applications/video/xbmc/default.nix +++ b/pkgs/applications/video/xbmc/default.nix @@ -19,6 +19,7 @@ , udev, udevSupport ? true , libusb ? null, usbSupport ? false , samba ? null, sambaSupport ? true +, libmicrohttpd # TODO: would be nice to have nfsSupport (needs libnfs library) # TODO: librtmp , libvdpau ? null, vdpauSupport ? true @@ -43,7 +44,7 @@ stdenv.mkDerivation rec { buildInputs = [ makeWrapper pkgconfig cmake gnumake yasm python - boost + boost libmicrohttpd gettext pcre yajl fribidi openssl gperf tinyxml2 taglib libssh swig jre libX11 xproto inputproto @@ -75,7 +76,6 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-external-libraries" - "--disable-webserver" ] ++ lib.optional (! sambaSupport) "--disable-samba" ++ lib.optional vdpauSupport "--enable-vdpau" diff --git a/pkgs/build-support/checker/default.nix b/pkgs/build-support/checker/default.nix deleted file mode 100644 index 66f8c45e37bc..000000000000 --- a/pkgs/build-support/checker/default.nix +++ /dev/null @@ -1,31 +0,0 @@ -# -# Checks that all set options are described. -# -options: configuration: -with builtins; -let lib=(import ../../lib); in -with lib; - -let - findInList = p: list: default: - if list == [] then default else - if (p (head list)) then (head list) else - findInList p (tail list) default; - - - checkAttrInclusion = s: a: b: - ( - if ! isAttrs b then s else - if (lib.attrByPath ["_type"] "" b) == "option" then "" else - findInList (x : x != "") - ( map (x: if (x == "servicesProposal") # this attr will be checked at another place ( -> upstart-jobs/default.nix ) - then "" - else checkAttrInclusion - (s + "." + x) - (builtins.getAttr x a) - (lib.attrByPath [x] null b)) - (attrNames a)) "" - ); -in - checkAttrInclusion "" configuration options - diff --git a/pkgs/build-support/fetchurl/mirrors.nix b/pkgs/build-support/fetchurl/mirrors.nix index b7461678fea4..c4841c50d94c 100644 --- a/pkgs/build-support/fetchurl/mirrors.nix +++ b/pkgs/build-support/fetchurl/mirrors.nix @@ -271,4 +271,100 @@ rec { ftp://ftp.xemacs.org/sites/metalab.unc.edu/ ]; + # CRAN mirrors (from http://cran.r-project.org/mirrors.html) + cran = [ + http://cran.r-project.org/ + http://cran.rstudio.com/ + http://mirror.fcaglp.unlp.edu.ar/CRAN/ + http://r.mirror.mendoza-conicet.gob.ar/ + http://cran.csiro.au/ + http://cran.ms.unimelb.edu.au/ + http://cran.at.r-project.org/ + http://www.freestatistics.org/cran/ + http://cran-r.c3sl.ufpr.br/ + http://cran.fiocruz.br/ + http://www.vps.fmvz.usp.br/CRAN/ + http://brieger.esalq.usp.br/CRAN/ + http://cran.stat.sfu.ca/ + http://mirror.its.dal.ca/cran/ + http://probability.ca/cran/ + http://cran.skazkaforyou.com/ + http://cran.parentingamerica.com/ + http://dirichlet.mat.puc.cl/ + http://ftp.ctex.org/mirrors/CRAN/ + http://mirror.bjtu.edu.cn/cran + http://cran.dataguru.cn/ + http://mirrors.ustc.edu.cn/CRAN/ + http://mirrors.xmu.edu.cn/CRAN/ + http://www.laqee.unal.edu.co/CRAN/ + http://www.icesi.edu.co/CRAN/ + http://mirrors.dotsrc.org/cran/ + http://cran.espol.edu.ec/ + http://cran.univ-lyon1.fr/ + http://mirror.ibcp.fr/pub/CRAN/ + http://ftp.igh.cnrs.fr/pub/CRAN/ + http://cran.irsn.fr/ + http://cran.univ-paris1.fr/ + http://mirrors.softliste.de/cran/ + http://cran.r-mirror.de/ + http://ftp5.gwdg.de/pub/misc/cran/ + http://cran.cc.uoc.gr/ + http://cran.rapporter.net/ + http://ftp.iitm.ac.in/cran/ + http://cran.repo.bppt.go.id/ + http://cran.um.ac.ir/ + http://ftp.heanet.ie/mirrors/cran.r-project.org/ + http://cran.mirror.garr.it/mirrors/CRAN/ + http://cran.stat.unipd.it/ + http://dssm.unipa.it/CRAN/ + http://essrc.hyogo-u.ac.jp/cran/ + http://cran.md.tsukuba.ac.jp/ + http://cran.ism.ac.jp/ + http://cran.nexr.com/ + http://biostat.cau.ac.kr/CRAN/ + http://cran.itam.mx/ + http://www.est.colpos.mx/R-mirror/ + http://cran.xl-mirror.nl/ + http://cran-mirror.cs.uu.nl/ + http://cran.stat.auckland.ac.nz/ + http://cran.uib.no/ + http://cran.stat.upd.edu.ph/ + http://r.meteo.uni.wroc.pl/ + http://cran.dcc.fc.up.pt/ + http://cran.gis-lab.info/ + http://cran.stat.nus.edu.sg/ + http://cran.fyxm.net/ + http://r.adu.org.za/ + http://cran.mirror.ac.za/ + http://cran.es.r-project.org/ + http://ftp.sunet.se/pub/lang/CRAN/ + http://stat.ethz.ch/CRAN/ + http://cran.cs.pu.edu.tw/ + http://cran.csie.ntu.edu.tw/ + http://mirrors.psu.ac.th/pub/cran/ + http://cran.pau.edu.tr/ + http://www.stats.bris.ac.uk/R/ + http://cran.ma.imperial.ac.uk/ + http://star-www.st-andrews.ac.uk/cran/ + http://cran.cnr.berkeley.edu/ + http://cran.stat.ucla.edu/ + http://streaming.stat.iastate.edu/CRAN/ + http://ftp.ussg.iu.edu/CRAN/ + http://rweb.quant.ku.edu/cran/ + http://watson.nci.nih.gov/cran_mirror/ + http://cran.mtu.edu/ + http://cran.wustl.edu/ + http://cran.case.edu/ + http://ftp.osuosl.org/pub/cran/ + http://lib.stat.cmu.edu/R/CRAN/ + http://cran.mirrors.hoobly.com/ + http://mirrors.nics.utk.edu/cran/ + http://cran.revolutionanalytics.com/ + http://cran.fhcrc.org/ + http://cran.cs.wwu.edu/ + http://camoruco.ing.uc.edu.ve/cran/ + http://cran.vinastat.com/ + http://lib.stat.cmu.edu/ + ]; + } diff --git a/pkgs/desktops/gnome-2/desktop/libgweather/default.nix b/pkgs/desktops/gnome-2/desktop/libgweather/default.nix index dc8057ff0f54..7a1b4d1f5318 100644 --- a/pkgs/desktops/gnome-2/desktop/libgweather/default.nix +++ b/pkgs/desktops/gnome-2/desktop/libgweather/default.nix @@ -1,4 +1,6 @@ -{stdenv, fetchurl, pkgconfig, libxml2, gtk, intltool, GConf, libsoup, libtasn1, nettle, gmp}: +{ stdenv, fetchurl, pkgconfig, libxml2, gtk, intltool, GConf, libsoup, libtasn1, nettle, gmp }: + +assert stdenv.isLinux; stdenv.mkDerivation rec { name = "libgweather-2.30.3"; diff --git a/pkgs/desktops/gnome-3/core/gcr/default.nix b/pkgs/desktops/gnome-3/core/gcr/default.nix index cf9774c5511c..44053b88fbc7 100644 --- a/pkgs/desktops/gnome-3/core/gcr/default.nix +++ b/pkgs/desktops/gnome-3/core/gcr/default.nix @@ -14,5 +14,7 @@ stdenv.mkDerivation rec { libgcrypt libtasn1 dbus_glib gtk pango gdk_pixbuf atk ]; + configureFlags = "--disable-introspection"; + #doCheck = true; } diff --git a/pkgs/development/compilers/avra/default.nix b/pkgs/development/compilers/avra/default.nix index db9fafa42f10..706659194005 100644 --- a/pkgs/development/compilers/avra/default.nix +++ b/pkgs/development/compilers/avra/default.nix @@ -19,10 +19,11 @@ stdenv.mkDerivation rec { automake -a ''; - meta = { + meta = with stdenv.lib; { description = "Assember for the Atmel AVR microcontroller family"; homepage = http://avra.sourceforge.net/; - license = stdenv.lib.licenses.gpl2Plus; - maintainers = with stdenv.lib.maintainers; [ the-kenny ]; + license = licenses.gpl2Plus; + platforms = platforms.all; + maintainers = with maintainers; [ the-kenny ]; }; } diff --git a/pkgs/development/compilers/idris/default.nix b/pkgs/development/compilers/idris/default.nix index 8c11aa8bc72b..7252343aa559 100644 --- a/pkgs/development/compilers/idris/default.nix +++ b/pkgs/development/compilers/idris/default.nix @@ -1,17 +1,19 @@ { cabal, ansiTerminal, binary, boehmgc, Cabal, filepath, gmp, happy -, haskeline, languageJava, libffi, llvmGeneral, mtl, parsec, split -, text, time, transformers, vector, vectorBinaryInstances +, haskeline, languageJava, libffi, llvmGeneral, llvmGeneralPure +, mtl, parsec, parsers, split, text, time, transformers, trifecta +, unorderedContainers, utf8String, vector, vectorBinaryInstances }: cabal.mkDerivation (self: { pname = "idris"; - version = "0.9.9.1"; - sha256 = "1glxkx2hcr0lrvj3jjnlqqifyzyixjzq1hl86wmn540dccw82yah"; + version = "0.9.9.2"; + sha256 = "0xfwnlf3jca64i4piyx9scmk4z8f6rak2cvrcjwji505a9vaa0rw"; isLibrary = false; isExecutable = true; buildDepends = [ ansiTerminal binary Cabal filepath haskeline languageJava libffi - llvmGeneral mtl parsec split text time transformers vector + llvmGeneral llvmGeneralPure mtl parsec parsers split text time + transformers trifecta unorderedContainers utf8String vector vectorBinaryInstances ]; buildTools = [ happy ]; diff --git a/pkgs/development/interpreters/elixir/default.nix b/pkgs/development/interpreters/elixir/default.nix index 3ac2368342da..9eba4275dd31 100644 --- a/pkgs/development/interpreters/elixir/default.nix +++ b/pkgs/development/interpreters/elixir/default.nix @@ -29,9 +29,9 @@ stdenv.mkDerivation { done ''; - meta = { + meta = with stdenv.lib; { homepage = "http://elixir-lang.org/"; - description = "Elixir is a functional, meta-programming aware language built on top of the Erlang VM."; + description = "A functional, meta-programming aware language built on top of the Erlang VM"; longDescription = '' Elixir is a functional, meta-programming @@ -41,8 +41,8 @@ stdenv.mkDerivation { fault-tolerant applications with hot code upgrades.p ''; - platforms = stdenv.lib.platforms.linux; - - maintainers = [ stdenv.lib.maintainers.the-kenny ]; + license = licenses.epl10; + platforms = platforms.linux; + maintainers = [ maintainers.the-kenny ]; }; } diff --git a/pkgs/development/interpreters/lua-5/5.1.nix b/pkgs/development/interpreters/lua-5/5.1.nix index aa2b03838cd8..a6caf0023e35 100644 --- a/pkgs/development/interpreters/lua-5/5.1.nix +++ b/pkgs/development/interpreters/lua-5/5.1.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { patches = [ dsoPatch ]; configurePhase = '' - makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-O2 -fPIC" LDLAGS="-fPIC" ) + makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC" LDLAGS="-fPIC" ) installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.5.1 liblua.so.5.1.5" INSTALL_DATA='cp -d' ) ''; diff --git a/pkgs/development/interpreters/lua-5/5.2.nix b/pkgs/development/interpreters/lua-5/5.2.nix index f8787dcc7f07..bd5a868c2d5f 100644 --- a/pkgs/development/interpreters/lua-5/5.2.nix +++ b/pkgs/development/interpreters/lua-5/5.2.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { patches = [ dsoPatch ]; configurePhase = '' - makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-O2 -fPIC" LDLAGS="-fPIC" V=${majorVersion} R=${version} ) + makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC" LDLAGS="-fPIC" V=${majorVersion} R=${version} ) installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.${majorVersion} liblua.so.${version}" INSTALL_DATA='cp -d' ) ''; diff --git a/pkgs/development/interpreters/ruby/generated.nix b/pkgs/development/interpreters/ruby/generated.nix index 7c062a44ca17..323d068bc9c8 100644 --- a/pkgs/development/interpreters/ruby/generated.nix +++ b/pkgs/development/interpreters/ruby/generated.nix @@ -24,6 +24,7 @@ g: # Get dependencies from patched gems childprocess = g.childprocess_0_3_9; chronic = g.chronic_0_10_1; coderay = g.coderay_1_0_9; + cucumber = g.cucumber_1_3_8; daemons = g.daemons_1_1_9; diff_lcs = g.diff_lcs_1_1_3; dimensions = g.dimensions_1_2_0; @@ -42,6 +43,7 @@ g: # Get dependencies from patched gems foreman = g.foreman_0_63_0; gettext = g.gettext_3_0_0; gh = g.gh_0_12_0; + gherkin = g.gherkin_2_12_1; highline = g.highline_1_6_19; hike = g.hike_1_2_3; hoe = g.hoe_3_1_0; @@ -64,6 +66,7 @@ g: # Get dependencies from patched gems minitar = g.minitar_0_5_3; minitest = g.minitest_4_7_5; multi_json = g.multi_json_1_7_9; + multi_test = g.multi_test_0_0_2; multipart_post = g.multipart_post_1_2_0; net_http_digest_auth = g.net_http_digest_auth_1_4; net_http_persistent = g.net_http_persistent_2_9; @@ -112,6 +115,7 @@ g: # Get dependencies from patched gems systemu = g.systemu_2_5_2; taskjuggler = g.taskjuggler_3_5_0; term_ansicolor = g.term_ansicolor_1_2_2; + terminal_notifier = g.terminal_notifier_1_5_1; text = g.text_1_2_3; thin = g.thin_1_5_1; thor = g.thor_0_18_1; @@ -134,7 +138,7 @@ g: # Get dependencies from patched gems xml_simple = g.xml_simple_1_1_1; yajl_ruby = g.yajl_ruby_1_1_0; }; - gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ]; + gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''cucumber'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ]; gems = { ZenTest_4_9_3 = { basename = ''ZenTest''; @@ -451,6 +455,17 @@ for those one-off tasks, with a language that's a joy to use. requiredGems = [ ]; sha256 = ''1pbjsvd6r2daxd6aicp19fnb1j5z7fxadflsm1h0r33cy3vi7iy8''; }; + cucumber_1_3_8 = { + basename = ''cucumber''; + meta = { + description = ''cucumber-1.3.8''; + homepage = ''http://cukes.info''; + longDescription = ''Behaviour Driven Development with elegance and joy''; + }; + name = ''cucumber-1.3.8''; + requiredGems = [ g.builder_3_2_2 g.diff_lcs_1_2_4 g.gherkin_2_12_1 g.multi_json_1_7_9 g.multi_test_0_0_2 ]; + sha256 = ''0b4igj1vxlcwky11nkrrgg57chbc0n5gmv984dld5s0f1ilkx1ma''; + }; daemons_1_1_9 = { basename = ''daemons''; meta = { @@ -487,6 +502,28 @@ is the MIT license.''; requiredGems = [ ]; sha256 = ''15wqs3md9slif6ag43vp6gw63r3a2zdqiyfapnnzkb7amgg930pv''; }; + diff_lcs_1_2_4 = { + basename = ''diff_lcs''; + meta = { + description = ''Diff::LCS computes the difference between two Enumerable sequences using the McIlroy-Hunt longest common subsequence (LCS) algorithm''; + homepage = ''http://diff-lcs.rubyforge.org/''; + longDescription = ''Diff::LCS computes the difference between two Enumerable sequences using the +McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities +to create a simple HTML diff output format and a standard diff-like tool. + +This is release 1.2.4, fixing a bug introduced after diff-lcs 1.1.3 that did +not properly prune common sequences at the beginning of a comparison set. +Thanks to Paul Kunysch for fixing this issue. + +Coincident with the release of diff-lcs 1.2.3, we reported an issue with +Rubinius in 1.9 mode +({rubinius/rubinius#2268}[https://github.com/rubinius/rubinius/issues/2268]). +We are happy to report that this issue has been resolved.''; + }; + name = ''diff-lcs-1.2.4''; + requiredGems = [ ]; + sha256 = ''09xbffjg639y8n43zp88ki0m489vv2c86znmfib2fg1di6svi1xd''; + }; dimensions_1_2_0 = { basename = ''dimensions''; meta = { @@ -699,6 +736,17 @@ So you can use GNU gettext tools for maintaining. requiredGems = [ g.faraday_0_8_8 g.backports_3_3_3 g.multi_json_1_7_9 g.addressable_2_3_5 g.net_http_persistent_2_9 g.net_http_pipeline_1_0_1 ]; sha256 = ''180jmg6rwilzcbzvyg74q27zpr09pv6pw3cfcjxr0bcklv203q3n''; }; + gherkin_2_12_1 = { + basename = ''gherkin''; + meta = { + description = ''gherkin-2.12.1''; + homepage = ''http://github.com/cucumber/gherkin''; + longDescription = ''A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.''; + }; + name = ''gherkin-2.12.1''; + requiredGems = [ g.multi_json_1_7_9 ]; + sha256 = ''07nzchdvkkd35m9k7d9k8j72jm3imv56ccn734mxa5klv1xx2d45''; + }; highline_1_6_19 = { basename = ''highline''; meta = { @@ -1083,6 +1131,17 @@ extract-method refactorings still apply.''; requiredGems = [ ]; sha256 = ''1q13ldcc8shlfisy90k19zrar87208gs3za6jmr78p11ip21picx''; }; + multi_test_0_0_2 = { + basename = ''multi_test''; + meta = { + description = ''multi-test-0.0.2''; + homepage = ''http://cukes.info''; + longDescription = ''Wafter-thin gem to help control rogue test/unit/autorun requires''; + }; + name = ''multi_test-0.0.2''; + requiredGems = [ ]; + sha256 = ''0y8i0v0awc87laicqz1348k54z6wsyf141xqd7gh2bjgm9pc9pkr''; + }; multipart_post_1_2_0 = { basename = ''multipart_post''; meta = { @@ -1774,6 +1833,16 @@ management. requiredGems = [ g.tins_0_9_0 ]; sha256 = ''1b41q1q6mqcgzq9fhzhmjvfg5sfs5v7gkb8z57r4hajcp89lflxr''; }; + terminal_notifier_1_5_1 = { + basename = ''terminal_notifier''; + meta = { + description = ''Send User Notifications on Mac OS X 10.8 or higher.''; + homepage = ''https://github.com/alloy/terminal-notifier''; + }; + name = ''terminal-notifier-1.5.1''; + requiredGems = [ ]; + sha256 = ''1vvdfj83bsa2rglwbqmk11yghivsywl6ka76zb51c3xm7gdd768k''; + }; text_1_2_3 = { basename = ''text''; meta = { diff --git a/pkgs/development/libraries/haskell/MonadRandom/default.nix b/pkgs/development/libraries/haskell/MonadRandom/default.nix index 9018bc603cf4..32c2f9eeffe7 100644 --- a/pkgs/development/libraries/haskell/MonadRandom/default.nix +++ b/pkgs/development/libraries/haskell/MonadRandom/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "MonadRandom"; - version = "0.1.11"; - sha256 = "107f3ch84riagxa9x6yk4gxq2vq5dsk63rd0780g1fdplnf1sky3"; + version = "0.1.12"; + sha256 = "0lr1lvpcj96i6n0w810bjy8k9jygx97nnv0k2zb51d7saw6y95p4"; buildDepends = [ mtl random transformers ]; meta = { description = "Random-number generation monad"; diff --git a/pkgs/development/libraries/haskell/accelerate-cuda/default.nix b/pkgs/development/libraries/haskell/accelerate-cuda/default.nix index bc428ab1dc45..cabfccc02669 100644 --- a/pkgs/development/libraries/haskell/accelerate-cuda/default.nix +++ b/pkgs/development/libraries/haskell/accelerate-cuda/default.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "accelerate-cuda"; - version = "0.13.0.3"; - sha256 = "1y0v7w08pywb8qlw0b5aw4f8pkx4bjlfwxpqq2zfqmjsclnlifkb"; + version = "0.13.0.4"; + sha256 = "0zdb02mj9sbkj51a1q7sl6kmjx51gvps52dwc70qpm3rk71qnp1k"; buildDepends = [ accelerate binary cryptohash cuda fclabels filepath hashable hashtables languageCQuote mainlandPretty mtl SafeSemaphore srcloc diff --git a/pkgs/development/libraries/haskell/acid-state/default.nix b/pkgs/development/libraries/haskell/acid-state/default.nix index f7386f2776bc..8b9bce21d739 100644 --- a/pkgs/development/libraries/haskell/acid-state/default.nix +++ b/pkgs/development/libraries/haskell/acid-state/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "acid-state"; - version = "0.12.0"; - sha256 = "0gz66j0091k18yy81kn3vcadjg8lrqdfxibjbzwyhi64m894f13w"; + version = "0.12.1"; + sha256 = "0smqhj4layckdsm8xjz1rwgpcqwm5xj2vr8g4i463vgq776fl0q6"; buildDepends = [ cereal extensibleExceptions filepath mtl network safecopy stm ]; diff --git a/pkgs/development/libraries/haskell/active/default.nix b/pkgs/development/libraries/haskell/active/default.nix index 1552a1418d8f..92cf31226b26 100644 --- a/pkgs/development/libraries/haskell/active/default.nix +++ b/pkgs/development/libraries/haskell/active/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "active"; - version = "0.1.0.6"; - sha256 = "0hh52hkmma4lxfv3gj7x23cwx8v6wd1cm9hblvhzhylxk8dyl5m7"; + version = "0.1.0.7"; + sha256 = "18pcw98ni8fiy0yd7wmrqvpaf2wgav70rsikqfl571zjmdmzdw7p"; buildDepends = [ newtype semigroupoids semigroups vectorSpace ]; testDepends = [ newtype QuickCheck semigroupoids semigroups vectorSpace diff --git a/pkgs/development/libraries/haskell/amqp/default.nix b/pkgs/development/libraries/haskell/amqp/default.nix index 7b934bbe6694..70e86ef1ffb7 100644 --- a/pkgs/development/libraries/haskell/amqp/default.nix +++ b/pkgs/development/libraries/haskell/amqp/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "amqp"; - version = "0.5.0"; - sha256 = "1i02pp184r1iq40mz16m9qh8i3h1jmf3ykpg67j3i1732cks8n8w"; + version = "0.6.0"; + sha256 = "0rfczmhf46sc3pxxb5gwv4ggsxkqkvdi4kkqdnrdpdhs7p41im2n"; isLibrary = true; isExecutable = true; buildDepends = [ binary dataBinaryIeee754 network text xml ]; diff --git a/pkgs/development/libraries/haskell/bindings-DSL/default.nix b/pkgs/development/libraries/haskell/bindings-DSL/default.nix index d333a2877497..5e4e5d79379e 100644 --- a/pkgs/development/libraries/haskell/bindings-DSL/default.nix +++ b/pkgs/development/libraries/haskell/bindings-DSL/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "bindings-DSL"; - version = "1.0.17"; - sha256 = "1203n6wzdp21hd7zdhvhppxhkz4xr3qykwkb8j5mb2s4kijx01bn"; + version = "1.0.19"; + sha256 = "0mjlv2ld1qdd83pv7khrk3f0g4ypk8a8z79ykp3nwbvlhhi7bp2h"; meta = { homepage = "http://bitbucket.org/mauricio/bindings-dsl"; description = "FFI domain specific language, on top of hsc2hs"; diff --git a/pkgs/development/libraries/haskell/cereal/default.nix b/pkgs/development/libraries/haskell/cereal/default.nix index a28ea11c511e..4770d5216e2e 100644 --- a/pkgs/development/libraries/haskell/cereal/default.nix +++ b/pkgs/development/libraries/haskell/cereal/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "cereal"; - version = "0.3.5.2"; - sha256 = "0yjxvhagsm552idfrs6d9lzlz6x5878xj1vfg0zxf8w1kixgghil"; + version = "0.4.0.0"; + sha256 = "0q6lrfa2p70mh3d08mbj89anc3p9ycy6wyyiycj5pm62kcimv7rj"; meta = { description = "A binary serialization library"; license = self.stdenv.lib.licenses.bsd3; diff --git a/pkgs/development/libraries/haskell/charset/default.nix b/pkgs/development/libraries/haskell/charset/default.nix new file mode 100644 index 000000000000..9aee9b97afe9 --- /dev/null +++ b/pkgs/development/libraries/haskell/charset/default.nix @@ -0,0 +1,14 @@ +{ cabal, semigroups, unorderedContainers }: + +cabal.mkDerivation (self: { + pname = "charset"; + version = "0.3.5"; + sha256 = "0842jdqg7hipgkvax3p4cb2y3znsgcmbj9nfrg2448dg2nanlhsn"; + buildDepends = [ semigroups unorderedContainers ]; + meta = { + homepage = "http://github.com/ekmett/charset"; + description = "Fast unicode character sets based on complemented PATRICIA tries"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix index c04b4dfc25e1..b6bf865d1839 100644 --- a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix +++ b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix @@ -1,14 +1,14 @@ { cabal, classyPrelude, conduit, hspec, monadControl, QuickCheck -, resourcet, transformers, void, xmlConduit +, resourcet, systemFileio, transformers, void }: cabal.mkDerivation (self: { pname = "classy-prelude-conduit"; - version = "0.5.3"; - sha256 = "1rmx439kdjipyz2s3v2s1xv1mb55kb4njl9k6f8mfhykgac39rhz"; + version = "0.6.0"; + sha256 = "122clkwrz1n009b5gxq96sbby7i8kb4dgvc90ydamd86bx3pvc84"; buildDepends = [ - classyPrelude conduit monadControl resourcet transformers void - xmlConduit + classyPrelude conduit monadControl resourcet systemFileio + transformers void ]; testDepends = [ conduit hspec QuickCheck transformers ]; meta = { diff --git a/pkgs/development/libraries/haskell/classy-prelude/default.nix b/pkgs/development/libraries/haskell/classy-prelude/default.nix index 53b3bae1cefe..f296ff21ced8 100644 --- a/pkgs/development/libraries/haskell/classy-prelude/default.nix +++ b/pkgs/development/libraries/haskell/classy-prelude/default.nix @@ -1,17 +1,21 @@ { cabal, async, basicPrelude, deepseq, hashable, hspec, liftedBase -, monadControl, QuickCheck, systemFilepath, text, transformers -, unorderedContainers, vector +, monadControl, monoTraversable, QuickCheck, semigroups +, systemFilepath, text, transformers, unorderedContainers, vector +, vectorInstances }: cabal.mkDerivation (self: { pname = "classy-prelude"; - version = "0.5.10"; - sha256 = "04grmld90qr8m6lcdf83clai0anpp8iry7m9l9li8ija9fckl3lk"; + version = "0.6.0"; + sha256 = "0wpymr2gl0hmbgpw0qd0h1ik1h42s8raykq7jsdjqnmcvsmww5j6"; buildDepends = [ async basicPrelude deepseq hashable liftedBase monadControl - systemFilepath text transformers unorderedContainers vector + monoTraversable semigroups systemFilepath text transformers + unorderedContainers vector vectorInstances + ]; + testDepends = [ + hspec QuickCheck transformers unorderedContainers ]; - testDepends = [ hspec QuickCheck transformers ]; meta = { homepage = "https://github.com/snoyberg/classy-prelude"; description = "A typeclass-based Prelude"; diff --git a/pkgs/development/libraries/haskell/crypto-conduit/default.nix b/pkgs/development/libraries/haskell/crypto-conduit/default.nix index 61d6bcbeabea..1dc356b7f465 100644 --- a/pkgs/development/libraries/haskell/crypto-conduit/default.nix +++ b/pkgs/development/libraries/haskell/crypto-conduit/default.nix @@ -4,13 +4,14 @@ cabal.mkDerivation (self: { pname = "crypto-conduit"; - version = "0.5.2"; - sha256 = "0ncqwr2a9nxl6q7qys9gb5db62lx622g5db1xhpfni045x324kbz"; + version = "0.5.2.1"; + sha256 = "1i9m4pzy4ib9n941zlh398idmxcjak2496c4c73i8bmikryahl8p"; buildDepends = [ cereal conduit cryptoApi transformers ]; testDepends = [ cereal conduit cryptoApi cryptocipher cryptohashCryptoapi hspec skein transformers ]; + jailbreak = true; doCheck = false; meta = { homepage = "https://github.com/meteficha/crypto-conduit"; diff --git a/pkgs/development/libraries/haskell/data-lens/default.nix b/pkgs/development/libraries/haskell/data-lens/default.nix index e4cff67f3761..25a81084a4a9 100644 --- a/pkgs/development/libraries/haskell/data-lens/default.nix +++ b/pkgs/development/libraries/haskell/data-lens/default.nix @@ -3,8 +3,8 @@ cabal.mkDerivation (self: { pname = "data-lens"; - version = "2.10.2"; - sha256 = "1mv4lh5rhmq09d89ci07kj9anv7ckrlqh9x3xr4jq9idf7sf54b5"; + version = "2.10.3"; + sha256 = "0x8qrcsnl1z2n3vwld0jcnapmzlzjgyzpa34qjyxpv4f15xn8vic"; buildDepends = [ comonad comonadTransformers semigroupoids transformers ]; diff --git a/pkgs/development/libraries/haskell/data-pprint/default.nix b/pkgs/development/libraries/haskell/data-pprint/default.nix index 73565c0cee7e..e6a8e59853d1 100644 --- a/pkgs/development/libraries/haskell/data-pprint/default.nix +++ b/pkgs/development/libraries/haskell/data-pprint/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "data-pprint"; - version = "0.2.1.5"; - sha256 = "0dalm41l93303rraxi9kipxkm11a0mly3w488afj700ny5v6l9ij"; + version = "0.2.2"; + sha256 = "0cr69qv2j8fmmlir8rzlafcxk1cg3lg1z0zrwkz0lb7idm25fy36"; buildDepends = [ deepseq mtl parallel time ]; meta = { description = "Prettyprint and compare Data values"; diff --git a/pkgs/development/libraries/haskell/dbus/default.nix b/pkgs/development/libraries/haskell/dbus/default.nix index 16cb2c7ca033..e0072bd8446b 100644 --- a/pkgs/development/libraries/haskell/dbus/default.nix +++ b/pkgs/development/libraries/haskell/dbus/default.nix @@ -10,6 +10,7 @@ cabal.mkDerivation (self: { cereal libxmlSax network parsec random text transformers vector xmlTypes ]; + jailbreak = true; meta = { homepage = "https://john-millikin.com/software/haskell-dbus/"; description = "A client library for the D-Bus IPC system"; diff --git a/pkgs/development/libraries/haskell/diagrams/core.nix b/pkgs/development/libraries/haskell/diagrams/core.nix index c2dbb27aebd1..33fa353628bb 100644 --- a/pkgs/development/libraries/haskell/diagrams/core.nix +++ b/pkgs/development/libraries/haskell/diagrams/core.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "diagrams-core"; - version = "0.7"; - sha256 = "00ba31imq91w6lzy8blgxawr06igrjfrg4adrqy650wip8jafqwq"; + version = "0.7.0.1"; + sha256 = "1826f6yrb0ch07y4bjb1cnqi8giphn2i6g45484qr6bfbb8wj5dg"; buildDepends = [ dualTree MemoTrie monoidExtras newtype semigroups vectorSpace vectorSpacePoints diff --git a/pkgs/development/libraries/haskell/diagrams/lib.nix b/pkgs/development/libraries/haskell/diagrams/lib.nix index 9b5062479be1..43ada20aecc4 100644 --- a/pkgs/development/libraries/haskell/diagrams/lib.nix +++ b/pkgs/development/libraries/haskell/diagrams/lib.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "diagrams-lib"; - version = "0.7.1"; - sha256 = "1ig7a0ns458aqk9yxya7djdd40x3iyd1lycjygdl3zgl2pjpdva7"; + version = "0.7.1.1"; + sha256 = "14d557y22dqyjr026vbawa2a2yjh7alh3rpavyidfdlrg48lqgrc"; buildDepends = [ active colour dataDefaultClass diagramsCore fingertree intervals monoidExtras newtype NumInstances semigroups vectorSpace diff --git a/pkgs/development/libraries/haskell/doctest/default.nix b/pkgs/development/libraries/haskell/doctest/default.nix index 185f80343811..08118ac4e1bf 100644 --- a/pkgs/development/libraries/haskell/doctest/default.nix +++ b/pkgs/development/libraries/haskell/doctest/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "doctest"; - version = "0.9.8"; - sha256 = "0c1qi1dfqndbkaiksffw54gv6nlhd3wsk25s97vhrgmpd3n7sb8a"; + version = "0.9.9"; + sha256 = "1r1jdmch6sb4cdygh60pv42p4nr03shabrpd18hjnxs40dgc6pgy"; isLibrary = true; isExecutable = true; buildDepends = [ deepseq filepath ghcPaths syb transformers ]; diff --git a/pkgs/development/libraries/haskell/dual-tree/default.nix b/pkgs/development/libraries/haskell/dual-tree/default.nix index 8500de5fcfb6..c0896557e339 100644 --- a/pkgs/development/libraries/haskell/dual-tree/default.nix +++ b/pkgs/development/libraries/haskell/dual-tree/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "dual-tree"; - version = "0.1.0.3"; - sha256 = "0k3p1lqhynlqvkbnrs5vn478c76qcn754n5pb17p5i4jcw94bm0n"; + version = "0.1.0.4"; + sha256 = "0xrpb7kz6aazqy9w0b7hcbxgmy4ddy0zh7gdpv2w140vvyx5qjrn"; buildDepends = [ monoidExtras newtype semigroups ]; jailbreak = true; meta = { diff --git a/pkgs/development/libraries/haskell/generic-deriving/default.nix b/pkgs/development/libraries/haskell/generic-deriving/default.nix index f1a1ec837fd4..5081d09939bf 100644 --- a/pkgs/development/libraries/haskell/generic-deriving/default.nix +++ b/pkgs/development/libraries/haskell/generic-deriving/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "generic-deriving"; - version = "1.6.1"; - sha256 = "0c3b3xkjdfp14w48gfk3f6aqz4cgk6i3bl5mci23mbb3f33jcx1j"; + version = "1.6.2"; + sha256 = "1ryzg7zgnlhx6mbmpsh4fgqf2d758c94qz2zpg3jxns30hd4sfy6"; meta = { description = "Generic programming library for generalised deriving"; license = self.stdenv.lib.licenses.bsd3; diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix index ebd4417af994..3504e79d54b7 100644 --- a/pkgs/development/libraries/haskell/ghc-mod/default.nix +++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "ghc-mod"; - version = "3.1.1"; - sha256 = "0gz5andg5ap7a71ap82rpkbflgj9fcrw47gyzlbn5rpp110d86jf"; + version = "3.1.2"; + sha256 = "164ldbdvr2qrnb9sq0d9y35la4fzwn6x43xqdsi1s10dppckczlm"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/libraries/haskell/gitit/default.nix b/pkgs/development/libraries/haskell/gitit/default.nix index 45c96e64012d..905d02b70113 100644 --- a/pkgs/development/libraries/haskell/gitit/default.nix +++ b/pkgs/development/libraries/haskell/gitit/default.nix @@ -2,7 +2,7 @@ , filepath, filestore, ghcPaths, happstackServer, highlightingKate , hslogger, HStringTemplate, HTTP, json, mtl, network, pandoc , pandocTypes, parsec, random, recaptcha, safe, SHA, syb, tagsoup -, text, time, url, utf8String, xhtml, xml, xssSanitize, zlib +, text, time, url, utf8String, xhtml, xml, xssSanitize, zlib, fetchurl }: cabal.mkDerivation (self: { @@ -19,6 +19,10 @@ cabal.mkDerivation (self: { zlib ]; jailbreak = true; + patches = [ (fetchurl { url = "https://github.com/jgm/gitit/commit/48155008397bdaed4f97c5678d83c70d4bc3f0ff.patch"; + sha256 = "0xdg9frr8lany8ry6vj4vpskmhkpww8jswnb05pzl8a4xfqxh9gd"; + }) + ]; meta = { homepage = "http://gitit.net"; description = "Wiki using happstack, git or darcs, and pandoc"; diff --git a/pkgs/development/libraries/haskell/groups/default.nix b/pkgs/development/libraries/haskell/groups/default.nix index a03094970706..b2cf829f12ea 100644 --- a/pkgs/development/libraries/haskell/groups/default.nix +++ b/pkgs/development/libraries/haskell/groups/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "groups"; - version = "0.3.0.0"; - sha256 = "07swv09l98fxh563w1x8n8xzgh9q7n9dbx4gx3i77kwi72vmxl8x"; + version = "0.4.0.0"; + sha256 = "1kp8h3617cimya8nnadljyy4vk66dzl5nzfm900k2gh3ci8kja6k"; meta = { description = "Haskell 98 groups"; license = self.stdenv.lib.licenses.bsd3; diff --git a/pkgs/development/libraries/haskell/hS3/default.nix b/pkgs/development/libraries/haskell/hS3/default.nix index 83ee2c810ebd..1d6838e92f89 100644 --- a/pkgs/development/libraries/haskell/hS3/default.nix +++ b/pkgs/development/libraries/haskell/hS3/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "hS3"; - version = "0.5.7"; - sha256 = "1p5p6vwazqi5kpi3i0msbgcdf6flp25b2v1an6lvj7y8dx1pk6f2"; + version = "0.5.8"; + sha256 = "1wmrrmlz4qlhr75lixn385pjpvpq21aafgf0fw8jyfqgdyjkg7bm"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/libraries/haskell/hoogle/default.nix b/pkgs/development/libraries/haskell/hoogle/default.nix index c0b05ea82e0a..498e71d06d1e 100644 --- a/pkgs/development/libraries/haskell/hoogle/default.nix +++ b/pkgs/development/libraries/haskell/hoogle/default.nix @@ -7,8 +7,8 @@ cabal.mkDerivation (self: { pname = "hoogle"; - version = "4.2.21"; - sha256 = "167iw0rp37c1bixmaa5l06c943h33b457symllh8rcbmf880z09i"; + version = "4.2.23"; + sha256 = "1ykjf0w6c3pzsrzdhxs53nxj84aj2px3gpfc8f53dmgqv3wkyii7"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/libraries/haskell/language-java/default.nix b/pkgs/development/libraries/haskell/language-java/default.nix index 13054c0714df..e665f5aadde9 100644 --- a/pkgs/development/libraries/haskell/language-java/default.nix +++ b/pkgs/development/libraries/haskell/language-java/default.nix @@ -5,7 +5,7 @@ cabal.mkDerivation (self: { pname = "language-java"; version = "0.2.5"; - sha256 = "1l3q156m3l3fawsrgj3fr16qxr0apwg2si410j0f5hsgfmkhdrm6"; + sha256 = "1ai6mvzasi8fji4b81nrpy48icf5h25g3kakhpfbzckwf20c9dkd"; buildDepends = [ cpphs parsec syb ]; testDepends = [ filepath HUnit mtl QuickCheck testFramework testFrameworkHunit diff --git a/pkgs/development/libraries/haskell/lens/default.nix b/pkgs/development/libraries/haskell/lens/default.nix index 20541aa4a2ff..cdccc4768e0f 100644 --- a/pkgs/development/libraries/haskell/lens/default.nix +++ b/pkgs/development/libraries/haskell/lens/default.nix @@ -10,8 +10,8 @@ cabal.mkDerivation (self: { pname = "lens"; - version = "3.9.1"; - sha256 = "141v7b5ag6jxnim1hdyxqi5m2sm1j5fpspkcs8qnznfcd33gyfja"; + version = "3.9.2"; + sha256 = "17pc0waf3g6dxvmvyxkgh8kz22iscd9z00s67rcn0p604swprj2k"; buildDepends = [ bifunctors comonad comonadsFd comonadTransformers contravariant distributive filepath genericDeriving hashable diff --git a/pkgs/development/libraries/haskell/monad-logger/default.nix b/pkgs/development/libraries/haskell/monad-logger/default.nix index c06809c261dc..0b92ca0bb903 100644 --- a/pkgs/development/libraries/haskell/monad-logger/default.nix +++ b/pkgs/development/libraries/haskell/monad-logger/default.nix @@ -1,14 +1,15 @@ -{ cabal, conduit, fastLogger, monadControl, mtl, resourcet, text -, transformers, transformersBase +{ cabal, conduit, fastLogger, liftedBase, monadControl, monadLoops +, mtl, resourcet, stm, stmChans, text, transformers +, transformersBase }: cabal.mkDerivation (self: { pname = "monad-logger"; - version = "0.3.1.1"; - sha256 = "11qqmflcydjfm5py7rkbi9qd0mkhw4kxzxff95wf0jmaia9knvx6"; + version = "0.3.2.0"; + sha256 = "0pgjayx6h1zqadqrzaf36070kir7qlinha9h4bf532lfx5yc1yxg"; buildDepends = [ - conduit fastLogger monadControl mtl resourcet text transformers - transformersBase + conduit fastLogger liftedBase monadControl monadLoops mtl resourcet + stm stmChans text transformers transformersBase ]; meta = { homepage = "https://github.com/kazu-yamamoto/logger"; diff --git a/pkgs/development/libraries/haskell/mono-traversable/default.nix b/pkgs/development/libraries/haskell/mono-traversable/default.nix new file mode 100644 index 000000000000..42cfee3412b3 --- /dev/null +++ b/pkgs/development/libraries/haskell/mono-traversable/default.nix @@ -0,0 +1,20 @@ +{ cabal, comonad, hashable, hspec, semigroupoids, semigroups, text +, transformers, unorderedContainers, vector +}: + +cabal.mkDerivation (self: { + pname = "mono-traversable"; + version = "0.1.0.0"; + sha256 = "1pkg8lagfiixgq2xb4ficgcqv1hhmxy2r49lq9szar7knh0gcjn1"; + buildDepends = [ + comonad hashable semigroupoids semigroups text transformers + unorderedContainers vector + ]; + testDepends = [ hspec text ]; + meta = { + homepage = "https://github.com/snoyberg/mono-traversable"; + description = "Type classes for mapping, folding, and traversing monomorphic containers"; + license = self.stdenv.lib.licenses.mit; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/monoid-extras/default.nix b/pkgs/development/libraries/haskell/monoid-extras/default.nix index 5378c4688089..e9c8691a8ce5 100644 --- a/pkgs/development/libraries/haskell/monoid-extras/default.nix +++ b/pkgs/development/libraries/haskell/monoid-extras/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "monoid-extras"; - version = "0.3.2.0"; - sha256 = "0yhb55v0a2221xbpbm8jiqzqvps0lab5n8iakpq69ndr2l0d2r3x"; + version = "0.3.2.2"; + sha256 = "1fy0fk2mzan6n5chc11x303hz3iq3kpx6ma6c8xsi8va1b9ikpda"; buildDepends = [ groupoids groups semigroupoids semigroups ]; jailbreak = true; meta = { diff --git a/pkgs/development/libraries/haskell/ncurses/default.nix b/pkgs/development/libraries/haskell/ncurses/default.nix index e3283a242f50..f900e3c2ef95 100644 --- a/pkgs/development/libraries/haskell/ncurses/default.nix +++ b/pkgs/development/libraries/haskell/ncurses/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "ncurses"; - version = "0.2.6"; - sha256 = "0mcgbq67f8hfdqmvm3p59949mbxcc2mgjw889zxvxx0174kn205q"; + version = "0.2.7"; + sha256 = "026p6b2apgi9r65py45h3rl57xgwzyamq511a0rsb7myzagw22vz"; buildDepends = [ text transformers ]; buildTools = [ c2hs ]; extraLibraries = [ ncurses ]; diff --git a/pkgs/development/libraries/haskell/pandoc-citeproc/default.nix b/pkgs/development/libraries/haskell/pandoc-citeproc/default.nix index 16d5d910b4bb..2c4776870960 100644 --- a/pkgs/development/libraries/haskell/pandoc-citeproc/default.nix +++ b/pkgs/development/libraries/haskell/pandoc-citeproc/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "pandoc-citeproc"; - version = "0.1.1"; - sha256 = "1pna6m83ay1jjcnazgc70vif55fff9xhk7129fbv9wf7d29hlw32"; + version = "0.1.1.1"; + sha256 = "07h277cz5wzc2dsfqfh9lasz7ypb4pspvqljs9maj6lx5rkk5fq1"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/libraries/haskell/pandoc-types/default.nix b/pkgs/development/libraries/haskell/pandoc-types/default.nix index 18788b342e06..686c07949be7 100644 --- a/pkgs/development/libraries/haskell/pandoc-types/default.nix +++ b/pkgs/development/libraries/haskell/pandoc-types/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "pandoc-types"; - version = "1.12.1"; - sha256 = "0gqn7byag5vx09mwbx6y3zs3hqmncarlpml0cfc5picwv8kg4vbj"; + version = "1.12.2.2"; + sha256 = "1ax92rxynrp42032d0i4wnv700cszm6qsvna8f9hqcfxvc2cbp36"; buildDepends = [ aeson syb ]; meta = { homepage = "http://johnmacfarlane.net/pandoc"; diff --git a/pkgs/development/libraries/haskell/parsers/default.nix b/pkgs/development/libraries/haskell/parsers/default.nix new file mode 100644 index 000000000000..dc42228df66a --- /dev/null +++ b/pkgs/development/libraries/haskell/parsers/default.nix @@ -0,0 +1,17 @@ +{ cabal, charset, doctest, filepath, text, transformers +, unorderedContainers +}: + +cabal.mkDerivation (self: { + pname = "parsers"; + version = "0.9"; + sha256 = "04lbayvdv2hax4s9sqlnia7jpzv1sgls41ylql0xbi2zhz5rvyyi"; + buildDepends = [ charset text transformers unorderedContainers ]; + testDepends = [ doctest filepath ]; + meta = { + homepage = "http://github.com/ekmett/parsers/"; + description = "Parsing combinators"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/pointed/default.nix b/pkgs/development/libraries/haskell/pointed/default.nix new file mode 100644 index 000000000000..e3a8d66be4c8 --- /dev/null +++ b/pkgs/development/libraries/haskell/pointed/default.nix @@ -0,0 +1,19 @@ +{ cabal, comonad, comonadTransformers, dataDefault, semigroupoids +, semigroups, stm, tagged, transformers +}: + +cabal.mkDerivation (self: { + pname = "pointed"; + version = "3.1"; + sha256 = "13vx1vy3qfa23145fdfdivdmw01qyl2k6g8ynqxl8pzbj9cbb08n"; + buildDepends = [ + comonad comonadTransformers dataDefault semigroupoids semigroups + stm tagged transformers + ]; + meta = { + homepage = "http://github.com/ekmett/pointed/"; + description = "Haskell 98 pointed and copointed data"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/primitive/0.5.1.0.nix b/pkgs/development/libraries/haskell/primitive/0.5.1.0.nix new file mode 100644 index 000000000000..ff62216b3f4a --- /dev/null +++ b/pkgs/development/libraries/haskell/primitive/0.5.1.0.nix @@ -0,0 +1,14 @@ +{ cabal }: + +cabal.mkDerivation (self: { + pname = "primitive"; + version = "0.5.1.0"; + sha256 = "0a8mf8k62xga5r5dd0fna1swqbx2r94c0mvqnc4mfq640zrsa5w8"; + meta = { + homepage = "https://github.com/haskell/primitive"; + description = "Primitive memory-related operations"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + maintainers = [ self.stdenv.lib.maintainers.andres ]; + }; +}) diff --git a/pkgs/development/libraries/haskell/reducers/default.nix b/pkgs/development/libraries/haskell/reducers/default.nix new file mode 100644 index 000000000000..319cd138ccec --- /dev/null +++ b/pkgs/development/libraries/haskell/reducers/default.nix @@ -0,0 +1,20 @@ +{ cabal, comonad, fingertree, hashable, keys, pointed +, semigroupoids, semigroups, text, transformers +, unorderedContainers +}: + +cabal.mkDerivation (self: { + pname = "reducers"; + version = "3.0.2"; + sha256 = "0inw5gz3bdrfc6hprjfxssyqjwmclgf09gms14blj24qr027gdqq"; + buildDepends = [ + comonad fingertree hashable keys pointed semigroupoids semigroups + text transformers unorderedContainers + ]; + meta = { + homepage = "http://github.com/ekmett/reducers/"; + description = "Semigroups, specialized containers and a general map/reduce framework"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix b/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix index 08c2f6556e28..c7ed906b908f 100644 --- a/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix +++ b/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "regex-compat-tdfa"; - version = "0.95.1.2"; - sha256 = "0b7pp5xq4ybgji5shz5v1a91y6wwzila3vjiyq4nma0xj3njy802"; + version = "0.95.1.3"; + sha256 = "0wl5sqbb3rl5dai3qni8w09wlipc4n1mn9kh5zgb9xl0lcd59pjx"; buildDepends = [ regexBase regexTdfa ]; meta = { homepage = "http://hub.darcs.net/shelarcy/regex-compat-tdfa"; diff --git a/pkgs/development/libraries/haskell/shake/default.nix b/pkgs/development/libraries/haskell/shake/default.nix index 26171a56fdc5..2588b11ae780 100644 --- a/pkgs/development/libraries/haskell/shake/default.nix +++ b/pkgs/development/libraries/haskell/shake/default.nix @@ -1,16 +1,16 @@ { cabal, binary, deepseq, filepath, hashable, random, time -, transformers, unorderedContainers +, transformers, unorderedContainers, utf8String }: cabal.mkDerivation (self: { pname = "shake"; - version = "0.10.6"; - sha256 = "0d2wrgraifcj0rv9jmvc5a0gl0j1jjkc4r0nmaypnv6929kl26q8"; + version = "0.10.7"; + sha256 = "0r48kzldbgixr1c83sd7frvygqyjx32n67nri1nnamcwpvlv8hgv"; isLibrary = true; isExecutable = true; buildDepends = [ binary deepseq filepath hashable random time transformers - unorderedContainers + unorderedContainers utf8String ]; meta = { homepage = "http://community.haskell.org/~ndm/shake/"; diff --git a/pkgs/development/libraries/haskell/skein/default.nix b/pkgs/development/libraries/haskell/skein/default.nix index 6b8fc7eda284..7acc60e36016 100644 --- a/pkgs/development/libraries/haskell/skein/default.nix +++ b/pkgs/development/libraries/haskell/skein/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "skein"; - version = "1.0.6"; - sha256 = "0jdh618k66bhiwrxb9i2yckxz0w3cpc7q15ilz49lqjjpl86bndk"; + version = "1.0.8"; + sha256 = "0qga3r73zzbj4kkwl8c3p7d1myjyv6dv6g0dwc77fqnmikzcnils"; buildDepends = [ cereal cryptoApi tagged ]; testDepends = [ cereal cryptoApi filepath hspec tagged ]; jailbreak = true; diff --git a/pkgs/development/libraries/haskell/snap/snap.nix b/pkgs/development/libraries/haskell/snap/snap.nix index f4d26a03b2f9..94f452f69b88 100644 --- a/pkgs/development/libraries/haskell/snap/snap.nix +++ b/pkgs/development/libraries/haskell/snap/snap.nix @@ -8,8 +8,8 @@ cabal.mkDerivation (self: { pname = "snap"; - version = "0.13.0.2"; - sha256 = "1ss5r7nyp5w4gwrbm5v79jr4si3w9ci7dypsaqrxjw7ga95znsbm"; + version = "0.13.0.3"; + sha256 = "0gwcrsmcx5823w53nfi92gg2hkjnyxd3mp97qijp5p8y83mhh0l0"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/libraries/haskell/socks/default.nix b/pkgs/development/libraries/haskell/socks/default.nix index 27dd54b29598..22b9a4151237 100644 --- a/pkgs/development/libraries/haskell/socks/default.nix +++ b/pkgs/development/libraries/haskell/socks/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "socks"; - version = "0.5.1"; - sha256 = "08zwbkglkahjadqn2m7l0k5yp4lcd9h6kgb8k8mjlwxayx82a0ay"; + version = "0.5.2"; + sha256 = "1bvvrc0lzjspab7jn31d45za8g6n9jr52mcf7rs5zci99f5jgpsv"; buildDepends = [ cereal network ]; meta = { homepage = "http://github.com/vincenthz/hs-socks"; diff --git a/pkgs/development/libraries/haskell/trifecta/default.nix b/pkgs/development/libraries/haskell/trifecta/default.nix new file mode 100644 index 000000000000..417b6102e7ed --- /dev/null +++ b/pkgs/development/libraries/haskell/trifecta/default.nix @@ -0,0 +1,23 @@ +{ cabal, ansiTerminal, ansiWlPprint, blazeBuilder, blazeHtml +, blazeMarkup, charset, comonad, deepseq, doctest, filepath +, fingertree, hashable, lens, mtl, parsers, reducers, semigroups +, transformers, unorderedContainers, utf8String +}: + +cabal.mkDerivation (self: { + pname = "trifecta"; + version = "1.1"; + sha256 = "19wnblpn31hvdi5dc8ir24s0hfjj4vvzr43gg9ydl2qdjq6s166w"; + buildDepends = [ + ansiTerminal ansiWlPprint blazeBuilder blazeHtml blazeMarkup + charset comonad deepseq fingertree hashable lens mtl parsers + reducers semigroups transformers unorderedContainers utf8String + ]; + testDepends = [ doctest filepath ]; + meta = { + homepage = "http://github.com/ekmett/trifecta/"; + description = "A modern parser combinator library with convenient diagnostics"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/unordered-containers/0.2.3.2.nix b/pkgs/development/libraries/haskell/unordered-containers/0.2.3.3.nix similarity index 87% rename from pkgs/development/libraries/haskell/unordered-containers/0.2.3.2.nix rename to pkgs/development/libraries/haskell/unordered-containers/0.2.3.3.nix index 669f45d83f2d..03cdd824d29f 100644 --- a/pkgs/development/libraries/haskell/unordered-containers/0.2.3.2.nix +++ b/pkgs/development/libraries/haskell/unordered-containers/0.2.3.3.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "unordered-containers"; - version = "0.2.3.2"; - sha256 = "0fgfb2zqa2zi2hb9nkj92nwnxr54wkqa6gmqbcn4h5zks5anfvn5"; + version = "0.2.3.3"; + sha256 = "09sn19fk4smhf4zi3326wy2a62lh231k2nm8jd64j51arch42sdi"; buildDepends = [ deepseq hashable ]; testDepends = [ ChasingBottoms hashable HUnit QuickCheck testFramework diff --git a/pkgs/development/libraries/haskell/vector-instances/default.nix b/pkgs/development/libraries/haskell/vector-instances/default.nix new file mode 100644 index 000000000000..c6ff62f86cdd --- /dev/null +++ b/pkgs/development/libraries/haskell/vector-instances/default.nix @@ -0,0 +1,17 @@ +{ cabal, comonad, keys, pointed, semigroupoids, semigroups, vector +}: + +cabal.mkDerivation (self: { + pname = "vector-instances"; + version = "3.3"; + sha256 = "0iiw9p2ivcdfsh81vdy4yn6hbigdwclrkssd68hdsg9n6q3fmq5y"; + buildDepends = [ + comonad keys pointed semigroupoids semigroups vector + ]; + meta = { + homepage = "http://github.com/ekmett/vector-instances"; + description = "Orphan Instances for 'Data.Vector'"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/vector/0.10.9.1.nix b/pkgs/development/libraries/haskell/vector/0.10.9.1.nix new file mode 100644 index 000000000000..975d75526a60 --- /dev/null +++ b/pkgs/development/libraries/haskell/vector/0.10.9.1.nix @@ -0,0 +1,15 @@ +{ cabal, deepseq, primitive }: + +cabal.mkDerivation (self: { + pname = "vector"; + version = "0.10.9.1"; + sha256 = "1rdx0r7bwx6217ip9mg9yfymvgv52szqv63y89p41b8sfklmcmi0"; + buildDepends = [ deepseq primitive ]; + meta = { + homepage = "https://github.com/haskell/vector"; + description = "Efficient Arrays"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + maintainers = [ self.stdenv.lib.maintainers.andres ]; + }; +}) diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix index 153d361f4dd0..14c8259cddb6 100644 --- a/pkgs/development/libraries/haskell/yesod-core/default.nix +++ b/pkgs/development/libraries/haskell/yesod-core/default.nix @@ -10,8 +10,8 @@ cabal.mkDerivation (self: { pname = "yesod-core"; - version = "1.2.4.3"; - sha256 = "0p4bgpa1xb4s7yma16lw74gwm5865npdcc0djg1i4xp57q4d3dh6"; + version = "1.2.4.4"; + sha256 = "0awz5ijhmd7z292irzz8sp2j3vp3lp57k9rcp4bmgqmxkf826hkj"; buildDepends = [ aeson attoparsecConduit blazeBuilder blazeHtml blazeMarkup caseInsensitive cereal clientsession conduit cookie dataDefault @@ -25,6 +25,7 @@ cabal.mkDerivation (self: { QuickCheck random resourcet shakespeareCss shakespeareJs text transformers wai waiTest ]; + jailbreak = true; meta = { homepage = "http://www.yesodweb.com/"; description = "Creation of type-safe, RESTful web applications"; diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix index 59d352cf730e..dbb104546ad6 100644 --- a/pkgs/development/libraries/libical/default.nix +++ b/pkgs/development/libraries/libical/default.nix @@ -1,11 +1,11 @@ -{stdenv, fetchsvn, perl, cmake}: +{stdenv, fetchurl, perl, cmake}: stdenv.mkDerivation rec { - name = "libical-0.48-p20120623"; - src = fetchsvn { - url = "https://freeassociation.svn.sourceforge.net/svnroot/freeassociation/trunk/libical"; - rev = "1130"; - sha256 = "56caf19abdf44807fda75a67ef0886319551e53c4e4ece4da4fc862e34c64e1a"; + pName = "libical"; + name = "${pName}-1.0"; + src = fetchurl { + url = "mirror://sourceforge/freeassociation/${pName}/${name}/${name}.tar.gz"; + sha256 = "1dy0drz9hy0sn2q3s2lp00jb9bis5gsm7n3m4zga49s9ir2b6fbw"; }; nativeBuildInputs = [ perl cmake ]; diff --git a/pkgs/development/libraries/libimobiledevice/default.nix b/pkgs/development/libraries/libimobiledevice/default.nix index a21d9bf7b5de..a05d176554e9 100644 --- a/pkgs/development/libraries/libimobiledevice/default.nix +++ b/pkgs/development/libraries/libimobiledevice/default.nix @@ -2,7 +2,7 @@ libtasn1, libplist, readline }: stdenv.mkDerivation rec { - name = "libimobiledevice-1.0.6"; + name = "libimobiledevice-1.0.7"; nativeBuildInputs = [ python libplist.swig pkgconfig ]; buildInputs = [ readline ]; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}/downloads/${name}.tar.bz2"; - sha256 = "0r5gjprrnwgad5zsidn41w01gihramagcpl8cwi540qiwq43svqi"; + sha256 = "15jznqc52yfwkbw19hgv3r1qd4gcymakbfkyizmr6v4n0sn27n0f"; }; meta = { diff --git a/pkgs/development/libraries/libunibreak/default.nix b/pkgs/development/libraries/libunibreak/default.nix new file mode 100644 index 000000000000..e5e7f5ff0ae8 --- /dev/null +++ b/pkgs/development/libraries/libunibreak/default.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "libunibreak-${version}"; + version = "1.0"; + + src = fetchurl { + url = "mirror://sourceforge/vimgadgets/libunibreak/${version}/${name}.tar.gz"; + sha256 = "0rsivyxnp9nfngf83fiy4v58s5mgdhcjz75nv5nyhxwxnjq35d25"; + }; + + meta = { + homepage = http://vimgadgets.sourceforge.net/libunibreak/; + description = "A library implementing a line breaking algorithm as described in Unicode 6.0.0 Standard"; + license = "ZLIB"; + maintainer = [ stdenv.lib.maintainers.coroa ]; + }; +} diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix index 4d17184a6082..1d21e03efa6c 100644 --- a/pkgs/development/libraries/mlt/default.nix +++ b/pkgs/development/libraries/mlt/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { name = "mlt-${version}"; - version = "0.8.8"; + version = "0.9.0"; src = fetchurl { url = "mirror://sourceforge/mlt/${name}.tar.gz"; - sha256 = "0m4nzxli1pl8w59m4iwwhpmr1xdz7xfknmbl3a0mkkd1jzdiq3nc"; + sha256 = "1j8wbkwpa6k5anyf4nvf71l8251d7clzj6v09jl3vvfakaf6l37j"; }; buildInputs = diff --git a/pkgs/development/libraries/qwt/default.nix b/pkgs/development/libraries/qwt/default.nix index 814550d2b18a..fe73e0beabd9 100644 --- a/pkgs/development/libraries/qwt/default.nix +++ b/pkgs/development/libraries/qwt/default.nix @@ -17,4 +17,13 @@ stdenv.mkDerivation rec { ''; configurePhase = ''qmake INSTALLBASE=$out -after doc.path=$out/share/doc/${name} -r''; + + meta = with stdenv.lib; { + description = "Qt widgets for technical applications"; + homepage = http://qwt.sourceforge.net/; + # LGPL 2.1 plus a few exceptions (more liberal) + license = "Qwt License, Version 1.0"; + platforms = platforms.linux; + maintainers = [ maintainers.bjornfor ]; + }; } diff --git a/pkgs/development/libraries/science/math/blas/default.nix b/pkgs/development/libraries/science/math/blas/default.nix index 7066ebad87c0..1bc7eff31819 100644 --- a/pkgs/development/libraries/science/math/blas/default.nix +++ b/pkgs/development/libraries/science/math/blas/default.nix @@ -1,10 +1,10 @@ { stdenv, fetchurl, gfortran }: stdenv.mkDerivation { - name = "blas-20070405"; + name = "blas-20110419"; src = fetchurl { url = "http://www.netlib.org/blas/blas.tgz"; - sha256 = "07alzd2yxkah96vjczqwi3ld5w00bvqv7qxb2fayvhs1h64jabxw"; + sha256 = "1d931d91byv2svydpj2ipjh1f2sm1h9ns8ik2w5fwaa8qinxz1za"; }; buildInputs = [gfortran]; diff --git a/pkgs/development/mobile/titaniumenv/titaniumsdk.nix b/pkgs/development/mobile/titaniumenv/titaniumsdk.nix index 46227e5f14d5..276b442af0cf 100644 --- a/pkgs/development/mobile/titaniumenv/titaniumsdk.nix +++ b/pkgs/development/mobile/titaniumenv/titaniumsdk.nix @@ -1,14 +1,14 @@ {stdenv, fetchurl, unzip, makeWrapper, python, jdk}: stdenv.mkDerivation { - name = "titanium-mobilesdk-3.1.1.v20130612114553"; + name = "mobilesdk-3.1.4.v20130926144546"; src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl { - url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.1.v20130612114553-linux.zip; - sha1 = "410ba7e8171a887b6a4b3173116430657c3d84aa"; + url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.4.v20130926144546-linux.zip; + sha1 = "da4a03ced67f0e8f442d551bbd41ea01fceeee00"; } else if stdenv.system == "x86_64-darwin" then fetchurl { - url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.1.v20130612114553-osx.zip; - sha1 = "0893a1560ac6fb63369fc9f6ea9550b6649438fa"; + url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.4.v20130926144546-osx.zip; + sha1 = "55f604c8edb989ba214c8ed7538d1b416df0419e"; } else throw "Platform: ${stdenv.system} not supported!"; diff --git a/pkgs/development/python-modules/gyp/no-xcode.patch b/pkgs/development/python-modules/gyp/no-xcode.patch index 951be7b005ac..eb33a2b9987c 100644 --- a/pkgs/development/python-modules/gyp/no-xcode.patch +++ b/pkgs/development/python-modules/gyp/no-xcode.patch @@ -56,11 +56,11 @@ index b2aab986a427d5285d70558bf97f0a42bfe1556e..20592c73fae660009aac621097cf3c4f l = '-l' + m.group(1) else: l = library -- return l.replace('$(SDKROOT)', self._SdkPath()) +- return l.replace('$(SDKROOT)', self._SdkPath(config_name)) + if self._SdkPath(): -+ return l.replace('$(SDKROOT)', self._SdkPath()) ++ return l.replace('$(SDKROOT)', self._SdkPath(config_name)) + else: + return l - def AdjustLibraries(self, libraries): + def AdjustLibraries(self, libraries, config_name=None): """Transforms entries like 'Cocoa.framework' in libraries into entries like diff --git a/pkgs/development/r-modules/generic/builder.sh b/pkgs/development/r-modules/generic/builder.sh new file mode 100644 index 000000000000..0c5d934c10c3 --- /dev/null +++ b/pkgs/development/r-modules/generic/builder.sh @@ -0,0 +1,23 @@ +source $stdenv/setup + +export R_LIBS_SITE="$R_LIBS_SITE${R_LIBS_SITE:+:}$out/library" + + +if test -n "$rPreHook"; then + eval "$rPreHook" +fi + +installPhase() { + runHook preInstall + mkdir -p $out/library + R CMD INSTALL -l $out/library $src + runHook postInstall +} + +postFixup() { + if test -e $out/nix-support/propagated-native-build-inputs; then + ln -s $out/nix-support/propagated-native-build-inputs $out/nix-support/propagated-user-env-packages + fi +} + +genericBuild diff --git a/pkgs/development/r-modules/generic/default.nix b/pkgs/development/r-modules/generic/default.nix new file mode 100644 index 000000000000..d405cc018d15 --- /dev/null +++ b/pkgs/development/r-modules/generic/default.nix @@ -0,0 +1,17 @@ +R: + +{ buildInputs ? [], ... } @ attrs: + +R.stdenv.mkDerivation ( + { + } + // + attrs + // + { + name = "r-" + attrs.name; + builder = ./builder.sh; + buildInputs = buildInputs ++ [ R ]; + phases = [ "installPhase" "fixupPhase" ]; + } +) diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix index 576d8e357f4b..97b50d0019fa 100644 --- a/pkgs/development/tools/build-managers/gradle/default.nix +++ b/pkgs/development/tools/build-managers/gradle/default.nix @@ -1,24 +1,25 @@ -{ stdenv, fetchurl, unzip }: - -# at runtime, need jdk +{ stdenv, fetchurl, unzip, jdk, makeWrapper }: stdenv.mkDerivation rec { - name = "gradle-0.8"; + name = "gradle-1.8"; src = fetchurl { - url = "http://dist.codehaus.org/gradle/gradle-0.8-bin.zip"; - sha256 = "940e623ea98e40ea9ad398770a6ebb91a61c0869d394dda81aa86b0f4f0025e7"; + url = "http://services.gradle.org/distributions/${name}-bin.zip"; + sha256 = "00spxad9b5vddshp02cic0ds8icgb1clknl7494f467x2pxbnhm3"; }; installPhase = '' - mkdir -p $out - rm bin/*.bat - mv * $out + mkdir -pv $out + cp -rv lib $out + + makeWrapper ${jdk}/bin/java $out/bin/gradle \ + --set JAVA_HOME ${jdk} \ + --add-flags "-classpath $out/lib/gradle-launcher-1.8.jar org.gradle.launcher.GradleMain" ''; phases = "unpackPhase installPhase"; - buildInputs = [unzip]; + buildInputs = [ unzip jdk makeWrapper ]; meta = { description = "Gradle is an enterprise-grade build system"; diff --git a/pkgs/development/tools/build-managers/leiningen/builder.sh b/pkgs/development/tools/build-managers/leiningen/builder.sh index f5489a4a76fc..8d0924028cc8 100644 --- a/pkgs/development/tools/build-managers/leiningen/builder.sh +++ b/pkgs/development/tools/build-managers/leiningen/builder.sh @@ -20,4 +20,6 @@ chmod -v 755 $out_bin patchShebangs $out -wrapProgram $out_bin --prefix PATH ":" ${rlwrap}/bin +wrapProgram $out_bin \ + --prefix PATH ":" ${rlwrap}/bin \ + --set LEIN_GPG ${gnupg}/bin/gpg diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix index 4ca362ede0a2..779b84d0ca86 100644 --- a/pkgs/development/tools/build-managers/leiningen/default.nix +++ b/pkgs/development/tools/build-managers/leiningen/default.nix @@ -1,23 +1,23 @@ -{ stdenv, fetchurl, makeWrapper, jdk, rlwrap, clojure }: +{ stdenv, fetchurl, makeWrapper, jdk, rlwrap, clojure, gnupg }: stdenv.mkDerivation rec { pname = "leiningen"; - version = "2.3.1"; + version = "2.3.2"; name = "${pname}-${version}"; src = fetchurl { url = "https://raw.github.com/technomancy/leiningen/${version}/bin/lein-pkg"; - sha256 = "07z4sr4ssi9lqr1kydxn4gp992n44jsr6llarlvpx0ns8yi4gx0l"; + sha256 = "1dpvs6b2n309ixglmdpw64k8fbz8n4rd61xp4jrih0z7dgvcql6h"; }; jarsrc = fetchurl { url = "https://leiningen.s3.amazonaws.com/downloads/${pname}-${version}-standalone.jar"; - sha256 = "00hmxyvrzxjwa2qz3flnrvg2k2llzvprk9b5szyrh3rv5z5jd4hw"; + sha256 = "0g6sgmgl0azawwchi86qxqsknk753ffwiszsxg4idqb713ac6cda"; }; patches = ./lein_2.3.0.patch; - inherit rlwrap clojure; + inherit rlwrap clojure gnupg; builder = ./builder.sh; diff --git a/pkgs/development/tools/build-managers/ninja/default.nix b/pkgs/development/tools/build-managers/ninja/default.nix index 68a6640951ba..ed9890150a37 100644 --- a/pkgs/development/tools/build-managers/ninja/default.nix +++ b/pkgs/development/tools/build-managers/ninja/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { name = "ninja-${version}"; - version = "1.3.4"; + version = "1.4.0"; src = fetchurl { name = "${name}.tar.gz"; url = "https://github.com/martine/ninja/archive/v${version}.tar.gz"; - sha256 = "16b0dxq3v19qjchcmfqq3m4l8s4qx2d674vfvamg0s3vvfqnc477"; + sha256 = "05y3whnp0fvfv1wsp862x0w1vrn3yjzzg8ypvbpcv6y6qlrsn73h"; }; buildInputs = [ python asciidoc re2c ]; diff --git a/pkgs/development/tools/build-managers/rebar/default.nix b/pkgs/development/tools/build-managers/rebar/default.nix index 68eacf8d2ea4..ac6951785416 100644 --- a/pkgs/development/tools/build-managers/rebar/default.nix +++ b/pkgs/development/tools/build-managers/rebar/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation { meta = { homepage = "https://github.com/rebar/rebar"; - description = "Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases."; + description = "Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases"; longDescription = '' rebar is a self-contained Erlang script, so it's easy to diff --git a/pkgs/development/tools/haskell/HaRe/default.nix b/pkgs/development/tools/haskell/HaRe/default.nix index 885f599493a3..1ef60e7950d0 100644 --- a/pkgs/development/tools/haskell/HaRe/default.nix +++ b/pkgs/development/tools/haskell/HaRe/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "HaRe"; - version = "0.7.0.5"; - sha256 = "0i2l0f38j48im3vrqgg54czii5gxszscagdk3928miffac098a7s"; + version = "0.7.0.6"; + sha256 = "0i2zl08rg7777jarw2v3797v0va80h7bg166wfq9lzynz9vqsima"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/tools/haskell/hlint/default.nix b/pkgs/development/tools/haskell/hlint/default.nix index d1d03c2c8909..73ab425ea8de 100644 --- a/pkgs/development/tools/haskell/hlint/default.nix +++ b/pkgs/development/tools/haskell/hlint/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "hlint"; - version = "1.8.51"; - sha256 = "0cm78921ksysiz81x3m7kjq343fr46fpm61cw367aljd86lhivv1"; + version = "1.8.53"; + sha256 = "1gnv9h909qgf80bpb769mr1paf8lzp3xlwmyw4nxdj84fn0y57q0"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/tools/misc/stm32flash/default.nix b/pkgs/development/tools/misc/stm32flash/default.nix index 496288285c7b..6b99a5755e42 100644 --- a/pkgs/development/tools/misc/stm32flash/default.nix +++ b/pkgs/development/tools/misc/stm32flash/default.nix @@ -8,19 +8,17 @@ stdenv.mkDerivation { sha256 = "04k631g9lzvp9xr4sw51xpq1g542np61s1l8fpwx9rbsc8m5l0i6"; }; - buildInputs = []; - installPhase = '' # Manually copy, make install copies to /usr/local/bin mkdir -pv $out/bin/ cp stm32flash $out/bin/ ''; - meta = { - description = "Open source flash program for the STM32 ARM processors using the ST bootloader."; + meta = with stdenv.lib; { + description = "Open source flash program for the STM32 ARM processors using the ST bootloader"; homepage = https://code.google.com/p/stm32flash/; license = "GPLv2"; - platforms = stdenv.lib.platforms.all; # Should work on all platforms - maintainers = [ stdenv.lib.maintainers.the-kenny ]; + platforms = platforms.all; # Should work on all platforms + maintainers = [ maintainers.the-kenny ]; }; } diff --git a/pkgs/development/tools/phantomjs/default.nix b/pkgs/development/tools/phantomjs/default.nix index 87fd50fe7598..7eea3bedcef0 100644 --- a/pkgs/development/tools/phantomjs/default.nix +++ b/pkgs/development/tools/phantomjs/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, freetype, fontconfig }: +{ stdenv, fetchurl, freetype, fontconfig, openssl }: assert stdenv.lib.elem stdenv.system [ "i686-linux" "x86_64-linux" ]; @@ -24,11 +24,12 @@ stdenv.mkDerivation rec { buildPhase = '' patchelf \ --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ - --set-rpath ${freetype}/lib:${fontconfig}/lib:${stdenv.gcc.gcc}/lib64:${stdenv.gcc.gcc}/lib \ + --set-rpath "${freetype}/lib:${fontconfig}/lib:${stdenv.gcc.gcc}/lib64:${stdenv.gcc.gcc}/lib:${openssl}/lib" \ bin/phantomjs ''; - dontStrip = true; + dontPatchELF = true; + dontStrip = true; installPhase = '' mkdir -p $out/share/doc/phantomjs diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix index 616adf002243..bf9f6d1060e4 100644 --- a/pkgs/games/openttd/default.nix +++ b/pkgs/games/openttd/default.nix @@ -1,21 +1,21 @@ -{stdenv, fetchurl, pkgconfig, SDL, libpng, zlib, xz, freetype, fontconfig}: +{ stdenv, fetchurl, pkgconfig, SDL, libpng, zlib, xz, freetype, fontconfig }: stdenv.mkDerivation rec { name = "openttd-${version}"; - version = "1.2.2"; + version = "1.3.2"; src = fetchurl { url = "http://binaries.openttd.org/releases/${version}/${name}-source.tar.xz"; - sha256 = "158znfx389bhs9gd2hadnbc2a32z4ma1vz8704cmw9yh0fmhbcap"; + sha256 = "02r7xfq9a5x1y2wpdhqyczaj48z0qan33hs4i2liahsg1k6w1vzn"; }; - buildInputs = [SDL libpng pkgconfig xz zlib freetype fontconfig]; + buildInputs = [ SDL libpng pkgconfig xz zlib freetype fontconfig ]; prefixKey = "--prefix-dir="; - configureFlags = '' - --with-zlib=${zlib}/lib/libz.a - --without-liblzo2 - ''; + configureFlags = [ + "--with-zlib=${zlib}/lib/libz.a" + "--without-liblzo2" + ]; makeFlags = "INSTALL_PERSONAL_DIR="; @@ -24,11 +24,11 @@ stdenv.mkDerivation rec { ''; meta = { - description = ''OpenTTD is an open source clone of the Microprose game "Transport Tycoon Deluxe".''; + description = ''OpenTTD is an open source clone of the Microprose game "Transport Tycoon Deluxe"''; longDescription = '' OpenTTD is a transportation economics simulator. In single player mode, - players controll a transportation business, and use rail, road, sea, and air - transport to move goods and people around the simulated world. + players control a transportation business, and use rail, road, sea, and air + transport to move goods and people around the simulated world. In multiplayer networked mode, players may: - play competitively as different businesses @@ -37,6 +37,7 @@ stdenv.mkDerivation rec { ''; homepage = http://www.openttd.org/; license = "GPLv2"; - maintainers = with stdenv.lib.maintainers; [ jcumming ]; + platforms = stdenv.lib.platforms.unix; + maintainers = with stdenv.lib.maintainers; [ jcumming the-kenny ]; }; } diff --git a/pkgs/lib/licenses.nix b/pkgs/lib/licenses.nix index c5c9133da6eb..55517c5e1e5e 100644 --- a/pkgs/lib/licenses.nix +++ b/pkgs/lib/licenses.nix @@ -34,11 +34,9 @@ url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/licenses/AMD-ADL?revision=1.1"; }; - apsl20 = { - shortName = "APSL 2.0"; - fullName = "Apple Public Source License 2.0"; - url = http://opensource.org/licenses/APSL-2.0; - }; + # Apple Public Source License 2.0; + # http://opensource.org/licenses/APSL-2.0 + apsl20 = "APSL 2.0"; asl20 = { shortName = "ASL2.0"; @@ -96,11 +94,9 @@ url = http://www.mysql.com/about/legal/licensing/foss-exception; }; - gpl2Plus = { - shortName = "GPLv2+"; - fullName = "GNU General Public License version 2 or later"; - url = http://www.gnu.org/licenses/old-licenses/gpl-2.0.html; - }; + # GNU General Public License version 2 or later; + # http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + gpl2Plus = "GPLv2+"; gpl3 = { shortName = "GPLv3"; diff --git a/pkgs/lib/maintainers.nix b/pkgs/lib/maintainers.nix index a6ef3b9c07f3..06c71b2b7ac8 100644 --- a/pkgs/lib/maintainers.nix +++ b/pkgs/lib/maintainers.nix @@ -5,6 +5,7 @@ alphabetically sorted. */ aforemny = "Alexander Foremny "; + algorith = "Dries Van Daele "; all = "Nix Committers "; amiddelk = "Arie Middelkoop "; amorsillo = "Andrew Morsillo "; @@ -19,6 +20,7 @@ bodil = "Bodil Stokke "; chaoflow = "Florian Friesdorf "; coconnor = "Corey O'Connor "; + coroa = "Jonas Hörsch "; edwtjo = "Edward Tjörnhammar "; eelco = "Eelco Dolstra "; ertes = "Ertugrul Söylemez "; @@ -41,6 +43,7 @@ phreedom = "Evgeny Egorochkin "; pierron = "Nicolas B. Pierron "; piotr = "Piotr Pietraszkiewicz "; + pSub = "Pascal Wittmann "; qknight = "Joachim Schiele "; raskin = "Michael Raskin <7c6f434c@mail.ru>"; rickynils = "Rickard Nilsson "; diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix index ba136530593a..142c75aeb0fa 100644 --- a/pkgs/misc/ghostscript/default.nix +++ b/pkgs/misc/ghostscript/default.nix @@ -41,10 +41,10 @@ let }; mainlineSrc = rec { - name = "ghostscript-9.10"; + name = "ghostscript-9.06"; src = fetchurl { url = "http://downloads.ghostscript.com/public/${name}.tar.bz2"; - sha256 = "106mglk77dhdra1m0ddnmaq645xj1aj45qvlh8izv3xx4cdrv3bc"; + sha256 = "014f10rxn4ihvcr1frby4szd1jvkrwvmdhnbivpp55c9fssx3b05"; }; meta = meta_common // { homepage = "http://www.ghostscript.com/"; @@ -79,10 +79,13 @@ stdenv.mkDerivation rec { # ... add other fonts here ]; - buildInputs = [ - pkgconfig zlib expat openssl - libjpeg libpng libtiff freetype fontconfig lcms2 libpaper jbig2dec - ] ++ stdenv.lib.optional x11Support x11 + enableParallelBuilding = true; + + buildInputs = + [ pkgconfig zlib expat openssl + libjpeg libpng libtiff freetype fontconfig lcms2 libpaper jbig2dec + ] + ++ stdenv.lib.optional x11Support x11 ++ stdenv.lib.optional cupsSupport cups ++ libiconvOrEmpty # [] # maybe sometimes jpeg2000 support @@ -102,11 +105,11 @@ stdenv.mkDerivation rec { makeFlagsArray=(CUPSSERVERBIN=$out/lib/cups CUPSSERVERROOT=$out/etc/cups CUPSDATA=$out/share/cups) '' + stdenv.lib.optionalString (variant ? preConfigure) variant.preConfigure; - configureFlags = [ - "--with-system-libtiff" - (if x11Support then "--with-x" else "--without-x") - (if cupsSupport then "--enable-cups" else "--disable-cups") - ]; + configureFlags = + [ "--with-system-libtiff" + (if x11Support then "--with-x" else "--without-x") + (if cupsSupport then "--enable-cups --with-install-cups" else "--disable-cups") + ]; doCheck = true; diff --git a/pkgs/misc/lilypond/default.nix b/pkgs/misc/lilypond/default.nix index 6d5d87faad6e..2b6606faf3b5 100644 --- a/pkgs/misc/lilypond/default.nix +++ b/pkgs/misc/lilypond/default.nix @@ -24,7 +24,10 @@ stdenv.mkDerivation rec{ ''; postInstall = '' - for f in $out/bin/*; do wrapProgram $f --set GUILE_AUTO_COMPILE 0; done + for f in "$out"/bin/*; do + wrapProgram "$f" --set GUILE_AUTO_COMPILE 0 \ + --set PATH "${ghostscript}/bin" + done ''; configureFlags = [ "--disable-documentation" "--with-ncsb-dir=${urwfonts}"]; diff --git a/pkgs/os-specific/linux/broadcom-sta-v6/default.nix b/pkgs/os-specific/linux/broadcom-sta-v6/default.nix new file mode 100644 index 000000000000..db4337c0ff28 --- /dev/null +++ b/pkgs/os-specific/linux/broadcom-sta-v6/default.nix @@ -0,0 +1,49 @@ +{ stdenv, fetchurl, kernelDev }: +let + version = "6_30_223_141"; +in +stdenv.mkDerivation { + name = "broadcom-sta-${version}-${kernelDev.version}"; + + src = if stdenv.system == "i686-linux" then ( + fetchurl { + url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-${version}.tar.gz"; + sha256 = "19wra62dpm0x0byksh871yxr128b4v13kzkzqv56igjfpzv36z6m"; + } ) else ( + fetchurl { + url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-${version}.tar.gz"; + sha256 = "0jlvch7d3khmmg5kp80x4ka33hidj8yykqjcqq6j56z2g6wb4dsz"; + } + ); + + buildInputs = [ kernelDev ]; + patches = [ + ./linux-recent.patch + ./license.patch + ]; + + makeFlags = "KBASE=${kernelDev}/lib/modules/${kernelDev.modDirVersion}"; + + unpackPhase = '' + sourceRoot=broadcom-sta + mkdir "$sourceRoot" + tar xvf "$src" -C "$sourceRoot" + ''; + + installPhase = + '' + binDir="$out/lib/modules/${kernelDev.modDirVersion}/kernel/net/wireless/" + docDir="$out/share/doc/broadcom-sta/" + mkdir -p "$binDir" "$docDir" + cp wl.ko "$binDir" + cp lib/LICENSE.txt "$docDir" + ''; + + meta = { + description = "Kernel module driver for some Broadcom's wireless cards"; + homepage = http://www.broadcom.com/support/802.11/linux_sta.php; + license = "unfree-redistributable"; + maintainers = with stdenv.lib.maintainers; [ phreedom vcunat ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/os-specific/linux/broadcom-sta-v6/license.patch b/pkgs/os-specific/linux/broadcom-sta-v6/license.patch new file mode 100644 index 000000000000..aebb46365195 --- /dev/null +++ b/pkgs/os-specific/linux/broadcom-sta-v6/license.patch @@ -0,0 +1,13 @@ +diff -Naur hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c +--- hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c 2009-04-23 02:48:59.000000000 +0900 ++++ hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c 2009-05-08 00:48:20.000000000 +0900 +@@ -171,6 +171,8 @@ + static void wl_free_if(wl_info_t *wl, wl_if_t *wlif); + static void wl_get_driver_info(struct net_device *dev, struct ethtool_drvinfo *info); + ++MODULE_LICENSE("MIXED/Proprietary"); ++ + #if defined(WL_CONFIG_RFKILL) + #include + static int wl_init_rfkill(wl_info_t *wl); + diff --git a/pkgs/os-specific/linux/broadcom-sta-v6/linux-recent.patch b/pkgs/os-specific/linux/broadcom-sta-v6/linux-recent.patch new file mode 100644 index 000000000000..97a331a2bd73 --- /dev/null +++ b/pkgs/os-specific/linux/broadcom-sta-v6/linux-recent.patch @@ -0,0 +1,126 @@ +--- a/src/wl/sys/wl_linux.c 2013-08-01 08:52:22.000000000 +0200 ++++ b/src/wl/sys/wl_linux.c 2013-09-13 14:25:36.463020788 +0200 +@@ -910,7 +910,11 @@ + pci_set_drvdata(pdev, NULL); + } + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) + static struct pci_driver wl_pci_driver = { ++#else ++static struct pci_driver wl_pci_driver __refdata = { ++#endif + name: "wl", + probe: wl_pci_probe, + suspend: wl_suspend, +@@ -3235,7 +3239,7 @@ + void + wl_tkip_printstats(wl_info_t *wl, bool group_key) + { +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14) && LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + char debug_buf[512]; + int idx; + if (wl->tkipmodops) { +@@ -3408,6 +3412,7 @@ + return 0; + } + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + static int + wl_proc_read(char *buffer, char **start, off_t offset, int length, int *eof, void *data) + { +@@ -3462,19 +3467,90 @@ + return length; + } + ++#else ++ ++static int ++wl_proc_read(struct seq_file *seq, void *offset) ++{ ++ wl_info_t * wl = (wl_info_t *)seq->private; ++ int bcmerror, to_user; ++ ++ WL_LOCK(wl); ++ bcmerror = wlc_ioctl(wl->wlc, WLC_GET_MONITOR, &to_user, sizeof(int), NULL); ++ WL_UNLOCK(wl); ++ ++ seq_printf(seq, "%d\n", to_user); ++ return bcmerror; ++} ++ ++static ssize_t wl_proc_write(struct file *file, const char __user *buff, ++ size_t length, loff_t *ppos) ++{ ++ struct seq_file *seq = file->private_data; ++ wl_info_t * wl = (wl_info_t *)seq->private; ++ int bcmerror, from_user = 0; ++ ++ if (length != 1) { ++ WL_ERROR(("%s: Invalid data length\n", __FUNCTION__)); ++ return -EIO; ++ } ++ ++ if (copy_from_user(&from_user, buff, 1)) { ++ WL_ERROR(("%s: copy from user failed\n", __FUNCTION__)); ++ return -EFAULT; ++ } ++ ++ if (from_user >= 0x30) ++ from_user -= 0x30; ++ ++ WL_LOCK(wl); ++ bcmerror = wlc_ioctl(wl->wlc, WLC_SET_MONITOR, &from_user, sizeof(int), NULL); ++ WL_UNLOCK(wl); ++ ++ if (bcmerror < 0) { ++ WL_ERROR(("%s: SET_MONITOR failed with %d\n", __FUNCTION__, bcmerror)); ++ return -EIO; ++ } ++ *ppos += length; ++ return length; ++} ++ ++static int wl_proc_open(struct inode *inode, struct file *file) ++{ ++ return single_open(file, wl_proc_read, PDE_DATA(inode)); ++} ++ ++static const struct file_operations wl_proc_fops = { ++ .owner = THIS_MODULE, ++ .open = wl_proc_open, ++ .read = seq_read, ++ .write = wl_proc_write, ++ .llseek = seq_lseek, ++ .release = single_release, ++}; ++#endif ++ + static int + wl_reg_proc_entry(wl_info_t *wl) + { + char tmp[32]; + sprintf(tmp, "%s%d", HYBRID_PROC, wl->pub->unit); +- if ((wl->proc_entry = create_proc_entry(tmp, 0644, NULL)) == NULL) { ++ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) ++ wl->proc_entry = create_proc_entry(tmp, 0644, NULL); ++ if (wl->proc_entry) { ++ wl->proc_entry->read_proc = wl_proc_read; ++ wl->proc_entry->write_proc = wl_proc_write; ++ wl->proc_entry->data = wl; ++ } ++#else ++ wl->proc_entry = proc_create_data(tmp, 0644, NULL, &wl_proc_fops, wl); ++#endif ++ if (!wl->proc_entry) { + WL_ERROR(("%s: create_proc_entry %s failed\n", __FUNCTION__, tmp)); + ASSERT(0); + return -1; + } +- wl->proc_entry->read_proc = wl_proc_read; +- wl->proc_entry->write_proc = wl_proc_write; +- wl->proc_entry->data = wl; + return 0; + } + #ifdef WLOFFLD diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 45cd135fbbee..01a605aac309 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -86,9 +86,6 @@ with stdenv.lib; ''} BCMA_HOST_PCI y - # Some settings to make sure that fbcondecor works - in particular, - # disable tileblitting and the drivers that need it. - # Enable various FB devices. FB y FB_EFI y @@ -169,6 +166,9 @@ with stdenv.lib; SECURITY_SELINUX_BOOTPARAM_VALUE 0 # Disable SELinux by default DEVKMEM n # Disable /dev/kmem CC_STACKPROTECTOR y # Detect buffer overflows on the stack + ${optionalString (versionAtLeast version "3.12") '' + USER_NS y # Support for user namespaces + ''} # Misc. options. 8139TOO_8129 y diff --git a/pkgs/os-specific/linux/kernel/linux-3.11.nix b/pkgs/os-specific/linux/kernel/linux-3.11.nix index 94773a22bfa0..3d332bd2ce29 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.11.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.11.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.11.1"; + version = "3.11.2"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "16wblz06129lxvxsl3rhmdj4b31yzmwv3rxnjmrlj3c3qlzph29c"; + sha256 = "139w8g59fa2kw39kkcpln54mvrl2rq1gv3nqdcrhcy6n1b7r4194"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/linux-3.12.nix b/pkgs/os-specific/linux/kernel/linux-3.12.nix new file mode 100644 index 000000000000..dc77c55696aa --- /dev/null +++ b/pkgs/os-specific/linux/kernel/linux-3.12.nix @@ -0,0 +1,16 @@ +{ stdenv, fetchurl, ... } @ args: + +import ./generic.nix (args // rec { + version = "3.12-rc2"; + + src = fetchurl { + url = "https://www.kernel.org/pub/linux/kernel/v3.0/testing/linux-${version}.tar.gz"; + sha256 = "1m24fh3cwmkb1scn3sl7gbc50jl53v357kjpgda9avi3ljxmyq5z"; + }; + + features.iwlwifi = true; + features.efiBootStub = true; + features.needsCifsUtils = true; + features.canDisableNetfilterConntrackHelpers = true; + features.netfilterRPFilter = true; +}) diff --git a/pkgs/os-specific/linux/kernel/linux-3.4.nix b/pkgs/os-specific/linux/kernel/linux-3.4.nix index b275d0740ddc..953f7d691575 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.4.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.4.62"; + version = "3.4.63"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "1cfi7125xdb1b9mrabrxyr86ixyb8jik21vg5r8d355r0zgz124m"; + sha256 = "0wphxk0lzbcd7vplvnx4b2h446pmdv2gxc0gnjbrzfl0v4lgz1y3"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index f8413b0e5416..35595a7b8f4f 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -10,7 +10,7 @@ with stdenv.lib; let - versionNumber = "319.49"; + versionNumber = "319.60"; in @@ -28,12 +28,12 @@ stdenv.mkDerivation { if stdenv.system == "i686-linux" then fetchurl { url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; - sha256 = "1ngss9zw109a5xfr3vvhf1ajqjvvqc7j3dzw9h56vddck6kpbc22"; + sha256 = "0kjidkwd2b5aik74663mxk3ffq4a3fmaybq2aq1lcbfhvvh49j6j"; } else if stdenv.system == "x86_64-linux" then fetchurl { url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run"; - sha256 = "1i68jfms8033p2x0r3z4fdjcmkkhbi6yizzc0ck9ydagdgg3liwp"; + sha256 = "0fhrxcfsw2jaycnz9gr04c9w585wydx8kpm6rjjbw19wkf8hlq3z"; } else throw "nvidia-x11 does not support platform ${stdenv.system}"; diff --git a/pkgs/os-specific/linux/splashutils/default.nix b/pkgs/os-specific/linux/splashutils/default.nix deleted file mode 100644 index 86bdd7eee9ba..000000000000 --- a/pkgs/os-specific/linux/splashutils/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ stdenv, fetchurl, zlib, libjpeg }: - -stdenv.mkDerivation { - name = "splashutils-1.5.4.3"; - - src = fetchurl { - url = http://dev.gentoo.org/~spock/projects/splashutils/current/splashutils-1.5.4.3.tar.bz2; - sha256 = "0vn0ifqp9a3bmprzx2yr82hgq8m2y5xv8qcifs2plz6p3lidagpg"; - }; - - buildInputs = [ zlib libjpeg ]; - - configureFlags = "--without-ttf --without-png --without-gpm --with-themedir=/etc/splash KLCC=gcc"; - - dontDisableStatic = true; - - preConfigure = '' - configureFlags="$configureFlags --with-essential-prefix=$out" - substituteInPlace src/common.h \ - --replace 'FBSPLASH_DIR"/sys"' '"/sys"' \ - --replace 'FBSPLASH_DIR"/proc"' '"/proc"' - substituteInPlace src/Makefile.in \ - --replace '-all-static' "" \ - --replace '-static' "" - ''; - - CPP = "gcc -E"; - CXXCPP = "g++ -E"; - NIX_CFLAGS_COMPILE = "-fPIC"; - - passthru = { - helperName = "sbin/fbcondecor_helper"; - controlName = "sbin/fbcondecor_ctl"; - helperProcFile = "/proc/sys/kernel/fbcondecor"; - }; -} diff --git a/pkgs/os-specific/linux/systemd/0001-Make-systemctl-daemon-reexec-do-the-right-thing-on-N.patch b/pkgs/os-specific/linux/systemd/0001-Make-systemctl-daemon-reexec-do-the-right-thing-on-N.patch index bcc8d8f32f77..84a03dd97330 100644 --- a/pkgs/os-specific/linux/systemd/0001-Make-systemctl-daemon-reexec-do-the-right-thing-on-N.patch +++ b/pkgs/os-specific/linux/systemd/0001-Make-systemctl-daemon-reexec-do-the-right-thing-on-N.patch @@ -1,7 +1,7 @@ From 8f861550827e750fb56954c3f91a2f565abb42bb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Jan 2013 15:44:33 +0100 -Subject: [PATCH 1/9] Make "systemctl daemon-reexec" do the right thing on +Subject: [PATCH 01/11] Make "systemctl daemon-reexec" do the right thing on NixOS --- @@ -22,5 +22,5 @@ index 7fc06be..7575223 100644 args[i++] = "--switched-root"; args[i++] = arg_running_as == SYSTEMD_SYSTEM ? "--system" : "--user"; -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0002-Ignore-duplicate-paths-in-systemctl-start.patch b/pkgs/os-specific/linux/systemd/0002-Ignore-duplicate-paths-in-systemctl-start.patch index 27ac6183efc8..15946506ac18 100644 --- a/pkgs/os-specific/linux/systemd/0002-Ignore-duplicate-paths-in-systemctl-start.patch +++ b/pkgs/os-specific/linux/systemd/0002-Ignore-duplicate-paths-in-systemctl-start.patch @@ -1,7 +1,7 @@ From 2afcee0b4da066fb5f8fc00b749d88f5bd9df3d3 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Jan 2013 15:45:01 +0100 -Subject: [PATCH 2/9] Ignore duplicate paths in "systemctl start" +Subject: [PATCH 02/11] Ignore duplicate paths in "systemctl start" --- src/systemctl/systemctl.c | 2 +- @@ -21,5 +21,5 @@ index 3cca861..16791a2 100644 return r; } -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0003-Start-device-units-for-uninitialised-encrypted-devic.patch b/pkgs/os-specific/linux/systemd/0003-Start-device-units-for-uninitialised-encrypted-devic.patch index ad162fa789ae..2927d6e4dc69 100644 --- a/pkgs/os-specific/linux/systemd/0003-Start-device-units-for-uninitialised-encrypted-devic.patch +++ b/pkgs/os-specific/linux/systemd/0003-Start-device-units-for-uninitialised-encrypted-devic.patch @@ -1,7 +1,7 @@ From b288ca7d376e3a78368a2b59529ebe5ba812babf Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Jan 2013 15:46:30 +0100 -Subject: [PATCH 3/9] Start device units for uninitialised encrypted devices +Subject: [PATCH 03/11] Start device units for uninitialised encrypted devices This is necessary because the NixOS service that initialises the filesystem depends on the appearance of the device unit. Also, this @@ -28,5 +28,5 @@ index d17bdd9..040b10e 100644 SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", TEST!="md/array_state", ENV{SYSTEMD_READY}="0" SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", ATTR{md/array_state}=="|clear|inactive", ENV{SYSTEMD_READY}="0" -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0004-Set-switch-to-configuration-hints-for-some-units.patch b/pkgs/os-specific/linux/systemd/0004-Set-switch-to-configuration-hints-for-some-units.patch index 7fe18f378f98..54fcf9c3e1ee 100644 --- a/pkgs/os-specific/linux/systemd/0004-Set-switch-to-configuration-hints-for-some-units.patch +++ b/pkgs/os-specific/linux/systemd/0004-Set-switch-to-configuration-hints-for-some-units.patch @@ -1,7 +1,7 @@ From 7a498e661f3d111fa09700a6cfa62cfd6733b1cc Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Jan 2013 15:48:19 +0100 -Subject: [PATCH 4/9] Set switch-to-configuration hints for some units +Subject: [PATCH 04/11] Set switch-to-configuration hints for some units MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -70,5 +70,5 @@ index 0869e73..b6ed958 100644 +# Restart kills all active sessions. +X-RestartIfChanged=no -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0005-sysinit.target-Drop-the-dependency-on-local-fs.targe.patch b/pkgs/os-specific/linux/systemd/0005-sysinit.target-Drop-the-dependency-on-local-fs.targe.patch index 78683f0cf08d..9cbb2f716a8a 100644 --- a/pkgs/os-specific/linux/systemd/0005-sysinit.target-Drop-the-dependency-on-local-fs.targe.patch +++ b/pkgs/os-specific/linux/systemd/0005-sysinit.target-Drop-the-dependency-on-local-fs.targe.patch @@ -1,7 +1,7 @@ From e6bbe5fa858bd8196c8e1f264904679e6bda426d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Jan 2013 15:56:03 +0100 -Subject: [PATCH 5/9] sysinit.target: Drop the dependency on local-fs.target +Subject: [PATCH 05/11] sysinit.target: Drop the dependency on local-fs.target and swap.target Having all services with DefaultDependencies=yes depend on @@ -29,5 +29,5 @@ index 8f4fb8f..e0f0147 100644 +After=emergency.service emergency.target RefuseManualStart=yes -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0006-Don-t-call-plymouth-quit.patch b/pkgs/os-specific/linux/systemd/0006-Don-t-call-plymouth-quit.patch index e440f6113dc0..d73733a68b00 100644 --- a/pkgs/os-specific/linux/systemd/0006-Don-t-call-plymouth-quit.patch +++ b/pkgs/os-specific/linux/systemd/0006-Don-t-call-plymouth-quit.patch @@ -1,7 +1,7 @@ From 4731a9074538e9e24d2b81fc737917b064e194e6 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Jan 2013 18:36:28 +0100 -Subject: [PATCH 6/9] Don't call "plymouth quit" +Subject: [PATCH 06/11] Don't call "plymouth quit" NixOS doesn't use Plymouth (yet). --- @@ -34,5 +34,5 @@ index 269797a..2c640f4 100644 ExecStart=-/sbin/sulogin ExecStopPost=-@SYSTEMCTL@ --fail --no-block default -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0007-Ignore-IPv6-link-local-addresses.patch b/pkgs/os-specific/linux/systemd/0007-Ignore-IPv6-link-local-addresses.patch index 9c322c9fc597..f3b3103fe68e 100644 --- a/pkgs/os-specific/linux/systemd/0007-Ignore-IPv6-link-local-addresses.patch +++ b/pkgs/os-specific/linux/systemd/0007-Ignore-IPv6-link-local-addresses.patch @@ -1,7 +1,7 @@ From f0c362873860526579bf9bda216005fd5a0936dd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 4 Feb 2013 12:41:14 +0100 -Subject: [PATCH 7/9] Ignore IPv6 link-local addresses +Subject: [PATCH 07/11] Ignore IPv6 link-local addresses Returning IPv6 link-local addresses is a bad idea, because they only work if an application connects specifically over the corresponding @@ -33,5 +33,5 @@ index b1ef912..4f2ab5c 100644 continue; -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0008-Don-t-try-to-unmount-nix-or-nix-store.patch b/pkgs/os-specific/linux/systemd/0008-Don-t-try-to-unmount-nix-or-nix-store.patch index 803227031f79..252f1cde79a8 100644 --- a/pkgs/os-specific/linux/systemd/0008-Don-t-try-to-unmount-nix-or-nix-store.patch +++ b/pkgs/os-specific/linux/systemd/0008-Don-t-try-to-unmount-nix-or-nix-store.patch @@ -1,7 +1,7 @@ From 0112df74e576dd683c132ec33861b7099dc94454 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 12 Apr 2013 13:16:57 +0200 -Subject: [PATCH 8/9] Don't try to unmount /nix or /nix/store +Subject: [PATCH 08/11] Don't try to unmount /nix or /nix/store They'll still be remounted read-only. @@ -24,5 +24,5 @@ index 1e95ad7..9f0e471 100644 || path_equal(m->path, "/usr") #endif -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0009-Start-ctrl-alt-del.target-irreversibly.patch b/pkgs/os-specific/linux/systemd/0009-Start-ctrl-alt-del.target-irreversibly.patch index d0bade9ba5bc..8a78ded4b0da 100644 --- a/pkgs/os-specific/linux/systemd/0009-Start-ctrl-alt-del.target-irreversibly.patch +++ b/pkgs/os-specific/linux/systemd/0009-Start-ctrl-alt-del.target-irreversibly.patch @@ -1,7 +1,7 @@ From ed7c22c76e1399861ec8e0216f08a7f9419eea50 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 May 2013 14:03:13 +0200 -Subject: [PATCH 9/9] Start ctrl-alt-del.target irreversibly +Subject: [PATCH 09/11] Start ctrl-alt-del.target irreversibly This makes ctrl-alt-del reboots more robust, just like "systemctl reboot". @@ -23,5 +23,5 @@ index c7f8f20..0508628 100644 } -- -1.8.2.1 +1.8.3.4 diff --git a/pkgs/os-specific/linux/systemd/0010-Fix-CPUShares-configuration-option.patch b/pkgs/os-specific/linux/systemd/0010-Fix-CPUShares-configuration-option.patch new file mode 100644 index 000000000000..1f4852e6bfae --- /dev/null +++ b/pkgs/os-specific/linux/systemd/0010-Fix-CPUShares-configuration-option.patch @@ -0,0 +1,27 @@ +From 687e657cd320cb4d4ae442e3529ae9571108bb6e Mon Sep 17 00:00:00 2001 +From: Eelco Dolstra +Date: Fri, 24 May 2013 13:34:53 -0400 +Subject: [PATCH 10/11] Fix CPUShares configuration option + +This fixes the error message "Unknown or unsupported cgroup attribute +CPUShares". +--- + src/core/cgroup-semantics.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/core/cgroup-semantics.c b/src/core/cgroup-semantics.c +index 82b02bb..7df9d01 100644 +--- a/src/core/cgroup-semantics.c ++++ b/src/core/cgroup-semantics.c +@@ -255,7 +255,7 @@ static int map_blkio(const CGroupSemantics *s, const char *value, char **ret) { + } + + static const CGroupSemantics semantics[] = { +- { "cpu", "cpu.shares", "CPUShare", false, parse_cpu_shares, NULL, NULL }, ++ { "cpu", "cpu.shares", "CPUShares", false, parse_cpu_shares, NULL, NULL }, + { "memory", "memory.soft_limit_in_bytes", "MemorySoftLimit", false, parse_memory_limit, NULL, NULL }, + { "memory", "memory.limit_in_bytes", "MemoryLimit", false, parse_memory_limit, NULL, NULL }, + { "devices", "devices.allow", "DeviceAllow", true, parse_device, map_device, NULL }, +-- +1.8.3.4 + diff --git a/pkgs/os-specific/linux/systemd/0011-polkit-Avoid-race-condition-in-scraping-proc.patch b/pkgs/os-specific/linux/systemd/0011-polkit-Avoid-race-condition-in-scraping-proc.patch new file mode 100644 index 000000000000..08446db72c52 --- /dev/null +++ b/pkgs/os-specific/linux/systemd/0011-polkit-Avoid-race-condition-in-scraping-proc.patch @@ -0,0 +1,75 @@ +From ab7707b4a9b1b7615bfe2e30e4a2bc9cb5261766 Mon Sep 17 00:00:00 2001 +From: Colin Walters +Date: Thu, 22 Aug 2013 13:55:21 -0400 +Subject: [PATCH 11/11] polkit: Avoid race condition in scraping /proc + +If a calling process execve()s a setuid program, it can appear to be +uid 0. Since we're receiving requests over DBus, avoid this by simply +passing system-bus-name as a subject. +--- + src/shared/polkit.c | 31 +++++-------------------------- + 1 file changed, 5 insertions(+), 26 deletions(-) + +diff --git a/src/shared/polkit.c b/src/shared/polkit.c +index cea7074..1c5e9e3 100644 +--- a/src/shared/polkit.c ++++ b/src/shared/polkit.c +@@ -38,12 +38,8 @@ int verify_polkit( + + #ifdef ENABLE_POLKIT + DBusMessage *m = NULL, *reply = NULL; +- const char *unix_process = "unix-process", *pid = "pid", *starttime = "start-time", *cancel_id = ""; ++ const char *system_bus_name = "system-bus-name", *name = "name", *cancel_id = ""; + uint32_t flags = interactive ? 1 : 0; +- pid_t pid_raw; +- uint32_t pid_u32; +- unsigned long long starttime_raw; +- uint64_t starttime_u64; + DBusMessageIter iter_msg, iter_struct, iter_array, iter_dict, iter_variant; + int r; + dbus_bool_t authorized = FALSE, challenge = FALSE; +@@ -68,14 +64,6 @@ int verify_polkit( + + #ifdef ENABLE_POLKIT + +- pid_raw = bus_get_unix_process_id(c, sender, error); +- if (pid_raw == 0) +- return -EINVAL; +- +- r = get_starttime_of_pid(pid_raw, &starttime_raw); +- if (r < 0) +- return r; +- + m = dbus_message_new_method_call( + "org.freedesktop.PolicyKit1", + "/org/freedesktop/PolicyKit1/Authority", +@@ -86,22 +74,13 @@ int verify_polkit( + + dbus_message_iter_init_append(m, &iter_msg); + +- pid_u32 = (uint32_t) pid_raw; +- starttime_u64 = (uint64_t) starttime_raw; +- + if (!dbus_message_iter_open_container(&iter_msg, DBUS_TYPE_STRUCT, NULL, &iter_struct) || +- !dbus_message_iter_append_basic(&iter_struct, DBUS_TYPE_STRING, &unix_process) || ++ !dbus_message_iter_append_basic(&iter_struct, DBUS_TYPE_STRING, &system_bus_name) || + !dbus_message_iter_open_container(&iter_struct, DBUS_TYPE_ARRAY, "{sv}", &iter_array) || + !dbus_message_iter_open_container(&iter_array, DBUS_TYPE_DICT_ENTRY, NULL, &iter_dict) || +- !dbus_message_iter_append_basic(&iter_dict, DBUS_TYPE_STRING, &pid) || +- !dbus_message_iter_open_container(&iter_dict, DBUS_TYPE_VARIANT, "u", &iter_variant) || +- !dbus_message_iter_append_basic(&iter_variant, DBUS_TYPE_UINT32, &pid_u32) || +- !dbus_message_iter_close_container(&iter_dict, &iter_variant) || +- !dbus_message_iter_close_container(&iter_array, &iter_dict) || +- !dbus_message_iter_open_container(&iter_array, DBUS_TYPE_DICT_ENTRY, NULL, &iter_dict) || +- !dbus_message_iter_append_basic(&iter_dict, DBUS_TYPE_STRING, &starttime) || +- !dbus_message_iter_open_container(&iter_dict, DBUS_TYPE_VARIANT, "t", &iter_variant) || +- !dbus_message_iter_append_basic(&iter_variant, DBUS_TYPE_UINT64, &starttime_u64) || ++ !dbus_message_iter_append_basic(&iter_dict, DBUS_TYPE_STRING, &name) || ++ !dbus_message_iter_open_container(&iter_dict, DBUS_TYPE_VARIANT, "s", &iter_variant) || ++ !dbus_message_iter_append_basic(&iter_variant, DBUS_TYPE_STRING, &sender) || + !dbus_message_iter_close_container(&iter_dict, &iter_variant) || + !dbus_message_iter_close_container(&iter_array, &iter_dict) || + !dbus_message_iter_close_container(&iter_struct, &iter_array) || +-- +1.8.3.4 + diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 63e1a2a3bf36..3215032011a2 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -25,6 +25,8 @@ stdenv.mkDerivation rec { ./0007-Ignore-IPv6-link-local-addresses.patch ./0008-Don-t-try-to-unmount-nix-or-nix-store.patch ./0009-Start-ctrl-alt-del.target-irreversibly.patch + ./0010-Fix-CPUShares-configuration-option.patch + ./0011-polkit-Avoid-race-condition-in-scraping-proc.patch ] ++ stdenv.lib.optional stdenv.isArm ./libc-bug-accept4-arm.patch; buildInputs = diff --git a/pkgs/os-specific/linux/udisks-glue/default.nix b/pkgs/os-specific/linux/udisks-glue/default.nix new file mode 100644 index 000000000000..9f99d5e9f209 --- /dev/null +++ b/pkgs/os-specific/linux/udisks-glue/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, pkgconfig, automake, autoconf, udisks, dbus_glib, glib, confuse }: + +stdenv.mkDerivation { + name = "udisks-glue-1.3.5"; + + src = fetchurl { + url = "https://github.com/fernandotcl/udisks-glue/archive/release-1.3.5.tar.gz"; + sha256 = "317d25bf249278dc8f6a5dcf18f760512427c772b9afe3cfe34e6e1baa258176"; + }; + + buildInputs = [ automake autoconf pkgconfig udisks dbus_glib glib confuse ]; + + preConfigure = "sh autogen.sh"; + + meta = { + homepage = https://github.com/fernandotcl/udisks-glue; + description = "A tool to associate udisks events to user-defined actions"; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [pSub]; + license = "free"; + }; +} diff --git a/pkgs/servers/http/lighttpd/default.nix b/pkgs/servers/http/lighttpd/default.nix index f967a7aaa2a8..61070ef22b6e 100644 --- a/pkgs/servers/http/lighttpd/default.nix +++ b/pkgs/servers/http/lighttpd/default.nix @@ -1,4 +1,8 @@ -{ stdenv, fetchurl, pcre, libxml2, zlib, attr, bzip2, which, file, openssl }: +{ stdenv, fetchurl, pkgconfig, pcre, libxml2, zlib, attr, bzip2, which, file +, openssl, enableMagnet ? false, lua5 ? null +}: + +assert enableMagnet -> lua5 != null; stdenv.mkDerivation { name = "lighttpd-1.4.32"; @@ -8,9 +12,11 @@ stdenv.mkDerivation { sha256 = "1hgd9bi4mrak732h57na89lqg58b1kkchnddij9gawffd40ghs0k"; }; - buildInputs = [ pcre libxml2 zlib attr bzip2 which file openssl ]; + buildInputs = [ pkgconfig pcre libxml2 zlib attr bzip2 which file openssl ] + ++ stdenv.lib.optional enableMagnet lua5; - configureFlags = "--with-openssl --with-openssl-libs=${openssl}"; + configureFlags = [ "--with-openssl" ] + ++ stdenv.lib.optional enableMagnet "--with-lua"; preConfigure = '' sed -i "s:/usr/bin/file:${file}/bin/file:g" configure diff --git a/pkgs/servers/mail/dovecot-pigeonhole/default.nix b/pkgs/servers/mail/dovecot-pigeonhole/default.nix index 844219925b17..c4204113ae0f 100644 --- a/pkgs/servers/mail/dovecot-pigeonhole/default.nix +++ b/pkgs/servers/mail/dovecot-pigeonhole/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "dovecot-pigeonhole-${version}"; - version = "0.4.1"; + version = "0.4.2"; src = fetchurl { url = "http://www.rename-it.nl/dovecot/2.2/dovecot-2.2-pigeonhole-${version}.tar.gz"; - sha256 = "0vk9khwijl8qbjlm1q36a5dvpilrminp756n87c452kc3cfgc71n"; + sha256 = "04rybb7ipsrhqapcqfr787n60lwd56gb33ylq7yqjr5q6xqg1684"; }; buildInputs = [ dovecot22 openssl ]; diff --git a/pkgs/servers/mail/dovecot/2.2.x.nix b/pkgs/servers/mail/dovecot/2.2.x.nix index 15c3b65b7543..06635e33954f 100644 --- a/pkgs/servers/mail/dovecot/2.2.x.nix +++ b/pkgs/servers/mail/dovecot/2.2.x.nix @@ -2,13 +2,13 @@ , inotifyTools }: stdenv.mkDerivation rec { - name = "dovecot-2.2.4"; + name = "dovecot-2.2.6"; buildInputs = [perl systemd openssl pam bzip2 zlib openldap inotifyTools]; src = fetchurl { url = "http://dovecot.org/releases/2.2/${name}.tar.gz"; - sha256 = "1i5x7l03q854h4j210cpzair4vak95saccp9gb5p4xx7ndggm3q1"; + sha256 = "1rfnsg0a57cv02pl68h3jhbd5v3071a75bvf9gs95fd41g72n9v2"; }; preConfigure = '' diff --git a/pkgs/servers/monitoring/munin/default.nix b/pkgs/servers/monitoring/munin/default.nix index 8329a9a05c95..d7da0f658e22 100644 --- a/pkgs/servers/monitoring/munin/default.nix +++ b/pkgs/servers/monitoring/munin/default.nix @@ -6,12 +6,12 @@ # FIXME: munin tries to write log files and web graphs to its installation path. stdenv.mkDerivation rec { - version = "2.0.14"; + version = "2.0.17"; name = "munin-${version}"; src = fetchurl { url = "https://github.com/munin-monitoring/munin/archive/${version}.tar.gz"; - sha256 = "1d71gvmkrck42z1h1dfk9napbhn7apfmlnp7r62fyylv0m7s2ylx"; + sha256 = "0xfml2r6nssn3lcfqcf3yshxfijyrf9frnhdp83mg6raaznlhx1z"; }; buildInputs = [ diff --git a/pkgs/servers/mpd/clientlib.nix b/pkgs/servers/mpd/clientlib.nix index b10239e1b772..612ec0456f2a 100644 --- a/pkgs/servers/mpd/clientlib.nix +++ b/pkgs/servers/mpd/clientlib.nix @@ -1,8 +1,9 @@ { stdenv, fetchurl, doxygen }: stdenv.mkDerivation rec { - version = "2.8"; + version = "${passthru.majorVersion}.${passthru.minorVersion}"; name = "libmpdclient-${version}"; + src = fetchurl { url = "http://www.musicpd.org/download/libmpdclient/2/${name}.tar.bz2"; sha256 = "1qwjkb56rsbk0hwhg7fl15d6sf580a19gh778zcdg374j4yym3hh"; @@ -10,6 +11,11 @@ stdenv.mkDerivation rec { buildInputs = [ doxygen ]; + passthru = { + majorVersion = "2"; + minorVersion = "8"; + }; + meta = { description = "Client library for MPD (music player daemon)"; homepage = http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki; diff --git a/pkgs/shells/fish/default.nix b/pkgs/shells/fish/default.nix index 091da2c68f0d..7beca2109ea6 100644 --- a/pkgs/shells/fish/default.nix +++ b/pkgs/shells/fish/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, autoconf, ncurses, which }: +{ stdenv, fetchurl, autoconf, ncurses, which, groff, gettext }: stdenv.mkDerivation rec { name = "fish-2.0.0"; @@ -16,7 +16,18 @@ stdenv.mkDerivation rec { autoconf ''; - meta = { - homepage = http://fishshell.com; + postInstall = '' + sed -i "s|which |command -v |" "$out/share/fish/functions/type.fish" + sed -i "s|nroff |${groff}/bin/nroff |" "$out/share/fish/functions/__fish_print_help.fish" + sed -e "s|gettext |${gettext}/bin/gettext |" \ + -e "s|which |command -v |" \ + -i "$out/share/fish/functions/_.fish" + ''; + + meta = with stdenv.lib; { + description = "Smart and user-friendly command line shell"; + homepage = http://fishshell.com/; + license = licenses.gpl2; + platforms = platforms.linux; }; } \ No newline at end of file diff --git a/pkgs/shells/ipython/default.nix b/pkgs/shells/ipython/default.nix index 79c61b8ed233..b9b9129cb486 100644 --- a/pkgs/shells/ipython/default.nix +++ b/pkgs/shells/ipython/default.nix @@ -13,12 +13,12 @@ assert qtconsoleSupport == true -> pyqt4 != null; assert pylabQtSupport == true -> pyqt4 != null && sip != null; buildPythonPackage rec { - name = "ipython-1.0.0"; + name = "ipython-1.1.0"; namePrefix = ""; src = fetchurl { url = "http://pypi.python.org/packages/source/i/ipython/${name}.tar.gz"; - sha256 = "074i08a1zr7wjpqc7rm0k3rnq0laf0gjrcxlfvvb3qc48wdm41qd"; + sha256 = "1glivwy7k2dciy0y5i39syngip84nrqhpggn4glmpd2s49jllkkc"; }; propagatedBuildInputs = [ diff --git a/pkgs/tools/X11/arandr/default.nix b/pkgs/tools/X11/arandr/default.nix new file mode 100644 index 000000000000..8c3886cebff3 --- /dev/null +++ b/pkgs/tools/X11/arandr/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl, python, xrandr, pythonPackages }: + +pythonPackages.buildPythonPackage rec { + name = "arandr-0.1.7.1"; + + src = fetchurl { + url = "http://christian.amsuess.com/tools/arandr/files/${name}.tar.gz"; + sha256 = "1nj84ww1kf024n5xgxwqmzscv8i1gixx7nmg05dbjj2xs28alwxb"; + }; + + buildPhase = '' + rm -rf data/po/* + python setup.py build + ''; + + # no tests + doCheck = false; + + buildInputs = [pythonPackages.docutils]; + propagatedBuildInputs = [ xrandr pythonPackages.pygtk ]; + + meta = { + homepage = http://christian.amsuess.com/tools/arandr/; + description = "A simple visual front end for XRandR"; + license = stdenv.lib.licenses.gpl3; + maintainers = [ stdenv.lib.maintainers.iElectric ]; + }; +} diff --git a/pkgs/tools/X11/bgs/default.nix b/pkgs/tools/X11/bgs/default.nix new file mode 100644 index 000000000000..a3fff2bc50b0 --- /dev/null +++ b/pkgs/tools/X11/bgs/default.nix @@ -0,0 +1,24 @@ +{stdenv, fetchurl, libX11, libXinerama, imlib2}: + +stdenv.mkDerivation rec { + + name = "bgs-${version}"; + version = "0.5"; + + src = fetchurl { + url = "https://github.com/Gottox/bgs/archive/${version}.tar.gz"; + sha256 = "67fe16e3483f30f940005856fbb3246e1f99cf58371470e0d6668a27acbaefb9"; + }; + + buildInputs = [ libX11 libXinerama imlib2 ]; + + preConfigure = ''sed -i "s@PREFIX = /usr/local@PREFIX = $out@g" config.mk''; + + meta = { + description = "bgs is an extremely fast and small background setter for X."; + license = "MIT"; + platforms = with stdenv.lib.platforms; all; + maintainers = with stdenv.lib.maintainers; [pSub]; + }; +} + diff --git a/pkgs/tools/inputmethods/fcitx/default.nix b/pkgs/tools/inputmethods/fcitx/default.nix index ac60cd6134f9..94d819680ab1 100644 --- a/pkgs/tools/inputmethods/fcitx/default.nix +++ b/pkgs/tools/inputmethods/fcitx/default.nix @@ -1,18 +1,18 @@ { stdenv, fetchurl, pkgconfig, cmake, intltool, gettext , libxml2, enchant, isocodes, icu, libpthreadstubs -, pango, cairo, libxkbfile, xorg +, pango, cairo, libxkbfile, libXau, libXdmcp }: stdenv.mkDerivation rec { - name = "fcitx-4.2.7"; + name = "fcitx-4.2.8.3"; src = fetchurl { - url = "https://fcitx.googlecode.com/files/${name}_dict.tar.xz"; - sha256 = "1dfvr77j9vnlg76155clrjxnm59r5fzv0d3n6c6yn10zb0bjd40c"; + url = "http://download.fcitx-im.org/fcitx/${name}_dict.tar.xz"; + sha256 = "05dw6cbjh2jyjrkr4qx2bcq6nyhhrs0akf6fcjk5a72bgphhwqnb"; }; buildInputs = [ cmake enchant pango gettext libxml2 isocodes pkgconfig libxkbfile - intltool cairo icu libpthreadstubs xorg.libXau xorg.libXdmcp + intltool cairo icu libpthreadstubs libXau libXdmcp ]; cmakeFlags = '' @@ -28,5 +28,7 @@ stdenv.mkDerivation rec { homepage = "https://code.google.com/p/fcitx/"; description = "A Flexible Input Method Framework"; license = "GPLv2"; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [iyzsong]; }; } diff --git a/pkgs/tools/misc/autojump/default.nix b/pkgs/tools/misc/autojump/default.nix index 9b9155a1edbb..5371ac55adba 100644 --- a/pkgs/tools/misc/autojump/default.nix +++ b/pkgs/tools/misc/autojump/default.nix @@ -1,7 +1,7 @@ { fetchurl, stdenv, python, bash }: let - version = "21.5.8"; + version = "21.6.9"; in stdenv.mkDerivation rec { name = "autojump-${version}"; @@ -9,7 +9,7 @@ in src = fetchurl { url = "http://github.com/joelthelion/autojump/archive/release-v${version}.tar.gz"; name = "autojump-${version}.tar.gz"; - sha256 = "07jf5pa9xwmbswsc0h6law9f5qwczsj25w7h034s379imid5h62f"; + sha256 = "0js6jp9l83zxhd9bn8hjn4yf8gydnldrlmafgvlg3rd4i1v82649"; }; buildInputs = [ python bash ]; @@ -19,12 +19,11 @@ in # don't check shell support (we're running with bash anyway) sed -i -e 150,153d install.sh - bash ./install.sh -d $out + bash ./install.sh -d $out -p "" + chmod +x $out/etc/profile.d/* mkdir -p "$out/etc/bash_completion.d" cp -v $out/etc/profile.d/autojump.bash "$out/etc/bash_completion.d" - mkdir -p $out/bin - ln -s $out/usr/local/bin/autojump $out/bin/j # FIXME: What's the right place for `autojump.zsh'? ''; diff --git a/pkgs/tools/misc/memtest86/plus.nix b/pkgs/tools/misc/memtest86+/default.nix similarity index 56% rename from pkgs/tools/misc/memtest86/plus.nix rename to pkgs/tools/misc/memtest86+/default.nix index 262811d330d6..500d7e815d26 100644 --- a/pkgs/tools/misc/memtest86/plus.nix +++ b/pkgs/tools/misc/memtest86+/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: -stdenv.mkDerivation { - name = "memtest86+-4.20"; - +stdenv.mkDerivation rec { + name = "memtest86+-5.01"; + src = fetchurl { - url = http://www.memtest.org/download/4.20/memtest86+-4.20.tar.gz; - sha256 = "0dw7kvfxiwqdmhapbz6ds1j9fralbky56hnzj4c6fsqfinbwwc2n"; + url = "http://www.memtest.org/download/5.01/${name}.tar.gz"; + sha256 = "0fch1l55753y6jkk0hj8f6vw4h1kinkn9ysp22dq5g9zjnvjf88l"; }; preBuild = '' @@ -18,14 +18,18 @@ stdenv.mkDerivation { ''; NIX_CFLAGS_COMPILE = "-I."; - + + buildFlags = "memtest.bin"; + installPhase = '' mkdir -p $out + chmod -x memtest.bin cp memtest.bin $out/ ''; meta = { homepage = http://www.memtest.org/; - description = "A tool to detect memory errors, fork from memtest86"; + description = "A tool to detect memory errors"; + license = stdenv.lib.licenses.gpl2; }; } diff --git a/pkgs/tools/misc/screen/default.nix b/pkgs/tools/misc/screen/default.nix index 7363719b66d3..c2c0a5aa534f 100644 --- a/pkgs/tools/misc/screen/default.nix +++ b/pkgs/tools/misc/screen/default.nix @@ -22,7 +22,8 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.gnu.org/software/screen/; - description = "GNU Screen, a window manager that multiplexes a physical terminal"; + description = "a window manager that multiplexes a physical terminal"; + license = stdenv.lib.licenses.gpl2Plus; longDescription = '' GNU Screen is a full-screen window manager that multiplexes a physical @@ -46,8 +47,6 @@ stdenv.mkDerivation rec { terminal. ''; - license = stdenv.lib.licenses.gpl2Plus; - platforms = stdenv.lib.platforms.unix; maintainers = [ stdenv.lib.maintainers.simons ]; }; diff --git a/pkgs/tools/misc/stow/default.nix b/pkgs/tools/misc/stow/default.nix index e0d7985ae07c..58f30a021fa3 100644 --- a/pkgs/tools/misc/stow/default.nix +++ b/pkgs/tools/misc/stow/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation { doCheck = true; meta = { - description = "Stow is a tool for managing the installation of multiple software packages in the same run-time directory tree."; + description = "A tool for managing the installation of multiple software packages in the same run-time directory tree"; longDescription = '' GNU Stow is a symlink farm manager which takes distinct packages diff --git a/pkgs/tools/networking/filegive/default.nix b/pkgs/tools/networking/filegive/default.nix index fc2b56efd105..275c49679800 100644 --- a/pkgs/tools/networking/filegive/default.nix +++ b/pkgs/tools/networking/filegive/default.nix @@ -11,15 +11,16 @@ let sha256 = "1swwfyzaj3l40yh9np3x4fcracgs79nwryc85sxbdakx8wwxs2xb"; }; - version = "0.6.1"; + version = "0.7"; in stdenv.mkDerivation rec { name = "filegive-${version}"; src = fetchurl { - url = "http://viric.name/cgi-bin/filegive/tarball/${name}.tar.gz"; - sha256 = "11rjw906nr73kysm9l84yg443rxzh22l934hir7892h02924i4c4"; + url = "http://viric.name/cgi-bin/filegive/tarball/${name}.tar.gz?uuid=v${version}"; + name = "${name}.tar.gz"; + sha256 = "0wj6vjfqfzqb75ii0djczdbcwilr05ahil5sqm65kimv11hc4j9n"; }; buildInputs = [ go ]; diff --git a/pkgs/tools/networking/mu/default.nix b/pkgs/tools/networking/mu/default.nix index 7495c3bcd7f0..6b316321afde 100644 --- a/pkgs/tools/networking/mu/default.nix +++ b/pkgs/tools/networking/mu/default.nix @@ -1,25 +1,39 @@ -{ fetchurl, stdenv, sqlite, pkgconfig, xapian, glib, gmime, texinfo, emacs, guile }: +{ fetchurl, stdenv, sqlite, pkgconfig, xapian, glib, gmime, texinfo, emacs, guile +, gtk3, webkit, libsoup, icu }: stdenv.mkDerivation rec { - version = "0.9.9"; + version = "0.9.9.5"; name = "mu-${version}"; src = fetchurl { url = "https://mu0.googlecode.com/files/mu-${version}.tar.gz"; - sha256 = "04r0y05awsyb5hqwaxn1hq9jxijw20hwsgdbacqrma519f0y5y43"; + sha256 = "1hwkliyb8fjrz5sw9fcisssig0jkdxzhccw0ld0l9a10q1l9mqhp"; }; - buildInputs = [ sqlite pkgconfig xapian glib gmime texinfo emacs guile ]; + buildInputs = [ sqlite pkgconfig xapian glib gmime texinfo emacs guile + gtk3 webkit libsoup icu ]; + + preBuild = '' + # Fix mu4e-builddir (set it to $out) + substituteInPlace mu4e/mu4e-meta.el.in \ + --replace "@abs_top_builddir@" "$out" + + # We install msg2pdf to bin/msg2pdf, fix its location in elisp + substituteInPlace mu4e/mu4e-actions.el \ + --replace "/toys/msg2pdf/msg2pdf" "/bin/msg2pdf" + ''; + + # Install mug and msg2pdf + postInstall = '' + cp -v toys/msg2pdf/msg2pdf $out/bin/ + cp -v toys/mug/mug $out/bin/ + ''; meta = { - description = "mu is a collection of utilties for indexing and searching Maildirs"; - - licenses = [ "GPLv3+" ]; - + description = "A collection of utilties for indexing and searching Maildirs"; + license = "GPLv3+"; homepage = "http://www.djcbsoftware.nl/code/mu/"; - platforms = stdenv.lib.platforms.all; - - maintainers = [ stdenv.lib.maintainers.antono ]; + maintainers = with stdenv.lib.maintainers; [ antono the-kenny ]; }; } diff --git a/pkgs/tools/networking/network-manager-applet/default.nix b/pkgs/tools/networking/network-manager-applet/default.nix index 81bf7c908eff..a196c309197e 100644 --- a/pkgs/tools/networking/network-manager-applet/default.nix +++ b/pkgs/tools/networking/network-manager-applet/default.nix @@ -7,7 +7,7 @@ let pn = "network-manager-applet"; major = "0.9"; - version = "${major}.8.2"; + version = networkmanager.version; in stdenv.mkDerivation rec { @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pn}/${major}/${name}.tar.xz"; - sha256 = "1ixd19b7ap29lz9lq4mmlq9lqsmnisix1a33hrxrl68wjx1wfh55"; + sha256 = "130rdin3wh9vlwhscbgh3lsssi89p5n4maws4y3l9ja720llk27n"; }; buildInputs = [ diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix index af35e3f71da2..adc1cd7481b8 100644 --- a/pkgs/tools/networking/network-manager/default.nix +++ b/pkgs/tools/networking/network-manager/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { name = "network-manager-${version}"; - version = "0.9.8.0"; + version = "0.9.8.4"; src = fetchurl { url = "mirror://gnome/sources/NetworkManager/0.9/NetworkManager-${version}.tar.xz"; - sha256 = "0sq9yvln0yjff1sgk483m98ca2x2sqk5vh4kmn382k9msvgbqrn3"; + sha256 = "168dv290mc19szgv1l108i8gyha47wmyr41jlzwqvvibynmg17sc"; }; preConfigure = '' diff --git a/pkgs/tools/networking/network-manager/openconnect.nix b/pkgs/tools/networking/network-manager/openconnect.nix index ccb5badd9031..fc9a964004e5 100644 --- a/pkgs/tools/networking/network-manager/openconnect.nix +++ b/pkgs/tools/networking/network-manager/openconnect.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/0.9/${pname}-${version}.tar.xz"; - sha256 = "16sdgrabbh2y7j6g9ic9lm5z6sxn7iz3j0xininkiwnjgbsqf961"; + sha256 = "1dl7wcmibrzf9qnpchgk9fxfhw0j2hzzzqmylkm2c41iv81xrd4r"; }; buildInputs = [ openconnect networkmanager ] diff --git a/pkgs/tools/networking/network-manager/openvpn.nix b/pkgs/tools/networking/network-manager/openvpn.nix index c51bf09f99c0..b72312a1af2d 100644 --- a/pkgs/tools/networking/network-manager/openvpn.nix +++ b/pkgs/tools/networking/network-manager/openvpn.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/0.9/${pname}-${version}.tar.xz"; - sha256 = "1klmhcizp6fmbxjbyihsk2w0alnkyiw2a3ldgijq8s224k0z95j1"; + sha256 = "11v63s1f3bsa7pmkvr7x65rsigh48wfqzsnixrwc3wqslsv5535g"; }; buildInputs = [ openvpn networkmanager ] diff --git a/pkgs/tools/networking/network-manager/pptp.nix b/pkgs/tools/networking/network-manager/pptp.nix index 41dda0086e4b..dc2c800e7971 100644 --- a/pkgs/tools/networking/network-manager/pptp.nix +++ b/pkgs/tools/networking/network-manager/pptp.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/0.9/${pname}-${version}.tar.xz"; - sha256 = "7f46ea61376d13d03685eca3f26a26e0022f6e92e6f1fc356034ca9717eb6dac"; + sha256 = "7f46ea61376d13d03685eca3f26a26e0022f6e92e6f1fc356034ca9717eb6daa"; }; buildInputs = [ networkmanager pptp ppp ] diff --git a/pkgs/tools/networking/network-manager/vpnc.nix b/pkgs/tools/networking/network-manager/vpnc.nix index 683a7e76948d..10a497e0238f 100644 --- a/pkgs/tools/networking/network-manager/vpnc.nix +++ b/pkgs/tools/networking/network-manager/vpnc.nix @@ -4,11 +4,13 @@ stdenv.mkDerivation rec { name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; pname = "NetworkManager-vpnc"; - version = networkmanager.version; + # TODO: version doesn't match due to bad release + #version = networkmanager.version; + version = "0.9.8.6"; src = fetchurl { url = "mirror://gnome/sources/${pname}/0.9/${pname}-${version}.tar.xz"; - sha256 = "1hdigqfvsjlr1zr23lwmcsvcv1x74cqhfpwrd0j0zhhmjdb4ql74"; + sha256 = "1mmbm3q27b3dbbs4vs976cxif8jdcs92j3ajdbgykrnl2gbnqc20"; }; buildInputs = [ vpnc networkmanager ] diff --git a/pkgs/tools/networking/networkmanagement/default.nix b/pkgs/tools/networking/networkmanagement/default.nix index 474a46387588..1c3191f3bf57 100644 --- a/pkgs/tools/networking/networkmanagement/default.nix +++ b/pkgs/tools/networking/networkmanagement/default.nix @@ -2,7 +2,7 @@ let pname = "networkmanagement"; - version = "0.9.0.4"; + version = "0.9.0.9"; name = "${pname}-${version}"; in stdenv.mkDerivation { @@ -10,7 +10,7 @@ stdenv.mkDerivation { src = fetchurl { url = "mirror://kde/unstable/${pname}/${version}/src/${name}.tar.bz2"; - sha256 = "0mp2jai6f2qpywjwgvxcl1nh27idgy740vwiahfamq8w2y90a3aj"; + sha256 = "1jiij9iz8v9mgcq811svmlyfvmvkazpclkf4yk7193m4y8yn19yn"; }; buildInputs = [ kdelibs kde_workspace networkmanager ]; diff --git a/pkgs/tools/package-management/cabal-install/1.18.0.1.nix b/pkgs/tools/package-management/cabal-install/1.18.0.2.nix similarity index 90% rename from pkgs/tools/package-management/cabal-install/1.18.0.1.nix rename to pkgs/tools/package-management/cabal-install/1.18.0.2.nix index ceb54effdd97..9b56f60546ce 100644 --- a/pkgs/tools/package-management/cabal-install/1.18.0.1.nix +++ b/pkgs/tools/package-management/cabal-install/1.18.0.2.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "cabal-install"; - version = "1.18.0.1"; - sha256 = "0b44w4iqzaq5119zjkpagd3a2279kz6xq5pk5rqnlnfn8a8ihdbb"; + version = "1.18.0.2"; + sha256 = "0ah9yzp486p3cvs9b7nid0jmf0a56fg65s3jx2r8lb84pi50d92c"; isLibrary = false; isExecutable = true; buildDepends = [ diff --git a/pkgs/tools/security/pass/default.nix b/pkgs/tools/security/pass/default.nix index ba86b0b1d9ce..e78002837c72 100644 --- a/pkgs/tools/security/pass/default.nix +++ b/pkgs/tools/security/pass/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, getopt }: +{ stdenv, fetchurl +, coreutils, gnused, getopt, pwgen, git, tree, gnupg +, makeWrapper }: stdenv.mkDerivation rec { version = "1.4.2"; @@ -9,11 +11,13 @@ stdenv.mkDerivation rec { sha256 = "00m3q6dihrhw8cxsrham3bdqg5841an8ch4s3a4k5fynlcb802m1"; }; + buildInputs = [ makeWrapper ]; + meta = with stdenv.lib; { - description = "Stores, retrieves, generates, and synchronizes passwords securely."; + description = "Stores, retrieves, generates, and synchronizes passwords securely"; homepage = http://zx2c4.com/projects/password-store/; license = licenses.gpl2Plus; - maintainers = with maintainers; [ lovek323 ]; + maintainers = with maintainers; [ lovek323 the-kenny ]; platforms = platforms.unix; longDescription = '' @@ -25,8 +29,6 @@ stdenv.mkDerivation rec { ''; }; - propagatedBuildInputs = [ getopt ]; - installPhase = '' # link zsh and fish completions sed -ie '22s/^#//' Makefile @@ -44,5 +46,14 @@ stdenv.mkDerivation rec { sed -ie '34c GETOPT="${getopt}/bin/getopt"' \ "$out/lib/password-store.platform.sh" ''; -} + postFixup = '' + # Fix program name in --help + substituteInPlace $out/bin/pass \ + --replace "\$program" "pass" + + # Ensure all dependencies are in PATH + wrapProgram $out/bin/pass \ + --prefix PATH : "${coreutils}/bin:${gnused}/bin:${getopt}/bin:${gnupg}/bin:${git}/bin:${tree}/bin:${pwgen}/bin" + ''; +} diff --git a/pkgs/tools/text/source-highlight/default.nix b/pkgs/tools/text/source-highlight/default.nix index 148bbfce99da..e5928e162560 100644 --- a/pkgs/tools/text/source-highlight/default.nix +++ b/pkgs/tools/text/source-highlight/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation { doCheck = true; meta = { - description = "GNU Source-Highlight, source code renderer with syntax highlighting"; + description = "source code renderer with syntax highlighting"; homepage = "http://www.gnu.org/software/src-highlite/"; license = "GPLv3+"; maintainers = [ ]; diff --git a/pkgs/tools/typesetting/asciidoc/default.nix b/pkgs/tools/typesetting/asciidoc/default.nix index f392ad065cc8..986d0d7a69c0 100644 --- a/pkgs/tools/typesetting/asciidoc/default.nix +++ b/pkgs/tools/typesetting/asciidoc/default.nix @@ -1,15 +1,159 @@ -{ fetchurl, stdenv, python }: +{ fetchurl, stdenv, python +, unzip ? null +# filters +, enableDitaaFilter ? false, jre ? null +, enableMscgenFilter ? false, mscgen ? null +, enableDiagFilter ? false, blockdiag ? null, seqdiag ? null, actdiag ? null, nwdiag ? null +, enableQrcodeFilter ? false, qrencode ? null +, enableMatplotlibFilter ? false, matplotlib ? null, numpy ? null +, enableAafigureFilter ? false, aafigure ? null, recursivePthLoader ? null +# backends +, enableDeckjsBackend ? false +, enableOdfBackend ? false +}: + +# filters +assert (enableDitaaFilter || enableMscgenFilter || enableDiagFilter || enableQrcodeFilter || enableAafigureFilter) -> unzip != null; +assert enableDitaaFilter -> jre != null; +assert enableMscgenFilter -> mscgen != null; +assert enableDiagFilter -> blockdiag != null && seqdiag != null && actdiag != null && nwdiag != null; +assert enableMatplotlibFilter -> matplotlib != null && numpy != null; +assert enableAafigureFilter -> aafigure != null && recursivePthLoader != null; +# backends +assert (enableDeckjsBackend || enableOdfBackend) -> unzip != null; + +let + + # + # filters + # + + ditaaFilterSrc = fetchurl { + url = "https://asciidoc-ditaa-filter.googlecode.com/files/ditaa-filter-1.1.zip"; + sha256 = "0p7hm2a1xywx982ia3vg4c0lam5sz0xknsc10i2a5vswy026naf6"; + }; + + mscgenFilterSrc = fetchurl { + url = "https://asciidoc-mscgen-filter.googlecode.com/files/mscgen-filter-1.2.zip"; + sha256 = "1nfwmj375gpv5dn9i770pjv59aihzy2kja0fflsk96xwnlqsqq61"; + }; + + diagFilterSrc = fetchurl { + # unfortunately no version number + url = "https://asciidoc-diag-filter.googlecode.com/files/diag_filter.zip"; + sha256 = "1qlqrdbqkdqqgfdhjsgdws1al0sacsyq6jmwxdfy7r8k7bv7n7mm"; + }; + + qrcodeFilterSrc = fetchurl { + url = "https://asciidoc-qrencode-filter.googlecode.com/files/qrcode-filter-1.0.zip"; + sha256 = "0h4bql1nb4y4fmg2yvlpfjhvy22ln8jsaxdr10f8bfcg5lr0zkxs"; + }; + + # latest commit in master branch as per 2013-09-22 + matplotlibFilterSrc = let commit = "75f0d009629f93f33fab04b83faca20cc35dd358"; in fetchurl rec { + name = "mplw-${commit}.tar.gz"; + url = "https://api.github.com/repos/lvv/mplw/tarball/${commit}"; + sha256 = "0yfhkm2dr8gnp0fcg25x89hwiymkri2m5cyqzmzragzwj0hbmcf1"; + }; + + aafigureFilterSrc = fetchurl { + url = "https://asciidoc-aafigure-filter.googlecode.com/files/aafigure-filter-1.1.zip"; + sha256 = "1hq2s30dvmv5dqvj0xm1qwdwafhgm9w1iyr0lr0c40cyk8h00j8j"; + }; + + # + # backends + # + + deckjsBackendSrc = fetchurl { + url = "https://github.com/downloads/houqp/asciidoc-deckjs/deckjs-1.6.2.zip"; + sha256 = "1siy1j8naj5irrrrv5bfgl4d8nal6j9pyahy4f50wmrr9wv59s46"; + }; + + # the odf backend is actually two plugins: odt + odp + odtBackendSrc = fetchurl { + url = "https://github.com/downloads/dagwieers/asciidoc-odf/odt-backend-0.1.zip"; + sha256 = "1zaa97h9sx6ncxcdkl1x3ggydi7f8kjgvrnpjnkjiizi45k350kw"; + }; + odpBackendSrc = fetchurl { + url = "https://github.com/downloads/dagwieers/asciidoc-odf/odp-backend-0.1.zip"; + sha256 = "08ya4bskygzqkfqwjllpg31qc5k08xp2k78z9b2480g8y57bfy10"; + }; + +in stdenv.mkDerivation rec { name = "asciidoc-8.6.8"; + src = fetchurl { url = "mirror://sourceforge/asciidoc/${name}.tar.gz"; sha256 = "ffb67f59dccaf6f15db72fcd04fdf21a2f9b703d31f94fcd0c49a424a9fcfbc4"; }; - patchPhase = '' - for n in `find . -name \*.py `; do - sed -i -e "s,^#!/usr/bin/env python,#!${python}/bin/python,g" "$n" + buildInputs = [ python unzip ]; + + # install filters early, so their shebangs are patched too + patchPhase = with stdenv.lib; '' + mkdir -p "$out/etc/asciidoc/filters" + mkdir -p "$out/etc/asciidoc/backends" + '' + optionalString enableDitaaFilter '' + echo "Extracting ditaa filter" + unzip -d "$out/etc/asciidoc/filters/ditaa" "${ditaaFilterSrc}" + sed -i -e "s|java -jar|${jre}/bin/java -jar|" \ + "$out/etc/asciidoc/filters/ditaa/ditaa2img.py" + '' + optionalString enableMscgenFilter '' + echo "Extracting mscgen filter" + unzip -d "$out/etc/asciidoc/filters/mscgen" "${mscgenFilterSrc}" + sed -i -e "s|filter-wrapper.py mscgen|filter-wrapper.py ${mscgen}/bin/mscgen|" \ + "$out/etc/asciidoc/filters/mscgen/mscgen-filter.conf" + '' + optionalString enableDiagFilter '' + echo "Extracting diag filter" + unzip -d "$out/etc/asciidoc/filters/diag" "${diagFilterSrc}" + sed -i \ + -e "s|filter='blockdiag|filter=\'${blockdiag}/bin/blockdiag|" \ + -e "s|filter='seqdiag|filter=\'${seqdiag}/bin/seqdiag|" \ + -e "s|filter='actdiag|filter=\'${actdiag}/bin/actdiag|" \ + -e "s|filter='nwdiag|filter=\'${nwdiag}/bin/nwdiag|" \ + -e "s|filter='packetdiag|filter=\'${nwdiag}/bin/packetdiag|" \ + "$out/etc/asciidoc/filters/diag/diag-filter.conf" + '' + optionalString enableQrcodeFilter '' + echo "Extracting qrcode filter" + unzip -d "$out/etc/asciidoc/filters/qrcode" "${qrcodeFilterSrc}" + sed -i -e "s|systemcmd('qrencode|systemcmd('${qrencode}/bin/qrencode|" \ + "$out/etc/asciidoc/filters/qrcode/qrcode2img.py" + '' + optionalString enableMatplotlibFilter '' + echo "Extracting mpl (matplotlib) filter" + mkdir -p "$out/etc/asciidoc/filters/mpl" + tar xvf "${matplotlibFilterSrc}" -C "$out/etc/asciidoc/filters/mpl" --strip-components=1 + # Stop asciidoc from loading mpl/.old/chart-filter.conf + rm -rf "$out/etc/asciidoc/filters/mpl/.old" + # Add matplotlib and numpy to sys.path + matplotlib_path="$(toPythonPath ${matplotlib})" + numpy_path="$(toPythonPath ${numpy})" + sed -i "/^import.*sys/asys.path.append(\"$matplotlib_path\"); sys.path.append(\"$numpy_path\");" \ + "$out/etc/asciidoc/filters/mpl/mplw.py" + '' + optionalString enableAafigureFilter '' + echo "Extracting aafigure filter" + unzip -d "$out/etc/asciidoc/filters/aafigure" "${aafigureFilterSrc}" + # Add aafigure to sys.path (and it needs recursive-pth-loader) + pth_loader_path="$(toPythonPath ${recursivePthLoader})" + aafigure_path="$(toPythonPath ${aafigure})" + sed -i "/^import.*sys/asys.path.append(\"$pth_loader_path\"); sys.path.append(\"$aafigure_path\"); import sitecustomize" \ + "$out/etc/asciidoc/filters/aafigure/aafig2img.py" + '' + optionalString enableDeckjsBackend '' + echo "Extracting deckjs backend" + unzip -d "$out/etc/asciidoc/backends/deckjs" "${deckjsBackendSrc}" + '' + optionalString enableOdfBackend '' + echo "Extracting odf backend (odt + odp)" + unzip -d "$out/etc/asciidoc/backends/odt" "${odtBackendSrc}" + unzip -d "$out/etc/asciidoc/backends/odp" "${odpBackendSrc}" + # The odt backend has a TODO note about removing this hardcoded path, but + # the odp backend already has that fix. Copy it here until fixed upstream. + sed -i "s|'/etc/asciidoc/backends/odt/asciidoc.ott'|os.path.dirname(__file__),'asciidoc.ott'|" \ + "$out/etc/asciidoc/backends/odt/a2x-backend.py" + '' + '' + for n in $(find "$out" . -name \*.py); do + sed -i -e "s,^#![[:space:]]*.*/bin/env python,#!${python}/bin/python,g" "$n" chmod +x "$n" done sed -i -e "s,/etc/vim,,g" Makefile.in @@ -17,16 +161,21 @@ stdenv.mkDerivation rec { preInstall = "mkdir -p $out/etc/vim"; - buildInputs = [ python ]; - - meta = { - homepage = "http://www.methods.co.nz/asciidoc/"; - description = "ASCII text-based document generation system"; - license = "GPLv2+"; - + meta = with stdenv.lib; { + description = "Text-based document generation system"; longDescription = '' - AsciiDoc is a text-based document generation system. AsciiDoc - input files can be translated to HTML and DocBook markups. + AsciiDoc is a text document format for writing notes, documentation, + articles, books, ebooks, slideshows, web pages, man pages and blogs. + AsciiDoc files can be translated to many formats including HTML, PDF, + EPUB, man page. + + AsciiDoc is highly configurable: both the AsciiDoc source file syntax and + the backend output markups (which can be almost any type of SGML/XML + markup) can be customized and extended by the user. ''; + homepage = "http://www.methods.co.nz/asciidoc/"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = [ maintainers.bjornfor ]; }; } diff --git a/pkgs/tools/typesetting/fop/default.nix b/pkgs/tools/typesetting/fop/default.nix new file mode 100644 index 000000000000..bc4486ed49cf --- /dev/null +++ b/pkgs/tools/typesetting/fop/default.nix @@ -0,0 +1,56 @@ +{ fetchurl, stdenv, ant, jdk }: + +stdenv.mkDerivation rec { + name = "fop-1.1"; + + src = fetchurl { + url = "http://apache.uib.no/xmlgraphics/fop/source/${name}-src.tar.gz"; + sha256 = "08i56d57w5dl5bqchr34x9165hvi5h4bhiflxhi0a4wd56rlq5jq"; + }; + + buildInputs = [ ant jdk ]; + + buildPhase = '' + ant + ''; + + installPhase = '' + mkdir -p "$out/bin" + mkdir -p "$out/lib" + mkdir -p "$out/share/doc/fop" + + cp build/*.jar lib/*.jar "$out/lib/" + cp -r README examples/ "$out/share/doc/fop/" + + # There is a fop script in the source archive, but it has many impurities. + # Instead of patching out 90 % of the script, we write our own. + cat > "$out/bin/fop" <