From 9ec52d632302ad6267a83b563de9927f886e1817 Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Thu, 29 May 2014 14:47:07 +0200 Subject: [PATCH 001/789] Fixes to make basic builds on Cygwin work again + additions to support x86_64-cygwin --- lib/platforms.nix | 2 +- pkgs/development/interpreters/perl/5.16/default.nix | 8 +++++++- pkgs/development/libraries/openssl/default.nix | 7 ++++++- pkgs/stdenv/generic/default.nix | 3 ++- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/lib/platforms.nix b/lib/platforms.nix index 76df389deac..c1b79d3aceb 100644 --- a/lib/platforms.nix +++ b/lib/platforms.nix @@ -7,7 +7,7 @@ rec { freebsd = ["i686-freebsd" "x86_64-freebsd"]; openbsd = ["i686-openbsd" "x86_64-openbsd"]; netbsd = ["i686-netbsd" "x86_64-netbsd"]; - cygwin = ["i686-cygwin"]; + cygwin = ["i686-cygwin" "x86_64-cygwin"]; unix = linux ++ darwin ++ freebsd ++ openbsd; all = linux ++ darwin ++ cygwin ++ freebsd ++ openbsd; none = []; diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index bbd9e003b2c..b7a27d4f478 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -54,6 +54,12 @@ stdenv.mkDerivation rec { ${optionalString stdenv.isArm '' configureFlagsArray=(-Dldflags="-lm -lrt") ''} + + ${optionalString stdenv.isCygwin '' + cp cygwin/cygwin{,.bak} + echo "#define PERLIO_NOT_STDIO 0" > tmp + cat tmp cygwin/cygwin.c.bak > cygwin/cygwin.c + ''} ''; preBuild = optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools)) @@ -64,7 +70,7 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; - doCheck = !stdenv.isDarwin; + doCheck = stdenv.isLinux; # some network-related tests don't work, mostly probably due to our sandboxing testsToSkip = '' diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 7217c876bfd..130ab6b205f 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -60,7 +60,12 @@ stdenv.mkDerivation { else "./config"; configureFlags = "shared --libdir=lib --openssldir=etc/ssl" + - stdenv.lib.optionalString withCryptodev " -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS"; + stdenv.lib.optionalString withCryptodev " -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS" + + stdenv.lib.optionalString (stdenv.system == "x86_64-cygwin") " no-asm"; + + preBuild = stdenv.lib.optionalString (stdenv.system == "x86_64-cygwin") '' + sed -i -e "s|-march=i486|-march=x86-64|g" Makefile + ''; makeFlags = "MANDIR=$(out)/share/man"; diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 14da127b9e0..ce0fd3a1dc2 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -127,7 +127,8 @@ let || system == "x86_64-kfreebsd-gnu"; isSunOS = system == "i686-solaris" || system == "x86_64-solaris"; - isCygwin = system == "i686-cygwin"; + isCygwin = system == "i686-cygwin" + || system == "x86_64-cygwin"; isFreeBSD = system == "i686-freebsd" || system == "x86_64-freebsd"; isOpenBSD = system == "i686-openbsd" From 86e18c965f1fd66f72bcadc065e6e5350f11ba0f Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Sat, 31 May 2014 14:25:46 +0200 Subject: [PATCH 002/789] Fix perl compilation --- pkgs/development/interpreters/perl/5.16/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index b7a27d4f478..403bd91870d 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -56,7 +56,7 @@ stdenv.mkDerivation rec { ''} ${optionalString stdenv.isCygwin '' - cp cygwin/cygwin{,.bak} + cp cygwin/cygwin.c{,.bak} echo "#define PERLIO_NOT_STDIO 0" > tmp cat tmp cygwin/cygwin.c.bak > cygwin/cygwin.c ''} From de4d6f0447393a0a2c688461740d12b886a57f9d Mon Sep 17 00:00:00 2001 From: Chris Double Date: Mon, 30 Jun 2014 12:08:34 +1200 Subject: [PATCH 003/789] Add namecoin cryptocurrency --- pkgs/applications/misc/namecoin/default.nix | 37 +++++++++++++++++++++ pkgs/applications/misc/namecoin/qt.nix | 33 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 3 ++ 3 files changed, 73 insertions(+) create mode 100644 pkgs/applications/misc/namecoin/default.nix create mode 100644 pkgs/applications/misc/namecoin/qt.nix diff --git a/pkgs/applications/misc/namecoin/default.nix b/pkgs/applications/misc/namecoin/default.nix new file mode 100644 index 00000000000..1a26403e6f4 --- /dev/null +++ b/pkgs/applications/misc/namecoin/default.nix @@ -0,0 +1,37 @@ +{ fetchgit, stdenv, db4, boost, openssl, unzip }: + +stdenv.mkDerivation rec { + version = "0.3.75"; + name = "namecoin-${version}"; + + src = fetchgit { + url = "https://github.com/namecoin/namecoin"; + rev = "31ea638d4ba7f0a3011cb25483f4c7d293134c7a"; + sha256 = "c14a5663cba675b3508937a26a812316559938fd7b64659dd00749a9f5d7e9e0"; + }; + + # Don't build with miniupnpc due to namecoin using a different verison that + # ships with NixOS and it is API incompatible. + buildInputs = [ db4 boost openssl unzip ]; + + patchPhase = '' + sed -e 's/-Wl,-Bstatic//g' -e 's/-l gthread-2.0//g' -e 's/-l z//g' -i src/Makefile + ''; + + buildPhase = '' + make -C src INCLUDEPATHS= LIBPATHS= + ''; + + installPhase = '' + mkdir -p $out/bin + cp src/namecoind $out/bin + ''; + + meta = { + description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency"; + homepage = "http://namecoin.info"; + license = "MIT"; + maintainers = [ "Chris Double " ]; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/applications/misc/namecoin/qt.nix b/pkgs/applications/misc/namecoin/qt.nix new file mode 100644 index 00000000000..08dbee26f0b --- /dev/null +++ b/pkgs/applications/misc/namecoin/qt.nix @@ -0,0 +1,33 @@ +{ fetchgit, stdenv, db4, boost, openssl, qt4, unzip, namecoin }: + +stdenv.mkDerivation rec { + version = "0.3.75"; + name = "namecoin-qt-${version}"; + + src = namecoin.src; + + # Don't build with miniupnpc due to namecoin using a different verison that + # ships with NixOS and it is API incompatible. + buildInputs = [ db4 boost openssl unzip qt4 ]; + + configurePhase = '' + qmake USE_UPNP=- + ''; + + buildPhase = '' + make + ''; + + installPhase = '' + mkdir -p $out/bin + cp namecoin-qt $out/bin + ''; + + meta = { + description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency"; + homepage = "http://namecoin.info"; + license = "MIT"; + maintainers = [ "Chris Double " ]; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cfb4ac4ba82..b8a97d5a432 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9169,6 +9169,9 @@ let mutt = callPackage ../applications/networking/mailreaders/mutt { }; + namecoin = callPackage ../applications/misc/namecoin { }; + namecoinqt = callPackage ../applications/misc/namecoin/qt.nix { }; + pcmanfm = callPackage ../applications/misc/pcmanfm { }; ruby_gpgme = callPackage ../development/libraries/ruby_gpgme { From 518daa96600603ea117c25f80482378d2301ed11 Mon Sep 17 00:00:00 2001 From: Matthew Brown Date: Sun, 6 Jul 2014 13:08:39 +0100 Subject: [PATCH 004/789] Added Sphinx Search package --- pkgs/servers/search/sphinxsearch/default.nix | 31 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/servers/search/sphinxsearch/default.nix diff --git a/pkgs/servers/search/sphinxsearch/default.nix b/pkgs/servers/search/sphinxsearch/default.nix new file mode 100644 index 00000000000..9264ae99609 --- /dev/null +++ b/pkgs/servers/search/sphinxsearch/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, pkgconfig, mysql }: + +let + version = "2.1.9"; + mainSrc = fetchurl { + url = "http://sphinxsearch.com/files/sphinx-${version}-release.tar.gz"; + sha256 = "00vwxf3zr0g1fq9mls1z2rd8nxw74b76pkl1j466lig1qc5am2b2"; + }; +in + +stdenv.mkDerivation rec { + name = "sphinxsearch-${version}"; + src = mainSrc; + + configureFlags = [ + "--program-prefix=sphinxsearch-" + ]; + + buildInputs = [ + pkgconfig + mysql + ]; + + meta = { + description = "Sphinx is an open source full text search server."; + homepage = http://sphinxsearch.com; + license = stdenv.lib.licenses.gpl2; + platforms = stdenv.lib.platforms.all; + maintainers = with stdenv.lib.maintainers; [ ederoyd46 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f20f6ef8953..bc4eabb8efb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6125,6 +6125,8 @@ let sphinxbase = callPackage ../development/libraries/sphinxbase { }; + sphinxsearch = callPackage ../servers/search/sphinxsearch { }; + spice = callPackage ../development/libraries/spice { celt = celt_0_5_1; inherit (xlibs) libXrandr libXfixes libXext libXrender libXinerama; From a45d48fe08ba7055c25329b9d258704cc158e522 Mon Sep 17 00:00:00 2001 From: Wout Mertens Date: Tue, 8 Jul 2014 22:31:16 +0200 Subject: [PATCH 005/789] Google hangouts: Bump to 5.4.2.0 Verified working with Firefox, however it still doesn't work with Chromium because of the NPAPI vs PPAPI thing. Chrome's Pepper Plugin API doesn't seem to look for plugins in the MOZ_PLUGIN_PATH, anyway I left them there for others to find the solution :-) --- .../google-talk-plugin/default.nix | 31 +++++++++---------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix index e1bc4e977f6..0e3376b5d72 100644 --- a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix +++ b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix @@ -13,6 +13,7 @@ let [ mesa xorg.libXt xorg.libX11 + xorg.libXrender cairo libpng gtk @@ -47,20 +48,20 @@ stdenv.mkDerivation rec { name = "google-talk-plugin-${version}"; # You can get the upstream version and SHA-1 hash from the following URLs: - # http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages - # http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages - version = "5.1.5.0"; + # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages | grep -E 'Version|SHA1' + # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages | grep -E 'Version|SHA1' + version = "5.4.2.0"; src = if stdenv.system == "x86_64-linux" then fetchurl { url = "${baseURL}/google-talkplugin_${version}-1_amd64.deb"; - sha1 = "fc830f4c7f5816f4578ec73e6d4aef059ad4a0b1"; + sha1 = "d75fad757750b4830c4e401ade92b4993e2a4ab2"; } else if stdenv.system == "i686-linux" then fetchurl { url = "${baseURL}/google-talkplugin_${version}-1_i386.deb"; - sha1 = "9b7043c3585b3479ba11aabb7b8af755a61df963"; + sha1 = "410872377b0bdac06b580c5e1755a3a3c712144b"; } else throw "Google Talk does not support your platform."; @@ -72,22 +73,18 @@ stdenv.mkDerivation rec { '' plugins=$out/lib/mozilla/plugins mkdir -p $plugins - cp opt/google/talkplugin/libnp*.so $plugins + cp opt/google/talkplugin/*.so $plugins - patchelf --set-rpath "${makeLibraryPath [ stdenv.gcc.gcc xorg.libX11 ]}:${stdenv.gcc.gcc}/lib64" \ - $plugins/libnpgoogletalk.so + for i in libnpgoogletalk.so libppgoogletalk.so libppo1d.so; do + patchelf --set-rpath "${makeLibraryPath [ stdenv.gcc.gcc xorg.libX11 ]}:${stdenv.gcc.gcc}/lib64" $plugins/$i + done - patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.gcc.gcc}/lib64" \ - $plugins/libnpgtpo3dautoplugin.so + for i in libgoogletalkremoting.so libnpo1d.so; do + patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.gcc.gcc}/lib64" $plugins/$i + done mkdir -p $out/libexec/google/talkplugin - cp -prd opt/google/talkplugin/{GoogleTalkPlugin,locale,windowpicker.glade} $out/libexec/google/talkplugin/ - - mkdir -p $out/libexec/google/talkplugin/lib - cp opt/google/talkplugin/lib/libCg* $out/libexec/google/talkplugin/lib/ - - patchelf --set-rpath "$out/libexec/google/talkplugin/lib" \ - $out/libexec/google/talkplugin/lib/libCgGL.so + cp -prd opt/google/talkplugin/{data,GoogleTalkPlugin,locale,remoting24x24.png,windowpicker.glade} $out/libexec/google/talkplugin/ patchelf \ --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ From 87b3e7a93cc9f26d362789e520053e9469d4fec1 Mon Sep 17 00:00:00 2001 From: Mathnerd314 Date: Mon, 14 Jul 2014 02:35:09 +0200 Subject: [PATCH 006/789] Remove non-cpufreq_* modules since they are loaded by udev. --- nixos/modules/tasks/cpu-freq.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/modules/tasks/cpu-freq.nix b/nixos/modules/tasks/cpu-freq.nix index a8c63c13428..70bbee8474e 100644 --- a/nixos/modules/tasks/cpu-freq.nix +++ b/nixos/modules/tasks/cpu-freq.nix @@ -30,9 +30,7 @@ in config = mkIf (!config.boot.isContainer && config.powerManagement.cpuFreqGovernor != null) { - boot.kernelModules = [ "acpi-cpufreq" "speedstep-lib" "pcc-cpufreq" - "cpufreq_${cfg.cpuFreqGovernor}" - ]; + boot.kernelModules = [ "cpufreq_${cfg.cpuFreqGovernor}" ]; environment.systemPackages = [ cpupower ]; From a232a2d2c5882bec7c50749a7eee8033cc2548ca Mon Sep 17 00:00:00 2001 From: Joel Taylor Date: Thu, 31 Jul 2014 16:04:29 -0700 Subject: [PATCH 007/789] prevent usage of binutils on darwin --- pkgs/development/tools/misc/binutils/default.nix | 2 ++ pkgs/top-level/all-packages.nix | 8 +++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 8d8fc5d464e..9bcf2ccc14f 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -2,6 +2,8 @@ , cross ? null, gold ? true, bison ? null }: +assert !stdenv.isDarwin; + let basename = "binutils-2.23.1"; in with { inherit (stdenv.lib) optional optionals optionalString; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a46693b9235..714a06ea62e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3769,9 +3769,11 @@ let bam = callPackage ../development/tools/build-managers/bam {}; - binutils = callPackage ../development/tools/misc/binutils { - inherit noSysDirs; - }; + binutils = if stdenv.isDarwin + then stdenv.gcc.binutils + else callPackage ../development/tools/misc/binutils { + inherit noSysDirs; + }; binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { inherit noSysDirs; From 38567ddc80bdb2d0b23b3b0f3d6277c514b0a4bb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 12 Aug 2014 03:08:22 +0200 Subject: [PATCH 008/789] systemd: Apply backport fixes In particular, added a few patches that improve systemd-nspawn container behaviour. --- pkgs/os-specific/linux/systemd/fixes.patch | 2341 +++++++++++++++++++- 1 file changed, 2329 insertions(+), 12 deletions(-) diff --git a/pkgs/os-specific/linux/systemd/fixes.patch b/pkgs/os-specific/linux/systemd/fixes.patch index 7410c87e277..70ad195a032 100644 --- a/pkgs/os-specific/linux/systemd/fixes.patch +++ b/pkgs/os-specific/linux/systemd/fixes.patch @@ -1,7 +1,25 @@ diff --git a/Makefile.am b/Makefile.am -index 3d9e5c1..4d43cb4 100644 +index 3d9e5c1..46487f6 100644 --- a/Makefile.am +++ b/Makefile.am +@@ -1095,7 +1095,7 @@ BUILT_SOURCES += \ + + src/shared/errno-list.txt: + $(AM_V_at)$(MKDIR_P) $(dir $@) +- $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include errno.h - < /dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+[0-9]/ { print $$2; }' > $@ ++ $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include errno.h - < /dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+/ { print $$2; }' > $@ + + src/shared/errno-from-name.gperf: src/shared/errno-list.txt + $(AM_V_at)$(MKDIR_P) $(dir $@) +@@ -1107,7 +1107,7 @@ src/shared/errno-from-name.h: src/shared/errno-from-name.gperf + + src/shared/errno-to-name.h: src/shared/errno-list.txt + $(AM_V_at)$(MKDIR_P) $(dir $@) +- $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const errno_names[] = { "} { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@ ++ $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const errno_names[] = { "} !/EDEADLOCK/ && !/EWOULDBLOCK/ && !/ENOTSUP/ { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@ + + src/shared/af-list.txt: + $(AM_V_at)$(MKDIR_P) $(dir $@) @@ -1707,7 +1707,9 @@ dist_tmpfiles_DATA += \ endif @@ -13,8 +31,42 @@ index 3d9e5c1..4d43cb4 100644 systemd-tmpfiles-setup.service dist_zshcompletion_DATA += \ +@@ -1961,6 +1963,7 @@ systemd_cgls_SOURCES = \ + src/cgls/cgls.c + + systemd_cgls_LDADD = \ ++ libsystemd-internal.la \ + libsystemd-shared.la + + # ------------------------------------------------------------------------------ +diff --git a/TODO b/TODO +index e2ca1e6..d7efdd5 100644 +--- a/TODO ++++ b/TODO +@@ -1,4 +1,6 @@ + Bugfixes: ++* Should systemctl status \* work on all unit types, not just .service? ++ + * enabling an instance unit creates a pointless link, and + the unit will be started with getty@getty.service: + $ systemctl enable getty@.service +diff --git a/rules/42-usb-hid-pm.rules b/rules/42-usb-hid-pm.rules +index c675b5b..4c300da 100644 +--- a/rules/42-usb-hid-pm.rules ++++ b/rules/42-usb-hid-pm.rules +@@ -12,10 +12,6 @@ ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Mouse", ATTR{serial}!= + ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Tablet", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto" + ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Keyboard", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto" + +-# Catch-all for Avocent HID devices. Keyed off interface in order to only +-# trigger on HID class devices. +-ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0624", ATTR{bInterfaceClass}=="03", TEST=="../power/control", ATTR{../power/control}="auto" +- + # Dell DRAC 4 + ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="413c", ATTR{idProduct}=="2500", TEST=="power/control", ATTR{power/control}="auto" + diff --git a/rules/99-systemd.rules.in b/rules/99-systemd.rules.in -index db72373..2fc12ca 100644 +index db72373..2875958 100644 --- a/rules/99-systemd.rules.in +++ b/rules/99-systemd.rules.in @@ -14,10 +14,6 @@ KERNEL=="vport*", TAG+="systemd" @@ -28,11 +80,329 @@ index db72373..2fc12ca 100644 # Ignore raid devices that are not yet assembled and started 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" +@@ -43,7 +39,7 @@ SUBSYSTEM=="net", KERNEL!="lo", TAG+="systemd", ENV{SYSTEMD_ALIAS}+="/sys/subsys + SUBSYSTEM=="bluetooth", TAG+="systemd", ENV{SYSTEMD_ALIAS}+="/sys/subsystem/bluetooth/devices/%k" + + SUBSYSTEM=="bluetooth", TAG+="systemd", ENV{SYSTEMD_WANTS}+="bluetooth.target" +-ENV{ID_SMARTCARD_READER}=="*?", TAG+="systemd", ENV{SYSTEMD_WANTS}+="smartcard.target" ++ENV{ID_SMARTCARD_READER}=="?*", TAG+="systemd", ENV{SYSTEMD_WANTS}+="smartcard.target" + SUBSYSTEM=="sound", KERNEL=="card*", TAG+="systemd", ENV{SYSTEMD_WANTS}+="sound.target" + + SUBSYSTEM=="printer", TAG+="systemd", ENV{SYSTEMD_WANTS}+="printer.target" +diff --git a/src/cgls/cgls.c b/src/cgls/cgls.c +index b8e275d..1840594 100644 +--- a/src/cgls/cgls.c ++++ b/src/cgls/cgls.c +@@ -35,6 +35,10 @@ + #include "build.h" + #include "output-mode.h" + #include "fileio.h" ++#include "sd-bus.h" ++#include "bus-util.h" ++#include "bus-error.h" ++#include "unit-name.h" + + static bool arg_no_pager = false; + static bool arg_kernel_threads = false; +@@ -127,6 +131,7 @@ int main(int argc, char *argv[]) { + int r = 0, retval = EXIT_FAILURE; + int output_flags; + char _cleanup_free_ *root = NULL; ++ _cleanup_bus_unref_ sd_bus *bus = NULL; + + log_parse_environment(); + log_open(); +@@ -151,6 +156,12 @@ int main(int argc, char *argv[]) { + arg_all * OUTPUT_SHOW_ALL | + (arg_full > 0) * OUTPUT_FULL_WIDTH; + ++ r = bus_open_transport(BUS_TRANSPORT_LOCAL, NULL, false, &bus); ++ if (r < 0) { ++ log_error("Failed to create bus connection: %s", strerror(-r)); ++ goto finish; ++ } ++ + if (optind < argc) { + int i; + +@@ -189,8 +200,52 @@ int main(int argc, char *argv[]) { + } else { + if (arg_machine) { + char *m; ++ const char *cgroup; ++ _cleanup_free_ char *scope = NULL; ++ _cleanup_free_ char *path = NULL; ++ _cleanup_bus_message_unref_ sd_bus_message *reply = NULL; ++ _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; ++ + m = strappenda("/run/systemd/machines/", arg_machine); +- r = parse_env_file(m, NEWLINE, "CGROUP", &root, NULL); ++ r = parse_env_file(m, NEWLINE, "SCOPE", &scope, NULL); ++ if (r < 0) { ++ log_error("Failed to get machine path: %s", strerror(-r)); ++ goto finish; ++ } ++ ++ path = unit_dbus_path_from_name(scope); ++ if (!path) { ++ r = log_oom(); ++ goto finish; ++ } ++ ++ r = sd_bus_get_property( ++ bus, ++ "org.freedesktop.systemd1", ++ path, ++ "org.freedesktop.systemd1.Scope", ++ "ControlGroup", ++ &error, ++ &reply, ++ "s"); ++ ++ if (r < 0) { ++ log_error("Failed to query ControlGroup: %s", bus_error_message(&error, -r)); ++ goto finish; ++ } ++ ++ r = sd_bus_message_read(reply, "s", &cgroup); ++ if (r < 0) { ++ bus_log_parse_error(r); ++ goto finish; ++ } ++ ++ root = strdup(cgroup); ++ if (!root) { ++ r = log_oom(); ++ goto finish; ++ } ++ + } else + r = cg_get_root_path(&root); + if (r < 0) { +diff --git a/src/core/cgroup.c b/src/core/cgroup.c +index 3dd4c91..4201e1e 100644 +--- a/src/core/cgroup.c ++++ b/src/core/cgroup.c +@@ -871,7 +871,7 @@ int manager_setup_cgroup(Manager *m) { + safe_close(m->pin_cgroupfs_fd); + + m->pin_cgroupfs_fd = open(path, O_RDONLY|O_CLOEXEC|O_DIRECTORY|O_NOCTTY|O_NONBLOCK); +- if (r < 0) { ++ if (m->pin_cgroupfs_fd < 0) { + log_error("Failed to open pin file: %m"); + return -errno; + } +diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c +index 775825b..5b1c4e3 100644 +--- a/src/core/dbus-cgroup.c ++++ b/src/core/dbus-cgroup.c +@@ -173,6 +173,7 @@ int bus_cgroup_set_property( + + if (mode != UNIT_CHECK) { + c->cpu_accounting = b; ++ u->cgroup_realized_mask &= ~CGROUP_CPUACCT; + unit_write_drop_in_private(u, mode, name, b ? "CPUAccounting=yes" : "CPUAccounting=no"); + } + +@@ -192,6 +193,7 @@ int bus_cgroup_set_property( + + if (mode != UNIT_CHECK) { + c->cpu_shares = ul; ++ u->cgroup_realized_mask &= ~CGROUP_CPU; + unit_write_drop_in_private_format(u, mode, name, "CPUShares=%lu", ul); + } + +@@ -206,6 +208,7 @@ int bus_cgroup_set_property( + + if (mode != UNIT_CHECK) { + c->blockio_accounting = b; ++ u->cgroup_realized_mask &= ~CGROUP_BLKIO; + unit_write_drop_in_private(u, mode, name, b ? "BlockIOAccounting=yes" : "BlockIOAccounting=no"); + } + +@@ -225,6 +228,7 @@ int bus_cgroup_set_property( + + if (mode != UNIT_CHECK) { + c->blockio_weight = ul; ++ u->cgroup_realized_mask &= ~CGROUP_BLKIO; + unit_write_drop_in_private_format(u, mode, name, "BlockIOWeight=%lu", ul); + } + +@@ -294,6 +298,8 @@ int bus_cgroup_set_property( + cgroup_context_free_blockio_device_bandwidth(c, a); + } + ++ u->cgroup_realized_mask &= ~CGROUP_BLKIO; ++ + f = open_memstream(&buf, &size); + if (!f) + return -ENOMEM; +@@ -375,6 +381,8 @@ int bus_cgroup_set_property( + cgroup_context_free_blockio_device_weight(c, c->blockio_device_weights); + } + ++ u->cgroup_realized_mask &= ~CGROUP_BLKIO; ++ + f = open_memstream(&buf, &size); + if (!f) + return -ENOMEM; +@@ -398,6 +406,7 @@ int bus_cgroup_set_property( + + if (mode != UNIT_CHECK) { + c->memory_accounting = b; ++ u->cgroup_realized_mask &= ~CGROUP_MEMORY; + unit_write_drop_in_private(u, mode, name, b ? "MemoryAccounting=yes" : "MemoryAccounting=no"); + } + +@@ -412,6 +421,7 @@ int bus_cgroup_set_property( + + if (mode != UNIT_CHECK) { + c->memory_limit = limit; ++ u->cgroup_realized_mask &= ~CGROUP_MEMORY; + unit_write_drop_in_private_format(u, mode, name, "%s=%" PRIu64, name, limit); + } + +@@ -433,6 +443,7 @@ int bus_cgroup_set_property( + char *buf; + + c->device_policy = p; ++ u->cgroup_realized_mask &= ~CGROUP_DEVICE; + + buf = strappenda("DevicePolicy=", policy); + unit_write_drop_in_private(u, mode, name, buf); +@@ -511,6 +522,8 @@ int bus_cgroup_set_property( + cgroup_context_free_device_allow(c, c->device_allow); + } + ++ u->cgroup_realized_mask &= ~CGROUP_DEVICE; ++ + f = open_memstream(&buf, &size); + if (!f) + return -ENOMEM; +diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c +index 13b3d0d..37d4154 100644 +--- a/src/core/dbus-execute.c ++++ b/src/core/dbus-execute.c +@@ -842,7 +842,7 @@ int bus_exec_context_set_transient_property( + strv_free(c->environment); + c->environment = e; + +- joined = strv_join(c->environment, " "); ++ joined = strv_join_quoted(c->environment); + if (!joined) + return -ENOMEM; + +diff --git a/src/core/job.c b/src/core/job.c +index 35a9de6..dc4f441 100644 +--- a/src/core/job.c ++++ b/src/core/job.c +@@ -1060,6 +1060,9 @@ int job_coldplug(Job *j) { + if (r < 0) + return r; + ++ if (j->state == JOB_WAITING) ++ job_add_to_run_queue(j); ++ + if (j->begin_usec == 0 || j->unit->job_timeout == 0) + return 0; + +diff --git a/src/core/killall.c b/src/core/killall.c +index 57ed41c..eab48f7 100644 +--- a/src/core/killall.c ++++ b/src/core/killall.c +@@ -168,7 +168,7 @@ static int killall(int sig, Set *pids, bool send_sighup) { + continue; + + if (sig == SIGKILL) { +- _cleanup_free_ char *s; ++ _cleanup_free_ char *s = NULL; + + get_process_comm(pid, &s); + log_notice("Sending SIGKILL to PID "PID_FMT" (%s).", pid, strna(s)); +diff --git a/src/core/machine-id-setup.c b/src/core/machine-id-setup.c +index d459afe..2a58e48 100644 +--- a/src/core/machine-id-setup.c ++++ b/src/core/machine-id-setup.c +@@ -93,32 +93,9 @@ static int generate(char id[34], const char *root) { + } + } + +- /* If that didn't work, see if we are running in qemu/kvm and a +- * machine ID was passed in via -uuid on the qemu/kvm command +- * line */ +- +- r = detect_vm(&vm_id); +- if (r > 0 && streq(vm_id, "kvm")) { +- char uuid[37]; +- +- fd = open("/sys/class/dmi/id/product_uuid", O_RDONLY|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW); +- if (fd >= 0) { +- k = loop_read(fd, uuid, 36, false); +- safe_close(fd); +- +- if (k >= 36) { +- r = shorten_uuid(id, uuid); +- if (r >= 0) { +- log_info("Initializing machine ID from KVM UUID."); +- return 0; +- } +- } +- } +- } +- +- /* If that didn't work either, see if we are running in a +- * container, and a machine ID was passed in via +- * $container_uuid the way libvirt/LXC does it */ ++ /* If that didn't work, see if we are running in a container, ++ * and a machine ID was passed in via $container_uuid the way ++ * libvirt/LXC does it */ + r = detect_container(NULL); + if (r > 0) { + _cleanup_free_ char *e = NULL; +@@ -133,6 +110,30 @@ static int generate(char id[34], const char *root) { + } + } + } ++ ++ } else { ++ /* If we are not running in a container, see if we are ++ * running in qemu/kvm and a machine ID was passed in ++ * via -uuid on the qemu/kvm command line */ ++ ++ r = detect_vm(&vm_id); ++ if (r > 0 && streq(vm_id, "kvm")) { ++ char uuid[37]; ++ ++ fd = open("/sys/class/dmi/id/product_uuid", O_RDONLY|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW); ++ if (fd >= 0) { ++ k = loop_read(fd, uuid, 36, false); ++ safe_close(fd); ++ ++ if (k >= 36) { ++ r = shorten_uuid(id, uuid); ++ if (r >= 0) { ++ log_info("Initializing machine ID from KVM UUID."); ++ return 0; ++ } ++ } ++ } ++ } + } + + /* If that didn't work, generate a random machine id */ diff --git a/src/core/main.c b/src/core/main.c -index 41605ee..8517369 100644 +index 41605ee..c65701d 100644 --- a/src/core/main.c +++ b/src/core/main.c -@@ -1883,7 +1883,7 @@ finish: +@@ -1840,6 +1840,7 @@ finish: + if (reexecute) { + const char **args; + unsigned i, args_size; ++ sigset_t ss; + + /* Close and disarm the watchdog, so that the new + * instance can reinitialize it, but doesn't get +@@ -1883,7 +1884,7 @@ finish: char_array_0(sfd); i = 0; @@ -41,6 +411,83 @@ index 41605ee..8517369 100644 if (switch_root_dir) args[i++] = "--switched-root"; args[i++] = arg_running_as == SYSTEMD_SYSTEM ? "--system" : "--user"; +@@ -1923,6 +1924,13 @@ finish: + args[i++] = NULL; + assert(i <= args_size); + ++ /* reenable any blocked signals, especially important ++ * if we switch from initial ramdisk to init=... */ ++ reset_all_signal_handlers(); ++ ++ assert_se(sigemptyset(&ss) == 0); ++ assert_se(sigprocmask(SIG_SETMASK, &ss, NULL) == 0); ++ + if (switch_root_init) { + args[0] = switch_root_init; + execv(args[0], (char* const*) args); +diff --git a/src/core/manager.c b/src/core/manager.c +index 224106c..7342095 100644 +--- a/src/core/manager.c ++++ b/src/core/manager.c +@@ -422,7 +422,7 @@ int manager_new(SystemdRunningAs running_as, Manager **_m) { + return -ENOMEM; + + #ifdef ENABLE_EFI +- if (detect_container(NULL) <= 0) ++ if (running_as == SYSTEMD_SYSTEM && detect_container(NULL) <= 0) + boot_timestamps(&m->userspace_timestamp, &m->firmware_timestamp, &m->loader_timestamp); + #endif + +@@ -2129,9 +2129,6 @@ int manager_serialize(Manager *m, FILE *f, FDSet *fds, bool switching_root) { + if (u->id != t) + continue; + +- if (!unit_can_serialize(u)) +- continue; +- + /* Start marker */ + fputs(u->id, f); + fputc('\n', f); +diff --git a/src/core/namespace.c b/src/core/namespace.c +index 9f15211..e41cf5b 100644 +--- a/src/core/namespace.c ++++ b/src/core/namespace.c +@@ -42,6 +42,7 @@ + #include "mkdir.h" + #include "dev-setup.h" + #include "def.h" ++#include "label.h" + + typedef enum MountMode { + /* This is ordered by priority! */ +@@ -68,6 +69,7 @@ static int append_mounts(BindMount **p, char **strv, MountMode mode) { + STRV_FOREACH(i, strv) { + + (*p)->ignore = false; ++ (*p)->done = false; + + if ((mode == INACCESSIBLE || mode == READONLY || mode == READWRITE) && (*i)[0] == '-') { + (*p)->ignore = true; +@@ -217,7 +219,10 @@ static int mount_dev(BindMount *m) { + goto fail; + } + ++ label_context_set(d, st.st_mode); + r = mknod(dn, st.st_mode, st.st_rdev); ++ label_context_clear(); ++ + if (r < 0) { + r = -errno; + goto fail; +@@ -350,7 +355,7 @@ int setup_namespace( + private_dev; + + if (n > 0) { +- m = mounts = (BindMount *) alloca(n * sizeof(BindMount)); ++ m = mounts = (BindMount *) alloca0(n * sizeof(BindMount)); + r = append_mounts(&m, read_write_dirs, READWRITE); + if (r < 0) + return r; diff --git a/src/core/service.c b/src/core/service.c index ae3695a..6b3aa45 100644 --- a/src/core/service.c @@ -58,7 +505,7 @@ index ae3695a..6b3aa45 100644 log_error_unit(UNIT(s)->id, "%s is of type D-Bus but no D-Bus service name has been specified. Refusing.", UNIT(s)->id); return -EINVAL; diff --git a/src/core/socket.c b/src/core/socket.c -index 7c18a2b..eba67d5 100644 +index 7c18a2b..1a560a6 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -663,16 +663,25 @@ static int instance_from_socket(int fd, unsigned nr, char **instance) { @@ -96,6 +543,115 @@ index 7c18a2b..eba67d5 100644 break; } +@@ -1242,6 +1251,8 @@ static int socket_spawn(Socket *s, ExecCommand *c, pid_t *_pid) { + NULL, + s->exec_runtime, + &pid); ++ if (r < 0) ++ goto fail; + + strv_free(argv); + if (r < 0) +@@ -1497,6 +1508,12 @@ static void socket_enter_running(Socket *s, int cfd) { + } + + if (!pending) { ++ if (!UNIT_ISSET(s->service)) { ++ log_error_unit(UNIT(s)->id, "%s: service to activate vanished, refusing activation.", UNIT(s)->id); ++ r = -ENOENT; ++ goto fail; ++ } ++ + r = manager_add_job(UNIT(s)->manager, JOB_START, UNIT_DEREF(s->service), JOB_REPLACE, true, &error, NULL); + if (r < 0) + goto fail; +diff --git a/src/core/timer.c b/src/core/timer.c +index 6c85304..720b8af 100644 +--- a/src/core/timer.c ++++ b/src/core/timer.c +@@ -111,6 +111,23 @@ static int timer_add_default_dependencies(Timer *t) { + return unit_add_two_dependencies_by_name(UNIT(t), UNIT_BEFORE, UNIT_CONFLICTS, SPECIAL_SHUTDOWN_TARGET, NULL, true); + } + ++static void update_stampfile(Timer *t, usec_t timestamp) { ++ _cleanup_close_ int fd = -1; ++ ++ mkdir_parents_label(t->stamp_path, 0755); ++ ++ /* Update the file atime + mtime, if we can */ ++ fd = open(t->stamp_path, O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0644); ++ if (fd >= 0) { ++ struct timespec ts[2]; ++ ++ timespec_store(&ts[0], timestamp); ++ ts[1] = ts[0]; ++ ++ futimens(fd, ts); ++ } ++} ++ + static int timer_setup_persistent(Timer *t) { + int r; + +@@ -131,7 +148,7 @@ static int timer_setup_persistent(Timer *t) { + + e = getenv("XDG_DATA_HOME"); + if (e) +- t->stamp_path = strjoin(e, "/systemd/timers/", UNIT(t)->id, NULL); ++ t->stamp_path = strjoin(e, "/systemd/timers/stamp-", UNIT(t)->id, NULL); + else { + + _cleanup_free_ char *h = NULL; +@@ -496,22 +513,8 @@ static void timer_enter_running(Timer *t) { + + dual_timestamp_get(&t->last_trigger); + +- if (t->stamp_path) { +- _cleanup_close_ int fd = -1; +- +- mkdir_parents_label(t->stamp_path, 0755); +- +- /* Update the file atime + mtime, if we can */ +- fd = open(t->stamp_path, O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0644); +- if (fd >= 0) { +- struct timespec ts[2]; +- +- timespec_store(&ts[0], t->last_trigger.realtime); +- ts[1] = ts[0]; +- +- futimens(fd, ts); +- } +- } ++ if (t->stamp_path) ++ update_stampfile(t, t->last_trigger.realtime); + + timer_set_state(t, TIMER_RUNNING); + return; +@@ -539,6 +542,11 @@ static int timer_start(Unit *u) { + + if (stat(t->stamp_path, &st) >= 0) + t->last_trigger.realtime = timespec_load(&st.st_atim); ++ else if (errno == ENOENT) ++ /* The timer has never run before, ++ * make sure a stamp file exists. ++ */ ++ update_stampfile(t, now(CLOCK_REALTIME)); + } + + t->result = TIMER_SUCCESS; +diff --git a/src/core/transaction.c b/src/core/transaction.c +index d00f427..2befc32 100644 +--- a/src/core/transaction.c ++++ b/src/core/transaction.c +@@ -378,7 +378,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi + "Found dependency on %s/%s", + k->unit->id, job_type_to_string(k->type)); + +- if (!delete && ++ if (!delete && hashmap_get(tr->jobs, k->unit) && + !unit_matters_to_anchor(k->unit, k)) { + /* Ok, we can drop this one, so let's + * do so. */ diff --git a/src/core/umount.c b/src/core/umount.c index d1258f0..0311812 100644 --- a/src/core/umount.c @@ -109,6 +665,195 @@ index d1258f0..0311812 100644 #ifndef HAVE_SPLIT_USR || path_equal(m->path, "/usr") #endif +diff --git a/src/core/unit.c b/src/core/unit.c +index 153b79b..ed52694 100644 +--- a/src/core/unit.c ++++ b/src/core/unit.c +@@ -2287,25 +2287,25 @@ bool unit_can_serialize(Unit *u) { + } + + int unit_serialize(Unit *u, FILE *f, FDSet *fds, bool serialize_jobs) { +- ExecRuntime *rt; + int r; + + assert(u); + assert(f); + assert(fds); + +- if (!unit_can_serialize(u)) +- return 0; +- +- r = UNIT_VTABLE(u)->serialize(u, f, fds); +- if (r < 0) +- return r; ++ if (unit_can_serialize(u)) { ++ ExecRuntime *rt; + +- rt = unit_get_exec_runtime(u); +- if (rt) { +- r = exec_runtime_serialize(rt, u, f, fds); ++ r = UNIT_VTABLE(u)->serialize(u, f, fds); + if (r < 0) + return r; ++ ++ rt = unit_get_exec_runtime(u); ++ if (rt) { ++ r = exec_runtime_serialize(rt, u, f, fds); ++ if (r < 0) ++ return r; ++ } + } + + dual_timestamp_serialize(f, "inactive-exit-timestamp", &u->inactive_exit_timestamp); +@@ -2367,17 +2367,14 @@ void unit_serialize_item(Unit *u, FILE *f, const char *key, const char *value) { + } + + int unit_deserialize(Unit *u, FILE *f, FDSet *fds) { +- size_t offset; + ExecRuntime **rt = NULL; ++ size_t offset; + int r; + + assert(u); + assert(f); + assert(fds); + +- if (!unit_can_serialize(u)) +- return 0; +- + offset = UNIT_VTABLE(u)->exec_runtime_offset; + if (offset > 0) + rt = (ExecRuntime**) ((uint8_t*) u + offset); +@@ -2487,24 +2484,34 @@ int unit_deserialize(Unit *u, FILE *f, FDSet *fds) { + if (!s) + return -ENOMEM; + +- free(u->cgroup_path); +- u->cgroup_path = s; ++ if (u->cgroup_path) { ++ void *p; + ++ p = hashmap_remove(u->manager->cgroup_unit, u->cgroup_path); ++ log_info("Removing cgroup_path %s from hashmap (%p)", ++ u->cgroup_path, p); ++ free(u->cgroup_path); ++ } ++ ++ u->cgroup_path = s; + assert(hashmap_put(u->manager->cgroup_unit, s, u) == 1); ++ + continue; + } + +- if (rt) { +- r = exec_runtime_deserialize_item(rt, u, l, v, fds); ++ if (unit_can_serialize(u)) { ++ if (rt) { ++ r = exec_runtime_deserialize_item(rt, u, l, v, fds); ++ if (r < 0) ++ return r; ++ if (r > 0) ++ continue; ++ } ++ ++ r = UNIT_VTABLE(u)->deserialize_item(u, l, v, fds); + if (r < 0) + return r; +- if (r > 0) +- continue; + } +- +- r = UNIT_VTABLE(u)->deserialize_item(u, l, v, fds); +- if (r < 0) +- return r; + } + } + +diff --git a/src/cryptsetup/cryptsetup-generator.c b/src/cryptsetup/cryptsetup-generator.c +index 75d56dd..be8fb2f 100644 +--- a/src/cryptsetup/cryptsetup-generator.c ++++ b/src/cryptsetup/cryptsetup-generator.c +@@ -29,6 +29,7 @@ + #include "mkdir.h" + #include "strv.h" + #include "fileio.h" ++#include "path-util.h" + + static const char *arg_dest = "/tmp"; + static bool arg_enabled = true; +@@ -144,16 +145,19 @@ static int create_disk( + if (!uu) + return log_oom(); + +- if (is_device_path(uu)) { +- _cleanup_free_ char *dd; ++ if (!path_equal(uu, "/dev/null")) { + +- dd = unit_name_from_path(uu, ".device"); +- if (!dd) +- return log_oom(); ++ if (is_device_path(uu)) { ++ _cleanup_free_ char *dd; + +- fprintf(f, "After=%1$s\nRequires=%1$s\n", dd); +- } else +- fprintf(f, "RequiresMountsFor=%s\n", password); ++ dd = unit_name_from_path(uu, ".device"); ++ if (!dd) ++ return log_oom(); ++ ++ fprintf(f, "After=%1$s\nRequires=%1$s\n", dd); ++ } else ++ fprintf(f, "RequiresMountsFor=%s\n", password); ++ } + } + } + +@@ -287,7 +291,7 @@ static int parse_proc_cmdline_item(const char *key, const char *value) { + } else if (STR_IN_SET(key, "luks.key", "rd.luks.key") && value) { + + free(arg_keyfile); +- arg_keyfile = strdup(key); ++ arg_keyfile = strdup(value); + if (!arg_keyfile) + return log_oom(); + +diff --git a/src/cryptsetup/cryptsetup.c b/src/cryptsetup/cryptsetup.c +index 9b9074c..ad6c76c 100644 +--- a/src/cryptsetup/cryptsetup.c ++++ b/src/cryptsetup/cryptsetup.c +@@ -88,6 +88,13 @@ static int parse_one_option(const char *option) { + return 0; + } + ++ if (arg_key_size % 8) { ++ log_error("size= not a multiple of 8, ignoring."); ++ return 0; ++ } ++ ++ arg_key_size /= 8; ++ + } else if (startswith(option, "key-slot=")) { + + arg_type = CRYPT_LUKS1; +@@ -404,7 +411,7 @@ static int attach_luks_or_plain(struct crypt_device *cd, + /* for CRYPT_PLAIN limit reads + * from keyfile to key length, and + * ignore keyfile-size */ +- arg_keyfile_size = arg_key_size / 8; ++ arg_keyfile_size = arg_key_size; + + /* In contrast to what the name + * crypt_setup() might suggest this +@@ -567,7 +574,7 @@ int main(int argc, char *argv[]) { + else + until = 0; + +- arg_key_size = (arg_key_size > 0 ? arg_key_size : 256); ++ arg_key_size = (arg_key_size > 0 ? arg_key_size : (256 / 8)); + + if (key_file) { + struct stat st; diff --git a/src/fsck/fsck.c b/src/fsck/fsck.c index 18f2aca..2a2b1ea 100644 --- a/src/fsck/fsck.c @@ -131,11 +876,598 @@ index 18f2aca..2a2b1ea 100644 cmdline[i++] = "-a"; cmdline[i++] = "-T"; cmdline[i++] = "-l"; +diff --git a/src/getty-generator/getty-generator.c b/src/getty-generator/getty-generator.c +index 6a4aa2c..700e90a 100644 +--- a/src/getty-generator/getty-generator.c ++++ b/src/getty-generator/getty-generator.c +@@ -72,7 +72,7 @@ static int add_serial_getty(const char *tty) { + + log_debug("Automatically adding serial getty for /dev/%s.", tty); + +- n = unit_name_replace_instance("serial-getty@.service", tty); ++ n = unit_name_from_path_instance("serial-getty", tty, ".service"); + if (!n) + return log_oom(); + +@@ -86,7 +86,7 @@ static int add_container_getty(const char *tty) { + + log_debug("Automatically adding container getty for /dev/pts/%s.", tty); + +- n = unit_name_replace_instance("container-getty@.service", tty); ++ n = unit_name_from_path_instance("container-getty", tty, ".service"); + if (!n) + return log_oom(); + +diff --git a/src/journal/catalog.c b/src/journal/catalog.c +index 3ed0b7e..02dedc4 100644 +--- a/src/journal/catalog.c ++++ b/src/journal/catalog.c +@@ -103,7 +103,7 @@ static int finish_item( + const char *payload) { + + ssize_t offset; +- CatalogItem *i; ++ _cleanup_free_ CatalogItem *i = NULL; + int r; + + assert(h); +@@ -126,13 +126,14 @@ static int finish_item( + i->offset = htole64((uint64_t) offset); + + r = hashmap_put(h, i, i); +- if (r == EEXIST) { ++ if (r == -EEXIST) { + log_warning("Duplicate entry for " SD_ID128_FORMAT_STR ".%s, ignoring.", + SD_ID128_FORMAT_VAL(id), language ? language : "C"); +- free(i); + return 0; +- } ++ } else if (r < 0) ++ return r; + ++ i = NULL; + return 0; + } + +@@ -383,8 +384,8 @@ error: + int catalog_update(const char* database, const char* root, const char* const* dirs) { + _cleanup_strv_free_ char **files = NULL; + char **f; +- Hashmap *h; + struct strbuf *sb = NULL; ++ _cleanup_hashmap_free_free_ Hashmap *h = NULL; + _cleanup_free_ CatalogItem *items = NULL; + CatalogItem *i; + Iterator j; +@@ -406,13 +407,17 @@ int catalog_update(const char* database, const char* root, const char* const* di + } + + STRV_FOREACH(f, files) { +- log_debug("reading file '%s'", *f); +- catalog_import_file(h, sb, *f); ++ log_debug("Reading file '%s'", *f); ++ r = catalog_import_file(h, sb, *f); ++ if (r < 0) { ++ log_error("Failed to import file '%s': %s.", ++ *f, strerror(-r)); ++ goto finish; ++ } + } + + if (hashmap_size(h) <= 0) { + log_info("No items in catalog."); +- r = 0; + goto finish; + } else + log_debug("Found %u items in catalog.", hashmap_size(h)); +@@ -443,11 +448,7 @@ int catalog_update(const char* database, const char* root, const char* const* di + log_debug("%s: wrote %u items, with %zu bytes of strings, %ld total size.", + database, n, sb->len, r); + +- r = 0; +- + finish: +- if (h) +- hashmap_free_free(h); + if (sb) + strbuf_cleanup(sb); + +diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c +index f2f1f35..fd9d2a8 100644 +--- a/src/journal/journal-file.c ++++ b/src/journal/journal-file.c +@@ -274,12 +274,6 @@ static int journal_file_verify_header(JournalFile *f) { + !VALID64(le64toh(f->header->entry_array_offset))) + return -ENODATA; + +- if (le64toh(f->header->data_hash_table_offset) < le64toh(f->header->header_size) || +- le64toh(f->header->field_hash_table_offset) < le64toh(f->header->header_size) || +- le64toh(f->header->tail_object_offset) < le64toh(f->header->header_size) || +- le64toh(f->header->entry_array_offset) < le64toh(f->header->header_size)) +- return -ENODATA; +- + if (f->writable) { + uint8_t state; + sd_id128_t machine_id; +diff --git a/src/journal/journal-remote-parse.c b/src/journal/journal-remote-parse.c +index 142de0e..239ff38 100644 +--- a/src/journal/journal-remote-parse.c ++++ b/src/journal/journal-remote-parse.c +@@ -40,7 +40,7 @@ void source_free(RemoteSource *source) { + + static int get_line(RemoteSource *source, char **line, size_t *size) { + ssize_t n, remain; +- char *c; ++ char *c = NULL; + char *newbuf = NULL; + size_t newsize = 0; + +@@ -49,7 +49,9 @@ static int get_line(RemoteSource *source, char **line, size_t *size) { + assert(source->filled <= source->size); + assert(source->buf == NULL || source->size > 0); + +- c = memchr(source->buf, '\n', source->filled); ++ if (source->buf) ++ c = memchr(source->buf, '\n', source->filled); ++ + if (c != NULL) + goto docopy; + +diff --git a/src/journal/journald-kmsg.c b/src/journal/journald-kmsg.c +index 35948ea..48725e4 100644 +--- a/src/journal/journald-kmsg.c ++++ b/src/journal/journald-kmsg.c +@@ -152,7 +152,7 @@ static void dev_kmsg_record(Server *s, char *p, size_t l) { + /* Did we lose any? */ + if (serial > *s->kernel_seqnum) + server_driver_message(s, SD_MESSAGE_JOURNAL_MISSED, "Missed %"PRIu64" kernel messages", +- serial - *s->kernel_seqnum - 1); ++ serial - *s->kernel_seqnum); + + /* Make sure we never read this one again. Note that + * we always store the next message serial we expect +diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c +index 6da81e7..b6f8e7e 100644 +--- a/src/journal/journald-server.c ++++ b/src/journal/journald-server.c +@@ -67,6 +67,7 @@ + #define DEFAULT_SYNC_INTERVAL_USEC (5*USEC_PER_MINUTE) + #define DEFAULT_RATE_LIMIT_INTERVAL (30*USEC_PER_SEC) + #define DEFAULT_RATE_LIMIT_BURST 1000 ++#define DEFAULT_MAX_FILE_USEC USEC_PER_MONTH + + #define RECHECK_AVAILABLE_SPACE_USEC (30*USEC_PER_SEC) + +@@ -1473,6 +1474,8 @@ int server_init(Server *s) { + s->forward_to_syslog = true; + s->forward_to_wall = true; + ++ s->max_file_usec = DEFAULT_MAX_FILE_USEC; ++ + s->max_level_store = LOG_DEBUG; + s->max_level_syslog = LOG_DEBUG; + s->max_level_kmsg = LOG_NOTICE; +diff --git a/src/journal/microhttpd-util.c b/src/journal/microhttpd-util.c +index f693e0f..9a8d5c6 100644 +--- a/src/journal/microhttpd-util.c ++++ b/src/journal/microhttpd-util.c +@@ -129,7 +129,7 @@ void log_func_gnutls(int level, const char *message) { + if (0 <= level && level < (int) ELEMENTSOF(log_level_map)) + ourlevel = log_level_map[level]; + else +- level = LOG_DEBUG; ++ ourlevel = LOG_DEBUG; + + log_meta(ourlevel, NULL, 0, NULL, "gnutls: %s", message); + } +diff --git a/src/journal/test-catalog.c b/src/journal/test-catalog.c +index b087a8b..967ab67 100644 +--- a/src/journal/test-catalog.c ++++ b/src/journal/test-catalog.c +@@ -157,7 +157,8 @@ int main(int argc, char *argv[]) { + + setlocale(LC_ALL, "de_DE.UTF-8"); + +- log_set_max_level(LOG_DEBUG); ++ log_parse_environment(); ++ log_open(); + + test_catalog_file_lang(); + +diff --git a/src/libudev/libudev-monitor.c b/src/libudev/libudev-monitor.c +index ba1b04d..85b1e40 100644 +--- a/src/libudev/libudev-monitor.c ++++ b/src/libudev/libudev-monitor.c +@@ -108,15 +108,13 @@ static struct udev_monitor *udev_monitor_new(struct udev *udev) + + /* we consider udev running when /dev is on devtmpfs */ + static bool udev_has_devtmpfs(struct udev *udev) { +- struct file_handle *h; ++ union file_handle_union h = { .handle.handle_bytes = MAX_HANDLE_SZ, }; + int mount_id; + _cleanup_fclose_ FILE *f = NULL; + char line[LINE_MAX], *e; + int r; + +- h = alloca(MAX_HANDLE_SZ); +- h->handle_bytes = MAX_HANDLE_SZ; +- r = name_to_handle_at(AT_FDCWD, "/dev", h, &mount_id, 0); ++ r = name_to_handle_at(AT_FDCWD, "/dev", &h.handle, &mount_id, 0); + if (r < 0) + return false; + +diff --git a/src/login/70-uaccess.rules b/src/login/70-uaccess.rules +index e1cf897..57f619d 100644 +--- a/src/login/70-uaccess.rules ++++ b/src/login/70-uaccess.rules +@@ -12,7 +12,7 @@ ENV{MAJOR}=="", GOTO="uaccess_end" + SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="*:060101:*", TAG+="uaccess" + + # Digicams with proprietary protocol +-ENV{ID_GPHOTO2}=="*?", TAG+="uaccess" ++ENV{ID_GPHOTO2}=="?*", TAG+="uaccess" + + # SCSI and USB scanners + ENV{libsane_matched}=="yes", TAG+="uaccess" +@@ -49,13 +49,13 @@ SUBSYSTEM=="drm", KERNEL=="card*|renderD*", TAG+="uaccess" + SUBSYSTEM=="misc", KERNEL=="kvm", TAG+="uaccess" + + # smart-card readers +-ENV{ID_SMARTCARD_READER}=="*?", TAG+="uaccess" ++ENV{ID_SMARTCARD_READER}=="?*", TAG+="uaccess" + + # (USB) authentication devices +-ENV{ID_SECURITY_TOKEN}=="*?", TAG+="uaccess" ++ENV{ID_SECURITY_TOKEN}=="?*", TAG+="uaccess" + + # PDA devices +-ENV{ID_PDA}=="*?", TAG+="uaccess" ++ENV{ID_PDA}=="?*", TAG+="uaccess" + + # Programmable remote control + ENV{ID_REMOTE_CONTROL}=="1", TAG+="uaccess" +@@ -64,10 +64,10 @@ ENV{ID_REMOTE_CONTROL}=="1", TAG+="uaccess" + SUBSYSTEM=="input", ENV{ID_INPUT_JOYSTICK}=="?*", TAG+="uaccess" + + # color measurement devices +-ENV{COLOR_MEASUREMENT_DEVICE}=="*?", TAG+="uaccess" ++ENV{COLOR_MEASUREMENT_DEVICE}=="?*", TAG+="uaccess" + + # DDC/CI device, usually high-end monitors such as the DreamColor +-ENV{DDC_DEVICE}=="*?", TAG+="uaccess" ++ENV{DDC_DEVICE}=="?*", TAG+="uaccess" + + # media player raw devices (for user-mode drivers, Android SDK, etc.) + SUBSYSTEM=="usb", ENV{ID_MEDIA_PLAYER}=="?*", TAG+="uaccess" +diff --git a/src/login/logind-acl.c b/src/login/logind-acl.c +index dc86f0f..4bbeb64 100644 +--- a/src/login/logind-acl.c ++++ b/src/login/logind-acl.c +@@ -279,7 +279,9 @@ int devnode_acl_all(struct udev *udev, + + log_debug("Fixing up ACLs at %s for seat %s", n, seat); + k = devnode_acl(n, flush, del, old_uid, add, new_uid); +- if (k < 0) ++ if (k == -ENOENT) ++ log_debug("Device %s disappeared while setting ACLs", n); ++ else if (k < 0) + r = k; + } + +diff --git a/src/login/logind-action.c b/src/login/logind-action.c +index 1928f43..d69c7ad 100644 +--- a/src/login/logind-action.c ++++ b/src/login/logind-action.c +@@ -79,14 +79,12 @@ int manager_handle_action( + return 0; + } + +- /* If we have more than one or no displays connected, +- * don't react to lid closing. The no display case we +- * treat like this under the assumption that there is +- * no modern drm driver available. */ ++ /* If we have more than one display connected, ++ * don't react to lid closing. */ + n = manager_count_displays(m); + if (n < 0) + log_warning("Display counting failed: %s", strerror(-n)); +- else if (n != 1) { ++ else if (n > 1) { + log_debug("Ignoring lid switch request, %i displays connected.", n); + return 0; + } +diff --git a/src/login/logind-seat.c b/src/login/logind-seat.c +index 3f5efdc..1ee6ced 100644 +--- a/src/login/logind-seat.c ++++ b/src/login/logind-seat.c +@@ -275,8 +275,13 @@ int seat_switch_to(Seat *s, unsigned int num) { + if (!num) + return -EINVAL; + +- if (num >= s->position_count || !s->positions[num]) ++ if (num >= s->position_count || !s->positions[num]) { ++ /* allow switching to unused VTs to trigger auto-activate */ ++ if (seat_has_vts(s) && num < 64) ++ return chvt(num); ++ + return -EINVAL; ++ } + + return session_activate(s->positions[num]); + } +diff --git a/src/login/logind-session.c b/src/login/logind-session.c +index 4ca6b5d..02a780d 100644 +--- a/src/login/logind-session.c ++++ b/src/login/logind-session.c +@@ -213,7 +213,6 @@ int session_save(Session *s) { + + if (s->scope) + fprintf(f, "SCOPE=%s\n", s->scope); +- + if (s->scope_job) + fprintf(f, "SCOPE_JOB=%s\n", s->scope_job); + +@@ -229,17 +228,54 @@ int session_save(Session *s) { + if (s->display) + fprintf(f, "DISPLAY=%s\n", s->display); + +- if (s->remote_host) +- fprintf(f, "REMOTE_HOST=%s\n", s->remote_host); ++ if (s->remote_host) { ++ _cleanup_free_ char *escaped; ++ ++ escaped = cescape(s->remote_host); ++ if (!escaped) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ ++ fprintf(f, "REMOTE_HOST=%s\n", escaped); ++ } ++ ++ if (s->remote_user) { ++ _cleanup_free_ char *escaped; ++ ++ escaped = cescape(s->remote_user); ++ if (!escaped) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ ++ fprintf(f, "REMOTE_USER=%s\n", escaped); ++ } ++ ++ if (s->service) { ++ _cleanup_free_ char *escaped; + +- if (s->remote_user) +- fprintf(f, "REMOTE_USER=%s\n", s->remote_user); ++ escaped = cescape(s->service); ++ if (!escaped) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ ++ fprintf(f, "SERVICE=%s\n", escaped); ++ } + +- if (s->service) +- fprintf(f, "SERVICE=%s\n", s->service); ++ if (s->desktop) { ++ _cleanup_free_ char *escaped; + +- if (s->desktop) +- fprintf(f, "DESKTOP=%s\n", s->desktop); ++ ++ escaped = cescape(s->desktop); ++ if (!escaped) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ ++ fprintf(f, "DESKTOP=%s\n", escaped); ++ } + + if (s->seat && seat_has_vts(s->seat)) + fprintf(f, "VTNR=%u\n", s->vtnr); +@@ -972,6 +1008,10 @@ void session_mute_vt(Session *s) { + if (vt < 0) + return; + ++ r = fchown(vt, s->user->uid, -1); ++ if (r < 0) ++ goto error; ++ + r = ioctl(vt, KDSKBMODE, K_OFF); + if (r < 0) + goto error; +@@ -1026,6 +1066,8 @@ void session_restore_vt(Session *s) { + mode.mode = VT_AUTO; + ioctl(vt, VT_SETMODE, &mode); + ++ fchown(vt, 0, -1); ++ + s->vtfd = safe_close(s->vtfd); + } + +diff --git a/src/login/org.freedesktop.login1.policy.in b/src/login/org.freedesktop.login1.policy.in +index b96d32d..b8e90f1 100644 +--- a/src/login/org.freedesktop.login1.policy.in ++++ b/src/login/org.freedesktop.login1.policy.in +@@ -254,7 +254,7 @@ + + auth_admin_keep + auth_admin_keep +- auth_admin_keep ++ yes + + org.freedesktop.login1.hibernate + +diff --git a/src/login/pam-module.c b/src/login/pam-module.c +index 9873dd5..1259457 100644 +--- a/src/login/pam-module.c ++++ b/src/login/pam-module.c +@@ -475,7 +475,7 @@ _public_ PAM_EXTERN int pam_sm_open_session( + } + + if (session_fd >= 0) { +- session_fd = dup(session_fd); ++ session_fd = fcntl(session_fd, F_DUPFD_CLOEXEC, 3); + if (session_fd < 0) { + pam_syslog(handle, LOG_ERR, "Failed to dup session fd: %m"); + return PAM_SESSION_ERR; +diff --git a/src/machine/machine.c b/src/machine/machine.c +index 9a5cc9a..de701ad 100644 +--- a/src/machine/machine.c ++++ b/src/machine/machine.c +@@ -123,17 +123,42 @@ int machine_save(Machine *m) { + "NAME=%s\n", + m->name); + +- if (m->unit) +- fprintf(f, "SCOPE=%s\n", m->unit); /* We continue to call this "SCOPE=" because it is internal only, and we want to stay compatible with old files */ ++ if (m->unit) { ++ _cleanup_free_ char *escaped; ++ ++ escaped = cescape(m->unit); ++ if (!escaped) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ ++ fprintf(f, "SCOPE=%s\n", escaped); /* We continue to call this "SCOPE=" because it is internal only, and we want to stay compatible with old files */ ++ } + + if (m->scope_job) + fprintf(f, "SCOPE_JOB=%s\n", m->scope_job); + +- if (m->service) +- fprintf(f, "SERVICE=%s\n", m->service); ++ if (m->service) { ++ _cleanup_free_ char *escaped; + +- if (m->root_directory) +- fprintf(f, "ROOT=%s\n", m->root_directory); ++ escaped = cescape(m->service); ++ if (!escaped) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ fprintf(f, "SERVICE=%s\n", escaped); ++ } ++ ++ if (m->root_directory) { ++ _cleanup_free_ char *escaped; ++ ++ escaped = cescape(m->root_directory); ++ if (!escaped) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ fprintf(f, "ROOT=%s\n", escaped); ++ } + + if (!sd_id128_equal(m->id, SD_ID128_NULL)) + fprintf(f, "ID=" SD_ID128_FORMAT_STR "\n", SD_ID128_FORMAT_VAL(m->id)); +@@ -330,16 +355,18 @@ static int machine_stop_scope(Machine *m) { + if (!m->unit) + return 0; + +- r = manager_stop_unit(m->manager, m->unit, &error, &job); +- if (r < 0) { +- log_error("Failed to stop machine scope: %s", bus_error_message(&error, r)); +- return r; ++ if (!m->registered) { ++ r = manager_stop_unit(m->manager, m->unit, &error, &job); ++ if (r < 0) { ++ log_error("Failed to stop machine scope: %s", bus_error_message(&error, r)); ++ return r; ++ } + } + + free(m->scope_job); + m->scope_job = job; + +- return r; ++ return 0; + } + + int machine_stop(Machine *m) { +@@ -415,6 +442,8 @@ int machine_kill(Machine *m, KillWho who, int signo) { + + if (kill(m->leader, signo) < 0) + return -errno; ++ ++ return 0; + } + + /* Otherwise make PID 1 do it for us, for the entire cgroup */ +diff --git a/src/machine/machine.h b/src/machine/machine.h +index f4aefc5..de3536d 100644 +--- a/src/machine/machine.h ++++ b/src/machine/machine.h +@@ -72,6 +72,7 @@ struct Machine { + + bool in_gc_queue:1; + bool started:1; ++ bool registered:1; + + sd_bus_message *create_message; + +diff --git a/src/machine/machined-dbus.c b/src/machine/machined-dbus.c +index 9473105..154a335 100644 +--- a/src/machine/machined-dbus.c ++++ b/src/machine/machined-dbus.c +@@ -241,6 +241,7 @@ static int method_create_or_register_machine(Manager *manager, sd_bus_message *m + m->leader = leader; + m->class = c; + m->id = id; ++ m->registered = true; + + if (!isempty(service)) { + m->service = strdup(service); diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c -index 9a9ed9d..9e46e18 100644 +index 9a9ed9d..4efa5b7 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c -@@ -2667,6 +2667,7 @@ int main(int argc, char *argv[]) { +@@ -769,6 +769,15 @@ static int setup_resolv_conf(const char *dest) { + return 0; + } + ++static char* id128_format_as_uuid(sd_id128_t id, char s[37]) { ++ ++ snprintf(s, 37, ++ "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", ++ SD_ID128_FORMAT_VAL(id)); ++ ++ return s; ++} ++ + static int setup_boot_id(const char *dest) { + _cleanup_free_ char *from = NULL, *to = NULL; + sd_id128_t rnd = {}; +@@ -794,10 +803,7 @@ static int setup_boot_id(const char *dest) { + return r; + } + +- snprintf(as_uuid, sizeof(as_uuid), +- "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", +- SD_ID128_FORMAT_VAL(rnd)); +- char_array_0(as_uuid); ++ id128_format_as_uuid(rnd, as_uuid); + + r = write_string_file(from, as_uuid); + if (r < 0) { +@@ -2378,7 +2384,7 @@ static int change_uid_gid(char **_home) { + _cleanup_fclose_ FILE *f = NULL; + _cleanup_close_ int fd = -1; + unsigned n_uids = 0; +- size_t sz, l; ++ size_t sz = 0, l; + uid_t uid; + gid_t gid; + pid_t pid; +@@ -2667,6 +2673,7 @@ int main(int argc, char *argv[]) { goto finish; } } else { @@ -143,7 +1475,7 @@ index 9a9ed9d..9e46e18 100644 const char *p; p = strappenda(arg_directory, -@@ -2676,6 +2677,7 @@ int main(int argc, char *argv[]) { +@@ -2676,6 +2683,7 @@ int main(int argc, char *argv[]) { goto finish; } @@ -151,6 +1483,28 @@ index 9a9ed9d..9e46e18 100644 } } else { char template[] = "/tmp/nspawn-root-XXXXXX"; +@@ -2966,7 +2974,9 @@ int main(int argc, char *argv[]) { + } + + if (!sd_id128_equal(arg_uuid, SD_ID128_NULL)) { +- if (asprintf((char**)(envp + n_env++), "container_uuid=" SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL(arg_uuid)) < 0) { ++ char as_uuid[37]; ++ ++ if (asprintf((char**)(envp + n_env++), "container_uuid=%s", id128_format_as_uuid(arg_uuid, as_uuid)) < 0) { + log_oom(); + goto child_fail; + } +@@ -3136,6 +3146,10 @@ int main(int argc, char *argv[]) { + + if (!arg_quiet) + log_info("Container %s is being rebooted.", arg_machine); ++ if (getenv("EXIT_ON_REBOOT") != 0) { ++ r = 10; ++ break; ++ } + continue; + } else if (status.si_code == CLD_KILLED || + status.si_code == CLD_DUMPED) { diff --git a/src/nss-myhostname/netlink.c b/src/nss-myhostname/netlink.c index d61ecdf..228a3a4 100644 --- a/src/nss-myhostname/netlink.c @@ -166,6 +1520,88 @@ index d61ecdf..228a3a4 100644 if (ifaddrmsg->ifa_flags & IFA_F_DEPRECATED) continue; +diff --git a/src/python-systemd/_reader.c b/src/python-systemd/_reader.c +index 059b904..9a19a10 100644 +--- a/src/python-systemd/_reader.c ++++ b/src/python-systemd/_reader.c +@@ -902,7 +902,6 @@ static PyObject* get_catalog(PyObject *self, PyObject *args) { + sd_id128_t id; + _cleanup_free_ char *msg = NULL; + +- assert(!self); + assert(args); + + if (!PyArg_ParseTuple(args, "z:get_catalog", &id_)) +diff --git a/src/python-systemd/journal.py b/src/python-systemd/journal.py +index 9c7e004..dd1f229 100644 +--- a/src/python-systemd/journal.py ++++ b/src/python-systemd/journal.py +@@ -293,7 +293,7 @@ class Reader(_Reader): + monotonic = monotonic.totalseconds() + monotonic = int(monotonic * 1000000) + if isinstance(bootid, _uuid.UUID): +- bootid = bootid.get_hex() ++ bootid = bootid.hex + return super(Reader, self).seek_monotonic(monotonic, bootid) + + def log_level(self, level): +@@ -314,7 +314,7 @@ class Reader(_Reader): + Equivalent to add_match(MESSAGE_ID=`messageid`). + """ + if isinstance(messageid, _uuid.UUID): +- messageid = messageid.get_hex() ++ messageid = messageid.hex + self.add_match(MESSAGE_ID=messageid) + + def this_boot(self, bootid=None): +@@ -346,7 +346,7 @@ class Reader(_Reader): + + def get_catalog(mid): + if isinstance(mid, _uuid.UUID): +- mid = mid.get_hex() ++ mid = mid.hex + return _get_catalog(mid) + + def _make_line(field, value): +diff --git a/src/readahead/readahead-common.c b/src/readahead/readahead-common.c +index 5ffa88b..49679fc 100644 +--- a/src/readahead/readahead-common.c ++++ b/src/readahead/readahead-common.c +@@ -75,7 +75,7 @@ int fs_on_ssd(const char *p) { + if (major(st.st_dev) == 0) { + _cleanup_fclose_ FILE *f = NULL; + int mount_id; +- struct file_handle *h; ++ union file_handle_union h = { .handle.handle_bytes = MAX_HANDLE_SZ, }; + + /* Might be btrfs, which exposes "ssd" as mount flag if it is on ssd. + * +@@ -83,9 +83,7 @@ int fs_on_ssd(const char *p) { + * and then lookup the mount ID in mountinfo to find + * the mount options. */ + +- h = alloca(MAX_HANDLE_SZ); +- h->handle_bytes = MAX_HANDLE_SZ; +- r = name_to_handle_at(AT_FDCWD, p, h, &mount_id, AT_SYMLINK_FOLLOW); ++ r = name_to_handle_at(AT_FDCWD, p, &h.handle, &mount_id, AT_SYMLINK_FOLLOW); + if (r < 0) + return false; + +diff --git a/src/shared/conf-parser.c b/src/shared/conf-parser.c +index d27b1b7..905a2e1 100644 +--- a/src/shared/conf-parser.c ++++ b/src/shared/conf-parser.c +@@ -336,8 +336,8 @@ int config_parse(const char *unit, + if (!f) { + f = ours = fopen(filename, "re"); + if (!f) { +- log_error("Failed to open configuration file '%s': %m", filename); +- return -errno; ++ log_full(errno == ENOENT ? LOG_DEBUG : LOG_ERR, "Failed to open configuration file '%s': %m", filename); ++ return errno == ENOENT ? 0 : -errno; + } + } + diff --git a/src/shared/generator.c b/src/shared/generator.c index 6110303..e679cb1 100644 --- a/src/shared/generator.c @@ -179,10 +1615,359 @@ index 6110303..e679cb1 100644 r = access(checker, X_OK); if (r < 0) { log_warning("Checking was requested for %s, but %s cannot be used: %m", what, checker); +diff --git a/src/shared/install.c b/src/shared/install.c +index 7409046..4517c9c 100644 +--- a/src/shared/install.c ++++ b/src/shared/install.c +@@ -560,7 +560,7 @@ int unit_file_mask( + unsigned *n_changes) { + + char **i; +- _cleanup_free_ char *prefix; ++ _cleanup_free_ char *prefix = NULL; + int r; + + assert(scope >= 0); +diff --git a/src/shared/log.c b/src/shared/log.c +index a4b3b68..890a9fa 100644 +--- a/src/shared/log.c ++++ b/src/shared/log.c +@@ -878,6 +878,9 @@ void log_parse_environment(void) { + if (l == 5 && startswith(w, "debug")) { + log_set_max_level(LOG_DEBUG); + break; ++ } else if (l == 5 && startswith(w, "quiet")) { ++ log_set_max_level(LOG_WARNING); ++ break; + } + } + } +diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c +index 9d14933..b0b66f6 100644 +--- a/src/shared/logs-show.c ++++ b/src/shared/logs-show.c +@@ -547,7 +547,9 @@ static int output_export( + startswith(data, "_BOOT_ID=")) + continue; + +- if (!utf8_is_printable(data, length)) { ++ if (utf8_is_printable_newline(data, length, false)) ++ fwrite(data, length, 1, f); ++ else { + const char *c; + uint64_t le64; + +@@ -562,8 +564,7 @@ static int output_export( + le64 = htole64(length - (c - (const char*) data) - 1); + fwrite(&le64, sizeof(le64), 1, f); + fwrite(c + 1, length - (c - (const char*) data) - 1, 1, f); +- } else +- fwrite(data, length, 1, f); ++ } + + fputc('\n', f); + } +diff --git a/src/shared/unit-name.c b/src/shared/unit-name.c +index 6c167b4..d0e71f2 100644 +--- a/src/shared/unit-name.c ++++ b/src/shared/unit-name.c +@@ -332,7 +332,7 @@ char *unit_name_path_unescape(const char *f) { + } + + bool unit_name_is_template(const char *n) { +- const char *p; ++ const char *p, *e; + + assert(n); + +@@ -340,11 +340,15 @@ bool unit_name_is_template(const char *n) { + if (!p) + return false; + +- return p[1] == '.'; ++ e = strrchr(p+1, '.'); ++ if (!e) ++ return false; ++ ++ return e == p + 1; + } + + bool unit_name_is_instance(const char *n) { +- const char *p; ++ const char *p, *e; + + assert(n); + +@@ -352,7 +356,11 @@ bool unit_name_is_instance(const char *n) { + if (!p) + return false; + +- return p[1] != '.'; ++ e = strrchr(p+1, '.'); ++ if (!e) ++ return false; ++ ++ return e > p + 1; + } + + char *unit_name_replace_instance(const char *f, const char *i) { +diff --git a/src/shared/utf8.c b/src/shared/utf8.c +index 0b524d8..c559c13 100644 +--- a/src/shared/utf8.c ++++ b/src/shared/utf8.c +@@ -136,7 +136,7 @@ int utf8_encoded_to_unichar(const char *str) { + return unichar; + } + +-bool utf8_is_printable(const char* str, size_t length) { ++bool utf8_is_printable_newline(const char* str, size_t length, bool newline) { + const uint8_t *p; + + assert(str); +@@ -145,7 +145,8 @@ bool utf8_is_printable(const char* str, size_t length) { + int encoded_len = utf8_encoded_valid_unichar((const char *)p); + int val = utf8_encoded_to_unichar((const char*)p); + +- if (encoded_len < 0 || val < 0 || is_unicode_control(val)) ++ if (encoded_len < 0 || val < 0 || is_unicode_control(val) || ++ (!newline && val == '\n')) + return false; + + length -= encoded_len; +diff --git a/src/shared/utf8.h b/src/shared/utf8.h +index c0eb73a..c087995 100644 +--- a/src/shared/utf8.h ++++ b/src/shared/utf8.h +@@ -31,7 +31,10 @@ const char *utf8_is_valid(const char *s) _pure_; + char *ascii_is_valid(const char *s) _pure_; + char *utf8_escape_invalid(const char *s); + +-bool utf8_is_printable(const char* str, size_t length) _pure_; ++bool utf8_is_printable_newline(const char* str, size_t length, bool newline) _pure_; ++_pure_ static inline bool utf8_is_printable(const char* str, size_t length) { ++ return utf8_is_printable_newline(str, length, true); ++} + + char *utf16_to_utf8(const void *s, size_t length); + +diff --git a/src/shared/util.c b/src/shared/util.c +index ffe6624..2a2b2b2 100644 +--- a/src/shared/util.c ++++ b/src/shared/util.c +@@ -166,19 +166,19 @@ int close_nointr(int fd) { + + assert(fd >= 0); + r = close(fd); +- +- /* Just ignore EINTR; a retry loop is the wrong +- * thing to do on Linux. +- * +- * http://lkml.indiana.edu/hypermail/linux/kernel/0509.1/0877.html +- * https://bugzilla.gnome.org/show_bug.cgi?id=682819 +- * http://utcc.utoronto.ca/~cks/space/blog/unix/CloseEINTR +- * https://sites.google.com/site/michaelsafyan/software-engineering/checkforeintrwheninvokingclosethinkagain +- */ +- if (_unlikely_(r < 0 && errno == EINTR)) +- return 0; +- else if (r >= 0) ++ if (r >= 0) + return r; ++ else if (errno == EINTR) ++ /* ++ * Just ignore EINTR; a retry loop is the wrong ++ * thing to do on Linux. ++ * ++ * http://lkml.indiana.edu/hypermail/linux/kernel/0509.1/0877.html ++ * https://bugzilla.gnome.org/show_bug.cgi?id=682819 ++ * http://utcc.utoronto.ca/~cks/space/blog/unix/CloseEINTR ++ * https://sites.google.com/site/michaelsafyan/software-engineering/checkforeintrwheninvokingclosethinkagain ++ */ ++ return 0; + else + return -errno; + } +@@ -195,7 +195,13 @@ int safe_close(int fd) { + + if (fd >= 0) { + PROTECT_ERRNO; +- assert_se(close_nointr(fd) == 0); ++ ++ /* The kernel might return pretty much any error code ++ * via close(), but the fd will be closed anyway. The ++ * only condition we want to check for here is whether ++ * the fd was invalid at all... */ ++ ++ assert_se(close_nointr(fd) != -EBADF); + } + + return -1; +@@ -1365,7 +1371,7 @@ bool ignore_file(const char *filename) { + assert(filename); + + if (endswith(filename, "~")) +- return false; ++ return true; + + return ignore_file_allow_backup(filename); + } +@@ -1495,6 +1501,7 @@ bool fstype_is_network(const char *fstype) { + static const char table[] = + "cifs\0" + "smbfs\0" ++ "sshfs\0" + "ncpfs\0" + "ncp\0" + "nfs\0" +@@ -1581,8 +1588,9 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) { + if (fd_wait_for_event(fileno(f), POLLIN, t) <= 0) + return -ETIMEDOUT; + ++ errno = 0; + if (!fgets(line, sizeof(line), f)) +- return -EIO; ++ return errno ? -errno : -EIO; + + truncate_nl(line); + +@@ -5327,6 +5335,9 @@ bool string_is_safe(const char *p) { + if (*t > 0 && *t < ' ') + return false; + ++ if (*t == 127) ++ return false; ++ + if (strchr("\\\"\'", *t)) + return false; + } +@@ -5343,10 +5354,14 @@ bool string_has_cc(const char *p) { + + assert(p); + +- for (t = p; *t; t++) ++ for (t = p; *t; t++) { + if (*t > 0 && *t < ' ' && *t != '\t') + return true; + ++ if (*t == 127) ++ return true; ++ } ++ + return false; + } + +@@ -6391,3 +6406,19 @@ void hexdump(FILE *f, const void *p, size_t s) { + s -= 16; + } + } ++ ++int update_reboot_param_file(const char *param) ++{ ++ int r = 0; ++ ++ if (param) { ++ ++ r = write_string_file(REBOOT_PARAM_FILE, param); ++ if (r < 0) ++ log_error("Failed to write reboot param to " ++ REBOOT_PARAM_FILE": %s", strerror(-r)); ++ } else ++ unlink(REBOOT_PARAM_FILE); ++ ++ return r; ++} +diff --git a/src/shared/util.h b/src/shared/util.h +index 90464c9..122ac91 100644 +--- a/src/shared/util.h ++++ b/src/shared/util.h +@@ -22,6 +22,7 @@ + ***/ + + #include ++#include + #include + #include + #include +@@ -922,3 +923,10 @@ uint64_t physical_memory(void); + char* mount_test_option(const char *haystack, const char *needle); + + void hexdump(FILE *f, const void *p, size_t s); ++ ++union file_handle_union { ++ struct file_handle handle; ++ char padding[sizeof(struct file_handle) + MAX_HANDLE_SZ]; ++}; ++ ++int update_reboot_param_file(const char *param); +diff --git a/src/shared/virt.c b/src/shared/virt.c +index ec2ddcf..f03e790 100644 +--- a/src/shared/virt.c ++++ b/src/shared/virt.c +@@ -149,7 +149,7 @@ static int detect_vm_dmi(const char **_id) { + + /* Returns a short identifier for the various VM implementations */ + int detect_vm(const char **id) { +- _cleanup_free_ char *hvtype = NULL, *cpuinfo_contents = NULL; ++ _cleanup_free_ char *domcap = NULL, *cpuinfo_contents = NULL; + static thread_local int cached_found = -1; + static thread_local const char *cached_id = NULL; + const char *_id = NULL; +@@ -163,17 +163,37 @@ int detect_vm(const char **id) { + return cached_found; + } + +- /* Try high-level hypervisor sysfs file first: ++ /* Try xen capabilities file first, if not found try high-level hypervisor sysfs file: + * +- * https://bugs.freedesktop.org/show_bug.cgi?id=61491 */ +- r = read_one_line_file("/sys/hypervisor/type", &hvtype); ++ * https://bugs.freedesktop.org/show_bug.cgi?id=77271 */ ++ r = read_one_line_file("/proc/xen/capabilities", &domcap); + if (r >= 0) { +- if (streq(hvtype, "xen")) { ++ char *cap, *i = domcap; ++ ++ while ((cap = strsep(&i, ","))) ++ if (streq(cap, "control_d")) ++ break; ++ ++ if (!i) { + _id = "xen"; + r = 1; +- goto finish; + } +- } else if (r != -ENOENT) ++ ++ goto finish; ++ ++ } else if (r == -ENOENT) { ++ _cleanup_free_ char *hvtype = NULL; ++ ++ r = read_one_line_file("/sys/hypervisor/type", &hvtype); ++ if (r >= 0) { ++ if (streq(hvtype, "xen")) { ++ _id = "xen"; ++ r = 1; ++ goto finish; ++ } ++ } else if (r != -ENOENT) ++ return r; ++ } else + return r; + + /* this will set _id to "other" and return 0 for unknown hypervisors */ diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c -index 0887bc3..6b502ce 100644 +index 0887bc3..d02ee2b 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c +@@ -461,7 +461,7 @@ static int output_units_list(const UnitInfo *unit_infos, unsigned c) { + } + + if (circle_len > 0) +- printf("%s%s%s", on_circle, circle ? draw_special_char(DRAW_BLACK_CIRCLE) : " ", off_circle); ++ printf("%s%s%s ", on_circle, circle ? draw_special_char(DRAW_BLACK_CIRCLE) : " ", off_circle); + + printf("%s%-*s%s %s%-*s%s %s%-*s %-*s%s %-*s", + on_active, id_len, id, off_active, @@ -2561,7 +2561,7 @@ static int start_unit_one( log_debug("Adding %s to the set", p); @@ -192,6 +1977,523 @@ index 0887bc3..6b502ce 100644 return log_oom(); } +@@ -4240,7 +4240,7 @@ static int show_all( + _cleanup_free_ UnitInfo *unit_infos = NULL; + const UnitInfo *u; + unsigned c; +- int r; ++ int r, ret = 0; + + r = get_unit_list(bus, NULL, NULL, &unit_infos, 0, &reply); + if (r < 0) +@@ -4262,9 +4262,11 @@ static int show_all( + r = show_one(verb, bus, p, show_properties, new_line, ellipsized); + if (r < 0) + return r; ++ else if (r > 0 && ret == 0) ++ ret = r; + } + +- return 0; ++ return ret; + } + + static int show_system_status(sd_bus *bus) { +@@ -4386,7 +4388,12 @@ static int show(sd_bus *bus, char **args) { + } + } + +- show_one(args[0], bus, unit, show_properties, &new_line, &ellipsized); ++ r = show_one(args[0], bus, unit, show_properties, ++ &new_line, &ellipsized); ++ if (r < 0) ++ return r; ++ else if (r > 0 && ret == 0) ++ ret = r; + } + + if (!strv_isempty(patterns)) { +@@ -4403,7 +4410,12 @@ static int show(sd_bus *bus, char **args) { + if (!unit) + return log_oom(); + +- show_one(args[0], bus, unit, show_properties, &new_line, &ellipsized); ++ r = show_one(args[0], bus, unit, show_properties, ++ &new_line, &ellipsized); ++ if (r < 0) ++ return r; ++ else if (r > 0 && ret == 0) ++ ret = r; + } + } + } +@@ -5403,15 +5415,15 @@ static int systemctl_help(void) { + " otherwise restart if active\n" + " isolate NAME Start one unit and stop all others\n" + " kill NAME... Send signal to processes of a unit\n" +- " is-active NAME... Check whether units are active\n" +- " is-failed NAME... Check whether units are failed\n" +- " status [NAME...|PID...] Show runtime status of one or more units\n" +- " show [NAME...|JOB...] Show properties of one or more\n" ++ " is-active PATTERN... Check whether units are active\n" ++ " is-failed PATTERN... Check whether units are failed\n" ++ " status [PATTERN...|PID...] Show runtime status of one or more units\n" ++ " show [PATTERN...|JOB...] Show properties of one or more\n" + " units/jobs or the manager\n" +- " cat NAME... Show files and drop-ins of one or more units\n" ++ " cat PATTERN... Show files and drop-ins of one or more units\n" + " set-property NAME ASSIGNMENT... Sets one or more properties of a unit\n" +- " help NAME...|PID... Show manual for one or more units\n" +- " reset-failed [NAME...] Reset failed state for all, one, or more\n" ++ " help PATTERN...|PID... Show manual for one or more units\n" ++ " reset-failed [PATTERN...] Reset failed state for all, one, or more\n" + " units\n" + " list-dependencies [NAME] Recursively show units which are required\n" + " or wanted by this unit or by which this\n" +@@ -5973,13 +5985,10 @@ static int halt_parse_argv(int argc, char *argv[]) { + } + } + +- if (arg_action == ACTION_REBOOT && argc == optind + 1) { +- r = write_string_file(REBOOT_PARAM_FILE, argv[optind]); +- if (r < 0) { +- log_error("Failed to write reboot param to " +- REBOOT_PARAM_FILE": %s", strerror(-r)); ++ if (arg_action == ACTION_REBOOT && (argc == optind || argc == optind + 1)) { ++ r = update_reboot_param_file(argc == optind + 1 ? argv[optind] : NULL); ++ if (r < 0) + return r; +- } + } else if (optind < argc) { + log_error("Too many arguments."); + return -EINVAL; +diff --git a/src/test/test-udev.c b/src/test/test-udev.c +index b064744..b057cc8 100644 +--- a/src/test/test-udev.c ++++ b/src/test/test-udev.c +@@ -155,9 +155,8 @@ int main(int argc, char *argv[]) { + } + } + +- err = udev_event_execute_rules(event, rules, &sigmask_orig); +- if (err == 0) +- udev_event_execute_run(event, NULL); ++ udev_event_execute_rules(event, rules, &sigmask_orig); ++ udev_event_execute_run(event, NULL); + out: + if (event != NULL && event->fd_signal >= 0) + close(event->fd_signal); +diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c +index 33e7cbc..04b472d 100644 +--- a/src/tmpfiles/tmpfiles.c ++++ b/src/tmpfiles/tmpfiles.c +@@ -217,19 +217,16 @@ static bool unix_socket_alive(const char *fn) { + } + + static int dir_is_mount_point(DIR *d, const char *subdir) { +- struct file_handle *h; ++ union file_handle_union h = { .handle.handle_bytes = MAX_HANDLE_SZ }; + int mount_id_parent, mount_id; + int r_p, r; + +- h = alloca(MAX_HANDLE_SZ); +- +- h->handle_bytes = MAX_HANDLE_SZ; +- r_p = name_to_handle_at(dirfd(d), ".", h, &mount_id_parent, 0); ++ r_p = name_to_handle_at(dirfd(d), ".", &h.handle, &mount_id_parent, 0); + if (r_p < 0) + r_p = -errno; + +- h->handle_bytes = MAX_HANDLE_SZ; +- r = name_to_handle_at(dirfd(d), subdir, h, &mount_id, 0); ++ h.handle.handle_bytes = MAX_HANDLE_SZ; ++ r = name_to_handle_at(dirfd(d), subdir, &h.handle, &mount_id, 0); + if (r < 0) + r = -errno; + +diff --git a/src/tty-ask-password-agent/tty-ask-password-agent.c b/src/tty-ask-password-agent/tty-ask-password-agent.c +index 1d067af..3203474 100644 +--- a/src/tty-ask-password-agent/tty-ask-password-agent.c ++++ b/src/tty-ask-password-agent/tty-ask-password-agent.c +@@ -432,7 +432,7 @@ static int wall_tty_block(void) { + + r = get_ctty_devnr(0, &devnr); + if (r < 0) +- return -r; ++ return r; + + if (asprintf(&p, "/run/systemd/ask-password-block/%u:%u", major(devnr), minor(devnr)) < 0) + return -ENOMEM; +diff --git a/src/udev/accelerometer/accelerometer.c b/src/udev/accelerometer/accelerometer.c +index 925d38d..32adf27 100644 +--- a/src/udev/accelerometer/accelerometer.c ++++ b/src/udev/accelerometer/accelerometer.c +@@ -180,7 +180,7 @@ get_prev_orientation(struct udev_device *dev) + return string_to_orientation(value); + } + +-#define SET_AXIS(axis, code_) if (ev[i].code == code_) { if (got_##axis == 0) { axis = ev[i].value; got_##axis = true; } } ++#define READ_AXIS(axis, var) { memzero(&abs_info, sizeof(abs_info)); r = ioctl(fd, EVIOCGABS(axis), &abs_info); if (r < 0) return; var = abs_info.value; } + + /* accelerometers */ + static void test_orientation(struct udev *udev, +@@ -189,10 +189,9 @@ static void test_orientation(struct udev *udev, + { + OrientationUp old, new; + _cleanup_close_ int fd = -1; +- struct input_event ev[64]; +- bool got_syn = false; +- bool got_x = false, got_y = false, got_z = false; ++ struct input_absinfo abs_info; + int x = 0, y = 0, z = 0; ++ int r; + char text[64]; + + old = get_prev_orientation(dev); +@@ -201,30 +200,10 @@ static void test_orientation(struct udev *udev, + if (fd < 0) + return; + +- while (1) { +- int i, r; +- +- r = read(fd, ev, sizeof(struct input_event) * 64); +- +- if (r < (int) sizeof(struct input_event)) +- return; +- +- for (i = 0; i < r / (int) sizeof(struct input_event); i++) { +- if (got_syn) { +- if (ev[i].type == EV_ABS) { +- SET_AXIS(x, ABS_X); +- SET_AXIS(y, ABS_Y); +- SET_AXIS(z, ABS_Z); +- } +- } +- if (ev[i].type == EV_SYN && ev[i].code == SYN_REPORT) +- got_syn = true; +- if (got_x && got_y && got_z) +- goto read_dev; +- } +- } ++ READ_AXIS(ABS_X, x); ++ READ_AXIS(ABS_Y, y); ++ READ_AXIS(ABS_Z, z); + +-read_dev: + new = orientation_calc(old, x, y, z); + snprintf(text, sizeof(text), + "ID_INPUT_ACCELEROMETER_ORIENTATION=%s", orientation_to_string(new)); +diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c +index 5bb6b02..b31ad80 100644 +--- a/src/udev/net/link-config.c ++++ b/src/udev/net/link-config.c +@@ -184,7 +184,7 @@ failure: + } + + static bool enable_name_policy(void) { +- _cleanup_free_ char *line; ++ _cleanup_free_ char *line = NULL; + char *w, *state; + int r; + size_t l; +@@ -391,7 +391,9 @@ int link_config_apply(link_config_ctx *ctx, link_config *config, struct udev_dev + case MACPOLICY_PERSISTENT: + if (!mac_is_permanent(device)) { + r = get_mac(device, false, &generated_mac); +- if (r < 0) ++ if (r == -ENOENT) ++ break; ++ else if (r < 0) + return r; + mac = &generated_mac; + } +@@ -399,7 +401,9 @@ int link_config_apply(link_config_ctx *ctx, link_config *config, struct udev_dev + case MACPOLICY_RANDOM: + if (!mac_is_random(device)) { + r = get_mac(device, true, &generated_mac); +- if (r < 0) ++ if (r == -ENOENT) ++ break; ++ else if (r < 0) + return r; + mac = &generated_mac; + } +diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c +index 5998be2..5213a4a 100644 +--- a/src/udev/udev-event.c ++++ b/src/udev/udev-event.c +@@ -771,18 +771,17 @@ static int rename_netif(struct udev_event *event) + log_error("error changing net interface name %s to %s: %s", + oldname, name, strerror(-r)); + else +- print_kmsg("renamed network interface %s to %s", oldname, name); ++ print_kmsg("renamed network interface %s to %s\n", oldname, name); + + return r; + } + +-int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigmask) ++void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigmask) + { + struct udev_device *dev = event->dev; +- int err = 0; + + if (udev_device_get_subsystem(dev) == NULL) +- return -1; ++ return; + + if (streq(udev_device_get_action(dev), "remove")) { + udev_device_read_db(dev, NULL); +@@ -816,9 +815,10 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, + event->name != NULL && !streq(event->name, udev_device_get_sysname(dev))) { + char syspath[UTIL_PATH_SIZE]; + char *pos; ++ int r; + +- err = rename_netif(event); +- if (err == 0) { ++ r = rename_netif(event); ++ if (r >= 0) { + log_debug("renamed netif to '%s'", event->name); + + /* remember old name */ +@@ -881,7 +881,6 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, + udev_device_unref(event->dev_db); + event->dev_db = NULL; + } +- return err; + } + + void udev_event_execute_run(struct udev_event *event, const sigset_t *sigmask) +diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c +index 2630264..17f47f2 100644 +--- a/src/udev/udev-rules.c ++++ b/src/udev/udev-rules.c +@@ -2555,10 +2555,15 @@ int udev_rules_apply_static_dev_perms(struct udev_rules *rules) + struct stat stats; + + /* we assure, that the permissions tokens are sorted before the static token */ ++ + if (mode == 0 && uid == 0 && gid == 0 && tags == NULL) + goto next; + + strscpyl(device_node, sizeof(device_node), "/dev/", rules_str(rules, cur->key.value_off), NULL); ++ if (stat(device_node, &stats) != 0) ++ break; ++ if (!S_ISBLK(stats.st_mode) && !S_ISCHR(stats.st_mode)) ++ break; + + /* export the tags to a directory as symlinks, allowing otherwise dead nodes to be tagged */ + if (tags) { +@@ -2588,11 +2593,6 @@ int udev_rules_apply_static_dev_perms(struct udev_rules *rules) + if (mode == 0 && uid == 0 && gid == 0) + break; + +- if (stat(device_node, &stats) != 0) +- break; +- if (!S_ISBLK(stats.st_mode) && !S_ISCHR(stats.st_mode)) +- break; +- + if (mode == 0) { + if (gid > 0) + mode = 0660; +diff --git a/src/udev/udev.h b/src/udev/udev.h +index 936adfb..62538bc 100644 +--- a/src/udev/udev.h ++++ b/src/udev/udev.h +@@ -84,7 +84,7 @@ int udev_event_apply_subsys_kernel(struct udev_event *event, const char *string, + int udev_event_spawn(struct udev_event *event, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize); +-int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigset); ++void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigset); + void udev_event_execute_run(struct udev_event *event, const sigset_t *sigset); + int udev_build_argv(struct udev *udev, char *cmd, int *argc, char *argv[]); + +diff --git a/src/udev/udevadm-test.c b/src/udev/udevadm-test.c +index 6cd311b..6a2f548 100644 +--- a/src/udev/udevadm-test.c ++++ b/src/udev/udevadm-test.c +@@ -43,7 +43,6 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) + _cleanup_udev_device_unref_ struct udev_device *dev = NULL; + _cleanup_udev_event_unref_ struct udev_event *event = NULL; + sigset_t mask, sigmask_orig; +- int err; + int rc = 0, c; + + static const struct option options[] = { +@@ -139,18 +138,16 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) + goto out; + } + +- err = udev_event_execute_rules(event, rules, &sigmask_orig); ++ udev_event_execute_rules(event, rules, &sigmask_orig); + + udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) + printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry)); + +- if (err == 0) { +- udev_list_entry_foreach(entry, udev_list_get_entry(&event->run_list)) { +- char program[UTIL_PATH_SIZE]; ++ udev_list_entry_foreach(entry, udev_list_get_entry(&event->run_list)) { ++ char program[UTIL_PATH_SIZE]; + +- udev_event_apply_format(event, udev_list_entry_get_name(entry), program, sizeof(program)); +- printf("run: '%s'\n", program); +- } ++ udev_event_apply_format(event, udev_list_entry_get_name(entry), program, sizeof(program)); ++ printf("run: '%s'\n", program); + } + out: + if (event != NULL && event->fd_signal >= 0) +diff --git a/src/udev/udevd.c b/src/udev/udevd.c +index f21c227..93afca1 100644 +--- a/src/udev/udevd.c ++++ b/src/udev/udevd.c +@@ -288,10 +288,9 @@ static void worker_new(struct event *event) + udev_event->exec_delay = exec_delay; + + /* apply rules, create node, symlinks */ +- err = udev_event_execute_rules(udev_event, rules, &sigmask_orig); ++ udev_event_execute_rules(udev_event, rules, &sigmask_orig); + +- if (err == 0) +- udev_event_execute_run(udev_event, &sigmask_orig); ++ udev_event_execute_run(udev_event, &sigmask_orig); + + /* apply/restore inotify watch */ + if (err == 0 && udev_event->inotify_watch) { +diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c +index 0f2b706..645b1e6 100644 +--- a/src/vconsole/vconsole-setup.c ++++ b/src/vconsole/vconsole-setup.c +@@ -180,6 +180,10 @@ static int font_load(const char *vc, const char *font, const char *map, const ch + */ + static void font_copy_to_all_vcs(int fd) { + struct vt_stat vcs = {}; ++ unsigned char map8[E_TABSZ]; ++ unsigned short map16[E_TABSZ]; ++ struct unimapdesc unimapd; ++ struct unipair unipairs[USHRT_MAX]; + int i, r; + + /* get active, and 16 bit mask of used VT numbers */ +@@ -209,17 +213,35 @@ static void font_copy_to_all_vcs(int fd) { + cfo.op = KD_FONT_OP_COPY; + cfo.height = vcs.v_active-1; /* tty1 == index 0 */ + ioctl(vcfd, KDFONTOP, &cfo); ++ ++ /* copy map of 8bit chars */ ++ if (ioctl(fd, GIO_SCRNMAP, map8) >= 0) ++ ioctl(vcfd, PIO_SCRNMAP, map8); ++ ++ /* copy map of 8bit chars -> 16bit Unicode values */ ++ if (ioctl(fd, GIO_UNISCRNMAP, map16) >= 0) ++ ioctl(vcfd, PIO_UNISCRNMAP, map16); ++ ++ /* copy unicode translation table */ ++ /* unimapd is a ushort count and a pointer to an ++ array of struct unipair { ushort, ushort } */ ++ unimapd.entries = unipairs; ++ unimapd.entry_ct = USHRT_MAX; ++ if (ioctl(fd, GIO_UNIMAP, &unimapd) >= 0) { ++ struct unimapinit adv = { 0, 0, 0 }; ++ ++ ioctl(vcfd, PIO_UNIMAPCLR, &adv); ++ ioctl(vcfd, PIO_UNIMAP, &unimapd); ++ } + } + } + + int main(int argc, char **argv) { + const char *vc; +- char *vc_keymap = NULL; +- char *vc_keymap_toggle = NULL; +- char *vc_font = NULL; +- char *vc_font_map = NULL; +- char *vc_font_unimap = NULL; +- int fd = -1; ++ _cleanup_free_ char ++ *vc_keymap = NULL, *vc_keymap_toggle = NULL, ++ *vc_font = NULL, *vc_font_map = NULL, *vc_font_unimap = NULL; ++ _cleanup_close_ int fd = -1; + bool utf8; + pid_t font_pid = 0, keymap_pid = 0; + bool font_copy = false; +@@ -241,12 +263,12 @@ int main(int argc, char **argv) { + fd = open_terminal(vc, O_RDWR|O_CLOEXEC); + if (fd < 0) { + log_error("Failed to open %s: %m", vc); +- goto finish; ++ return EXIT_FAILURE; + } + + if (!is_vconsole(fd)) { + log_error("Device %s is not a virtual console.", vc); +- goto finish; ++ return EXIT_FAILURE; + } + + utf8 = is_locale_utf8(); +@@ -281,27 +303,27 @@ int main(int argc, char **argv) { + else + disable_utf8(fd); + +- r = EXIT_FAILURE; +- if (keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, &keymap_pid) >= 0 && +- font_load(vc, vc_font, vc_font_map, vc_font_unimap, &font_pid) >= 0) +- r = EXIT_SUCCESS; +- +-finish: +- if (keymap_pid > 0) +- wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid); ++ r = font_load(vc, vc_font, vc_font_map, vc_font_unimap, &font_pid); ++ if (r < 0) { ++ log_error("Failed to start " KBD_SETFONT ": %s", strerror(-r)); ++ return EXIT_FAILURE; ++ } + +- if (font_pid > 0) { ++ if (font_pid > 0) + wait_for_terminate_and_warn(KBD_SETFONT, font_pid); +- if (font_copy) +- font_copy_to_all_vcs(fd); ++ ++ r = keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, &keymap_pid); ++ if (r < 0) { ++ log_error("Failed to start " KBD_LOADKEYS ": %s", strerror(-r)); ++ return EXIT_FAILURE; + } + +- free(vc_keymap); +- free(vc_font); +- free(vc_font_map); +- free(vc_font_unimap); ++ if (keymap_pid > 0) ++ wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid); + +- safe_close(fd); ++ /* Only copy the font when we started setfont successfully */ ++ if (font_copy && font_pid > 0) ++ font_copy_to_all_vcs(fd); + +- return r; ++ return EXIT_SUCCESS; + } +diff --git a/tmpfiles.d/systemd.conf b/tmpfiles.d/systemd.conf +index 7c6d6b9..c470045 100644 +--- a/tmpfiles.d/systemd.conf ++++ b/tmpfiles.d/systemd.conf +@@ -23,6 +23,6 @@ d /run/systemd/machines 0755 root root - + d /run/systemd/shutdown 0755 root root - + + m /var/log/journal 2755 root systemd-journal - - +-m /var/log/journal/%m 2755 root systemd-journal - - ++Z /var/log/journal/%m 2755 root systemd-journal - - + m /run/log/journal 2755 root systemd-journal - - +-m /run/log/journal/%m 2755 root systemd-journal - - ++Z /run/log/journal/%m 2755 root systemd-journal - - diff --git a/units/console-getty.service.m4.in b/units/console-getty.service.m4.in index 8ac51a4..cae9fb5 100644 --- a/units/console-getty.service.m4.in @@ -294,17 +2596,20 @@ index 552ef89..af3915f 100644 ExecStart=-/sbin/sulogin ExecStopPost=-@SYSTEMCTL@ --fail --no-block default diff --git a/units/serial-getty@.service.m4 b/units/serial-getty@.service.m4 -index 4ac51e7..86a3b59 100644 +index 4ac51e7..96daa5c 100644 --- a/units/serial-getty@.service.m4 +++ b/units/serial-getty@.service.m4 -@@ -22,7 +22,6 @@ Before=getty.target +@@ -22,10 +22,8 @@ Before=getty.target IgnoreOnIsolate=yes [Service] -ExecStart=-/sbin/agetty --keep-baud 115200,38400,9600 %I $TERM Type=idle Restart=always - RestartSec=0 +-RestartSec=0 + UtmpIdentifier=%I + TTYPath=/dev/%I + TTYReset=yes diff --git a/units/sysinit.target b/units/sysinit.target index 8f4fb8f..e0f0147 100644 --- a/units/sysinit.target @@ -354,6 +2659,18 @@ index de93879..c9a49f3 100644 +# journald to stop logging (see +# https://bugs.freedesktop.org/show_bug.cgi?id=56043). +X-RestartIfChanged=no +diff --git a/units/systemd-nspawn@.service.in b/units/systemd-nspawn@.service.in +index ff36e90..e373628 100644 +--- a/units/systemd-nspawn@.service.in ++++ b/units/systemd-nspawn@.service.in +@@ -11,6 +11,7 @@ Documentation=man:systemd-nspawn(1) + + [Service] + ExecStart=@bindir@/systemd-nspawn --quiet --keep-unit --boot --link-journal=guest --directory=/var/lib/container/%i ++KillMode=mixed + Type=notify + + [Install] diff --git a/units/systemd-random-seed.service.in b/units/systemd-random-seed.service.in index 1879b2f..9b895b9 100644 --- a/units/systemd-random-seed.service.in From 04ec038e892139ba9df3e5a435e8a7b0db2ca805 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 12 Aug 2014 02:33:30 +0200 Subject: [PATCH 009/789] Containers: Fix reboot and poweroff Previously "machinectl reboot/poweroff" brutally killed the container, as did "systemctl stop/restart". And reboot didn't actually work. Now everything is fine. --- nixos/modules/virtualisation/containers.nix | 39 +++++++++++++++------ 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix index d0d04d9a1e5..9d1817b82f5 100644 --- a/nixos/modules/virtualisation/containers.nix +++ b/nixos/modules/virtualisation/containers.nix @@ -168,6 +168,9 @@ in preStart = '' + # Clean up existing machined registration. + machinectl terminate "$INSTANCE" 2> /dev/null || true + mkdir -p -m 0755 $root/var/lib # Create a named pipe to get a signal when the container @@ -203,6 +206,7 @@ in fi ''} + EXIT_ON_REBOOT=1 \ exec ${config.systemd.package}/bin/systemd-nspawn \ --keep-unit \ -M "$INSTANCE" -D "$root" $extraFlags \ @@ -240,23 +244,38 @@ in preStop = '' - machinectl poweroff "$INSTANCE" + machinectl poweroff "$INSTANCE" || true ''; restartIfChanged = false; #reloadIfChanged = true; # FIXME - serviceConfig.ExecReload = pkgs.writeScript "reload-container" - '' - #! ${pkgs.stdenv.shell} -e - SYSTEM_PATH=/nix/var/nix/profiles/system - echo $SYSTEM_PATH/bin/switch-to-configuration test | \ - ${pkgs.socat}/bin/socat unix:$root/var/lib/run-command.socket - - ''; + serviceConfig = { + ExecReload = pkgs.writeScript "reload-container" + '' + #! ${pkgs.stdenv.shell} -e + SYSTEM_PATH=/nix/var/nix/profiles/system + echo $SYSTEM_PATH/bin/switch-to-configuration test | \ + ${pkgs.socat}/bin/socat unix:$root/var/lib/run-command.socket - + ''; - serviceConfig.SyslogIdentifier = "container %i"; + SyslogIdentifier = "container %i"; - serviceConfig.EnvironmentFile = "-/etc/containers/%i.conf"; + EnvironmentFile = "-/etc/containers/%i.conf"; + + # Note that on reboot, systemd-nspawn returns 10, so this + # unit will be restarted. On poweroff, it returns 0, so the + # unit won't be restarted. + Restart = "on-failure"; + + # Hack: we don't want to kill systemd-nspawn, since we call + # "machinectl poweroff" in preStop to shut down the + # container cleanly. But systemd requires sending a signal + # (at least if we want remaining processes to be killed + # after the timeout). So send an ignored signal. + KillMode = "mixed"; + KillSignal = "WINCH"; + }; }; # Generate a configuration file in /etc/containers for each From b99af5579ef3c132acade1f2f4e420ca3bb51abd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 12 Aug 2014 02:51:20 +0200 Subject: [PATCH 010/789] Containers: Don't remount / --- nixos/modules/system/boot/stage-2-init.sh | 4 +++- nixos/modules/virtualisation/container-config.nix | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/stage-2-init.sh b/nixos/modules/system/boot/stage-2-init.sh index fcefdfa88a3..6fff776f858 100644 --- a/nixos/modules/system/boot/stage-2-init.sh +++ b/nixos/modules/system/boot/stage-2-init.sh @@ -29,7 +29,9 @@ setPath "@path@" # Normally, stage 1 mounts the root filesystem read/writable. # However, in some environments, stage 2 is executed directly, and the # root is read-only. So make it writable here. -mount -n -o remount,rw none / +if [ "$container" != systemd-nspawn ]; then + mount -n -o remount,rw none / +fi # Likewise, stage 1 mounts /proc, /dev and /sys, so if we don't have a diff --git a/nixos/modules/virtualisation/container-config.nix b/nixos/modules/virtualisation/container-config.nix index b81f97f2b4e..84e3aa28352 100644 --- a/nixos/modules/virtualisation/container-config.nix +++ b/nixos/modules/virtualisation/container-config.nix @@ -89,6 +89,8 @@ with lib; restartIfChanged = false; }; + systemd.services.systemd-remount-fs.enable = false; + }; } From 878b738333fe76cf942f0d3a07068b7387f91d7d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 12 Aug 2014 03:05:27 +0200 Subject: [PATCH 011/789] Containers: Clean up veth interfaces --- nixos/modules/virtualisation/containers.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix index 9d1817b82f5..a7256148f08 100644 --- a/nixos/modules/virtualisation/containers.nix +++ b/nixos/modules/virtualisation/containers.nix @@ -168,9 +168,13 @@ in preStart = '' - # Clean up existing machined registration. + # Clean up existing machined registration and interfaces. machinectl terminate "$INSTANCE" 2> /dev/null || true + if [ "$PRIVATE_NETWORK" = 1 ]; then + ip link del dev "ve-$INSTANCE" 2> /dev/null || true + fi + mkdir -p -m 0755 $root/var/lib # Create a named pipe to get a signal when the container From ab402dc1a49579785c690238ed4fce72dd707b30 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 Aug 2014 00:47:24 +0200 Subject: [PATCH 012/789] systemd: Apply a patch that improves systemd-nspawn startup notification Systemd-nspawn now sends startup notification *after* it has forked the container init process and performed initialisation (such as creating veth network interfaces). --- pkgs/os-specific/linux/systemd/fixes.patch | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/systemd/fixes.patch b/pkgs/os-specific/linux/systemd/fixes.patch index 70ad195a032..566d80bfba9 100644 --- a/pkgs/os-specific/linux/systemd/fixes.patch +++ b/pkgs/os-specific/linux/systemd/fixes.patch @@ -1427,7 +1427,7 @@ index 9473105..154a335 100644 if (!isempty(service)) { m->service = strdup(service); diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c -index 9a9ed9d..4efa5b7 100644 +index 9a9ed9d..c3e6d23 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -769,6 +769,15 @@ static int setup_resolv_conf(const char *dest) { @@ -1483,7 +1483,16 @@ index 9a9ed9d..4efa5b7 100644 } } else { char template[] = "/tmp/nspawn-root-XXXXXX"; -@@ -2966,7 +2974,9 @@ int main(int argc, char *argv[]) { +@@ -2748,8 +2756,6 @@ int main(int argc, char *argv[]) { + goto finish; + } + +- sd_notify(0, "READY=1"); +- + assert_se(sigemptyset(&mask) == 0); + sigset_add_many(&mask, SIGCHLD, SIGWINCH, SIGTERM, SIGINT, -1); + assert_se(sigprocmask(SIG_BLOCK, &mask, NULL) == 0); +@@ -2966,7 +2972,9 @@ int main(int argc, char *argv[]) { } if (!sd_id128_equal(arg_uuid, SD_ID128_NULL)) { @@ -1494,6 +1503,15 @@ index 9a9ed9d..4efa5b7 100644 log_oom(); goto child_fail; } +@@ -3086,6 +3094,8 @@ int main(int argc, char *argv[]) { + if (r < 0) + goto finish; + ++ sd_notify(0, "READY=1"); ++ + /* Notify the child that the parent is ready with all + * its setup, and thtat the child can now hand over + * control to the code to run inside the container. */ @@ -3136,6 +3146,10 @@ int main(int argc, char *argv[]) { if (!arg_quiet) From 330fadb7060074bd5c38e5dcefc394abaf8d6a09 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 Aug 2014 00:45:36 +0200 Subject: [PATCH 013/789] Containers: Use systemd-nspawn startup notification This prevents the container unit startup from hanging until timeout if systemd-nspawn fails. --- nixos/modules/virtualisation/containers.nix | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix index a7256148f08..6933fbaa9ee 100644 --- a/nixos/modules/virtualisation/containers.nix +++ b/nixos/modules/virtualisation/containers.nix @@ -228,12 +228,6 @@ in postStart = '' - # This blocks until the container-startup-done service - # writes something to this pipe. FIXME: it also hangs - # until the start timeout expires if systemd-nspawn exits. - read x < $root/var/lib/startup-done - rm -f $root/var/lib/startup-done - if [ "$PRIVATE_NETWORK" = 1 ]; then ifaceHost=ve-$INSTANCE ip link set dev $ifaceHost up @@ -244,6 +238,12 @@ in ip route add $LOCAL_ADDRESS dev $ifaceHost fi fi + + # This blocks until the container-startup-done service + # writes something to this pipe. FIXME: it also hangs + # until the start timeout expires if systemd-nspawn exits. + read x < $root/var/lib/startup-done + rm -f $root/var/lib/startup-done ''; preStop = @@ -267,6 +267,8 @@ in EnvironmentFile = "-/etc/containers/%i.conf"; + Type = "notify"; + # Note that on reboot, systemd-nspawn returns 10, so this # unit will be restarted. On poweroff, it returns 0, so the # unit won't be restarted. From f199e115d2d9acf2bee330c325a0fe19cf9d8235 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Wed, 13 Aug 2014 21:50:18 +0200 Subject: [PATCH 014/789] Enable parallel building for GCC. Even if using profiledbootstrap. This was unsafe before 4.8, and then the documentation was not fixed on time. The documentation got fixed here: https://github.com/gcc-mirror/gcc/commit/c763997f340ec1fab37ad538b57afdad4f4bf747 But the actual code was already fixed here: https://github.com/gcc-mirror/gcc/commit/5d2fca09d543d4b42b99fe20f412efb78cc50ec3 So this is safe both for GCC 4.8 and GCC 4.9. --- pkgs/development/compilers/gcc/4.8/default.nix | 5 +---- pkgs/development/compilers/gcc/4.9/default.nix | 5 +---- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 2fb8f9d73b5..7b73559ba9c 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -59,10 +59,7 @@ let version = "4.8.3"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; - /* gccinstall.info says that "parallel make is currently not supported since - collisions in profile collecting may occur". - */ - enableParallelBuilding = !profiledCompiler; + enableParallelBuilding = true; patches = [] ++ optional enableParallelBuilding ./parallel-bconfig.patch diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index 8b185d00bcc..f61e6b4445a 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -57,10 +57,7 @@ let version = "4.9.1"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; - /* gccinstall.info says that "parallel make is currently not supported since - collisions in profile collecting may occur". - */ - enableParallelBuilding = !profiledCompiler; + enableParallelBuilding = true; patches = [ ] ++ optional enableParallelBuilding ./parallel-bconfig.patch From 59291fdbf4e26a2b09a1d39a0582a874d78d6797 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Thu, 14 Aug 2014 00:20:15 +0200 Subject: [PATCH 015/789] Get rid of bootstrap-tools dependency from xz (and therefore stdenv) 0769fc5b77eb76c6a794187f173c48f912fc837c broke this by setting CONFIG_SHELL. --- pkgs/tools/compression/xz/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/tools/compression/xz/default.nix b/pkgs/tools/compression/xz/default.nix index b644f46dff8..e1d7c26fa43 100644 --- a/pkgs/tools/compression/xz/default.nix +++ b/pkgs/tools/compression/xz/default.nix @@ -10,6 +10,9 @@ stdenv.mkDerivation rec { doCheck = true; + # In stdenv-linux, prevent a dependency on bootstrap-tools. + preHook = "unset CONFIG_SHELL"; + meta = { homepage = http://tukaani.org/xz/; description = "XZ, general-purpose data compression software, successor of LZMA"; From 36bef2b26731a9580260fd24d18c90dbecd5eb22 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Thu, 14 Aug 2014 22:59:24 +0200 Subject: [PATCH 016/789] gobject-introspection: refer to shlibs with absolute paths in typelibs After this, LD_LIBRARY_PATH should not be required anymore. The patch has been applied only for .la files, so there may be some other cases missing. --- .../newsreaders/liferea/default.nix | 1 - .../virtualization/virt-manager/default.nix | 1 - .../gnome-3/3.10/apps/gedit/default.nix | 1 - .../3.10/apps/gnome-documents/default.nix | 8 +----- .../gnome-3/3.10/apps/gnome-music/default.nix | 10 +------- .../gnome-3/3.12/core/gnome-shell/default.nix | 1 - .../3.12/misc/gnome-tweak-tool/default.nix | 1 - .../gnome-3/3.12/misc/gpaste/default.nix | 3 +-- .../absolute_shlib_path.patch | 25 +++++++++++++++++++ .../gobject-introspection/default.nix | 2 ++ .../development/tools/misc/d-feet/default.nix | 1 - 11 files changed, 30 insertions(+), 24 deletions(-) create mode 100644 pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix index e38d5188dc2..a5216b2902a 100644 --- a/pkgs/applications/networking/newsreaders/liferea/default.nix +++ b/pkgs/applications/networking/newsreaders/liferea/default.nix @@ -33,7 +33,6 @@ stdenv.mkDerivation rec { for f in "$out"/bin/*; do wrapProgram "$f" \ --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pygobject3})" \ - --prefix LD_LIBRARY_PATH : "${gnome3.libgnome_keyring}/lib" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules:${glib_networking}/lib/gio/modules" \ --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_icon_theme}/share:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH" diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix index 9df6967704a..08d53d83eed 100644 --- a/pkgs/applications/virtualization/virt-manager/default.nix +++ b/pkgs/applications/virtualization/virt-manager/default.nix @@ -51,7 +51,6 @@ buildPythonPackage rec { --prefix GI_TYPELIB_PATH : $GI_TYPELIB_PATH \ --prefix GIO_EXTRA_MODULES : "${dconf}/lib/gio/modules" \ --prefix GSETTINGS_SCHEMA_DIR : $out/share/glib-2.0/schemas \ - --prefix LD_LIBRARY_PATH : ${gtk3}/lib/:${libvirt-glib}/lib/:${vte}/lib:${gtkvnc}/lib${optionalString spiceSupport ":${spice_gtk}/lib"} \ --prefix XDG_DATA_DIRS : "$out/share:${gsettings_desktop_schemas}/share:${gtk3}/share:$GSETTINGS_SCHEMAS_PATH:\$XDG_DATA_DIRS" done diff --git a/pkgs/desktops/gnome-3/3.10/apps/gedit/default.nix b/pkgs/desktops/gnome-3/3.10/apps/gedit/default.nix index 84a77e5a024..6b9a69c738d 100644 --- a/pkgs/desktops/gnome-3/3.10/apps/gedit/default.nix +++ b/pkgs/desktops/gnome-3/3.10/apps/gedit/default.nix @@ -25,7 +25,6 @@ stdenv.mkDerivation rec { wrapProgram "$out/bin/gedit" \ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH : "${gnome3.libpeas}/lib:${gnome3.gtksourceview}/lib" \ --prefix XDG_DATA_DIRS : "${gnome3.gtksourceview}/share:${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" ''; diff --git a/pkgs/desktops/gnome-3/3.10/apps/gnome-documents/default.nix b/pkgs/desktops/gnome-3/3.10/apps/gnome-documents/default.nix index b393bb43931..a8c84d6a769 100644 --- a/pkgs/desktops/gnome-3/3.10/apps/gnome-documents/default.nix +++ b/pkgs/desktops/gnome-3/3.10/apps/gnome-documents/default.nix @@ -28,17 +28,11 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - preFixup = - let - libPath = stdenv.lib.makeLibraryPath - [ evince gtk3 gnome3.tracker gnome3.gnome_online_accounts ]; - in - '' + preFixup = '' substituteInPlace $out/bin/gnome-documents --replace gapplication "${glib}/bin/gapplication" wrapProgram "$out/bin/gnome-documents" \ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH ":" "${libPath}" \ --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \ --run "if [ -z \"\$XDG_CACHE_DIR\" ]; then XDG_CACHE_DIR=\$HOME/.cache; fi; if [ -w \"\$XDG_CACHE_DIR/..\" ]; then mkdir -p \"\$XDG_CACHE_DIR/gnome-documents\"; fi" rm $out/share/icons/hicolor/icon-theme.cache diff --git a/pkgs/desktops/gnome-3/3.10/apps/gnome-music/default.nix b/pkgs/desktops/gnome-3/3.10/apps/gnome-music/default.nix index b8d2bbc79ef..31d521e8c30 100644 --- a/pkgs/desktops/gnome-3/3.10/apps/gnome-music/default.nix +++ b/pkgs/desktops/gnome-3/3.10/apps/gnome-music/default.nix @@ -24,19 +24,11 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - preFixup = - let - libPath = stdenv.lib.makeLibraryPath - [ glib gtk3 libnotify tracker gnome3.grilo cairo - gst_all_1.gstreamer gst_all_1.gst-plugins-base - gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad ]; - in - '' + preFixup = '' wrapProgram "$out/bin/gnome-music" \ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH : "${libPath}" \ --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \ --prefix GRL_PLUGIN_PATH : "${gnome3.grilo-plugins}/lib/grilo-0.2" \ --prefix PYTHONPATH : "$PYTHONPATH" diff --git a/pkgs/desktops/gnome-3/3.12/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/3.12/core/gnome-shell/default.nix index dbb19f77d21..6f6816efa5b 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gnome-shell/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gnome-shell/default.nix @@ -35,7 +35,6 @@ stdenv.mkDerivation rec { wrapProgram "$out/bin/gnome-shell" \ --prefix PATH : "${unzip}/bin" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH : "${accountsservice}/lib:${ibus}/lib:${gdm}/lib" \ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix XDG_DATA_DIRS : "${gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" diff --git a/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix b/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix index 2eccb9a32cf..1a48d6529a2 100644 --- a/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix +++ b/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix @@ -30,7 +30,6 @@ stdenv.mkDerivation rec { --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH ":" "${libsoup}/lib:${gnome3.gnome_desktop}/lib:${libnotify}/lib:${gtk3}/lib:${atk}/lib" \ --prefix PYTHONPATH : "$PYTHONPATH:$(toPythonPath $out)" ''; diff --git a/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix b/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix index 56a5f18544f..c303ccdf51e 100644 --- a/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix +++ b/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix @@ -30,8 +30,7 @@ stdenv.mkDerivation rec { for i in $out/libexec/gpaste/*; do wrapProgram $i \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \ - --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH : "${libPath}" + --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" done ''; diff --git a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch new file mode 100644 index 00000000000..04bcc42a032 --- /dev/null +++ b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch @@ -0,0 +1,25 @@ +--- ./giscanner/utils.py.orig 2014-08-14 22:05:05.055334080 +0200 ++++ ./giscanner/utils.py 2014-08-14 22:05:24.687497334 +0200 +@@ -110,17 +110,11 @@ + if dlname is None: + return None + +- # Darwin uses absolute paths where possible; since the libtool files never +- # contain absolute paths, use the libdir field +- if platform.system() == 'Darwin': +- dlbasename = os.path.basename(dlname) +- libdir = _extract_libdir_field(la_file) +- if libdir is None: +- return dlbasename +- return libdir + '/' + dlbasename +- # From the comments in extract_libtool(), older libtools had +- # a path rather than the raw dlname +- return os.path.basename(dlname) ++ dlbasename = os.path.basename(dlname) ++ libdir = _extract_libdir_field(la_file) ++ if libdir is None: ++ return dlbasename ++ return libdir + '/' + dlbasename + + + def extract_libtool(la_file): diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix index 7686fb30838..4b7ec1f4116 100644 --- a/pkgs/development/libraries/gobject-introspection/default.nix +++ b/pkgs/development/libraries/gobject-introspection/default.nix @@ -29,6 +29,8 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; + patches = [ ./absolute_shlib_path.patch ]; + meta = with stdenv.lib; { description = "A middleware layer between C libraries and language bindings"; homepage = http://live.gnome.org/GObjectIntrospection; diff --git a/pkgs/development/tools/misc/d-feet/default.nix b/pkgs/development/tools/misc/d-feet/default.nix index 852c1b74219..df5fdbfab5a 100644 --- a/pkgs/development/tools/misc/d-feet/default.nix +++ b/pkgs/development/tools/misc/d-feet/default.nix @@ -26,7 +26,6 @@ stdenv.mkDerivation rec { wrapProgram $out/bin/d-feet \ --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pygobject3})" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH : "${gtk3}/lib:${atk}/lib:${libwnck3}/lib" \ --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$out/share" rm $out/share/icons/hicolor/icon-theme.cache From 1a75958be52f5c2f062ace0935c1a2d43c8f7f55 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 15 Aug 2014 01:33:20 +0200 Subject: [PATCH 017/789] Unify mutableUsers = { true, false } MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit With mutableUsers = true, we now ensure that all users and groups that were created declaratively, are updated or removed appropriately. Thus, adding a user to users.extraUsers and then removing it now causes the acoount to be removed from /etc/passwd. Thus user/group management is fully congruent except that users and groups that were created imperatively (via useradd/groupadd) are not touched. We distinguish between declarative and imperative users/groups by tracking the former in /var/lib/nixos/declarative-{groups,users}. With mutableUsers = false, you are now no longer required to specify UIDs/GIDs for all users. The handling of mutableUsers = true/false is the same code path; the only difference is that the "false" mode ignores the existing contents of /etc/{passwd,group}. The attribute ‘createUser’ is gone. It doesn't really make sense to specify users that shouldn't be created. --- nixos/doc/manual/configuration.xml | 5 - nixos/modules/config/update-users-groups.pl | 239 ++++++++++++++++++++ nixos/modules/config/users-groups.nix | 196 +++------------- 3 files changed, 266 insertions(+), 174 deletions(-) create mode 100644 nixos/modules/config/update-users-groups.pl diff --git a/nixos/doc/manual/configuration.xml b/nixos/doc/manual/configuration.xml index 051f0fb8c1e..ce7ccf6cc5e 100644 --- a/nixos/doc/manual/configuration.xml +++ b/nixos/doc/manual/configuration.xml @@ -1072,11 +1072,6 @@ users.extraGroups.students.gid = 1000; As with users, the group ID (gid) is optional and will be assigned automatically if it’s missing. -Currently declarative user management is not perfect: -nixos-rebuild does not know how to realise certain -configuration changes. This includes removing a user or group, and -removing group membership from a user. - In the imperative style, users and groups are managed by commands such as useradd, groupmod and so on. For instance, to create a user diff --git a/nixos/modules/config/update-users-groups.pl b/nixos/modules/config/update-users-groups.pl new file mode 100644 index 00000000000..2b9bfb764a8 --- /dev/null +++ b/nixos/modules/config/update-users-groups.pl @@ -0,0 +1,239 @@ +use strict; +use File::Path qw(make_path); +use File::Slurp; +use JSON; + +make_path("/var/lib/nixos", { mode => 0755 }); + + +# Functions for allocating free GIDs/UIDs. FIXME: respect ID ranges in +# /etc/login.defs. +sub allocId { + my ($used, $idMin, $idMax, $up, $getid) = @_; + my $id = $up ? $idMin : $idMax; + while ($id >= $idMin && $id <= $idMax) { + if (!$used->{$id} && !defined &$getid($id)) { + $used->{$id} = 1; + return $id; + } + $used->{$id} = 1; + if ($up) { $id++; } else { $id--; } + } + die "$0: out of free UIDs or GIDs\n"; +} + +my (%gidsUsed, %uidsUsed); + +sub allocGid { + return allocId(\%gidsUsed, 400, 499, 0, sub { my ($gid) = @_; getgrgid($gid) }); +} + +sub allocUid { + my ($isSystemUser) = @_; + my ($min, $max, $up) = $isSystemUser ? (400, 499, 0) : (1000, 29999, 1); + return allocId(\%uidsUsed, $min, $max, $up, sub { my ($uid) = @_; getpwuid($uid) }); +} + + +# Read the declared users/groups. +my $spec = decode_json(read_file($ARGV[0])); + +# Don't allocate UIDs/GIDs that are already in use. +foreach my $g (@{$spec->{groups}}) { + $gidsUsed{$g->{gid}} = 1 if defined $g->{gid}; +} + +foreach my $u (@{$spec->{groups}}) { + $uidsUsed{$u->{u}} = 1 if defined $u->{uid}; +} + +# Read the current /etc/group. +sub parseGroup { + chomp; + my @f = split(':', $_, -4); + my $gid = $f[2] eq "" ? undef : int($f[2]); + $gidsUsed{$gid} = 1 if defined $gid; + return ($f[0], { name => $f[0], password => $f[1], gid => $gid, members => $f[3] }); +} + +my %groupsCur = -f "/etc/group" ? map { parseGroup } read_file("/etc/group") : (); + +# Read the current /etc/passwd. +sub parseUser { + chomp; + my @f = split(':', $_, -7); + my $uid = $f[2] eq "" ? undef : int($f[2]); + $uidsUsed{$uid} = 1 if defined $uid; + return ($f[0], { name => $f[0], fakePassword => $f[1], uid => $uid, + gid => $f[3], description => $f[4], home => $f[5], shell => $f[6] }); +} + +my %usersCur = -f "/etc/passwd" ? map { parseUser } read_file("/etc/passwd") : (); + +# Read the groups that were created declaratively (i.e. not by groups) +# in the past. These must be removed if they are no longer in the +# current spec. +my $declGroupsFile = "/var/lib/nixos/declarative-groups"; +my %declGroups; +$declGroups{$_} = 1 foreach split / /, -e $declGroupsFile ? read_file($declGroupsFile) : ""; + +# Idem for the users. +my $declUsersFile = "/var/lib/nixos/declarative-users"; +my %declUsers; +$declUsers{$_} = 1 foreach split / /, -e $declUsersFile ? read_file($declUsersFile) : ""; + + +# Generate a new /etc/group containing the declared groups. +my %groupsOut; +foreach my $g (@{$spec->{groups}}) { + my $name = $g->{name}; + my $existing = $groupsCur{$name}; + + my %members = map { ($_, 1) } @{$g->{members}}; + + if (defined $existing) { + $g->{gid} = $existing->{gid} if !defined $g->{gid}; + if ($g->{gid} != $existing->{gid}) { + warn "warning: not applying GID change of group ‘$name’\n"; + $g->{gid} = $existing->{gid}; + } + $g->{password} = $existing->{password}; # do we want this? + if ($spec->{mutableUsers}) { + # Merge in non-declarative group members. + foreach my $uname (split /,/, $existing->{members} // "") { + $members{$uname} = 1 if !defined $declUsers{$uname}; + } + } + } else { + $g->{gid} = allocGid if !defined $g->{gid}; + $g->{password} = "x"; + } + + $g->{members} = join ",", sort(keys(%members)); + $groupsOut{$name} = $g; +} + +# Update the persistent list of declarative groups. +write_file($declGroupsFile, join(" ", sort(keys %groupsOut))); + +# Merge in the existing /etc/group. +foreach my $name (keys %groupsCur) { + my $g = $groupsCur{$name}; + next if defined $groupsOut{$name}; + if (!$spec->{mutableUsers} || defined $declGroups{$name}) { + print STDERR "removing group ‘$name’\n"; + } else { + $groupsOut{$name} = $g; + } +} + + +# Rewrite /etc/group. FIXME: acquire lock. +my @lines = map { join(":", $_->{name}, $_->{password}, $_->{gid}, $_->{members}) . "\n" } + (sort { $a->{gid} <=> $b->{gid} } values(%groupsOut)); +write_file("/etc/group.tmp", @lines); +rename("/etc/group.tmp", "/etc/group") or die; +system("nscd --invalidate group"); + +# Generate a new /etc/passwd containing the declared users. +my %usersOut; +foreach my $u (@{$spec->{users}}) { + my $name = $u->{name}; + + # Resolve the gid of the user. + if ($u->{group} =~ /^[0-9]$/) { + $u->{gid} = $u->{group}; + } elsif (defined $groupsOut{$u->{group}}) { + $u->{gid} = $groupsOut{$u->{group}}->{gid} // die; + } else { + warn "warning: user ‘$name’ has unknown group ‘$u->{group}’\n"; + $u->{gid} = 65534; + } + + my $existing = $usersCur{$name}; + if (defined $existing) { + $u->{uid} = $existing->{uid} if !defined $u->{uid}; + if ($u->{uid} != $existing->{uid}) { + warn "warning: not applying UID change of user ‘$name’\n"; + $u->{uid} = $existing->{uid}; + } + } else { + $u->{uid} = allocUid($u->{isSystemUser}) if !defined $u->{uid}; + + # Create a home directory. + if ($u->{createHome}) { + make_path($u->{home}, { mode => 0700 }) if ! -e $u->{home}; + chown $u->{uid}, $u->{gid}, $u->{home}; + } + } + + if (defined $u->{passwordFile}) { + if (-e $u->{passwordFile}) { + $u->{hashedPassword} = read_file($u->{passwordFile}); + chomp $u->{hashedPassword}; + } else { + warn "warning: password file ‘$u->{passwordFile}’ does not exist\n"; + } + } + + $u->{fakePassword} = $existing->{fakePassword} // "x"; + $usersOut{$name} = $u; +} + +# Update the persistent list of declarative users. +write_file($declUsersFile, join(" ", sort(keys %usersOut))); + +# Merge in the existing /etc/passwd. +foreach my $name (keys %usersCur) { + my $u = $usersCur{$name}; + next if defined $usersOut{$name}; + if (!$spec->{mutableUsers} || defined $declUsers{$name}) { + print STDERR "removing user ‘$name’\n"; + } else { + $usersOut{$name} = $u; + } +} + +# Rewrite /etc/passwd. FIXME: acquire lock. +@lines = map { join(":", $_->{name}, $_->{fakePassword}, $_->{uid}, $_->{gid}, $_->{description}, $_->{home}, $_->{shell}) . "\n" } + (sort { $a->{uid} <=> $b->{uid} } (values %usersOut)); +write_file("/etc/passwd.tmp", @lines); +rename("/etc/passwd.tmp", "/etc/passwd") or die; +system("nscd --invalidate passwd"); + + +# Rewrite /etc/shadow to add new accounts or remove dead ones. +my @shadowNew; +my %shadowSeen; + +foreach my $line (-f "/etc/shadow" ? read_file("/etc/shadow") : ()) { + chomp $line; + my ($name, $password, @rest) = split(':', $line, -9); + my $u = $usersOut{$name};; + next if !defined $u; + $password = $u->{hashedPassword} if $u->{hashedPassword} && !$spec->{mutableUsers}; # FIXME + push @shadowNew, join(":", $name, $password, @rest) . "\n"; + $shadowSeen{$name} = 1; +} + +foreach my $u (values %usersOut) { + next if defined $shadowSeen{$u->{name}}; + my $password = "!"; + $password = $u->{hashedPassword} if $u->{hashedPassword}; + # FIXME: set correct value for sp_lstchg. + push @shadowNew, join(":", $u->{name}, $password, "1::::::") . "\n"; +} + +write_file("/etc/shadow.tmp", { perms => 0600 }, @shadowNew); +rename("/etc/shadow.tmp", "/etc/shadow") or die; + + +# Call chpasswd to apply password. FIXME: generate the hashes directly +# and merge into the /etc/shadow updating above. +foreach my $u (@{$spec->{users}}) { + if (defined $u->{password}) { + my $pid = open(PW, "| chpasswd") or die; + print PW "$u->{name}:$u->{password}\n"; + close PW or die "unable to change password of user ‘$u->{name}’: $?\n"; + } +} diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix index 5de81a77342..75d1b6f7ff4 100644 --- a/nixos/modules/config/users-groups.nix +++ b/nixos/modules/config/users-groups.nix @@ -7,9 +7,6 @@ let ids = config.ids; cfg = config.users; - nonUidUsers = filterAttrs (n: u: u.createUser && u.uid == null) cfg.extraUsers; - nonGidGroups = filterAttrs (n: g: g.gid == null) cfg.extraGroups; - passwordDescription = '' The options hashedPassword, password and passwordFile @@ -55,10 +52,8 @@ let type = with types; nullOr int; default = null; description = '' - The account UID. If the option - is false, the UID cannot be null. Otherwise, the UID might be - null, in which case a free UID is picked on activation (by the - useradd command). + The account UID. If the UID is null, a free UID is picked on + activation. ''; }; @@ -67,8 +62,7 @@ let default = false; description = '' Indicates if the user is a system user or not. This option - only has an effect if is - true and is + only has an effect if is , in which case it determines whether the user's UID is allocated in the range for system users (below 500) or in the range for normal users (starting at @@ -152,16 +146,6 @@ let ${passwordDescription} ''; }; - - createUser = mkOption { - type = types.bool; - default = true; - description = '' - Indicates if the user should be created automatically as a local user. - Set this to false if the user for instance is an LDAP user. NixOS will - then not modify any of the basic properties for the user account. - ''; - }; }; config = { @@ -187,10 +171,8 @@ let type = with types; nullOr int; default = null; description = '' - The group GID. If the mutableUsers option - is false, the GID cannot be null. Otherwise, the GID might be - null, in which case a free GID is picked on activation (by the - groupadd command). + The group GID. If the GID is null, a free GID is picked on + activation. ''; }; @@ -211,84 +193,6 @@ let }; - getGroup = gname: - let - groups = mapAttrsToList (n: g: g) ( - filterAttrs (n: g: g.name == gname) cfg.extraGroups - ); - in - if length groups == 1 then head groups - else if groups == [] then throw "Group ${gname} not defined" - else throw "Group ${gname} has multiple definitions"; - - getUser = uname: - let - users = mapAttrsToList (n: u: u) ( - filterAttrs (n: u: u.name == uname) cfg.extraUsers - ); - in - if length users == 1 then head users - else if users == [] then throw "User ${uname} not defined" - else throw "User ${uname} has multiple definitions"; - - mkGroupEntry = gname: - let - g = getGroup gname; - users = mapAttrsToList (n: u: u.name) ( - filterAttrs (n: u: elem g.name u.extraGroups) cfg.extraUsers - ); - in concatStringsSep ":" [ - g.name "x" (toString g.gid) - (concatStringsSep "," (users ++ (filter (u: !(elem u users)) g.members))) - ]; - - mkPasswdEntry = uname: let u = getUser uname; in - concatStringsSep ":" [ - u.name "x" (toString u.uid) - (toString (getGroup u.group).gid) - u.description u.home u.shell - ]; - - sortOn = a: sort (as1: as2: lessThan (getAttr a as1) (getAttr a as2)); - - groupFile = pkgs.writeText "group" ( - concatStringsSep "\n" (map (g: mkGroupEntry g.name) ( - let f = g: g.gid != null; in - sortOn "gid" (filter f (attrValues cfg.extraGroups)) - )) - ); - - passwdFile = pkgs.writeText "passwd" ( - concatStringsSep "\n" (map (u: mkPasswdEntry u.name) ( - let f = u: u.createUser && (u.uid != null); in - sortOn "uid" (filter f (attrValues cfg.extraUsers)) - )) - ); - - # If mutableUsers is true, this script adds all users/groups defined in - # users.extra{Users,Groups} to /etc/{passwd,group} iff there isn't any - # existing user/group with the same name in those files. - # If mutableUsers is false, the /etc/{passwd,group} files will simply be - # replaced with the users/groups defined in the NixOS configuration. - # The merging procedure could certainly be improved, and instead of just - # keeping the lines as-is from /etc/{passwd,group} they could be combined - # in some way with the generated content from the NixOS configuration. - merger = src: pkgs.writeScript "merger" '' - #!${pkgs.bash}/bin/bash - - PATH=${pkgs.gawk}/bin:${pkgs.gnugrep}/bin:$PATH - - ${if !cfg.mutableUsers - then ''cp ${src} $1.tmp'' - else ''awk -F: '{ print "^"$1":.*" }' $1 | egrep -vf - ${src} | cat $1 - > $1.tmp'' - } - - # set mtime to +1, otherwise change might go unnoticed (vipw/vigr only looks at mtime) - touch -m -t $(date -d @$(($(stat -c %Y $1)+1)) +%Y%m%d%H%M.%S) $1.tmp - - mv -f $1.tmp $1 - ''; - idsAreUnique = set: idAttr: !(fold (name: args@{ dup, acc }: let id = builtins.toString (builtins.getAttr idAttr (builtins.getAttr name set)); @@ -302,6 +206,21 @@ let uidsAreUnique = idsAreUnique (filterAttrs (n: u: u.uid != null) cfg.extraUsers) "uid"; gidsAreUnique = idsAreUnique (filterAttrs (n: g: g.gid != null) cfg.extraGroups) "gid"; + spec = builtins.toFile "users-groups.json" (builtins.toJSON { + inherit (cfg) mutableUsers; + users = mapAttrsToList (n: u: + { inherit (u) + name uid group description home shell createHome isSystemUser + password passwordFile hashedPassword; + }) cfg.extraUsers; + groups = mapAttrsToList (n: g: + { inherit (g) name gid; + members = mapAttrsToList (n: u: u.name) ( + filterAttrs (n: u: elem g.name u.extraGroups) cfg.extraUsers + ); + }) cfg.extraGroups; + }); + in { ###### interface @@ -438,67 +357,12 @@ in { grsecurity.gid = ids.gids.grsecurity; }; - system.activationScripts.users = - let - mkhomeUsers = filterAttrs (n: u: u.createHome) cfg.extraUsers; - setpwUsers = filterAttrs (n: u: u.createUser) cfg.extraUsers; - pwFile = u: if !(isNull u.hashedPassword) - then pkgs.writeTextFile { name = "password-file"; text = u.hashedPassword; } - else if !(isNull u.password) - then pkgs.runCommand "password-file" { pw = u.password; } '' - echo -n "$pw" | ${pkgs.mkpasswd}/bin/mkpasswd -s > $out - '' else u.passwordFile; - setpw = n: u: '' - setpw=yes - ${optionalString cfg.mutableUsers '' - test "$(getent shadow '${u.name}' | cut -d: -f2)" != "x" && setpw=no - ''} - if [ "$setpw" == "yes" ]; then - ${if !(isNull (pwFile u)) - then '' - echo -n "${u.name}:" | cat - "${pwFile u}" | \ - ${pkgs.shadow}/sbin/chpasswd -e - '' - else "passwd -l '${u.name}' &>/dev/null" - } - fi - ''; - mkhome = n: u: '' - uid="$(id -u ${u.name})" - gid="$(id -g ${u.name})" - h="${u.home}" - test -a "$h" || mkdir -p "$h" || true - test "$(stat -c %u "$h")" = $uid || chown $uid "$h" || true - test "$(stat -c %g "$h")" = $gid || chgrp $gid "$h" || true - ''; - groupadd = n: g: '' - if [ -z "$(getent group "${g.name}")" ]; then - ${pkgs.shadow}/sbin/groupadd "${g.name}" - fi - ''; - useradd = n: u: '' - if ! id "${u.name}" &>/dev/null; then - ${pkgs.shadow}/sbin/useradd \ - -g "${u.group}" \ - -G "${concatStringsSep "," u.extraGroups}" \ - -s "${u.shell}" \ - -d "${u.home}" \ - ${optionalString u.isSystemUser "--system"} \ - "${u.name}" - echo "${u.name}:x" | ${pkgs.shadow}/sbin/chpasswd -e - fi - ''; - in stringAfter [ "etc" ] '' - touch /etc/group - touch /etc/passwd - VISUAL=${merger groupFile} ${pkgs.shadow}/sbin/vigr &>/dev/null - VISUAL=${merger passwdFile} ${pkgs.shadow}/sbin/vipw &>/dev/null - ${pkgs.shadow}/sbin/grpconv - ${pkgs.shadow}/sbin/pwconv - ${concatStrings (mapAttrsToList groupadd nonGidGroups)} - ${concatStrings (mapAttrsToList useradd nonUidUsers)} - ${concatStrings (mapAttrsToList mkhome mkhomeUsers)} - ${concatStrings (mapAttrsToList setpw setpwUsers)} + system.activationScripts.users = stringAfter [ "etc" ] + '' + ${pkgs.perl}/bin/perl -w \ + -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl \ + -I${pkgs.perlPackages.JSON}/lib/perl5/site_perl \ + ${./update-users-groups.pl} ${spec} ''; # for backwards compatibility @@ -506,13 +370,7 @@ in { assertions = [ { assertion = !cfg.enforceIdUniqueness || (uidsAreUnique && gidsAreUnique); - message = "uids and gids must be unique!"; - } - { assertion = cfg.mutableUsers || (nonUidUsers == {}); - message = "When mutableUsers is false, no uid can be null: ${toString (attrNames nonUidUsers)}"; - } - { assertion = cfg.mutableUsers || (nonGidGroups == {}); - message = "When mutableUsers is false, no gid can be null"; + message = "UIDs and GIDs must be unique!"; } ]; From a323d146b7be3bc066b4ec74db72888ea32792fb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 15 Aug 2014 02:07:43 +0200 Subject: [PATCH 018/789] Add user attribute isNormalUser This is shorthand for setting group, createHome, home, useDefaultShell and isSystemUser. --- nixos/doc/manual/configuration.xml | 4 +-- nixos/modules/config/users-groups.nix | 31 ++++++++++++++++--- .../installer/tools/nixos-generate-config.pl | 6 +--- nixos/modules/profiles/demo.nix | 7 ++--- nixos/tests/common/user-account.nix | 6 ++-- 5 files changed, 33 insertions(+), 21 deletions(-) diff --git a/nixos/doc/manual/configuration.xml b/nixos/doc/manual/configuration.xml index ce7ccf6cc5e..110d1a00eeb 100644 --- a/nixos/doc/manual/configuration.xml +++ b/nixos/doc/manual/configuration.xml @@ -1033,11 +1033,9 @@ states that a user account named alice shall exist: users.extraUsers.alice = - { createHome = true; - home = "/home/alice"; + { isNormalUser = true; description = "Alice Foobar"; extraGroups = [ "wheel" "networkmanager" ]; - useDefaultShell = true; openssh.authorizedKeys.keys = [ "ssh-dss AAAAB3Nza... alice@foobar" ]; }; diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix index 75d1b6f7ff4..f32138a814d 100644 --- a/nixos/modules/config/users-groups.nix +++ b/nixos/modules/config/users-groups.nix @@ -70,6 +70,21 @@ let ''; }; + isNormalUser = mkOption { + type = types.bool; + default = false; + description = '' + Indicates whether this is an account for a “real” user. This + automatically sets to + users, to + true, to + /home/username, + to true, + and to + false. + ''; + }; + group = mkOption { type = types.str; default = "nogroup"; @@ -148,10 +163,18 @@ let }; }; - config = { - name = mkDefault name; - shell = mkIf config.useDefaultShell (mkDefault cfg.defaultUserShell); - }; + config = mkMerge + [ { name = mkDefault name; + shell = mkIf config.useDefaultShell (mkDefault cfg.defaultUserShell); + } + (mkIf config.isNormalUser { + group = mkDefault "users"; + createHome = mkDefault true; + home = mkDefault "/home/${name}"; + useDefaultShell = mkDefault true; + isSystemUser = mkDefault false; + }) + ]; }; diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index 66a8152a3a6..c507f7f979f 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -490,12 +490,8 @@ $bootLoaderConfig # Define a user account. Don't forget to set a password with ‘passwd’. # users.extraUsers.guest = { - # name = "guest"; - # group = "users"; + # isNormalUser = true; # uid = 1000; - # createHome = true; - # home = "/home/guest"; - # shell = "/run/current-system/sw/bin/bash"; # }; } diff --git a/nixos/modules/profiles/demo.nix b/nixos/modules/profiles/demo.nix index 605cc6aad1d..ef6fd77b5f8 100644 --- a/nixos/modules/profiles/demo.nix +++ b/nixos/modules/profiles/demo.nix @@ -4,12 +4,9 @@ imports = [ ./graphical.nix ]; users.extraUsers.demo = - { description = "Demo user account"; - group = "users"; + { isNormalUser = true; + description = "Demo user account"; extraGroups = [ "wheel" ]; - home = "/home/demo"; - createHome = true; - useDefaultShell = true; password = "demo"; uid = 1000; }; diff --git a/nixos/tests/common/user-account.nix b/nixos/tests/common/user-account.nix index 0239a3c4d08..aa3a0b82bcd 100644 --- a/nixos/tests/common/user-account.nix +++ b/nixos/tests/common/user-account.nix @@ -1,11 +1,9 @@ { pkgs, ... }: { users.extraUsers = pkgs.lib.singleton - { name = "alice"; + { isNormalUser = true; + name = "alice"; description = "Alice Foobar"; - home = "/home/alice"; - createHome = true; - useDefaultShell = true; password = "foobar"; uid = 1000; }; From 97d6afafaaf5e8db7182cf65cae982c50be2c2e9 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 15 Aug 2014 04:07:45 +0200 Subject: [PATCH 019/789] systemd: Fix uninitialised memory issue in veth setup This caused containers to randomly fail, in particular if the machine name was 8 characters. --- pkgs/os-specific/linux/systemd/fixes.patch | 117 +++++++++++++++++++++ 1 file changed, 117 insertions(+) diff --git a/pkgs/os-specific/linux/systemd/fixes.patch b/pkgs/os-specific/linux/systemd/fixes.patch index 566d80bfba9..72cf0e92bb8 100644 --- a/pkgs/os-specific/linux/systemd/fixes.patch +++ b/pkgs/os-specific/linux/systemd/fixes.patch @@ -1074,6 +1074,123 @@ index b087a8b..967ab67 100644 test_catalog_file_lang(); +diff --git a/src/libsystemd/sd-rtnl/rtnl-message.c b/src/libsystemd/sd-rtnl/rtnl-message.c +index 84a8ffa..e79b318 100644 +--- a/src/libsystemd/sd-rtnl/rtnl-message.c ++++ b/src/libsystemd/sd-rtnl/rtnl-message.c +@@ -335,24 +335,28 @@ int sd_rtnl_message_link_get_flags(sd_rtnl_message *m, unsigned *flags) { + /* If successful the updated message will be correctly aligned, if + unsuccessful the old message is untouched. */ + static int add_rtattr(sd_rtnl_message *m, unsigned short type, const void *data, size_t data_length) { +- uint32_t rta_length, message_length; ++ uint32_t rta_length; ++ size_t message_length, padding_length; + struct nlmsghdr *new_hdr; + struct rtattr *rta; + char *padding; + unsigned i; ++ int offset; + + assert(m); + assert(m->hdr); + assert(!m->sealed); + assert(NLMSG_ALIGN(m->hdr->nlmsg_len) == m->hdr->nlmsg_len); +- assert(!data || data_length > 0); +- assert(data || m->n_containers < RTNL_CONTAINER_DEPTH); ++ assert(!data || data_length); ++ ++ /* get offset of the new attribute */ ++ offset = m->hdr->nlmsg_len; + + /* get the size of the new rta attribute (with padding at the end) */ + rta_length = RTA_LENGTH(data_length); + + /* get the new message size (with padding at the end) */ +- message_length = m->hdr->nlmsg_len + RTA_ALIGN(rta_length); ++ message_length = offset + RTA_ALIGN(rta_length); + + /* realloc to fit the new attribute */ + new_hdr = realloc(m->hdr, message_length); +@@ -361,32 +365,35 @@ static int add_rtattr(sd_rtnl_message *m, unsigned short type, const void *data, + m->hdr = new_hdr; + + /* get pointer to the attribute we are about to add */ +- rta = (struct rtattr *) ((uint8_t *) m->hdr + m->hdr->nlmsg_len); ++ rta = (struct rtattr *) ((uint8_t *) m->hdr + offset); + + /* if we are inside containers, extend them */ + for (i = 0; i < m->n_containers; i++) +- GET_CONTAINER(m, i)->rta_len += message_length - m->hdr->nlmsg_len; ++ GET_CONTAINER(m, i)->rta_len += message_length - offset; + + /* fill in the attribute */ + rta->rta_type = type; + rta->rta_len = rta_length; +- if (!data) { +- /* this is the start of a new container */ +- m->container_offsets[m->n_containers ++] = m->hdr->nlmsg_len; +- } else { ++ if (data) + /* we don't deal with the case where the user lies about the type + * and gives us too little data (so don't do that) +- */ ++ */ + padding = mempcpy(RTA_DATA(rta), data, data_length); +- /* make sure also the padding at the end of the message is initialized */ +- memzero(padding, +- (uint8_t *) m->hdr + message_length - (uint8_t *) padding); ++ else { ++ /* if no data was passed, make sure we still initialize the padding ++ note that we can have data_length > 0 (used by some containers) */ ++ padding = RTA_DATA(rta); ++ data_length = 0; + } + ++ /* make sure also the padding at the end of the message is initialized */ ++ padding_length = (uint8_t*)m->hdr + message_length - (uint8_t*)padding; ++ memzero(padding, padding_length); ++ + /* update message size */ + m->hdr->nlmsg_len = message_length; + +- return 0; ++ return offset; + } + + int sd_rtnl_message_append_string(sd_rtnl_message *m, unsigned short type, const char *data) { +@@ -761,22 +768,29 @@ int sd_rtnl_message_open_container(sd_rtnl_message *m, unsigned short type) { + + assert_return(m, -EINVAL); + assert_return(!m->sealed, -EPERM); ++ assert_return(m->n_containers < RTNL_CONTAINER_DEPTH, -ERANGE); + + sd_rtnl_message_get_type(m, &rtm_type); + ++ int r = -ENOTSUP; ++ + if (rtnl_message_type_is_link(rtm_type)) { + + if ((type == IFLA_LINKINFO && m->n_containers == 0) || + (type == IFLA_INFO_DATA && m->n_containers == 1 && + GET_CONTAINER(m, 0)->rta_type == IFLA_LINKINFO)) +- return add_rtattr(m, type, NULL, 0); ++ r = add_rtattr(m, type, NULL, 0); + else if (type == VETH_INFO_PEER && m->n_containers == 2 && + GET_CONTAINER(m, 1)->rta_type == IFLA_INFO_DATA && + GET_CONTAINER(m, 0)->rta_type == IFLA_LINKINFO) +- return add_rtattr(m, type, NULL, sizeof(struct ifinfomsg)); ++ r= add_rtattr(m, type, NULL, sizeof(struct ifinfomsg)); + } + +- return -ENOTSUP; ++ if (r < 0) return r; ++ ++ m->container_offsets[m->n_containers ++] = r; ++ ++ return 0; + } + + int sd_rtnl_message_close_container(sd_rtnl_message *m) { diff --git a/src/libudev/libudev-monitor.c b/src/libudev/libudev-monitor.c index ba1b04d..85b1e40 100644 --- a/src/libudev/libudev-monitor.c From 315e58762dbb763e3ff4620cc06e9d1701495ff6 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sun, 17 Aug 2014 16:04:47 +0200 Subject: [PATCH 020/789] perl: Disable tests It appears that these got re-enabled accidentally in d1ed0f44cd154926e761cedee1cee72e55345807. http://hydra.nixos.org/build/13369824 --- pkgs/development/interpreters/perl/5.16/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index a01d7b2a86b..c1a5374c92e 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -54,7 +54,7 @@ stdenv.mkDerivation rec { ${optionalString stdenv.isArm '' configureFlagsArray=(-Dldflags="-lm -lrt") ''} - + ${optionalString stdenv.isCygwin '' cp cygwin/cygwin.c{,.bak} echo "#define PERLIO_NOT_STDIO 0" > tmp @@ -70,6 +70,5 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; - doCheck = stdenv.isLinux; passthru.libPrefix = "lib/perl5/site_perl"; } From 773595540bd3a52476a7c84799e374d086d1c648 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sun, 17 Aug 2014 17:25:12 +0200 Subject: [PATCH 021/789] binutils: Enable sysroot support --- pkgs/development/tools/misc/binutils/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 8d8fc5d464e..246a8573fac 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -59,6 +59,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-shared" "--enable-deterministic-archives" ] + ++ optional noSysDirs "--with-sysroot=/var/empty" ++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop" ++ optional (cross != null) "--target=${cross.config}" ++ optionals gold [ "--enable-gold" "--enable-plugins" ] From 6dc5db3850a2ef5d01e871ec36f1d31457fc64da Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 18 Aug 2014 16:32:00 +0200 Subject: [PATCH 022/789] Fix setting an empty password --- nixos/modules/config/update-users-groups.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/config/update-users-groups.pl b/nixos/modules/config/update-users-groups.pl index 2b9bfb764a8..197b65e27c4 100644 --- a/nixos/modules/config/update-users-groups.pl +++ b/nixos/modules/config/update-users-groups.pl @@ -211,7 +211,7 @@ foreach my $line (-f "/etc/shadow" ? read_file("/etc/shadow") : ()) { my ($name, $password, @rest) = split(':', $line, -9); my $u = $usersOut{$name};; next if !defined $u; - $password = $u->{hashedPassword} if $u->{hashedPassword} && !$spec->{mutableUsers}; # FIXME + $password = $u->{hashedPassword} if defined $u->{hashedPassword} && !$spec->{mutableUsers}; # FIXME push @shadowNew, join(":", $name, $password, @rest) . "\n"; $shadowSeen{$name} = 1; } @@ -219,7 +219,7 @@ foreach my $line (-f "/etc/shadow" ? read_file("/etc/shadow") : ()) { foreach my $u (values %usersOut) { next if defined $shadowSeen{$u->{name}}; my $password = "!"; - $password = $u->{hashedPassword} if $u->{hashedPassword}; + $password = $u->{hashedPassword} if defined $u->{hashedPassword}; # FIXME: set correct value for sp_lstchg. push @shadowNew, join(":", $u->{name}, $password, "1::::::") . "\n"; } From a0c60b76ec258ea158bebaea53d6d39055cdf857 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 18 Aug 2014 17:18:50 +0200 Subject: [PATCH 023/789] gcc: Revive the no-sys-dirs patch For now, we don't NATIVE_SYSTEM_HEADER_DIR because it breaks the build. However, it points to Glibc in the Nix store (not /usr/include) so it's kind of okay. --- pkgs/build-support/gcc-wrapper/gcc-wrapper.sh | 1 - pkgs/build-support/gcc-wrapper/ld-wrapper.sh | 3 -- .../development/compilers/gcc/4.8/default.nix | 1 + .../compilers/gcc/4.8/no-sys-dirs.patch | 28 +++++++++++++++++++ 4 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch diff --git a/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh b/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh index c53fd44207d..2ad7783a442 100644 --- a/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh +++ b/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh @@ -77,7 +77,6 @@ if test "$NIX_ENFORCE_PURITY" = "1" -a -n "$NIX_STORE"; then n=$((n + 1)) done params=("${rest[@]}") - NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE --sysroot=/var/empty" fi diff --git a/pkgs/build-support/gcc-wrapper/ld-wrapper.sh b/pkgs/build-support/gcc-wrapper/ld-wrapper.sh index 822c4a03a21..51803e12a4e 100644 --- a/pkgs/build-support/gcc-wrapper/ld-wrapper.sh +++ b/pkgs/build-support/gcc-wrapper/ld-wrapper.sh @@ -32,9 +32,6 @@ if test "$NIX_ENFORCE_PURITY" = "1" -a -n "$NIX_STORE" \ # We cannot skip this; barf. echo "impure path \`$p' used in link" >&2 exit 1 - elif test "${p:0:9}" = "--sysroot"; then - # Our ld is not built with sysroot support (Can we fix that?) - : else rest=("${rest[@]}" "$p") fi diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 7b73559ba9c..7985b445ae0 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -64,6 +64,7 @@ let version = "4.8.3"; patches = [] ++ optional enableParallelBuilding ./parallel-bconfig.patch ++ optional (cross != null) ./libstdc++-target.patch + ++ optional noSysDirs ./no-sys-dirs.patch # The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its # target libraries and tools. ++ optional langAda ./gnat-cflags.patch diff --git a/pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch b/pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch new file mode 100644 index 00000000000..36df51904ac --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch @@ -0,0 +1,28 @@ +diff -ru -x '*~' gcc-4.8.3-orig/gcc/cppdefault.c gcc-4.8.3/gcc/cppdefault.c +--- gcc-4.8.3-orig/gcc/cppdefault.c 2013-01-10 21:38:27.000000000 +0100 ++++ gcc-4.8.3/gcc/cppdefault.c 2014-08-18 16:20:32.893944536 +0200 +@@ -35,6 +35,8 @@ + # undef CROSS_INCLUDE_DIR + #endif + ++#undef LOCAL_INCLUDE_DIR ++ + const struct default_include cpp_include_defaults[] + #ifdef INCLUDE_DEFAULTS + = INCLUDE_DEFAULTS; +diff -ru -x '*~' gcc-4.8.3-orig/gcc/gcc.c gcc-4.8.3/gcc/gcc.c +--- gcc-4.8.3-orig/gcc/gcc.c 2014-03-23 12:30:57.000000000 +0100 ++++ gcc-4.8.3/gcc/gcc.c 2014-08-18 13:19:32.689201690 +0200 +@@ -1162,10 +1162,10 @@ + /* Default prefixes to attach to command names. */ + + #ifndef STANDARD_STARTFILE_PREFIX_1 +-#define STANDARD_STARTFILE_PREFIX_1 "/lib/" ++#define STANDARD_STARTFILE_PREFIX_1 "" + #endif + #ifndef STANDARD_STARTFILE_PREFIX_2 +-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/" ++#define STANDARD_STARTFILE_PREFIX_2 "" + #endif + + #ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */ From 35945027bf2c788d31c5b59338b67ca39f47eb2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Tue, 19 Aug 2014 09:32:07 +0800 Subject: [PATCH 024/789] nixos/xfce: don't set a bloated GST_PLUGIN_PATH --- nixos/modules/services/x11/desktop-managers/xfce.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/nixos/modules/services/x11/desktop-managers/xfce.nix b/nixos/modules/services/x11/desktop-managers/xfce.nix index a72eea76239..a31f66176cc 100644 --- a/nixos/modules/services/x11/desktop-managers/xfce.nix +++ b/nixos/modules/services/x11/desktop-managers/xfce.nix @@ -34,10 +34,6 @@ in # Set GTK_DATA_PREFIX so that GTK+ can find the Xfce themes. export GTK_DATA_PREFIX=${config.system.path} - # Necessary to get xfce4-mixer to find GST's ALSA plugin. - # Ugly. - export GST_PLUGIN_PATH=${config.system.path}/lib - exec ${pkgs.stdenv.shell} ${pkgs.xfce.xinitrc} ''; }; From 22541ebdaa616a8eabe04c919deee650aff617f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Tue, 19 Aug 2014 09:34:52 +0800 Subject: [PATCH 025/789] nixos/environment: do not set GST_PLUGIN_SYSTEM_PATH --- nixos/modules/programs/environment.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/modules/programs/environment.nix b/nixos/modules/programs/environment.nix index 80c3e83fe81..e7bde81fb23 100644 --- a/nixos/modules/programs/environment.nix +++ b/nixos/modules/programs/environment.nix @@ -47,7 +47,6 @@ in TERMINFO_DIRS = [ "${i}/share/terminfo" ]; PERL5LIB = [ "${i}/lib/perl5/site_perl" ]; ALSA_PLUGIN_DIRS = [ "${i}/lib/alsa-lib" ]; - GST_PLUGIN_SYSTEM_PATH = [ "${i}/lib/gstreamer-0.10" ]; KDEDIRS = [ "${i}" ]; STRIGI_PLUGIN_PATH = [ "${i}/lib/strigi/" ]; QT_PLUGIN_PATH = [ "${i}/lib/qt4/plugins" "${i}/lib/kde4/plugins" ]; From 8f1623b38bd3569dba6d86cf7281deef0c7758c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Tue, 19 Aug 2014 09:57:30 +0800 Subject: [PATCH 026/789] xfce4-mixer: use wrapper to set GST_PLUGIN_SYSTEM_PATH --- pkgs/desktops/xfce/applications/xfce4-mixer.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfce4-mixer.nix b/pkgs/desktops/xfce/applications/xfce4-mixer.nix index 2b0f729c0a3..f486373ee17 100644 --- a/pkgs/desktops/xfce/applications/xfce4-mixer.nix +++ b/pkgs/desktops/xfce/applications/xfce4-mixer.nix @@ -1,5 +1,7 @@ -{ stdenv, fetchurl, pkgconfig, intltool, glib, gstreamer, gst_plugins_base, gtk -, libxfce4util, libxfce4ui, xfce4panel, xfconf, libunique?null }: +{ stdenv, fetchurl, pkgconfig, intltool, makeWrapper +, glib, gstreamer, gst_plugins_base, gtk +, libxfce4util, libxfce4ui, xfce4panel, xfconf, libunique ? null +}: let # The usual Gstreamer plugins package has a zillion dependencies @@ -23,13 +25,13 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig intltool glib gstreamer gst_plugins_minimal gtk - libxfce4util libxfce4ui xfce4panel xfconf libunique + libxfce4util libxfce4ui xfce4panel xfconf libunique makeWrapper ]; postInstall = '' - mkdir -p $out/nix-support - echo ${gst_plugins_minimal} > $out/nix-support/propagated-user-env-packages + wrapProgram "$out/bin/xfce4-mixer" \ + --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" ''; meta = { From 559c7cc2dad4a971f0519c9f4861259fca55c3d1 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Tue, 19 Aug 2014 18:39:45 +0200 Subject: [PATCH 027/789] yojson: propagate build inputs (as in PR #3404) --- pkgs/development/ocaml-modules/yojson/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/ocaml-modules/yojson/default.nix b/pkgs/development/ocaml-modules/yojson/default.nix index 9237db080d6..562d25550da 100644 --- a/pkgs/development/ocaml-modules/yojson/default.nix +++ b/pkgs/development/ocaml-modules/yojson/default.nix @@ -4,16 +4,18 @@ let version = "1.1.8"; webpage = "http://mjambon.com/${pname}.html"; in -stdenv.mkDerivation rec { +stdenv.mkDerivation { - name = "${pname}-${version}"; + name = "ocaml-${pname}-${version}"; src = fetchurl { - url = "http://mjambon.com/releases/${pname}/${name}.tar.gz"; + url = "http://mjambon.com/releases/${pname}/${pname}-${version}.tar.gz"; sha256 = "0ayx17dimnpavdfyq6dk9xv2x1fx69by85vc6vl3nqxjkcv5d2rv"; }; - buildInputs = [ ocaml findlib cppo easy-format biniou ]; + buildInputs = [ ocaml findlib ]; + + propagatedBuildInputs = [ cppo easy-format biniou ]; createFindlibDestdir = true; From e8d2f8f1092e71c951b95f5a6e1b2227e4d185a9 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Tue, 19 Aug 2014 18:42:13 +0200 Subject: [PATCH 028/789] merlin: update to 1.7 --- pkgs/development/tools/ocaml/merlin/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/tools/ocaml/merlin/default.nix b/pkgs/development/tools/ocaml/merlin/default.nix index c0882439f5c..8efb90a9cef 100644 --- a/pkgs/development/tools/ocaml/merlin/default.nix +++ b/pkgs/development/tools/ocaml/merlin/default.nix @@ -1,14 +1,14 @@ -{stdenv, fetchurl, ocaml, findlib, easy-format, biniou, yojson, menhir}: +{stdenv, fetchurl, ocaml, findlib, yojson, menhir}: stdenv.mkDerivation { - name = "merlin-1.6"; + name = "merlin-1.7"; src = fetchurl { - url = "https://github.com/the-lambda-church/merlin/archive/v1.6.tar.gz"; - sha256 = "0wq75hgffaszazrhkl0nfjxgx8bvazi2sjannd8q64hvax8hxzcy"; + url = "https://github.com/the-lambda-church/merlin/archive/v1.7.tar.gz"; + sha256 = "0grprrykah02g8va63lidbcb6n8sd18l2k9spb5rwlcs3xhfw42b"; }; - buildInputs = [ ocaml findlib biniou yojson menhir easy-format ]; + buildInputs = [ ocaml findlib yojson menhir ]; prefixKey = "--prefix "; From 5c53f22492511d1d8de46ecd8f11fca20f1287fd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 20 Aug 2014 10:39:03 +0200 Subject: [PATCH 029/789] Revert "binutils: Enable sysroot support" This reverts commit 773595540bd3a52476a7c84799e374d086d1c648. It breaks stuff and we don't need it anymore. http://hydra.nixos.org/build/13517591 --- pkgs/development/tools/misc/binutils/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 246a8573fac..8d8fc5d464e 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -59,7 +59,6 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-shared" "--enable-deterministic-archives" ] - ++ optional noSysDirs "--with-sysroot=/var/empty" ++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop" ++ optional (cross != null) "--target=${cross.config}" ++ optionals gold [ "--enable-gold" "--enable-plugins" ] From f28d8c2dc43fc14598f4ecbea2cba3974263a278 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Wed, 11 Jun 2014 21:52:53 +0200 Subject: [PATCH 030/789] CUPS system wide client configuration. --- nixos/modules/services/printing/cupsd.nix | 24 ++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/printing/cupsd.nix b/nixos/modules/services/printing/cupsd.nix index d229c610669..8a8085cad28 100644 --- a/nixos/modules/services/printing/cupsd.nix +++ b/nixos/modules/services/printing/cupsd.nix @@ -35,7 +35,7 @@ let bindir = pkgs.buildEnv { name = "cups-progs"; paths = cfg.drivers; - pathsToLink = [ "/lib/cups" "/share/cups" "/bin" ]; + pathsToLink = [ "/lib/cups" "/share/cups" "/bin" "/etc/cups" ]; postBuild = cfg.bindirCmds; }; @@ -89,6 +89,20 @@ in ''; }; + clientConf = mkOption { + type = types.lines; + default = ""; + example = + '' + ServerName server.example.com + Encryption Never + ''; + description = '' + The contents of the client configuration. + (client.conf) + ''; + }; + drivers = mkOption { type = types.listOf types.path; example = literalExample "[ pkgs.splix ]"; @@ -124,6 +138,14 @@ in environment.systemPackages = [ cups ]; + environment.variables.CUPS_SERVERROOT = "/etc/cups"; + + environment.etc = [ + { source = pkgs.writeText "client.conf" cfg.clientConf; + target = "cups/client.conf"; + } + ]; + services.dbus.packages = [ cups ]; # Cups uses libusb to talk to printers, and does not use the From de8a2e1433f42e5039b706b775d123e917c6e3d6 Mon Sep 17 00:00:00 2001 From: Andrew Morsillo Date: Wed, 20 Aug 2014 21:50:09 -0400 Subject: [PATCH 031/789] Bump version of Dwarf Fortress to 40_09. Build graphics library for dwarf fortress instead of using provided one for more reliability. --- pkgs/games/dwarf-fortress/df2014.nix | 50 ++++++++++++++++++++++------ 1 file changed, 39 insertions(+), 11 deletions(-) diff --git a/pkgs/games/dwarf-fortress/df2014.nix b/pkgs/games/dwarf-fortress/df2014.nix index 6a0d30ea89f..e9affd7bbf0 100644 --- a/pkgs/games/dwarf-fortress/df2014.nix +++ b/pkgs/games/dwarf-fortress/df2014.nix @@ -1,17 +1,41 @@ -{ stdenv, fetchurl, SDL, SDL_image, SDL_ttf, gtk, glib, mesa, openal, glibc, libsndfile -, copyDataDirectory ? false }: +{ stdenv, fetchgit, fetchurl, cmake, glew, ncurses, SDL, SDL_image, SDL_ttf, gtk2, glib, mesa, openal, pango, atk, gdk_pixbuf, glibc, libsndfile + , copyDataDirectory ? true }: + +/* set copyDataDirectory as true by default since df 40 does not seem to run without it */ + +let + + srcs = { + df_unfuck = fetchgit { + url = "https://github.com/svenstaro/dwarf_fortress_unfuck"; + rev = "4681508dd799aaf20b47c2ac0e9da18fa4876993"; + sha256 = "16495214a19742cb97351109b124ad9d691ee52bbb1b86c9c1907978734b5ca0"; + }; + + df = fetchurl { + url = "http://www.bay12games.com/dwarves/df_40_09_linux.tar.bz2"; + sha256 = "1aka2vblhip4sjkcpkxfra1fa9z4hzlj0sdl6rh2qda0l7q7i0ki"; + }; + }; + +in assert stdenv.system == "i686-linux"; stdenv.mkDerivation rec { - name = "dwarf-fortress-0.40.05"; + name = "dwarf-fortress-0.40.09"; - src = fetchurl { - url = "http://www.bay12games.com/dwarves/df_40_05_linux.tar.bz2"; - sha256 = "1b9nd33yz5a945v9jyqii1k4s71i701m2d0h7fw6f5g9p6nvx43s"; - }; - phases = "unpackPhase patchPhase installPhase"; + buildInputs = [ SDL SDL_image SDL_ttf gtk2 glib glew mesa ncurses openal glibc libsndfile pango atk cmake gdk_pixbuf]; + src = "${srcs.df_unfuck} ${srcs.df}"; + phases = "unpackPhase patchPhase configurePhase buildPhase installPhase"; + + sourceRoot = "git-export"; + + cmakeFlags = [ + "-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib}/lib/glib-2.0/include" + "-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2}/lib/gtk-2.0/include" + ]; /* :TODO: Game options should be configurable by patching the default configuration files */ @@ -21,11 +45,15 @@ stdenv.mkDerivation rec { set -x mkdir -p $out/bin mkdir -p $out/share/df_linux - cp -r * $out/share/df_linux + cd ../../ + cp -r ./df_linux/* $out/share/df_linux + rm $out/share/df_linux/libs/lib* + patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ stdenv.gcc.gcc stdenv.glibc ]}:$out/share/df_linux/libs" $out/share/df_linux/libs/Dwarf_Fortress + cp -f ./git-export/build/libgraphics.so $out/share/df_linux/libs/libgraphics.so + cp $permission $out/share/df_linux/nix_permission patchelf --set-interpreter ${glibc}/lib/ld-linux.so.2 $out/share/df_linux/libs/Dwarf_Fortress - ln -s ${libsndfile}/lib/libsndfile.so $out/share/df_linux/libs/ cat > $out/bin/dwarf-fortress << EOF #!${stdenv.shell} @@ -66,7 +94,7 @@ stdenv.mkDerivation rec { ''} # now run Dwarf Fortress! - export LD_LIBRARY_PATH=\$DF_DIR/df_linux/libs/:${SDL}/lib:${SDL_image}/lib/:${SDL_ttf}/lib/:${gtk}/lib/:${glib}/lib/:${mesa}/lib/:${openal}/lib/ + export LD_LIBRARY_PATH=\${stdenv.gcc}/lib:${SDL}/lib:${SDL_image}/lib/:${SDL_ttf}/lib/:${gtk2}/lib/:${glib}/lib/:${mesa}/lib/:${openal}/lib/:${libsndfile}/lib:$DF_DIR/df_linux/libs/ \$DF_DIR/df "\$@" EOF From c54a8ed1d05091d12d8341dbee7843e348cc2576 Mon Sep 17 00:00:00 2001 From: sfultong Date: Wed, 20 Aug 2014 23:02:16 -0400 Subject: [PATCH 032/789] Merge pull request #1 from sfultongv/sfultong-14.04 updating tomcat to version 7 --- nixos/modules/services/web-servers/tomcat.nix | 2 +- pkgs/servers/http/tomcat/6.0.nix | 27 ++++--------------- pkgs/servers/http/tomcat/7.0.nix | 6 +++++ pkgs/servers/http/tomcat/recent.nix | 24 +++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 5 files changed, 38 insertions(+), 23 deletions(-) create mode 100644 pkgs/servers/http/tomcat/7.0.nix create mode 100644 pkgs/servers/http/tomcat/recent.nix diff --git a/nixos/modules/services/web-servers/tomcat.nix b/nixos/modules/services/web-servers/tomcat.nix index c2f464014ae..2af249a8e96 100644 --- a/nixos/modules/services/web-servers/tomcat.nix +++ b/nixos/modules/services/web-servers/tomcat.nix @@ -5,7 +5,7 @@ with lib; let cfg = config.services.tomcat; - tomcat = pkgs.tomcat6; + tomcat = pkgs.tomcat7; in { diff --git a/pkgs/servers/http/tomcat/6.0.nix b/pkgs/servers/http/tomcat/6.0.nix index ee0049ce08f..19f20cc8823 100644 --- a/pkgs/servers/http/tomcat/6.0.nix +++ b/pkgs/servers/http/tomcat/6.0.nix @@ -1,23 +1,6 @@ -{ stdenv, fetchurl }: - -let version = "6.0.39"; in - -stdenv.mkDerivation rec { - name = "apache-tomcat-${version}"; - - src = fetchurl { - url = "mirror://apache/tomcat/tomcat-6/v${version}/bin/${name}.tar.gz"; +import ./recent.nix + { + versionMajor = "6"; + versionMinor = "0.39"; sha256 = "19qix6affhc252n03smjf482drg3nxd27shni1gvhphgj3zfmgfy"; - }; - - installPhase = - '' - mkdir $out - mv * $out - ''; - - meta = { - homepage = http://tomcat.apache.org/; - description = "An implementation of the Java Servlet and JavaServer Pages technologies"; - }; -} + } diff --git a/pkgs/servers/http/tomcat/7.0.nix b/pkgs/servers/http/tomcat/7.0.nix new file mode 100644 index 00000000000..87bc57eb2b6 --- /dev/null +++ b/pkgs/servers/http/tomcat/7.0.nix @@ -0,0 +1,6 @@ +import ./recent.nix + { + versionMajor = "7"; + versionMinor = "0.55"; + sha256 = "c20934fda63bc7311e2d8e067d67f886890c8be72280425c5f6f8fdd7a376c15"; + } diff --git a/pkgs/servers/http/tomcat/recent.nix b/pkgs/servers/http/tomcat/recent.nix new file mode 100644 index 00000000000..0d11ba7a104 --- /dev/null +++ b/pkgs/servers/http/tomcat/recent.nix @@ -0,0 +1,24 @@ +{ versionMajor, versionMinor, sha256 }: +{ stdenv, fetchurl }: + +let version = "${versionMajor}.${versionMinor}"; in + +stdenv.mkDerivation rec { + name = "apache-tomcat-${version}"; + + src = fetchurl { + url = "mirror://apache/tomcat/tomcat-${versionMajor}/v${version}/bin/${name}.tar.gz"; + inherit sha256; + }; + + installPhase = + '' + mkdir $out + mv * $out + ''; + + meta = { + homepage = http://tomcat.apache.org/; + description = "An implementation of the Java Servlet and JavaServer Pages technologies"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f2c8b83ada5..7aeaf7f7a3c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7022,6 +7022,8 @@ let tomcat6 = callPackage ../servers/http/tomcat/6.0.nix { }; + tomcat7 = callPackage ../servers/http/tomcat/7.0.nix { }; + tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; axis2 = callPackage ../servers/http/tomcat/axis2 { }; From 219983d6ad1bec55ab174d064d41d086654f9a17 Mon Sep 17 00:00:00 2001 From: Sam Griffin Date: Wed, 20 Aug 2014 23:23:44 -0400 Subject: [PATCH 033/789] adding tomcat version 8 --- pkgs/servers/http/tomcat/8.0.nix | 6 ++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 8 insertions(+) create mode 100644 pkgs/servers/http/tomcat/8.0.nix diff --git a/pkgs/servers/http/tomcat/8.0.nix b/pkgs/servers/http/tomcat/8.0.nix new file mode 100644 index 00000000000..63b8d2bbc94 --- /dev/null +++ b/pkgs/servers/http/tomcat/8.0.nix @@ -0,0 +1,6 @@ +import ./recent.nix + { + versionMajor = "8"; + versionMinor = "0.9"; + sha256 = "5ea3c8260088ee4fd223a532a4b0c23a10e549c34705e2f190279a1a7f1f83d9"; + } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7aeaf7f7a3c..4ae428bd83e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7023,6 +7023,8 @@ let tomcat6 = callPackage ../servers/http/tomcat/6.0.nix { }; tomcat7 = callPackage ../servers/http/tomcat/7.0.nix { }; + + tomcat8 = callPackage ../servers/http/tomcat/8.0.nix { }; tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; From 91db3f6b4518ca8ebea6cfe38766f72d142ce36b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 12:15:45 +0200 Subject: [PATCH 034/789] kde4: security patch for CVE-2014-5033 --- pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix b/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix index 396adf9ba75..1698abfd00f 100644 --- a/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix +++ b/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix @@ -4,7 +4,7 @@ , automoc4, soprano, qca2, attica, enchant, libdbusmenu_qt, grantlee , docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, acl, attr, libXtst , udev, herqq, phonon, libjpeg, xz, ilmbase, libxslt -, pkgconfig +, pkgconfig, fetchpatch }: kde { @@ -28,7 +28,15 @@ kde { # There are a few hardcoded paths. # Split plugins from libs? - patches = [ ../files/polkit-install.patch ]; + patches = [ + ../files/polkit-install.patch + (fetchpatch { + name = "CVE-2014-5033.patch"; + url = "http://quickgit.kde.org/?p=kdelibs.git" + + "&a=commit&h=e4e7b53b71e2659adaf52691d4accc3594203b23"; + sha256 = "0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73"; + }) + ]; cmakeFlags = [ "-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook" From 32f95153a182e010224a62136209b636fc6cbc9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 11:49:14 +0200 Subject: [PATCH 035/789] ffmpeg (_1 and default _2): minor update, incl. security CVE-2014-{5271,5272} --- pkgs/development/libraries/ffmpeg/1.x.nix | 4 ++-- pkgs/development/libraries/ffmpeg/2.x.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/1.x.nix b/pkgs/development/libraries/ffmpeg/1.x.nix index a0dcf52dcce..e2aa336d5d2 100644 --- a/pkgs/development/libraries/ffmpeg/1.x.nix +++ b/pkgs/development/libraries/ffmpeg/1.x.nix @@ -31,11 +31,11 @@ assert playSupport -> SDL != null; assert freetypeSupport -> freetype != null; stdenv.mkDerivation rec { - name = "ffmpeg-1.2.7"; + name = "ffmpeg-1.2.8"; src = fetchurl { url = "http://www.ffmpeg.org/releases/${name}.tar.bz2"; - sha256 = "13nj5q5ad0kcrid8r5x6x8lqfhk8kms14pmncf6vbdbk6x45k6v6"; + sha256 = "0n9fklr8zqkd60dc5ai161l6k4dbiac5hqy0pi1w82yamc25k6s2"; }; # `--enable-gpl' (as well as the `postproc' and `swscale') mean that diff --git a/pkgs/development/libraries/ffmpeg/2.x.nix b/pkgs/development/libraries/ffmpeg/2.x.nix index 19a4099a8b1..8a25c4812b2 100644 --- a/pkgs/development/libraries/ffmpeg/2.x.nix +++ b/pkgs/development/libraries/ffmpeg/2.x.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "ffmpeg-2.3.2"; + name = "ffmpeg-2.3.3"; src = fetchurl { url = "http://www.ffmpeg.org/releases/${name}.tar.bz2"; - sha256 = "1lpzqjpklmcjzk327pz070m3qz3s1cwg8v90w6r1sdh8491kbqc4"; + sha256 = "0ik4c06anh49r5b0d3rq9if4zl6ysjsa341655kzw22fl880sk5v"; }; subtitleSupport = config.ffmpeg.subtitle or true; From 3775fa9ea22401b69219b9a46aa60f51b45a10db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 11:52:07 +0200 Subject: [PATCH 036/789] subversion+serf: security update to fix CVE-2014-3504 Thanks to nixpkgs monitor again. --- pkgs/applications/version-management/subversion/default.nix | 4 ++-- pkgs/development/libraries/serf/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix index 7526bb5f043..6e3d2f3d4d5 100644 --- a/pkgs/applications/version-management/subversion/default.nix +++ b/pkgs/applications/version-management/subversion/default.nix @@ -17,13 +17,13 @@ assert javahlBindings -> jdk != null && perl != null; stdenv.mkDerivation rec { - version = "1.8.9"; + version = "1.8.10"; name = "subversion-${version}"; src = fetchurl { url = "mirror://apache/subversion/${name}.tar.bz2"; - sha1 = "424ee12708f39a126efd905886666083dcc4eeaf"; + sha1 = "d6896d94bb53c1b4c6e9c5bb1a5c466477b19b2b"; }; buildInputs = [ zlib apr aprutil sqlite ] diff --git a/pkgs/development/libraries/serf/default.nix b/pkgs/development/libraries/serf/default.nix index 409b5db0104..f0fedba5ac1 100644 --- a/pkgs/development/libraries/serf/default.nix +++ b/pkgs/development/libraries/serf/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, apr, scons, openssl, aprutil, zlib, krb5, pkgconfig }: stdenv.mkDerivation rec { - name = "serf-1.3.6"; + name = "serf-1.3.7"; src = fetchurl { url = "http://serf.googlecode.com/svn/src_releases/${name}.tar.bz2"; - sha256 = "1wk3cplazs8jznjc9ylpd63rrk9k2y05xa7zqx7psycr0gmpnqya"; + sha1 = "db9ae339dba10a2b47f9bdacf30a58fd8e36683a"; }; buildInputs = [ apr scons openssl aprutil zlib krb5 pkgconfig ]; From 2b75fe851b7e20ed05912be9e28963b2fb2d12ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 10:50:52 +0200 Subject: [PATCH 037/789] readline-6.3: update, including security fixes Close #3706 CVE-2014-2524 (likely not affecting any our program anyway). --- .../libraries/readline/readline6.3.nix | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/readline/readline6.3.nix b/pkgs/development/libraries/readline/readline6.3.nix index 9f5c9f7b581..356c2c055bd 100644 --- a/pkgs/development/libraries/readline/readline6.3.nix +++ b/pkgs/development/libraries/readline/readline6.3.nix @@ -1,11 +1,13 @@ -{ fetchurl, stdenv, ncurses }: +{ fetchzip, stdenv, ncurses }: stdenv.mkDerivation (rec { - name = "readline-6.3"; + name = "readline-6.3p08"; - src = fetchurl { - url = "mirror://gnu/readline/${name}.tar.gz"; - sha256 = "0hzxr9jxqqx5sxsv9vmlxdnvlr9vi4ih1avjb869hbs6p5qn1fjn"; + src = fetchzip { + #url = "mirror://gnu/readline/${name}.tar.gz"; + url = "http://git.savannah.gnu.org/cgit/readline.git/snapshot/" + + "readline-a73b98f779b388a5d0624e02e8bb187246e3e396.tar.gz"; + sha256 = "19ji3wrv4fs79fd0nkacjy9q94pvy2cm66yb3aqysahg0cbrz5l1"; }; propagatedBuildInputs = [ncurses]; @@ -17,7 +19,7 @@ stdenv.mkDerivation (rec { ./no-arch_only-6.3.patch ]; - meta = { + meta = with stdenv.lib; { description = "GNU Readline, a library for interactive line editing"; longDescription = '' @@ -37,9 +39,11 @@ stdenv.mkDerivation (rec { homepage = http://savannah.gnu.org/projects/readline/; - license = stdenv.lib.licenses.gpl3Plus; + license = licenses.gpl3Plus; - maintainers = [ stdenv.lib.maintainers.ludo ]; + maintainers = [ maintainers.ludo ]; + + platforms = platforms.unix; }; } From 50b65a7f8e097fffb6c561b806caaaa33473e939 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 14:17:05 +0200 Subject: [PATCH 038/789] readline: use 6.3 by default I found no build regressions with the most common dependents. It's possible that older readline branches may be vulnerable, although the last one announced seemed not to affect regular packages. --- pkgs/top-level/all-packages.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f2c8b83ada5..8a0a02d9c38 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2537,7 +2537,6 @@ let bashInteractive = appendToName "interactive" (callPackage ../shells/bash { interactive = true; - readline = readline63; # Includes many vi mode fixes }); bashCompletion = callPackage ../shells/bash-completion { }; @@ -3526,7 +3525,6 @@ let suitesparse = null; openjdk = null; gnuplot = null; - readline = readline63; }; octaveFull = (lowPrio (callPackage ../development/interpreters/octave { fltk = fltk13; @@ -4199,7 +4197,6 @@ let gdb = callPackage ../development/tools/misc/gdb { hurd = gnu.hurdCross; - readline = readline63; inherit (gnu) mig; }; @@ -6060,13 +6057,14 @@ let raul = callPackage ../development/libraries/audio/raul { }; - readline = readline6; # 6.2 works, 6.3 breaks python, parted + readline = readline6; + readline6 = readline63; readline4 = callPackage ../development/libraries/readline/readline4.nix { }; readline5 = callPackage ../development/libraries/readline/readline5.nix { }; - readline6 = callPackage ../development/libraries/readline/readline6.nix { }; + readline62 = callPackage ../development/libraries/readline/readline6.nix { }; readline63 = callPackage ../development/libraries/readline/readline6.3.nix { }; From 30fef8a3cffbc1586b448f227f8ebfa745bd1e95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 14:28:33 +0200 Subject: [PATCH 039/789] readline: remove unused old versions 4 and 5 ...including an unused patch. --- pkgs/development/libraries/readline/readline4.nix | 10 ---------- pkgs/development/libraries/readline/readline5.nix | 14 -------------- .../libraries/readline/shobj-darwin.patch | 11 ----------- pkgs/top-level/all-packages.nix | 4 ---- 4 files changed, 39 deletions(-) delete mode 100644 pkgs/development/libraries/readline/readline4.nix delete mode 100644 pkgs/development/libraries/readline/readline5.nix delete mode 100644 pkgs/development/libraries/readline/shobj-darwin.patch diff --git a/pkgs/development/libraries/readline/readline4.nix b/pkgs/development/libraries/readline/readline4.nix deleted file mode 100644 index d9dcdc9f048..00000000000 --- a/pkgs/development/libraries/readline/readline4.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ stdenv, fetchurl, ncurses }: - -stdenv.mkDerivation { - name = "readline-4.3"; - src = fetchurl { - url = mirror://gnu/readline/readline-4.3.tar.gz; - md5 = "f86f7cb717ab321fe15f1bbcb058c11e"; - }; - propagatedBuildInputs = [ncurses]; -} diff --git a/pkgs/development/libraries/readline/readline5.nix b/pkgs/development/libraries/readline/readline5.nix deleted file mode 100644 index c208d5b9fe6..00000000000 --- a/pkgs/development/libraries/readline/readline5.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ stdenv, fetchurl, ncurses }: - -stdenv.mkDerivation { - name = "readline-5.2"; - - src = fetchurl { - url = mirror://gnu/readline/readline-5.2.tar.gz; - sha256 = "0icz4hqqq8mlkwrpczyaha94kns0am9z0mh3a2913kg2msb8vs0j"; - }; - - propagatedBuildInputs = [ncurses]; - - patches = stdenv.lib.optional stdenv.isDarwin ./shobj-darwin.patch; -} diff --git a/pkgs/development/libraries/readline/shobj-darwin.patch b/pkgs/development/libraries/readline/shobj-darwin.patch deleted file mode 100644 index a9199ca3e89..00000000000 --- a/pkgs/development/libraries/readline/shobj-darwin.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/support/shobj-conf.orig 2006-04-11 06:15:43.000000000 -0700 -+++ b/support/shobj-conf 2007-11-08 01:15:43.000000000 -0800 -@@ -171,7 +171,7 @@ - SHLIB_LIBSUFF='dylib' - - case "${host_os}" in -- darwin[78]*) SHOBJ_LDFLAGS='' -+ darwin[789]*) SHOBJ_LDFLAGS='' - SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' - ;; - *) SHOBJ_LDFLAGS='-dynamic' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8a0a02d9c38..02f99c1f969 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6060,10 +6060,6 @@ let readline = readline6; readline6 = readline63; - readline4 = callPackage ../development/libraries/readline/readline4.nix { }; - - readline5 = callPackage ../development/libraries/readline/readline5.nix { }; - readline62 = callPackage ../development/libraries/readline/readline6.nix { }; readline63 = callPackage ../development/libraries/readline/readline6.3.nix { }; From ead8f2ba0abba57cc6def5a14fe52a6b191ed57d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 11:23:23 +0200 Subject: [PATCH 040/789] mesa: bugfix update --- pkgs/development/libraries/mesa/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index bbad10898bf..54fd8d3810e 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -24,7 +24,7 @@ else */ let - version = "10.2.5"; + version = "10.2.6"; # this is the default search path for DRI drivers driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; in @@ -35,7 +35,7 @@ stdenv.mkDerivation { src = fetchurl { url = "ftp://ftp.freedesktop.org/pub/mesa/${version}/MesaLib-${version}.tar.bz2"; - sha256 = "039is15p8pkhf8m0yiyb72zybl63xb9ckqzcg3xwi8zlyw5ryidl"; + sha256 = "01n8ib190s12m8hiiyi4wfm9jhkbqjd769npjwvf965smp918cqr"; }; prePatch = "patchShebangs ."; From 315b8ec8f69384b2ef29f00aee9ef50613f368f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 14:10:22 +0200 Subject: [PATCH 041/789] orc: bugfix updates --- pkgs/development/compilers/orc/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/orc/default.nix b/pkgs/development/compilers/orc/default.nix index 7dfbe218bb7..2ce3e89e897 100644 --- a/pkgs/development/compilers/orc/default.nix +++ b/pkgs/development/compilers/orc/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "orc-0.4.19"; + name = "orc-0.4.21"; src = fetchurl { - url = "http://gstreamer.freedesktop.org/src/orc/${name}.tar.gz"; - sha256 = "17mmgwll2waz44m908lcxc5fd6n44yysh7p4pdw33hr138r507z2"; + url = "http://gstreamer.freedesktop.org/src/orc/${name}.tar.xz"; + sha256 = "187wrnq0ficwjj4y3yqci5fxcdkiazfs6k5js26k5b26hipzmham"; }; doCheck = true; From c31c79f0dd82e9bf751dad16997388460a048dbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 11:23:42 +0200 Subject: [PATCH 042/789] xorg.xcb (lib+proto): update (seems mainly bug fixes) --- pkgs/servers/x11/xorg/default.nix | 12 ++++++------ pkgs/servers/x11/xorg/extra.list | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 6945d6559fb..8d00e8e5a49 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -915,11 +915,11 @@ let }) // {inherit ;}; libxcb = (mkDerivation "libxcb" { - name = "libxcb-1.10"; + name = "libxcb-1.11"; builder = ./builder.sh; src = fetchurl { - url = http://xcb.freedesktop.org/dist/libxcb-1.10.tar.bz2; - sha256 = "1dfmyb1zjx6n0zhr4y40mc1crlmj3bfjjhmn0f30ip9nnq2spncq"; + url = http://xcb.freedesktop.org/dist/libxcb-1.11.tar.bz2; + sha256 = "1xqgc81krx14f2c8yl5chzg5g2l26mhm2rwffy8dx7jv0iq5sqq3"; }; buildInputs = [pkgconfig libxslt libpthreadstubs python libXau xcbproto libXdmcp ]; }) // {inherit libxslt libpthreadstubs python libXau xcbproto libXdmcp ;}; @@ -1175,11 +1175,11 @@ let }) // {inherit ;}; xcbproto = (mkDerivation "xcbproto" { - name = "xcb-proto-1.10"; + name = "xcb-proto-1.11"; builder = ./builder.sh; src = fetchurl { - url = http://xcb.freedesktop.org/dist/xcb-proto-1.10.tar.bz2; - sha256 = "01dgp802i4ic9wkmpa7g1wm50pp547d3b96jjz2hnxavhpfhvx3y"; + url = http://xcb.freedesktop.org/dist/xcb-proto-1.11.tar.bz2; + sha256 = "0bp3f53l9fy5x3mn1rkj1g81aiyzl90wacwvqdgy831aa3kfxb5l"; }; buildInputs = [pkgconfig python ]; }) // {inherit python ;}; diff --git a/pkgs/servers/x11/xorg/extra.list b/pkgs/servers/x11/xorg/extra.list index 2d105241c2d..84795ed980b 100644 --- a/pkgs/servers/x11/xorg/extra.list +++ b/pkgs/servers/x11/xorg/extra.list @@ -1,6 +1,6 @@ http://xcb.freedesktop.org/dist/libpthread-stubs-0.3.tar.bz2 -http://xcb.freedesktop.org/dist/libxcb-1.10.tar.bz2 -http://xcb.freedesktop.org/dist/xcb-proto-1.10.tar.bz2 +http://xcb.freedesktop.org/dist/libxcb-1.11.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-proto-1.11.tar.bz2 http://xcb.freedesktop.org/dist/xcb-util-0.3.9.tar.bz2 http://xcb.freedesktop.org/dist/xcb-util-image-0.3.9.tar.bz2 http://xcb.freedesktop.org/dist/xcb-util-keysyms-0.3.9.tar.bz2 From acf8919844a0bda2f8641028d17b6064557407c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 11:26:28 +0200 Subject: [PATCH 043/789] xorg.xrandr: minor bugfix update --- pkgs/servers/x11/xorg/default.nix | 6 +++--- pkgs/servers/x11/xorg/tarballs-7.7.list | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 8d00e8e5a49..d2978f59ec5 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -2025,11 +2025,11 @@ let }) // {inherit ;}; xrandr = (mkDerivation "xrandr" { - name = "xrandr-1.4.2"; + name = "xrandr-1.4.3"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/xrandr-1.4.2.tar.bz2; - sha256 = "1g4hnj53wknsjwiqivyy3jl4qw7jwrpncz7d5p2z29zq5zlnxrxj"; + url = mirror://xorg/individual/app/xrandr-1.4.3.tar.bz2; + sha256 = "06xy0kr6ih7ilrwl6b5g6ay75vm2j4lxnv1d5xlj6sdqhqsaqm3i"; }; buildInputs = [pkgconfig libX11 xproto libXrandr libXrender ]; }) // {inherit libX11 xproto libXrandr libXrender ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 417d12ddadc..98386e3ff99 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -175,7 +175,7 @@ mirror://xorg/X11R7.7/src/everything/xorg-sgml-doctools-1.11.tar.bz2 mirror://xorg/X11R7.7/src/everything/xpr-1.0.4.tar.bz2 mirror://xorg/individual/app/xprop-1.2.2.tar.bz2 mirror://xorg/individual/proto/xproto-7.0.26.tar.bz2 -mirror://xorg/individual/app/xrandr-1.4.2.tar.bz2 +mirror://xorg/individual/app/xrandr-1.4.3.tar.bz2 mirror://xorg/individual/app/xrdb-1.1.0.tar.bz2 mirror://xorg/individual/app/xrefresh-1.0.5.tar.bz2 mirror://xorg/individual/app/xset-1.2.3.tar.bz2 From 59e3e060765f8c8e477bebbbca87969bf84618ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 11:46:25 +0200 Subject: [PATCH 044/789] xorg: update probably unused modules --- pkgs/servers/x11/xorg/default.nix | 12 ++++++------ pkgs/servers/x11/xorg/tarballs-7.7.list | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index d2978f59ec5..d64507ac3ba 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1405,11 +1405,11 @@ let }) // {inherit inputproto xorgserver xproto ;}; xf86inputmouse = (mkDerivation "xf86inputmouse" { - name = "xf86-input-mouse-1.9.0"; + name = "xf86-input-mouse-1.9.1"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-input-mouse-1.9.0.tar.bz2; - sha256 = "12344w0cxac1ld54qqwynxwazbmmpvqh1mzcskmfkmakmr5iwq2x"; + url = mirror://xorg/individual/driver/xf86-input-mouse-1.9.1.tar.bz2; + sha256 = "1kn5kx3qyn9qqvd6s24a2l1wfgck2pgfvzl90xpl024wfxsx719l"; }; buildInputs = [pkgconfig inputproto xorgserver xproto ]; }) // {inherit inputproto xorgserver xproto ;}; @@ -1515,11 +1515,11 @@ let }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ;}; xf86videogeode = (mkDerivation "xf86videogeode" { - name = "xf86-video-geode-2.11.15"; + name = "xf86-video-geode-2.11.16"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-geode-2.11.15.tar.bz2; - sha256 = "1w4ghr2a41kaw4g9na8ws5fjbmy8zkbxpxa21vmqc8mkjzb3pnq0"; + url = mirror://xorg/individual/driver/xf86-video-geode-2.11.16.tar.bz2; + sha256 = "19y13xl7yfrgyis92rmxi0ld95ajgr5il0n9j1dridwzw9aizz1q"; }; buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 98386e3ff99..d606f7daaa5 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -118,7 +118,7 @@ mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-evdev-2.8.4.tar.bz2 mirror://xorg/individual/driver/xf86-input-joystick-1.6.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-keyboard-1.8.0.tar.bz2 -mirror://xorg/individual/driver/xf86-input-mouse-1.9.0.tar.bz2 +mirror://xorg/individual/driver/xf86-input-mouse-1.9.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-synaptics-1.7.6.tar.bz2 mirror://xorg/individual/driver/xf86-input-vmmouse-13.0.0.tar.bz2 mirror://xorg/individual/driver/xf86-input-void-1.4.0.tar.bz2 @@ -130,7 +130,7 @@ mirror://xorg/individual/driver/xf86-video-nouveau-1.0.10.tar.bz2 mirror://xorg/individual/driver/xf86-video-cirrus-1.5.2.tar.bz2 mirror://xorg/individual/driver/xf86-video-dummy-0.3.7.tar.bz2 mirror://xorg/individual/driver/xf86-video-fbdev-0.4.4.tar.bz2 -mirror://xorg/individual/driver/xf86-video-geode-2.11.15.tar.bz2 +mirror://xorg/individual/driver/xf86-video-geode-2.11.16.tar.bz2 mirror://xorg/individual/driver/xf86-video-glide-1.2.2.tar.bz2 mirror://xorg/individual/driver/xf86-video-glint-1.2.8.tar.bz2 mirror://xorg/individual/driver/xf86-video-i128-1.3.6.tar.bz2 From b8826951e40626d1ad10958c1428871b97999d3e Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Thu, 21 Aug 2014 15:24:43 +0200 Subject: [PATCH 045/789] Adds ocaml-sqlite3EZ and its dependency ocaml+twt ocaml+twt is an alternative syntax for OCaml that uses indentation to group multi-line expressions, like Python and Haskell. Homepage: http://people.csail.mit.edu/mikelin/ocaml+twt/ sqlite3EZ is a thin wrapper for sqlite3-ocaml with a simplified interface. Query results are processed with a functional map/fold, transactions are aborted by exceptions, resource management is handled by the garbage collector, etc. Homepage: https://github.com/mlin/ocaml-sqlite3EZ --- .../ocaml-modules/sqlite3EZ/default.nix | 23 +++++++++++++++ .../development/ocaml-modules/twt/default.nix | 29 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 +++ 3 files changed, 56 insertions(+) create mode 100644 pkgs/development/ocaml-modules/sqlite3EZ/default.nix create mode 100644 pkgs/development/ocaml-modules/twt/default.nix diff --git a/pkgs/development/ocaml-modules/sqlite3EZ/default.nix b/pkgs/development/ocaml-modules/sqlite3EZ/default.nix new file mode 100644 index 00000000000..e8ec8e6f5da --- /dev/null +++ b/pkgs/development/ocaml-modules/sqlite3EZ/default.nix @@ -0,0 +1,23 @@ +{stdenv, fetchurl, ocaml, findlib, twt, ocaml_sqlite3 }: + +stdenv.mkDerivation { + name = "ocaml-sqlite3EZ-0.1.0"; + + src = fetchurl { + url = https://github.com/mlin/ocaml-sqlite3EZ/archive/v0.1.0.tar.gz; + sha256 = "8ed2c5d5914a65cbd95589ef11bfb8b38a020eb850cdd49b8adce7ee3a563748"; + }; + + buildInputs = [ ocaml findlib twt ]; + + propagatedBuildInputs = [ ocaml_sqlite3 ]; + + createFindlibDestdir = true; + + meta = { + homepage = http://github.com/mlin/ocaml-sqlite3EZ; + description = "A thin wrapper for sqlite3-ocaml with a simplified interface"; + license = stdenv.lib.licenses.mit; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/development/ocaml-modules/twt/default.nix b/pkgs/development/ocaml-modules/twt/default.nix new file mode 100644 index 00000000000..e2a627aa360 --- /dev/null +++ b/pkgs/development/ocaml-modules/twt/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, ocaml, findlib }: + +stdenv.mkDerivation { + name = "ocaml-twt-0.93.2"; + + src = fetchurl { + url = https://github.com/mlin/twt/archive/v0.93.2.tar.gz; + sha256 = "aec091fbd1e6c4d252cf9664237418b4bc8c7d6b7a17475589be78365397e768"; + }; + + buildInputs = [ ocaml findlib ]; + + createFindlibDestdir = true; + + configurePhase = '' + mkdir $out/bin + ''; + + installPhase = '' + make install PREFIX=$out + ''; + + meta = { + homepage = http://people.csail.mit.edu/mikelin/ocaml+twt/; + description = "“The Whitespace Thing” for OCaml"; + license = stdenv.lib.licenses.mit; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 22138aa60da..6fa8c4f91b9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3303,6 +3303,10 @@ let opam_1_1 = callPackage ../development/tools/ocaml/opam/1.1.nix { }; opam = opam_1_1; + sqlite3EZ = callPackage ../development/ocaml-modules/sqlite3EZ { }; + + twt = callPackage ../development/ocaml-modules/twt { }; + yojson = callPackage ../development/ocaml-modules/yojson { }; zarith = callPackage ../development/ocaml-modules/zarith { }; From 084626deecaffcaa017af07eaab00682eff5d6f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Aug 2014 21:15:32 +0200 Subject: [PATCH 046/789] glew: update, and tweak meta --- pkgs/development/libraries/glew/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/glew/default.nix b/pkgs/development/libraries/glew/default.nix index 9ec88799d0d..5127311e7c9 100644 --- a/pkgs/development/libraries/glew/default.nix +++ b/pkgs/development/libraries/glew/default.nix @@ -3,11 +3,11 @@ with stdenv.lib; stdenv.mkDerivation rec { - name = "glew-1.10.0"; + name = "glew-1.11.0"; src = fetchurl { url = "mirror://sourceforge/glew/${name}.tgz"; - sha256 = "01zki46dr5khzlyywr3cg615bcal32dazfazkf360s1znqh17i4r"; + sha256 = "1mhkllxz49l1x680dmzrv2i82qjrq017sykah3xc90f2d8qcxfv9"; }; nativeBuildInputs = [ x11 libXmu libXi ]; @@ -42,9 +42,11 @@ stdenv.mkDerivation rec { ] ++ optional (stdenv.cross.libc == "msvcrt") "SYSTEM=mingw" ++ optional (stdenv.cross.libc == "libSystem") "SYSTEM=darwin"; - meta = { + meta = with stdenv.lib; { description = "An OpenGL extension loading library for C(++)"; homepage = http://glew.sourceforge.net/; - license = ["BSD" "GLX" "SGI-B" "GPL2"]; # License description copied from gentoo-1.4.0 + license = licenses.free; # different files under different licenses + #["BSD" "GLX" "SGI-B" "GPL2"] + platforms = platforms.mesaPlatforms; }; } From e2db82874cf497c0dd156680d4c4a8f3b028125c Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Fri, 22 Aug 2014 14:56:33 +0200 Subject: [PATCH 047/789] Updates merlin to 1.7.1 --- pkgs/development/tools/ocaml/merlin/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/ocaml/merlin/default.nix b/pkgs/development/tools/ocaml/merlin/default.nix index 8efb90a9cef..970c07f3546 100644 --- a/pkgs/development/tools/ocaml/merlin/default.nix +++ b/pkgs/development/tools/ocaml/merlin/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, ocaml, findlib, yojson, menhir}: stdenv.mkDerivation { - name = "merlin-1.7"; + name = "merlin-1.7.1"; src = fetchurl { - url = "https://github.com/the-lambda-church/merlin/archive/v1.7.tar.gz"; - sha256 = "0grprrykah02g8va63lidbcb6n8sd18l2k9spb5rwlcs3xhfw42b"; + url = https://github.com/the-lambda-church/merlin/archive/v1.7.1.tar.gz; + sha256 = "c3b60c7b3fddaa2860e0d8ac0d4fed2ed60e319875734c7ac1a93df524c67aff"; }; buildInputs = [ ocaml findlib yojson menhir ]; From 5722f4950a68d86674b982c10fd4bd182fdb5e3a Mon Sep 17 00:00:00 2001 From: Jos van den Oever Date: Tue, 24 Jun 2014 17:03:58 +0200 Subject: [PATCH 048/789] Install runtime executables for k3b. --- pkgs/applications/misc/k3b/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/applications/misc/k3b/default.nix b/pkgs/applications/misc/k3b/default.nix index 06565065ce5..b220c9127de 100644 --- a/pkgs/applications/misc/k3b/default.nix +++ b/pkgs/applications/misc/k3b/default.nix @@ -1,5 +1,6 @@ { stdenv, fetchurl, cmake, qt4, perl, shared_mime_info, libvorbis, taglib , flac, libsamplerate, libdvdread, lame, libsndfile, libmad, gettext +, transcode, cdrdao, dvdplusrwtools, vcdimager , kdelibs, kdemultimedia, automoc4, phonon, libkcddb ? null }: @@ -20,6 +21,11 @@ stdenv.mkDerivation rec { ]; enableParallelBuilding = true; + + # at runtime, k3b needs the executables cdrdao, cdrecord, dvd+rw-format, + # eMovix, growisofs, mkisofs, normalize, readcd, transcode, vcdxbuild, + # vcdxminfo, and vcdxrip + propagatedUserEnvPkgs = [ transcode dvdplusrwtools cdrdao vcdimager ]; meta = with stdenv.lib; { description = "CD/DVD Burning Application for KDE"; From 7405af72e6c25b4cfb07b1d0f16bc10926590d41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sat, 23 Aug 2014 13:31:17 +0200 Subject: [PATCH 049/789] qt: make package names of "full" variants appear as such Currently there is no distinction in the package names of Qt packages whether they are "full" or not (i.e. coming from a qt5Full or qt5 attribute). Currently: $ nix-env -f. -qaP | grep "^qt[45]" qt48Full qt-4.8.6 qt5Full qt-5.2.1 qt5 qt-5.2.1 qt53 qt-5.3.1 qt53Full qt-5.3.1 [...] With this change: $ nix-env -f. -qaP | grep "^qt[45]" qt5 qt-5.2.1 qt53 qt-5.3.1 qt48Full qt-full-4.8.6 qt5Full qt-full-5.2.1 qt53Full qt-full-5.3.1 [...] --- pkgs/top-level/all-packages.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a4f275e3c6e..f307614260e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6024,24 +6024,24 @@ let else stdenv; }; - qt48Full = qt48.override { + qt48Full = appendToName "full" (qt48.override { docs = true; demos = true; examples = true; developerBuild = true; - }; + }); qt4SDK = qtcreator.override { sdkBuild = true; qtLib = qt48Full; }; - qt53Full = qt53.override { + qt53Full = appendToName "full" (qt53.override { buildDocs = true; buildExamples = true; buildTests = true; developerBuild = true; - }; + }); qt53 = callPackage ../development/libraries/qt-5/qt-5.3.nix { mesa = mesa_noglu; @@ -6059,12 +6059,12 @@ let bison = bison2; # error: too few arguments to function 'int yylex(... }; - qt5Full = qt5.override { + qt5Full = appendToName "full" (qt5.override { buildDocs = true; buildExamples = true; buildTests = true; developerBuild = true; - }; + }); qt5SDK = qtcreator.override { sdkBuild = true; From 0df6ccb4b61892954dc222f0c34a3b3b7f52bc24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 23 Aug 2014 11:41:41 +0200 Subject: [PATCH 050/789] orc: disable tests on i686 The failing test doesn't even work in the commit that introduced it. --- pkgs/development/compilers/orc/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/compilers/orc/default.nix b/pkgs/development/compilers/orc/default.nix index 2ce3e89e897..ca5eadc8a64 100644 --- a/pkgs/development/compilers/orc/default.nix +++ b/pkgs/development/compilers/orc/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "187wrnq0ficwjj4y3yqci5fxcdkiazfs6k5js26k5b26hipzmham"; }; - doCheck = true; + doCheck = stdenv.is64bit; # see https://bugzilla.gnome.org/show_bug.cgi?id=728129#c7 meta = { description = "The Oil Runtime Compiler"; From 72132d5ed0b39a832ce8e6719f9b6cc6dbca68b4 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sat, 19 Apr 2014 16:33:00 -0300 Subject: [PATCH 051/789] Xiphos - New Package (version 3.2.1) This is a new expression for Xiphos 3.2.1, followed by an update of Sword library to 1.7.3 (required) --- pkgs/applications/misc/xiphos/default.nix | 57 ++++++++++++++++++++ pkgs/development/libraries/sword/default.nix | 4 +- pkgs/top-level/all-packages.nix | 7 +++ 3 files changed, 66 insertions(+), 2 deletions(-) create mode 100644 pkgs/applications/misc/xiphos/default.nix diff --git a/pkgs/applications/misc/xiphos/default.nix b/pkgs/applications/misc/xiphos/default.nix new file mode 100644 index 00000000000..b8cd2ff2584 --- /dev/null +++ b/pkgs/applications/misc/xiphos/default.nix @@ -0,0 +1,57 @@ +{stdenv, fetchurl, pkgconfig +, python +, intltool +, docbook2x, docbook_xml_dtd_412, libxslt +, sword, clucene_core +, gnome_doc_utils +, libgsf, gconf +, gtkhtml, libgtkhtml, libglade, scrollkeeper +, webkitgtk +, dbus_glib, enchant, isocodes, libuuid +}: + +stdenv.mkDerivation rec { + name = "xiphos-${version}"; + version = "3.2.1"; + + src = fetchurl { + url = "http://downloads.sourceforge.net/project/gnomesword/Xiphos/${version}/${name}.tar.gz"; + sha256 = "0xff31f89as1p7fn3vq8ishjhbmx6qhc25msh5ypa0zg8hm5dxbb"; + }; + + buildInputs = [ pkgconfig python intltool docbook2x docbook_xml_dtd_412 libxslt sword clucene_core gnome_doc_utils libgsf gconf gtkhtml libgtkhtml libglade scrollkeeper webkitgtk dbus_glib enchant isocodes libuuid ]; + + prePatch = '' + patchShebangs .; + ''; + + preConfigure = '' + export CLUCENE_HOME=${clucene_core}; + export SWORD_HOME=${sword}; + ''; + + configurePhase = '' + python waf configure --prefix=$out + ''; + + buildPhase = '' + python waf build + ''; + + installPhase = '' + python waf install + ''; + + meta = { + description = "A GTK Bible study tool"; + longDescription = '' + Xiphos (formerly known as GnomeSword) is a Bible study tool written for Linux, UNIX, + and Windows using GTK, offering a rich and featureful environment for reading, study, + and research using modules from The SWORD Project and elsewhere. + ''; + homepage = http://www.xiphos.org/; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = [ stdenv.lib.maintainers.AndersonTorres ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/sword/default.nix b/pkgs/development/libraries/sword/default.nix index 28afdf85dfb..5c276ead23a 100644 --- a/pkgs/development/libraries/sword/default.nix +++ b/pkgs/development/libraries/sword/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { - version = "1.7.2"; + version = "1.7.3"; name = "sword-${version}"; src = fetchurl { url = "http://www.crosswire.org/ftpmirror/pub/sword/source/v1.7/${name}.tar.gz"; - sha256 = "ac7aace0ecb7a405d4b4b211ee1ae5b2250bb5c57c9197179747c9e830787871"; + sha256 = "1sm9ivypsx3mraqnziic7qkxjx1b7crvlln0zq6cnpjx2pzqfgas"; }; buildInputs = [ pkgconfig icu clucene_core curl ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 094e410fafe..312e9718afc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10097,6 +10097,13 @@ let inherit (gnome) libglade GConf; }; + xiphos = callPackage ../applications/misc/xiphos { + gconf = gnome2.GConf; + inherit (gnome2) gtkhtml libgtkhtml libglade scrollkeeper; + python = python27; + webkitgtk = webkitgtk2; + }; + xournal = callPackage ../applications/graphics/xournal { inherit (gnome) libgnomeprint libgnomeprintui libgnomecanvas; }; From 72df3f37e55aa1e14733b03482c602114bf56dcd Mon Sep 17 00:00:00 2001 From: Matthew Brown Date: Sun, 24 Aug 2014 11:17:31 +0100 Subject: [PATCH 052/789] Updated definition file as per comments from the collaborator --- pkgs/servers/search/sphinxsearch/default.nix | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/pkgs/servers/search/sphinxsearch/default.nix b/pkgs/servers/search/sphinxsearch/default.nix index 9264ae99609..27bbb91fb18 100644 --- a/pkgs/servers/search/sphinxsearch/default.nix +++ b/pkgs/servers/search/sphinxsearch/default.nix @@ -1,12 +1,10 @@ -{ stdenv, fetchurl, pkgconfig, mysql }: - -let - version = "2.1.9"; +{ stdenv, fetchurl, pkgconfig, mysql, + version = "2.1.9", mainSrc = fetchurl { url = "http://sphinxsearch.com/files/sphinx-${version}-release.tar.gz"; sha256 = "00vwxf3zr0g1fq9mls1z2rd8nxw74b76pkl1j466lig1qc5am2b2"; - }; -in + } +}: stdenv.mkDerivation rec { name = "sphinxsearch-${version}"; @@ -22,7 +20,7 @@ stdenv.mkDerivation rec { ]; meta = { - description = "Sphinx is an open source full text search server."; + description = "An open source full text search server"; homepage = http://sphinxsearch.com; license = stdenv.lib.licenses.gpl2; platforms = stdenv.lib.platforms.all; From 8a445f923710ff1a4885c268a16cb931e3b639f0 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Sat, 23 Aug 2014 20:34:01 +0200 Subject: [PATCH 053/789] Refactor fetchurl handling in stdenvLinux All the different stages of stdenv had the fetchurl inherited anyways, so make this generic in stdenvBootFun. This commit doesn't change the outhash (or drvhash) of the stdenv. --- pkgs/stdenv/linux/default.nix | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 23cccf223f4..71b23a396d9 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -46,7 +46,7 @@ rec { builder = bootstrapFiles.sh; args = - if system == "armv5tel-linux" || system == "armv6l-linux" + if system == "armv5tel-linux" || system == "armv6l-linux" || system == "armv7l-linux" then [ ./scripts/unpack-bootstrap-tools-arm.sh ] else [ ./scripts/unpack-bootstrap-tools.sh ]; @@ -69,9 +69,9 @@ rec { # This function builds the various standard environments used during # the bootstrap. stdenvBootFun = - {gcc, extraAttrs ? {}, overrides ? (pkgs: {}), extraPath ? [], fetchurl}: + {gcc, extraAttrs ? {}, overrides ? (pkgs: {}), extraPath ? []}: - import ../generic { + let thisStdenv = import ../generic { inherit system config; name = "stdenv-linux-boot"; preHook = @@ -83,27 +83,22 @@ rec { ''; shell = "${bootstrapTools}/bin/sh"; initialPath = [bootstrapTools] ++ extraPath; - fetchurlBoot = fetchurl; + fetchurlBoot = import ../../build-support/fetchurl { + stdenv = stdenvLinuxBoot0; + curl = bootstrapTools; + }; inherit gcc; # Having the proper 'platform' in all the stdenvs allows getting proper # linuxHeaders for example. extraAttrs = extraAttrs // { inherit platform; }; - overrides = pkgs: (overrides pkgs) // { - inherit fetchurl; - }; + overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; }; + in thisStdenv; # Build a dummy stdenv with no GCC or working fetchurl. This is # because we need a stdenv to build the GCC wrapper and fetchurl. stdenvLinuxBoot0 = stdenvBootFun { gcc = "/no-such-path"; - fetchurl = null; - }; - - - fetchurl = import ../../build-support/fetchurl { - stdenv = stdenvLinuxBoot0; - curl = bootstrapTools; }; @@ -142,7 +137,6 @@ rec { binutils = bootstrapTools; coreutils = bootstrapTools; }; - inherit fetchurl; }; @@ -168,7 +162,6 @@ rec { overrides = pkgs: { inherit (stdenvLinuxBoot1Pkgs) perl; }; - inherit fetchurl; }; @@ -211,7 +204,6 @@ rec { glibc = stdenvLinuxGlibc; # Required by gcc47 build }; extraPath = [ stdenvLinuxBoot1Pkgs.paxctl ]; - inherit fetchurl; }; @@ -238,7 +230,6 @@ rec { inherit (stdenvLinuxBoot1Pkgs) perl; inherit (stdenvLinuxBoot3Pkgs) gettext gnum4 gmp; }; - inherit fetchurl; }; @@ -281,7 +272,7 @@ rec { shell = stdenvLinuxBoot4Pkgs.bash + "/bin/bash"; - fetchurlBoot = fetchurl; + fetchurlBoot = stdenvLinuxBoot0.fetchurlBoot; extraAttrs = { inherit (stdenvLinuxBoot3Pkgs) glibc; From 142970b9eb1925d67b4b9b41d060533fe249f2ec Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Sat, 23 Aug 2014 20:45:32 +0200 Subject: [PATCH 054/789] Refactor wrapGCC in stdenvLinux Don't use default parameter values, to make the callsites more readable and for easier debuggability/changability. Also reordered the callsites' parameter ordering for consistency. In the final stdenv don't repeat the name of the shell. This commit doesn't change the outhash (or drvhash) of the stdenv. --- pkgs/stdenv/linux/default.nix | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 71b23a396d9..d2c36b9dc0d 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -118,12 +118,12 @@ rec { # A helper function to call gcc-wrapper. wrapGCC = - { gcc ? bootstrapTools, libc, binutils, coreutils, shell ? "", name ? "bootstrap-gcc-wrapper" }: + { gcc, libc, binutils, coreutils, name }: lib.makeOverridable (import ../../build-support/gcc-wrapper) { nativeTools = false; nativeLibc = false; - inherit gcc binutils coreutils libc shell name; + inherit gcc binutils coreutils libc name; stdenv = stdenvLinuxBoot0; }; @@ -133,9 +133,11 @@ rec { # configure script happy. stdenvLinuxBoot1 = stdenvBootFun { gcc = wrapGCC { + gcc = bootstrapTools; libc = bootstrapGlibc; binutils = bootstrapTools; coreutils = bootstrapTools; + name = "bootstrap-gcc-wrapper"; }; }; @@ -155,9 +157,11 @@ rec { # 3) 2nd stdenv that we will use to build only Glibc. stdenvLinuxBoot2 = stdenvBootFun { gcc = wrapGCC { + gcc = bootstrapTools; libc = bootstrapGlibc; binutils = binutils1; coreutils = bootstrapTools; + name = "bootstrap-gcc-wrapper"; }; overrides = pkgs: { inherit (stdenvLinuxBoot1Pkgs) perl; @@ -183,9 +187,11 @@ rec { # binutils and rest of the bootstrap tools, including GCC. stdenvLinuxBoot3 = stdenvBootFun { gcc = wrapGCC { + gcc = bootstrapTools; + libc = stdenvLinuxGlibc; binutils = binutils1; coreutils = bootstrapTools; - libc = stdenvLinuxGlibc; + name = "bootstrap-gcc-wrapper"; }; overrides = pkgs: { glibc = stdenvLinuxGlibc; @@ -219,10 +225,10 @@ rec { # (e.g. coreutils) are still from the bootstrap tools. stdenvLinuxBoot4 = stdenvBootFun { gcc = wrapGCC rec { + gcc = stdenvLinuxBoot3Pkgs.gcc.gcc; + libc = stdenvLinuxGlibc; binutils = binutils1; coreutils = bootstrapTools; - libc = stdenvLinuxGlibc; - gcc = stdenvLinuxBoot3Pkgs.gcc.gcc; name = ""; }; extraPath = [ stdenvLinuxBoot3Pkgs.xz ]; @@ -262,16 +268,15 @@ rec { ((import ../common-path.nix) {pkgs = stdenvLinuxBoot4Pkgs;}) ++ [stdenvLinuxBoot4Pkgs.patchelf stdenvLinuxBoot4Pkgs.paxctl ]; - gcc = wrapGCC rec { - inherit (stdenvLinuxBoot4Pkgs) binutils coreutils; - libc = stdenvLinuxGlibc; - gcc = stdenvLinuxBoot4.gcc.gcc; - shell = stdenvLinuxBoot4Pkgs.bash + "/bin/bash"; - name = ""; - }; - shell = stdenvLinuxBoot4Pkgs.bash + "/bin/bash"; + gcc = (wrapGCC rec { + gcc = stdenvLinuxBoot4.gcc.gcc; + libc = stdenvLinuxGlibc; + inherit (stdenvLinuxBoot4Pkgs) binutils coreutils; + name = ""; + }).override { inherit shell; }; + fetchurlBoot = stdenvLinuxBoot0.fetchurlBoot; extraAttrs = { From 350022247a0b59abf42228d1d3fbb4222974b130 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Sat, 23 Aug 2014 21:26:37 +0200 Subject: [PATCH 055/789] Refactor stage handling in stdenvLinux Make stages explicit and generalize the pattern of having an stdenv and a pkgs collection for all stages to a common stage generating function called stageFun. Rewrite all stage handling with this new function. This commit doesn't change the outhash (or drvhash) of the stdenv. --- pkgs/stdenv/linux/default.nix | 187 +++++++++++++++------------------- 1 file changed, 80 insertions(+), 107 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index d2c36b9dc0d..6c910c284a5 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -35,8 +35,8 @@ rec { # The bootstrap process proceeds in several steps. - # 1) Create a standard environment by downloading pre-built binaries - # of coreutils, GCC, etc. + # Create a standard environment by downloading pre-built binaries of + # coreutils, GCC, etc. # Download and unpack the bootstrap tools (coreutils, GCC, Glibc, ...). @@ -67,11 +67,13 @@ rec { # This function builds the various standard environments used during - # the bootstrap. - stdenvBootFun = + # the bootstrap. In all stages, we build an stdenv and the package + # set that can be built with that stdenv. + stageFun = {gcc, extraAttrs ? {}, overrides ? (pkgs: {}), extraPath ? []}: - let thisStdenv = import ../generic { + let + thisStdenv = import ../generic { inherit system config; name = "stdenv-linux-boot"; preHook = @@ -84,7 +86,7 @@ rec { shell = "${bootstrapTools}/bin/sh"; initialPath = [bootstrapTools] ++ extraPath; fetchurlBoot = import ../../build-support/fetchurl { - stdenv = stdenvLinuxBoot0; + stdenv = stage0.stdenv; curl = bootstrapTools; }; inherit gcc; @@ -93,26 +95,32 @@ rec { extraAttrs = extraAttrs // { inherit platform; }; overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; }; - in thisStdenv; + thisPkgs = allPackages { + inherit system platform; + bootStdenv = thisStdenv; + }; + in { stdenv = thisStdenv; pkgs = thisPkgs; }; # Build a dummy stdenv with no GCC or working fetchurl. This is # because we need a stdenv to build the GCC wrapper and fetchurl. - stdenvLinuxBoot0 = stdenvBootFun { + stage0 = stageFun { gcc = "/no-such-path"; - }; - - # The Glibc include directory cannot have the same prefix as the GCC - # include directory, since GCC gets confused otherwise (it will - # search the Glibc headers before the GCC headers). So create a - # dummy Glibc. - bootstrapGlibc = stdenvLinuxBoot0.mkDerivation { - name = "bootstrap-glibc"; - buildCommand = '' - mkdir -p $out - ln -s ${bootstrapTools}/lib $out/lib - ln -s ${bootstrapTools}/include-glibc $out/include - ''; + overrides = pkgs: { + # The Glibc include directory cannot have the same prefix as the + # GCC include directory, since GCC gets confused otherwise (it + # will search the Glibc headers before the GCC headers). So + # create a dummy Glibc here, which will be used in the stdenv of + # stage1. + glibc = stage0.stdenv.mkDerivation { + name = "bootstrap-glibc"; + buildCommand = '' + mkdir -p $out + ln -s ${bootstrapTools}/lib $out/lib + ln -s ${bootstrapTools}/include-glibc $out/include + ''; + }; + }; }; @@ -124,78 +132,58 @@ rec { nativeTools = false; nativeLibc = false; inherit gcc binutils coreutils libc name; - stdenv = stdenvLinuxBoot0; + stdenv = stage0.stdenv; }; # Create the first "real" standard environment. This one consists # of bootstrap tools only, and a minimal Glibc to keep the GCC # configure script happy. - stdenvLinuxBoot1 = stdenvBootFun { + stage1 = stageFun { gcc = wrapGCC { gcc = bootstrapTools; - libc = bootstrapGlibc; + libc = stage0.pkgs.glibc; binutils = bootstrapTools; coreutils = bootstrapTools; name = "bootstrap-gcc-wrapper"; }; + # Rebuild binutils to use from stage2 onwards. + overrides = pkgs: { + binutils = pkgs.binutils.override { gold = false; }; + }; }; - # 2) These are the packages that we can build with the first - # stdenv. We only need binutils, because recent Glibcs - # require recent Binutils, and those in bootstrap-tools may - # be too old. - stdenvLinuxBoot1Pkgs = allPackages { - inherit system platform; - bootStdenv = stdenvLinuxBoot1; - }; - - binutils1 = stdenvLinuxBoot1Pkgs.binutils.override { gold = false; }; - - - # 3) 2nd stdenv that we will use to build only Glibc. - stdenvLinuxBoot2 = stdenvBootFun { + # 2nd stdenv that contains our own rebuilt binutils and is used for + # compiling our own Glibc. + stage2 = stageFun { gcc = wrapGCC { gcc = bootstrapTools; - libc = bootstrapGlibc; - binutils = binutils1; + libc = stage0.pkgs.glibc; + binutils = stage1.pkgs.binutils; coreutils = bootstrapTools; name = "bootstrap-gcc-wrapper"; }; overrides = pkgs: { - inherit (stdenvLinuxBoot1Pkgs) perl; + inherit (stage1.pkgs) perl; + # This also contains the full, dynamically linked, final Glibc. }; }; - # 4) These are the packages that we can build with the 2nd - # stdenv. - stdenvLinuxBoot2Pkgs = allPackages { - inherit system platform; - bootStdenv = stdenvLinuxBoot2; - }; - - - # 5) Build Glibc with the bootstrap tools. The result is the full, - # dynamically linked, final Glibc. - stdenvLinuxGlibc = stdenvLinuxBoot2Pkgs.glibc; - - - # 6) Construct a third stdenv identical to the 2nd, except that this - # one uses the Glibc built in step 5. It still uses the recent - # binutils and rest of the bootstrap tools, including GCC. - stdenvLinuxBoot3 = stdenvBootFun { + # Construct a third stdenv identical to the 2nd, except that this + # one uses the rebuilt Glibc from stage2. It still uses the recent + # binutils and rest of the bootstrap tools, including GCC. + stage3 = stageFun { gcc = wrapGCC { gcc = bootstrapTools; - libc = stdenvLinuxGlibc; - binutils = binutils1; + libc = stage2.pkgs.glibc; + binutils = stage1.pkgs.binutils; coreutils = bootstrapTools; name = "bootstrap-gcc-wrapper"; }; overrides = pkgs: { - glibc = stdenvLinuxGlibc; - inherit (stdenvLinuxBoot1Pkgs) perl; + inherit (stage2.pkgs) glibc perl; # Link GCC statically against GMP etc. This makes sense because # these builds of the libraries are only used by GCC, so it # reduces the size of the stdenv closure. @@ -207,52 +195,37 @@ rec { ppl = pkgs.ppl.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; }; extraAttrs = { - glibc = stdenvLinuxGlibc; # Required by gcc47 build + glibc = stage2.pkgs.glibc; # Required by gcc47 build }; - extraPath = [ stdenvLinuxBoot1Pkgs.paxctl ]; + extraPath = [ stage1.pkgs.paxctl ]; }; - # 7) The packages that can be built using the third stdenv. - stdenvLinuxBoot3Pkgs = allPackages { - inherit system platform; - bootStdenv = stdenvLinuxBoot3; - }; - - - # 8) Construct a fourth stdenv identical to the second, except that - # this one uses the new GCC from step 7. The other tools - # (e.g. coreutils) are still from the bootstrap tools. - stdenvLinuxBoot4 = stdenvBootFun { - gcc = wrapGCC rec { - gcc = stdenvLinuxBoot3Pkgs.gcc.gcc; - libc = stdenvLinuxGlibc; - binutils = binutils1; + # Construct a fourth stdenv that uses the new GCC. But coreutils is + # still from the bootstrap tools. + stage4 = stageFun { + gcc = wrapGCC { + gcc = stage3.pkgs.gcc.gcc; + libc = stage2.pkgs.glibc; + binutils = stage1.pkgs.binutils; coreutils = bootstrapTools; name = ""; }; - extraPath = [ stdenvLinuxBoot3Pkgs.xz ]; + extraPath = [ stage3.pkgs.xz ]; overrides = pkgs: { - inherit (stdenvLinuxBoot1Pkgs) perl; - inherit (stdenvLinuxBoot3Pkgs) gettext gnum4 gmp; + inherit (stage1.pkgs) perl; + inherit (stage3.pkgs) gettext gnum4 gmp glibc; }; }; - # 9) The packages that can be built using the fourth stdenv. - stdenvLinuxBoot4Pkgs = allPackages { - inherit system platform; - bootStdenv = stdenvLinuxBoot4; - }; - - - # 10) Construct the final stdenv. It uses the Glibc and GCC, and - # adds in a new binutils that doesn't depend on bootstrap-tools, - # as well as dynamically linked versions of all other tools. + # Construct the final stdenv. It uses the Glibc and GCC, and adds + # in a new binutils that doesn't depend on bootstrap-tools, as well + # as dynamically linked versions of all other tools. # - # When updating stdenvLinux, make sure that the result has no - # dependency (`nix-store -qR') on bootstrapTools or the - # first binutils built. + # When updating stdenvLinux, make sure that the result has no + # dependency (`nix-store -qR') on bootstrapTools or the first + # binutils built. stdenvLinux = import ../generic rec { inherit system config; @@ -265,31 +238,31 @@ rec { ''; initialPath = - ((import ../common-path.nix) {pkgs = stdenvLinuxBoot4Pkgs;}) - ++ [stdenvLinuxBoot4Pkgs.patchelf stdenvLinuxBoot4Pkgs.paxctl ]; + ((import ../common-path.nix) {pkgs = stage4.pkgs;}) + ++ [stage4.pkgs.patchelf stage4.pkgs.paxctl ]; - shell = stdenvLinuxBoot4Pkgs.bash + "/bin/bash"; + shell = stage4.pkgs.bash + "/bin/bash"; gcc = (wrapGCC rec { - gcc = stdenvLinuxBoot4.gcc.gcc; - libc = stdenvLinuxGlibc; - inherit (stdenvLinuxBoot4Pkgs) binutils coreutils; + gcc = stage4.stdenv.gcc.gcc; + libc = stage4.pkgs.glibc; + inherit (stage4.pkgs) binutils coreutils; name = ""; }).override { inherit shell; }; - fetchurlBoot = stdenvLinuxBoot0.fetchurlBoot; + fetchurlBoot = stage4.stdenv.fetchurl; extraAttrs = { - inherit (stdenvLinuxBoot3Pkgs) glibc; + inherit (stage4.pkgs) glibc; inherit platform bootstrapTools; - shellPackage = stdenvLinuxBoot4Pkgs.bash; + shellPackage = stage4.pkgs.bash; }; overrides = pkgs: { inherit gcc; - inherit (stdenvLinuxBoot3Pkgs) glibc; - inherit (stdenvLinuxBoot4Pkgs) binutils; - inherit (stdenvLinuxBoot4Pkgs) + inherit (stage3.pkgs) glibc; + inherit (stage4.pkgs) binutils; + inherit (stage4.pkgs) gzip bzip2 xz bash coreutils diffutils findutils gawk gnumake gnused gnutar gnugrep gnupatch patchelf attr acl paxctl; From 49e5837780b9811f5cb9f36979a3a3b737b2d94f Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Sun, 24 Aug 2014 15:47:10 +0200 Subject: [PATCH 056/789] Move wrapGCC helper up This commit doesn't change the outhash (or drvhash) of the stdenv. --- pkgs/stdenv/linux/default.nix | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 6c910c284a5..2d96869f23e 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -66,6 +66,18 @@ rec { }; + # A helper function to call gcc-wrapper. + wrapGCC = + { gcc, libc, binutils, coreutils, name }: + + lib.makeOverridable (import ../../build-support/gcc-wrapper) { + nativeTools = false; + nativeLibc = false; + inherit gcc binutils coreutils libc name; + stdenv = stage0.stdenv; + }; + + # This function builds the various standard environments used during # the bootstrap. In all stages, we build an stdenv and the package # set that can be built with that stdenv. @@ -101,6 +113,7 @@ rec { }; in { stdenv = thisStdenv; pkgs = thisPkgs; }; + # Build a dummy stdenv with no GCC or working fetchurl. This is # because we need a stdenv to build the GCC wrapper and fetchurl. stage0 = stageFun { @@ -124,18 +137,6 @@ rec { }; - # A helper function to call gcc-wrapper. - wrapGCC = - { gcc, libc, binutils, coreutils, name }: - - lib.makeOverridable (import ../../build-support/gcc-wrapper) { - nativeTools = false; - nativeLibc = false; - inherit gcc binutils coreutils libc name; - stdenv = stage0.stdenv; - }; - - # Create the first "real" standard environment. This one consists # of bootstrap tools only, and a minimal Glibc to keep the GCC # configure script happy. From ea65229f70fe75ebc8440d69575a9b8f2e573da0 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Sun, 24 Aug 2014 15:55:14 +0200 Subject: [PATCH 057/789] Refactor stages to only ever refer to the previous stage This commit doesn't change the outhash (or drvhash) of the stdenv. --- pkgs/stdenv/linux/default.nix | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 2d96869f23e..6d54228978f 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -140,6 +140,13 @@ rec { # Create the first "real" standard environment. This one consists # of bootstrap tools only, and a minimal Glibc to keep the GCC # configure script happy. + # + # For clarity, we only use the previous stage when specifying these + # stages. So stageN should only ever have references for stage{N-1}. + # + # If we ever need to use a package from more than one stage back, we + # simply re-export those packages in the middle stage(s) using the + # overrides attribute and the inherit syntax. stage1 = stageFun { gcc = wrapGCC { gcc = bootstrapTools; @@ -151,6 +158,7 @@ rec { # Rebuild binutils to use from stage2 onwards. overrides = pkgs: { binutils = pkgs.binutils.override { gold = false; }; + inherit (stage0.pkgs) glibc; }; }; @@ -160,13 +168,13 @@ rec { stage2 = stageFun { gcc = wrapGCC { gcc = bootstrapTools; - libc = stage0.pkgs.glibc; + libc = stage1.pkgs.glibc; binutils = stage1.pkgs.binutils; coreutils = bootstrapTools; name = "bootstrap-gcc-wrapper"; }; overrides = pkgs: { - inherit (stage1.pkgs) perl; + inherit (stage1.pkgs) perl binutils paxctl; # This also contains the full, dynamically linked, final Glibc. }; }; @@ -179,12 +187,12 @@ rec { gcc = wrapGCC { gcc = bootstrapTools; libc = stage2.pkgs.glibc; - binutils = stage1.pkgs.binutils; + binutils = stage2.pkgs.binutils; coreutils = bootstrapTools; name = "bootstrap-gcc-wrapper"; }; overrides = pkgs: { - inherit (stage2.pkgs) glibc perl; + inherit (stage2.pkgs) binutils glibc perl; # Link GCC statically against GMP etc. This makes sense because # these builds of the libraries are only used by GCC, so it # reduces the size of the stdenv closure. @@ -198,7 +206,7 @@ rec { extraAttrs = { glibc = stage2.pkgs.glibc; # Required by gcc47 build }; - extraPath = [ stage1.pkgs.paxctl ]; + extraPath = [ stage2.pkgs.paxctl ]; }; @@ -207,15 +215,14 @@ rec { stage4 = stageFun { gcc = wrapGCC { gcc = stage3.pkgs.gcc.gcc; - libc = stage2.pkgs.glibc; - binutils = stage1.pkgs.binutils; + libc = stage3.pkgs.glibc; + binutils = stage3.pkgs.binutils; coreutils = bootstrapTools; name = ""; }; extraPath = [ stage3.pkgs.xz ]; overrides = pkgs: { - inherit (stage1.pkgs) perl; - inherit (stage3.pkgs) gettext gnum4 gmp glibc; + inherit (stage3.pkgs) gettext gnum4 gmp perl glibc; }; }; @@ -261,11 +268,9 @@ rec { overrides = pkgs: { inherit gcc; - inherit (stage3.pkgs) glibc; - inherit (stage4.pkgs) binutils; inherit (stage4.pkgs) - gzip bzip2 xz bash coreutils diffutils findutils gawk - gnumake gnused gnutar gnugrep gnupatch patchelf + gzip bzip2 xz bash binutils coreutils diffutils findutils gawk + glibc gnumake gnused gnutar gnugrep gnupatch patchelf attr acl paxctl; }; }; From 27d39849355d1a39f8538d09c52e04f8f87510ea Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sun, 24 Aug 2014 18:08:23 +0200 Subject: [PATCH 058/789] Indentation --- pkgs/stdenv/linux/default.nix | 53 ++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 6d54228978f..80bc982267b 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -85,32 +85,35 @@ rec { {gcc, extraAttrs ? {}, overrides ? (pkgs: {}), extraPath ? []}: let - thisStdenv = import ../generic { - inherit system config; - name = "stdenv-linux-boot"; - preHook = - '' - # Don't patch #!/interpreter because it leads to retained - # dependencies on the bootstrapTools in the final stdenv. - dontPatchShebangs=1 - ${commonPreHook} - ''; - shell = "${bootstrapTools}/bin/sh"; - initialPath = [bootstrapTools] ++ extraPath; - fetchurlBoot = import ../../build-support/fetchurl { - stdenv = stage0.stdenv; - curl = bootstrapTools; + + thisStdenv = import ../generic { + inherit system config; + name = "stdenv-linux-boot"; + preHook = + '' + # Don't patch #!/interpreter because it leads to retained + # dependencies on the bootstrapTools in the final stdenv. + dontPatchShebangs=1 + ${commonPreHook} + ''; + shell = "${bootstrapTools}/bin/sh"; + initialPath = [bootstrapTools] ++ extraPath; + fetchurlBoot = import ../../build-support/fetchurl { + stdenv = stage0.stdenv; + curl = bootstrapTools; + }; + inherit gcc; + # Having the proper 'platform' in all the stdenvs allows getting proper + # linuxHeaders for example. + extraAttrs = extraAttrs // { inherit platform; }; + overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; }; - inherit gcc; - # Having the proper 'platform' in all the stdenvs allows getting proper - # linuxHeaders for example. - extraAttrs = extraAttrs // { inherit platform; }; - overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; - }; - thisPkgs = allPackages { - inherit system platform; - bootStdenv = thisStdenv; - }; + + thisPkgs = allPackages { + inherit system platform; + bootStdenv = thisStdenv; + }; + in { stdenv = thisStdenv; pkgs = thisPkgs; }; From f5d648e27d1b31c91740d536a88e7d2c251aaf79 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 25 Aug 2014 09:35:06 +0200 Subject: [PATCH 059/789] Fix evaluation --- pkgs/stdenv/linux/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 80bc982267b..1daebd9dd36 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -261,7 +261,7 @@ rec { name = ""; }).override { inherit shell; }; - fetchurlBoot = stage4.stdenv.fetchurl; + inherit (stage4.stdenv) fetchurlBoot; extraAttrs = { inherit (stage4.pkgs) glibc; From 93697e85cabbf54a6e040521d8dc55f757b2a468 Mon Sep 17 00:00:00 2001 From: Dmitry Belyaev Date: Fri, 15 Aug 2014 11:14:54 +1000 Subject: [PATCH 060/789] Support odbc in erlang R16 and R17 --- pkgs/development/interpreters/erlang/R16.nix | 9 ++++++--- pkgs/development/interpreters/erlang/R17.nix | 9 ++++++--- pkgs/top-level/all-packages.nix | 3 +++ 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/pkgs/development/interpreters/erlang/R16.nix b/pkgs/development/interpreters/erlang/R16.nix index 5945cdd8299..23243803e8d 100644 --- a/pkgs/development/interpreters/erlang/R16.nix +++ b/pkgs/development/interpreters/erlang/R16.nix @@ -1,13 +1,15 @@ { stdenv, fetchurl, perl, gnum4, ncurses, openssl , gnused, gawk, makeWrapper +, odbcSupport ? false, unixODBC ? null , wxSupport ? false, mesa ? null, wxGTK ? null, xlibs ? null }: assert wxSupport -> mesa != null && wxGTK != null && xlibs != null; +assert odbcSupport -> unixODBC != null; with stdenv.lib; stdenv.mkDerivation rec { - name = "erlang-" + version; + name = "erlang-" + version + "${optionalString odbcSupport "-odbc"}"; version = "16B03-1"; src = fetchurl { @@ -17,7 +19,8 @@ stdenv.mkDerivation rec { buildInputs = [ perl gnum4 ncurses openssl makeWrapper - ] ++ optional wxSupport [ mesa wxGTK xlibs.libX11 ]; + ] ++ optional wxSupport [ mesa wxGTK xlibs.libX11 ] + ++ optional odbcSupport [ unixODBC ]; patchPhase = '' sed -i "s@/bin/rm@rm@" lib/odbc/configure erts/configure ''; @@ -26,7 +29,7 @@ stdenv.mkDerivation rec { sed -e s@/bin/pwd@pwd@g -i otp_build ''; - configureFlags= "--with-ssl=${openssl} ${optionalString stdenv.isDarwin "--enable-darwin-64bit"}"; + configureFlags= "--with-ssl=${openssl} ${optionalString odbcSupport "--with-odbc=${unixODBC}"} ${optionalString stdenv.isDarwin "--enable-darwin-64bit"}"; postInstall = let manpages = fetchurl { diff --git a/pkgs/development/interpreters/erlang/R17.nix b/pkgs/development/interpreters/erlang/R17.nix index 2aba55d3679..83ea79d67f3 100644 --- a/pkgs/development/interpreters/erlang/R17.nix +++ b/pkgs/development/interpreters/erlang/R17.nix @@ -1,13 +1,15 @@ { stdenv, fetchurl, perl, gnum4, ncurses, openssl , gnused, gawk, makeWrapper +, odbcSupport ? false, unixODBC ? null , wxSupport ? false, mesa ? null, wxGTK ? null, xlibs ? null }: assert wxSupport -> mesa != null && wxGTK != null && xlibs != null; +assert odbcSupport -> unixODBC != null; with stdenv.lib; stdenv.mkDerivation rec { - name = "erlang-" + version; + name = "erlang-" + version + "${optionalString odbcSupport "-odbc"}"; version = "17.1"; src = fetchurl { @@ -17,7 +19,8 @@ stdenv.mkDerivation rec { buildInputs = [ perl gnum4 ncurses openssl makeWrapper - ] ++ optional wxSupport [ mesa wxGTK xlibs.libX11 ]; + ] ++ optional wxSupport [ mesa wxGTK xlibs.libX11 ] + ++ optional odbcSupport [ unixODBC ]; patchPhase = '' sed -i "s@/bin/rm@rm@" lib/odbc/configure erts/configure ''; @@ -26,7 +29,7 @@ stdenv.mkDerivation rec { sed -e s@/bin/pwd@pwd@g -i otp_build ''; - configureFlags= "--with-ssl=${openssl} ${optionalString stdenv.isDarwin "--enable-darwin-64bit"}"; + configureFlags= "--with-ssl=${openssl} ${optionalString odbcSupport "--with-odbc=${unixODBC}"} ${optionalString stdenv.isDarwin "--enable-darwin-64bit"}"; postInstall = let manpages = fetchurl { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ebfd4715d4b..201120baecf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3482,8 +3482,11 @@ let erlangR14 = callPackage ../development/interpreters/erlang/R14.nix { }; erlangR15 = callPackage ../development/interpreters/erlang/R15.nix { }; erlangR16 = callPackage ../development/interpreters/erlang/R16.nix { }; + erlangR16_odbc = callPackage ../development/interpreters/erlang/R16.nix { odbcSupport = true; }; erlangR17 = callPackage ../development/interpreters/erlang/R17.nix { }; + erlangR17_odbc = callPackage ../development/interpreters/erlang/R17.nix { odbcSupport = true; }; erlang = erlangR17; + erlang_odbc = erlangR17_odbc; rebar = callPackage ../development/tools/build-managers/rebar { }; From 1f2b636ff62ed6df735c6ee187f495c6371d9283 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Mon, 25 Aug 2014 21:16:38 +0200 Subject: [PATCH 061/789] Fix zlib handling in stdenvLinux Previously stdenv depended on two different zlibs and there was a third one in the top-level package set for other purposes. This commit merges all this zlibs to one. --- pkgs/stdenv/linux/default.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 1daebd9dd36..6f8b42c2266 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -225,7 +225,11 @@ rec { }; extraPath = [ stage3.pkgs.xz ]; overrides = pkgs: { - inherit (stage3.pkgs) gettext gnum4 gmp perl glibc; + # Zlib has to be inherited and not rebuilt in this stage, + # because gcc (since JAR support) already depends on zlib, and + # then if we already have a zlib we want to use that for the + # other purposes (binutils and top-level pkgs) too. + inherit (stage3.pkgs) gettext gnum4 gmp perl glibc zlib; }; }; @@ -274,7 +278,7 @@ rec { inherit (stage4.pkgs) gzip bzip2 xz bash binutils coreutils diffutils findutils gawk glibc gnumake gnused gnutar gnugrep gnupatch patchelf - attr acl paxctl; + attr acl paxctl zlib; }; }; From aedbfdff8485044529953585bc7d042ece080b00 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Tue, 26 Aug 2014 21:24:09 -0400 Subject: [PATCH 062/789] unbound: run in chroot --- nixos/modules/services/networking/unbound.nix | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/nixos/modules/services/networking/unbound.nix b/nixos/modules/services/networking/unbound.nix index 415ff13bdda..73b10c1d561 100644 --- a/nixos/modules/services/networking/unbound.nix +++ b/nixos/modules/services/networking/unbound.nix @@ -6,8 +6,6 @@ let cfg = config.services.unbound; - username = "unbound"; - stateDir = "/var/lib/unbound"; access = concatMapStrings (x: " access-control: ${x} allow\n") cfg.allowedAccess; @@ -21,21 +19,13 @@ let confFile = pkgs.writeText "unbound.conf" '' server: directory: "${stateDir}" - username: ${username} - # make sure unbound can access entropy from inside the chroot. - # e.g. on linux the use these commands (on BSD, devfs(8) is used): - # mount --bind -n /dev/random /etc/unbound/dev/random - # and mount --bind -n /dev/log /etc/unbound/dev/log + username: unbound chroot: "${stateDir}" - # logfile: "${stateDir}/unbound.log" #uncomment to use logfile. - pidfile: "${stateDir}/unbound.pid" - verbosity: 1 # uncomment and increase to get more logging. + pidfile: "" ${interfaces} ${access} - - ${forward} - ${cfg.extraConfig} + ${forward} ''; in @@ -82,7 +72,7 @@ in environment.systemPackages = [ pkgs.unbound ]; users.extraUsers = singleton { - name = username; + name = "unbound"; uid = config.ids.uids.unbound; description = "unbound daemon user"; home = stateDir; @@ -96,8 +86,18 @@ in wants = [" nss-lookup.target" ]; wantedBy = [ "multi-user.target" ]; - path = [ pkgs.unbound ]; - serviceConfig.ExecStart = "${pkgs.unbound}/sbin/unbound -d -c ${confFile}"; + preStart = '' + mkdir -m 0755 -p ${stateDir}/dev/ + cp ${confFile} ${stateDir}/unbound.conf + chown unbound ${stateDir} + touch ${stateDir}/dev/random + ${pkgs.utillinux}/bin/mount --bind -n /dev/random ${stateDir}/dev/random + ''; + + serviceConfig = { + ExecStart = "${pkgs.unbound}/sbin/unbound -d -c ${stateDir}/unbound.conf"; + ExecStopPost="${pkgs.utillinux}/bin/umount ${stateDir}/dev/random"; + }; }; }; From 6f6724027d10c8989f08df9dc36b09b27152ae36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Wed, 27 Aug 2014 15:13:54 +0800 Subject: [PATCH 063/789] fcitx: update to 4.2.8.4 --- pkgs/tools/inputmethods/fcitx/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/inputmethods/fcitx/default.nix b/pkgs/tools/inputmethods/fcitx/default.nix index 2795b0d4d87..2db5d36a10d 100644 --- a/pkgs/tools/inputmethods/fcitx/default.nix +++ b/pkgs/tools/inputmethods/fcitx/default.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "fcitx-4.2.8.3"; + name = "fcitx-4.2.8.4"; src = fetchurl { url = "http://download.fcitx-im.org/fcitx/${name}_dict.tar.xz"; - sha256 = "05dw6cbjh2jyjrkr4qx2bcq6nyhhrs0akf6fcjk5a72bgphhwqnb"; + sha256 = "1yhvqg4q0knywdrh8sljqjn1i72rd8ya0fr70pc0w7fq25013x37"; }; patchPhase = '' From 92f728d546bba5d2c0e87ff28dd91b4d347b66d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Wed, 27 Aug 2014 17:05:14 +0800 Subject: [PATCH 064/789] add fcitx-anthy --- pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix | 24 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix diff --git a/pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix b/pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix new file mode 100644 index 00000000000..2099220f2a1 --- /dev/null +++ b/pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, cmake, fcitx, anthy }: + +stdenv.mkDerivation rec { + name = "fcitx-anthy-0.2.1"; + + meta = with stdenv.lib; { + description = "Fcitx Wrapper for anthy"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ iyzsong ]; + }; + + src = fetchurl { + url = "http://download.fcitx-im.org/fcitx-anthy/${name}.tar.xz"; + sha256 = "13fpfhhxkzbq53h10i3hifa37nngm47jq361i70z22bgcrs8887x"; + }; + + buildInputs = [ cmake fcitx anthy ]; + + preInstall = '' + substituteInPlace src/cmake_install.cmake \ + --replace ${fcitx} $out + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fb8f6e5bdca..f5daed73c9d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1021,6 +1021,8 @@ let fcitx = callPackage ../tools/inputmethods/fcitx { }; + fcitx-anthy = callPackage ../tools/inputmethods/fcitx/fcitx-anthy.nix { }; + fcron = callPackage ../tools/system/fcron { }; fdm = callPackage ../tools/networking/fdm {}; From 7b9fa26b10dacb7eda26c8ba0bf4b6a982dbe1b7 Mon Sep 17 00:00:00 2001 From: Nicolas Pierron Date: Wed, 27 Aug 2014 11:51:54 +0200 Subject: [PATCH 065/789] Quote paths from example & default attributes. --- nixos/modules/misc/locate.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/misc/locate.nix b/nixos/modules/misc/locate.nix index 7de63c60649..f3ed2aaba09 100644 --- a/nixos/modules/misc/locate.nix +++ b/nixos/modules/misc/locate.nix @@ -41,7 +41,7 @@ in { output = mkOption { type = types.path; - default = /var/cache/locatedb; + default = "/var/cache/locatedb"; description = '' The database file to build. ''; From 31f015f2e85459f59b984e9913a6f9c7e3c462ed Mon Sep 17 00:00:00 2001 From: Sven Keidel Date: Thu, 7 Aug 2014 17:49:16 +0200 Subject: [PATCH 066/789] gpodder: Update to 3.8.0 --- pkgs/applications/audio/gpodder/default.nix | 38 ++++++++++++++++++--- 1 file changed, 33 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix index 19b61ebc76d..de5ef055125 100644 --- a/pkgs/applications/audio/gpodder/default.nix +++ b/pkgs/applications/audio/gpodder/default.nix @@ -1,5 +1,6 @@ { pkgs, stdenv, fetchurl, python, buildPythonPackage, pythonPackages, mygpoclient, intltool, - ipodSupport ? true, libgpod, gpodderHome ? "", gpodderDownloadDir ? "" }: + ipodSupport ? true, libgpod, gpodderHome ? "", gpodderDownloadDir ? "", + gnome3, hicolor_icon_theme }: with pkgs.lib; @@ -7,14 +8,18 @@ let inherit (pythonPackages) coverage feedparser minimock sqlite3 dbus pygtk eyeD3; in buildPythonPackage rec { - name = "gpodder-3.7.0"; + name = "gpodder-3.8.0"; src = fetchurl { url = "http://gpodder.org/src/${name}.tar.gz"; - sha256 = "fa90ef4bdd3fd9eef95404f7f43f70912ae3ab4f8d24078484a2f3e11b14dc47"; + sha256 = "0731f08f4270c81872b841b55200ae80feb4502706397d0085079471fb9a8fe4"; }; - buildInputs = [ coverage feedparser minimock sqlite3 mygpoclient intltool ]; + buildInputs = [ + coverage feedparser minimock sqlite3 mygpoclient intltool + gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic + hicolor_icon_theme + ]; propagatedBuildInputs = [ feedparser dbus mygpoclient sqlite3 pygtk eyeD3 ] ++ stdenv.lib.optional ipodSupport libgpod; @@ -26,7 +31,30 @@ in buildPythonPackage rec { preFixup = '' wrapProgram $out/bin/gpodder \ ${optionalString (gpodderHome != "") "--set GPODDER_HOME ${gpodderHome}"} \ - ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} + ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} \ + --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" + ''; + + # The `wrapPythonPrograms` script in the postFixup phase breaks gpodder. The + # easiest way to fix this is to call wrapPythonPrograms and then to clean up + # the wrapped file. + postFixup = '' + wrapPythonPrograms + + if test -e $out/nix-support/propagated-build-inputs; then + ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages + fi + + createBuildInputsPth build-inputs "$buildInputStrings" + for inputsfile in propagated-build-inputs propagated-native-build-inputs; do + if test -e $out/nix-support/$inputsfile; then + createBuildInputsPth $inputsfile "$(cat $out/nix-support/$inputsfile)" + fi + done + + sed -i "$out/bin/..gpodder-wrapped-wrapped" -e '{ + /import sys; sys.argv/d + }' ''; installPhase = "DESTDIR=/ PREFIX=$out make install"; From cefe9fac459b7d51dd7b080bd16d24c24735d9f6 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Thu, 28 Aug 2014 18:33:51 +0200 Subject: [PATCH 067/789] Enable parallel building for cloog and isl Since these are GCC dependencies, this speeds up building the stdenv closure. --- pkgs/development/libraries/cloog/default.nix | 2 ++ pkgs/development/libraries/isl/0.12.2.nix | 2 ++ pkgs/development/libraries/isl/default.nix | 2 ++ 3 files changed, 6 insertions(+) diff --git a/pkgs/development/libraries/cloog/default.nix b/pkgs/development/libraries/cloog/default.nix index da4501285e1..242af84eb90 100644 --- a/pkgs/development/libraries/cloog/default.nix +++ b/pkgs/development/libraries/cloog/default.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-isl=system" ]; + enableParallelBuilding = true; + doCheck = true; meta = { diff --git a/pkgs/development/libraries/isl/0.12.2.nix b/pkgs/development/libraries/isl/0.12.2.nix index f1da2c06409..67620881bca 100644 --- a/pkgs/development/libraries/isl/0.12.2.nix +++ b/pkgs/development/libraries/isl/0.12.2.nix @@ -10,6 +10,8 @@ stdenv.mkDerivation rec { buildInputs = [ gmp ]; + enableParallelBuilding = true; + meta = { homepage = http://www.kotnet.org/~skimo/isl/; license = stdenv.lib.licenses.lgpl21; diff --git a/pkgs/development/libraries/isl/default.nix b/pkgs/development/libraries/isl/default.nix index 7e08c8afe6f..931ee831b73 100644 --- a/pkgs/development/libraries/isl/default.nix +++ b/pkgs/development/libraries/isl/default.nix @@ -11,6 +11,8 @@ stdenv.mkDerivation rec { buildInputs = [ gmp ]; patches = [ ./fix-gcc-build.diff ]; + enableParallelBuilding = true; + meta = { homepage = http://www.kotnet.org/~skimo/isl/; license = stdenv.lib.licenses.lgpl21; From f6954aa8d5d2c775b4bfe5b40e6b1682bc2f9143 Mon Sep 17 00:00:00 2001 From: Emil Rangden Date: Thu, 28 Aug 2014 23:58:08 +0200 Subject: [PATCH 068/789] updated wkhtmltopdf and use patched qt With stock version of qt4 wkthmltopdf lacks a lot of features, including: * Running without an X11 server * Printing more then one HTML document into a PDF file * Adding a document outline to the PDF file * Adding headers and footers to the PDF file * Generating a table of contents * Adding links in the generated PDF file * Printing using the screen media-type * Disabling the smart shrink feature of webkit --- pkgs/tools/graphics/wkhtmltopdf/default.nix | 80 +++++++++++++++++-- pkgs/tools/graphics/wkhtmltopdf/makefix.patch | 24 ++++++ pkgs/top-level/all-packages.nix | 5 +- 3 files changed, 101 insertions(+), 8 deletions(-) create mode 100644 pkgs/tools/graphics/wkhtmltopdf/makefix.patch diff --git a/pkgs/tools/graphics/wkhtmltopdf/default.nix b/pkgs/tools/graphics/wkhtmltopdf/default.nix index 84b271acf2b..2f3929b82b8 100644 --- a/pkgs/tools/graphics/wkhtmltopdf/default.nix +++ b/pkgs/tools/graphics/wkhtmltopdf/default.nix @@ -1,22 +1,88 @@ -{ stdenv, fetchurl, qt4 }: +{ stdenv, fetchgit, qt4, fontconfig, freetype, libpng, zlib, libjpeg +, openssl, libX11, libXext, libXrender, overrideDerivation }: stdenv.mkDerivation rec { - name = "wkhtmltopdf-0.11.0_rc1"; + version = "0.12.1"; + name = "wkhtmltopdf-${version}"; - src = fetchurl { - url = "http://wkhtmltopdf.googlecode.com/files/${name}.tar.bz2"; - sha1 = "db03922d281856e503b3d562614e3936285728c7"; + src = fetchgit { + url = "https://github.com/wkhtmltopdf/wkhtmltopdf.git"; + rev = "refs/tags/${version}"; + sha256 = "0wjzaaviy1k3z8r2kzb2rmyx6xdj23a338b86sxcb15ws3kzwgwh"; }; - buildInputs = [ qt4 ]; + wkQt = overrideDerivation qt4 (deriv: { + name = "qt-mod-4.8.6"; + src = fetchgit { + url = "https://github.com/wkhtmltopdf/qt.git"; + rev = "82b568b"; # From git submodule spec in wkhtml repo. + sha256 = "0whppwxnymh5bdayqsqx54n074m99yk6v78z7f0k5prja55yvwyx"; + }; + configureFlags = + '' + -v -no-separate-debug-info -release -confirm-license -opensource + -qdbus -glib -dbus-linked -openssl-linked + '' + + # This is taken from the wkhtml build script that we don't run + '' + -fast + -static + -exceptions + -xmlpatterns + -webkit + -system-zlib + -system-libpng + -system-libjpeg + -no-libmng + -no-libtiff + -no-accessibility + -no-stl + -no-qt3support + -no-phonon + -no-phonon-backend + -no-opengl + -no-declarative + -no-sql-ibase + -no-sql-mysql + -no-sql-odbc + -no-sql-psql + -no-sql-sqlite + -no-sql-sqlite2 + -no-mmx + -no-3dnow + -no-sse + -no-sse2 + -no-multimedia + -nomake demos + -nomake docs + -nomake examples + -nomake tools + -nomake tests + -nomake translations + ''; + }); + + buildInputs = [ wkQt fontconfig freetype libpng zlib libjpeg openssl + libX11 libXext libXrender + ]; configurePhase = "qmake wkhtmltopdf.pro INSTALLBASE=$out"; + patches = [ ./makefix.patch ]; + enableParallelBuilding = true; meta = { - homepage = http://code.google.com/p/wkhtmltopdf/; + homepage = http://wkhtmltopdf.org/; description = "Tools for rendering web pages to PDF or images"; + longDescription = '' + wkhtmltopdf and wkhtmltoimage are open source (LGPL) command line tools + to render HTML into PDF and various image formats using the QT Webkit + rendering engine. These run entirely "headless" and do not require a + display or display service. + + There is also a C library, if you're into that kind of thing. + ''; license = stdenv.lib.licenses.gpl3Plus; }; } diff --git a/pkgs/tools/graphics/wkhtmltopdf/makefix.patch b/pkgs/tools/graphics/wkhtmltopdf/makefix.patch new file mode 100644 index 00000000000..0642a23afa9 --- /dev/null +++ b/pkgs/tools/graphics/wkhtmltopdf/makefix.patch @@ -0,0 +1,24 @@ +diff -Naur a/src/image/image.pro b/src/image/image.pro +--- a/src/image/image.pro 2014-08-28 14:07:51.024561967 +0200 ++++ b/src/image/image.pro 2014-08-28 14:08:22.383623390 +0200 +@@ -25,7 +25,7 @@ + + unix { + man.path=$$INSTALLBASE/share/man/man1 +- man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltoimage --manpage | gzip > $(INSTALL_ROOT)/share/man/man1/wkhtmltoimage.1.gz ++ man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltoimage --manpage | gzip > $$INSTALLBASE/share/man/man1/wkhtmltoimage.1.gz + + QMAKE_EXTRA_TARGETS += man + INSTALLS += man +diff -Naur a/src/pdf/pdf.pro b/src/pdf/pdf.pro +--- a/src/pdf/pdf.pro 2014-08-28 14:10:02.305818775 +0200 ++++ b/src/pdf/pdf.pro 2014-08-28 14:09:47.360789555 +0200 +@@ -25,7 +25,7 @@ + + unix { + man.path=$$INSTALLBASE/share/man/man1 +- man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltopdf --manpage | gzip > $(INSTALL_ROOT)/share/man/man1/wkhtmltopdf.1.gz ++ man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltopdf --manpage | gzip > $$INSTALLBASE/share/man/man1/wkhtmltopdf.1.gz + + QMAKE_EXTRA_TARGETS += man + INSTALLS += man diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0754239b849..e53f29483d4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2462,7 +2462,10 @@ let wicd = callPackage ../tools/networking/wicd { }; - wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { }; + wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { + overrideDerivation = lib.overrideDerivation; + inherit (xlibs) libX11 libXext libXrender; + }; wv = callPackage ../tools/misc/wv { }; From 8dbe652739a31725954b2fc783e171f248dbb7b7 Mon Sep 17 00:00:00 2001 From: Andrew Morsillo Date: Thu, 28 Aug 2014 21:12:05 -0400 Subject: [PATCH 069/789] Bump DF version to 40_10 --- pkgs/games/dwarf-fortress/df2014.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/games/dwarf-fortress/df2014.nix b/pkgs/games/dwarf-fortress/df2014.nix index e9affd7bbf0..300d7557e02 100644 --- a/pkgs/games/dwarf-fortress/df2014.nix +++ b/pkgs/games/dwarf-fortress/df2014.nix @@ -13,8 +13,8 @@ let }; df = fetchurl { - url = "http://www.bay12games.com/dwarves/df_40_09_linux.tar.bz2"; - sha256 = "1aka2vblhip4sjkcpkxfra1fa9z4hzlj0sdl6rh2qda0l7q7i0ki"; + url = "http://www.bay12games.com/dwarves/df_40_10_linux.tar.bz2"; + sha256 = "0hfm4395y0lacgsl7wqr6vwcw42pqm03xp7giqfk3mfsn32wqnm7"; }; }; @@ -23,7 +23,7 @@ in assert stdenv.system == "i686-linux"; stdenv.mkDerivation rec { - name = "dwarf-fortress-0.40.09"; + name = "dwarf-fortress-0.40.10"; buildInputs = [ SDL SDL_image SDL_ttf gtk2 glib glew mesa ncurses openal glibc libsndfile pango atk cmake gdk_pixbuf]; From dd3f3bdcc28282e6d235ff16d7173ee9ea81d7b0 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Thu, 28 Aug 2014 18:03:22 +0200 Subject: [PATCH 070/789] GCC >= 4.8 doesn't depend on ppl --- pkgs/development/compilers/gcc/4.8/default.nix | 16 ++-------------- pkgs/development/compilers/gcc/4.9/default.nix | 13 +------------ 2 files changed, 3 insertions(+), 26 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 7985b445ae0..f56ee003f50 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -13,7 +13,7 @@ , perl ? null # optional, for texi2pod (then pod2man); required for Java , gmp, mpfr, mpc, gettext, which , libelf # optional, for link-time optimizations (LTO) -, ppl ? null, cloog ? null, isl ? null # optional, for the Graphite optimization framework. +, cloog ? null, isl ? null # optional, for the Graphite optimization framework. , zlib ? null, boehmgc ? null , zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null , libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null @@ -276,7 +276,6 @@ stdenv.mkDerivation ({ ++ (optional javaAwtGtk pkgconfig); buildInputs = [ gmp mpfr mpc libelf ] - ++ (optional (ppl != null) ppl) ++ (optional (cloog != null) cloog) ++ (optional (isl != null) isl) ++ (optional (zlib != null) zlib) @@ -293,15 +292,7 @@ stdenv.mkDerivation ({ NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl"; - preConfigure = '' - configureFlagsArray=( - ${stdenv.lib.optionalString (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic) - "'--with-host-libstdcxx=-lstdc++ -lgcc_s'"} - ${stdenv.lib.optionalString (ppl != null && stdenv.isSunOS) - "\"--with-host-libstdcxx=-Wl,-rpath,\$prefix/lib/amd64 -lstdc++\" - \"--with-boot-ldflags=-L../prev-x86_64-pc-solaris2.11/libstdc++-v3/src/.libs\""} - ); - '' + stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) '' + preConfigure = stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) '' export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g` export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET" export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET" @@ -329,7 +320,6 @@ stdenv.mkDerivation ({ ${if enableMultilib then "--disable-libquadmath" else "--disable-multilib"} ${if enableShared then "" else "--disable-shared"} ${if enablePlugin then "--enable-plugin" else "--disable-plugin"} - ${if ppl != null then "--with-ppl=${ppl} --disable-ppl-version-check" else ""} ${optionalString (isl != null) "--with-isl=${isl}"} ${optionalString (cloog != null) "--with-cloog=${cloog} --disable-cloog-version-check --enable-cloog-backend=isl"} ${if langJava then @@ -412,7 +402,6 @@ stdenv.mkDerivation ({ configureFlags = '' ${if enableMultilib then "" else "--disable-multilib"} ${if enableShared then "" else "--disable-shared"} - ${if ppl != null then "--with-ppl=${ppl.crossDrv}" else ""} ${if cloog != null then "--with-cloog=${cloog.crossDrv} --enable-cloog-backend=isl" else ""} ${if langJava then "--with-ecj-jar=${javaEcj.crossDrv}" else ""} ${if javaAwtGtk then "--enable-java-awt=gtk" else ""} @@ -521,7 +510,6 @@ stdenv.mkDerivation ({ maintainers = with stdenv.lib.maintainers; [ ludo viric shlevy simons ]; - # Volunteers needed for the {Cyg,Dar}win ports of *PPL. # gnatboot is not available out of linux platforms, so we disable the darwin build # for the gnat (ada compiler). platforms = diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index f61e6b4445a..d38040a48b3 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -11,7 +11,7 @@ , perl ? null # optional, for texi2pod (then pod2man); required for Java , gmp, mpfr, mpc, gettext, which , libelf # optional, for link-time optimizations (LTO) -, ppl ? null, cloog ? null, isl ? null # optional, for the Graphite optimization framework. +, cloog ? null, isl ? null # optional, for the Graphite optimization framework. , zlib ? null, boehmgc ? null , zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null , libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null @@ -273,7 +273,6 @@ stdenv.mkDerivation ({ ++ (optional javaAwtGtk pkgconfig); buildInputs = [ gmp mpfr mpc libelf ] - ++ (optional (ppl != null) ppl) ++ (optional (cloog != null) cloog) ++ (optional (isl != null) isl) ++ (optional (zlib != null) zlib) @@ -291,13 +290,6 @@ stdenv.mkDerivation ({ NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl"; preConfigure = '' - configureFlagsArray=( - ${stdenv.lib.optionalString (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic) - "'--with-host-libstdcxx=-lstdc++ -lgcc_s'"} - ${stdenv.lib.optionalString (ppl != null && stdenv.isSunOS) - "\"--with-host-libstdcxx=-Wl,-rpath,\$prefix/lib/amd64 -lstdc++\" - \"--with-boot-ldflags=-L../prev-x86_64-pc-solaris2.11/libstdc++-v3/src/.libs\""} - ); ${stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) '' export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g` @@ -319,7 +311,6 @@ stdenv.mkDerivation ({ ${if enableMultilib then "--disable-libquadmath" else "--disable-multilib"} ${if enableShared then "" else "--disable-shared"} ${if enablePlugin then "--enable-plugin" else "--disable-plugin"} - ${if ppl != null then "--with-ppl=${ppl} --disable-ppl-version-check" else ""} ${optionalString (isl != null) "--with-isl=${isl}"} ${optionalString (cloog != null) "--with-cloog=${cloog} --disable-cloog-version-check --enable-cloog-backend=isl"} ${if langJava then @@ -400,7 +391,6 @@ stdenv.mkDerivation ({ configureFlags = '' ${if enableMultilib then "" else "--disable-multilib"} ${if enableShared then "" else "--disable-shared"} - ${if ppl != null then "--with-ppl=${ppl.crossDrv}" else ""} ${if cloog != null then "--with-cloog=${cloog.crossDrv} --enable-cloog-backend=isl" else ""} ${if langJava then "--with-ecj-jar=${javaEcj.crossDrv}" else ""} ${if javaAwtGtk then "--enable-java-awt=gtk" else ""} @@ -507,7 +497,6 @@ stdenv.mkDerivation ({ maintainers = with stdenv.lib.maintainers; [ ludo viric shlevy simons ]; - # Volunteers needed for the {Cyg,Dar}win ports of *PPL. # gnatboot is not available out of linux platforms, so we disable the darwin build # for the gnat (ada compiler). platforms = From 23b902945546eaf8358afce789a3755fe5092713 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Fri, 22 Aug 2014 14:43:23 +0200 Subject: [PATCH 071/789] Adds ocaml-cmdliner Cmdliner is an OCaml module for the declarative definition of command line interfaces. Homepage: http://erratique.ch/software/cmdliner --- .../ocaml-modules/cmdliner/default.nix | 36 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/development/ocaml-modules/cmdliner/default.nix diff --git a/pkgs/development/ocaml-modules/cmdliner/default.nix b/pkgs/development/ocaml-modules/cmdliner/default.nix new file mode 100644 index 00000000000..3a00f0c3888 --- /dev/null +++ b/pkgs/development/ocaml-modules/cmdliner/default.nix @@ -0,0 +1,36 @@ +{stdenv, fetchurl, ocaml, findlib, opam}: + +let + pname = "cmdliner"; + version = "0.9.5"; + ocaml_version = (builtins.parseDrvName ocaml.name).version; +in +stdenv.mkDerivation { + + name = "ocaml-${pname}-${version}"; + + src = fetchurl { + url = "http://erratique.ch/software/${pname}/releases/${pname}-${version}.tbz"; + sha256 = "a0e199c4930450e12edf81604eeceddeeb32d55c43438be689e60df282277a7e"; + }; + + unpackCmd = "tar xjf $src"; + buildInputs = [ ocaml findlib opam ]; + + createFindlibDestdir = true; + + configurePhase = "ocaml pkg/git.ml"; + buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true"; + installPhase = '' + opam-installer --script --prefix=$out ${pname}.install > install.sh + sh install.sh + ln -s $out/lib/${pname} $out/lib/ocaml/${ocaml_version}/site-lib/ + ''; + + meta = with stdenv.lib; { + homepage = http://erratique.ch/software/cmdliner; + description = "An OCaml module for the declarative definition of command line interfaces"; + license = licenses.bsd3; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6f02f2650ac..6fc28ac321f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3255,6 +3255,8 @@ let ocaml_cairo = callPackage ../development/ocaml-modules/ocaml-cairo { }; + cmdliner = callPackage ../development/ocaml-modules/cmdliner { }; + cppo = callPackage ../development/tools/ocaml/cppo { }; cryptokit = callPackage ../development/ocaml-modules/cryptokit { }; From 60902b97fe4a96d370bc0c5e3690fa45da77d78d Mon Sep 17 00:00:00 2001 From: Mateusz Kowalczyk Date: Fri, 29 Aug 2014 11:40:46 +0100 Subject: [PATCH 072/789] ed: update to 1.10 (close #3852) --- pkgs/applications/editors/ed/default.nix | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix index d3e9a4c4679..b1b9616eaab 100644 --- a/pkgs/applications/editors/ed/default.nix +++ b/pkgs/applications/editors/ed/default.nix @@ -1,11 +1,12 @@ -{ fetchurl, stdenv }: +{ fetchurl, stdenv, lzip }: stdenv.mkDerivation rec { - name = "ed-1.9"; + version = "1.10"; + name = "ed-${version}"; src = fetchurl { - url = "mirror://gnu/ed/${name}.tar.gz"; - sha256 = "122syihsx2hwzj75mkf5a9ssiky2xby748kp4cc00wzhmp7p5cym"; + url = "mirror://gnu/ed/${name}.tar.lz"; + sha256 = "16kycdm5fcvpdr41hxb2da8da6jzs9dqznsg5552z6rh28n0jh4m"; }; /* FIXME: Tests currently fail on Darwin: @@ -23,6 +24,8 @@ stdenv.mkDerivation rec { compileFlags = [ "CC=${stdenv.cross.config}-gcc" ]; }; + buildInputs = [ lzip ]; + meta = { description = "GNU ed, an implementation of the standard Unix editor"; @@ -38,9 +41,7 @@ stdenv.mkDerivation rec { ''; license = stdenv.lib.licenses.gpl3Plus; - homepage = http://www.gnu.org/software/ed/; - - maintainers = [ ]; + maintainers = with stdenv.lib.maintainers; [ fuuzetsu ]; }; } From 02e0e0dc501053c169d94fdab81795fb1e731105 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=BCdiger=20Sonderfeld?= Date: Fri, 22 Aug 2014 01:13:14 +0200 Subject: [PATCH 073/789] Add oxygen-gtk3 and rename oxygen_gtk to oxygen-gtk2. oxygen_gtk is still kept for backwards compatibility. --- pkgs/misc/themes/gtk3/oxygen-gtk3/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 6 ++++- 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 pkgs/misc/themes/gtk3/oxygen-gtk3/default.nix diff --git a/pkgs/misc/themes/gtk3/oxygen-gtk3/default.nix b/pkgs/misc/themes/gtk3/oxygen-gtk3/default.nix new file mode 100644 index 00000000000..34141c91f91 --- /dev/null +++ b/pkgs/misc/themes/gtk3/oxygen-gtk3/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl +, cmake, dbus_glib, glib, gtk3, gdk_pixbuf, pkgconfig, xorg }: + +stdenv.mkDerivation rec { + version = "1.4.0"; + name = "oxygen-gtk3-${version}"; + + src = fetchurl { + url = "mirror://kde/stable/oxygen-gtk3/${version}/src/${name}.tar.bz2"; + sha256 = "d119bcc94ffc04b67e7d238fc922b37f2904447085a06758451b8c0b0302ab80"; + }; + + buildInputs = [ cmake dbus_glib glib gtk3 gdk_pixbuf + pkgconfig xorg.libXau xorg.libXdmcp xorg.libpthreadstubs + xorg.libxcb xorg.pixman ]; + + meta = with stdenv.lib; { + description = "Port of the default KDE widget theme (Oxygen), to gtk 3"; + homepage = https://projects.kde.org/projects/playground/artwork/oxygen-gtk; + license = licenses.lgpl2; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9bdf2462406..7a34852aada 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10825,7 +10825,11 @@ let geoclue = geoclue2; }; - oxygen_gtk = callPackage ../misc/themes/gtk2/oxygen-gtk { }; + oxygen-gtk2 = callPackage ../misc/themes/gtk2/oxygen-gtk { }; + + oxygen-gtk3 = callPackage ../misc/themes/gtk3/oxygen-gtk3 { }; + + oxygen_gtk = oxygen-gtk2; # backwards compatibility gtk_engines = callPackage ../misc/themes/gtk2/gtk-engines { }; From feee5f16e189d99784f0c36b76199e3eee8194ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Fri, 29 Aug 2014 22:43:03 +0200 Subject: [PATCH 074/789] dogecoin: autotools build factored out --- pkgs/applications/misc/bitcoin/altcoins.nix | 47 -------------- pkgs/applications/misc/bitcoin/dogecoin.nix | 71 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 5 +- 3 files changed, 74 insertions(+), 49 deletions(-) create mode 100644 pkgs/applications/misc/bitcoin/dogecoin.nix diff --git a/pkgs/applications/misc/bitcoin/altcoins.nix b/pkgs/applications/misc/bitcoin/altcoins.nix index 796cedc1ee2..2643094e2f1 100644 --- a/pkgs/applications/misc/bitcoin/altcoins.nix +++ b/pkgs/applications/misc/bitcoin/altcoins.nix @@ -80,51 +80,4 @@ in rec { }; }; - dogecoin = (buildAltcoin rec { - walletName = "dogecoin"; - version = "1.8.0"; - - src = fetchurl { - url = "https://github.com/dogecoin/dogecoin/archive/v${version}.tar.gz"; - sha256 = "8a33958c04213cd621aa3c86910477813af22512f03b47c98995d20d31f3f935"; - }; - - extraBuildInputs = [ autogen autoconf automake pkgconfig db utillinux protobuf ]; - - meta = { - description = "Wow, such coin, much shiba, very rich"; - longDescription = "wow"; - homepage = http://www.dogecoin.com/; - maintainers = [ maintainers.offline maintainers.edwtjo ]; - }; - }).override rec { - patchPhase = '' - sed -i \ - -e 's,BDB_CPPFLAGS=$,BDB_CPPFLAGS="-I${db}/include",g' \ - -e 's,BDB_LIBS=$,BDB_LIBS="-L${db}/lib",g' \ - -e 's,bdbdirlist=$,bdbdirlist="${db}/include",g' \ - src/m4/dogecoin_find_bdb51.m4 - ''; - dogeConfigure = '' - ./autogen.sh \ - && ./configure --prefix=$out \ - --with-incompatible-bdb \ - --with-boost-libdir=${boost}/lib \ - ''; - dogeInstall = '' - install -D "src/dogecoin-cli" "$out/bin/dogecoin-cli" - install -D "src/dogecoind" "$out/bin/dogecoind" - ''; - configurePhase = dogeConfigure + "--with-gui"; - installPhase = dogeInstall + "install -D src/qt/dogecoin-qt $out/bin/dogecoin-qt"; - }; - - dogecoind = dogecoin.override rec { - gui = false; - makefile = "Makefile"; - preBuild = ""; - configurePhase = dogecoin.dogeConfigure + "--without-gui"; - installPhase = dogecoin.dogeInstall; - }; - } diff --git a/pkgs/applications/misc/bitcoin/dogecoin.nix b/pkgs/applications/misc/bitcoin/dogecoin.nix new file mode 100644 index 00000000000..7ace3c161c7 --- /dev/null +++ b/pkgs/applications/misc/bitcoin/dogecoin.nix @@ -0,0 +1,71 @@ +{ fetchurl, stdenv, pkgconfig +, openssl, boost, zlib, miniupnpc, qt4, qrencode, glib, protobuf +, utillinux, autogen, autoconf, autobuild, automake, db }: + +with stdenv.lib; + +let + + mkAutotoolCoin = + { name, version, withGui, src, meta }: + + stdenv.mkDerivation { + inherit src meta; + + name = name + (toString (optional (!withGui) "d")) + "-" + version; + + buildInputs = [ autogen autoconf automake pkgconfig openssl + boost zlib miniupnpc db utillinux protobuf ] + ++ optionals withGui [ qt4 qrencode ]; + + patchPhase = '' + sed -i \ + -e 's,BDB_CPPFLAGS=$,BDB_CPPFLAGS="-I${db}/include",g' \ + -e 's,BDB_LIBS=$,BDB_LIBS="-L${db}/lib",g' \ + -e 's,bdbdirlist=$,bdbdirlist="${db}/include",g' \ + src/m4/dogecoin_find_bdb51.m4 + ''; + + configurePhase = '' + ./autogen.sh \ + && ./configure --prefix=$out \ + --with-incompatible-bdb \ + --with-boost-libdir=${boost}/lib \ + ${ if withGui then "--with-gui" else "" } + ''; + + installPhase = '' + install -D "src/dogecoin-cli" "$out/bin/dogecoin-cli" + install -D "src/dogecoind" "$out/bin/dogecoind" + ${ if withGui then "install -D src/qt/dogecoin-qt $out/bin/dogecoin-qt" else "" } + ''; + + }; + + mkDogeCoin = { withGui }: + + mkAutotoolCoin rec { + name = "dogecoin"; + version = "1.8.0"; + inherit withGui; + + src = fetchurl { + url = "https://github.com/dogecoin/dogecoin/archive/v${version}.tar.gz"; + sha256 = "8a33958c04213cd621aa3c86910477813af22512f03b47c98995d20d31f3f935"; + }; + + meta = { + description = "Wow, such coin, much shiba, very rich"; + longDescription = "wow"; + homepage = http://www.dogecoin.com/; + license = licenses.mit; + maintainers = with maintainers; [ edwtjo offline ]; + }; + }; + +in { + + dogecoin = mkDogeCoin { withGui = true; }; + dogecoind = mkDogeCoin { withGui = false; }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d1f9487ab4a..ceebde40e8a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8285,7 +8285,8 @@ let bitcoind = callPackage ../applications/misc/bitcoin { gui = false; }; altcoins = recurseIntoAttrs ( - callPackage ../applications/misc/bitcoin/altcoins.nix {} + (callPackage ../applications/misc/bitcoin/altcoins.nix {}) // + (callPackage ../applications/misc/bitcoin/dogecoin.nix {}) ); bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { @@ -9211,7 +9212,7 @@ let lynx = callPackage ../applications/networking/browsers/lynx { }; lyx = callPackage ../applications/misc/lyx { }; - + makeself = callPackage ../applications/misc/makeself { }; matchbox = callPackage ../applications/window-managers/matchbox { }; From a4b794bb733b11a021990fb81a610a3e750300e5 Mon Sep 17 00:00:00 2001 From: Patrick Mahoney Date: Sat, 30 Aug 2014 00:05:23 -0500 Subject: [PATCH 075/789] s6-portable-utils: new package s6-portable-utils is a set of tiny general Unix utilities, often performing well-known tasks such as cut and grep, but optimized for simplicity and small size. --- pkgs/tools/misc/s6-portable-utils/default.nix | 55 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 57 insertions(+) create mode 100644 pkgs/tools/misc/s6-portable-utils/default.nix diff --git a/pkgs/tools/misc/s6-portable-utils/default.nix b/pkgs/tools/misc/s6-portable-utils/default.nix new file mode 100644 index 00000000000..f8e7dfaddc9 --- /dev/null +++ b/pkgs/tools/misc/s6-portable-utils/default.nix @@ -0,0 +1,55 @@ +{ stdenv, fetchurl, skalibs }: + +let + + version = "1.0.3.2"; + +in stdenv.mkDerivation rec { + + name = "s6-portable-utils-${version}"; + + src = fetchurl { + url = "http://www.skarnet.org/software/s6-portable-utils/${name}.tar.gz"; + sha256 = "040nmls7qbgw8yn502lym4kgqh5zxr2ks734bqajpi2ricnasvhl"; + }; + + buildInputs = [ skalibs ]; + + sourceRoot = "admin/${name}"; + + configurePhase = '' + pushd conf-compile + + printf "$out/bin" > conf-install-command + printf "$out/libexec" > conf-install-libexec + + # let nix builder strip things, cross-platform + truncate --size 0 conf-stripbins + truncate --size 0 conf-striplibs + + printf "${skalibs}/sysdeps" > import + printf "%s" "${skalibs}/include" > path-include + printf "%s" "${skalibs}/lib" > path-library + + rm -f flag-slashpackage + touch flag-allstatic + + popd + ''; + + preBuild = '' + patchShebangs src/sys + ''; + + preInstall = '' + mkdir -p "$out/libexec" + ''; + + meta = { + homepage = http://www.skarnet.org/software/s6-portable-utils/; + description = "A set of tiny general Unix utilities optimized for simplicity and small size."; + platforms = stdenv.lib.platforms.all; + license = stdenv.lib.licenses.isc; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d1f9487ab4a..5aa699805f3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2051,6 +2051,8 @@ let ruby = ruby18; }; + s6PortableUtils = callPackage ../tools/misc/s6-portable-utils { }; + sablotron = callPackage ../tools/text/xml/sablotron { }; safecopy = callPackage ../tools/system/safecopy { }; From 1030ca055012483d9b226c117e81ba1693e2ce2e Mon Sep 17 00:00:00 2001 From: Patrick Mahoney Date: Sat, 30 Aug 2014 00:06:42 -0500 Subject: [PATCH 076/789] s6-dns: new package s6-dns is a suite of DNS client programs and libraries for Unix systems, as an alternative to the BIND, djbdns or other DNS clients. --- pkgs/tools/networking/s6-dns/default.nix | 53 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 55 insertions(+) create mode 100644 pkgs/tools/networking/s6-dns/default.nix diff --git a/pkgs/tools/networking/s6-dns/default.nix b/pkgs/tools/networking/s6-dns/default.nix new file mode 100644 index 00000000000..3165434de3d --- /dev/null +++ b/pkgs/tools/networking/s6-dns/default.nix @@ -0,0 +1,53 @@ +{ stdenv, fetchurl, skalibs }: + +let + + version = "0.1.0.0"; + +in stdenv.mkDerivation rec { + + name = "s6-dns-${version}"; + + src = fetchurl { + url = "http://www.skarnet.org/software/s6-dns/${name}.tar.gz"; + sha256 = "1r82l5fnz2rrwm5wq2sldqp74lk9fifr0d8hyq98xdyh24hish68"; + }; + + buildInputs = [ skalibs ]; + + sourceRoot = "web/${name}"; + + configurePhase = '' + pushd conf-compile + + printf "$out/bin" > conf-install-command + printf "$out/include" > conf-install-include + printf "$out/lib" > conf-install-library + printf "$out/lib" > conf-install-library.so + + # let nix builder strip things, cross-platform + truncate --size 0 conf-stripbins + truncate --size 0 conf-striplibs + + printf "${skalibs}/sysdeps" > import + printf "%s" "${skalibs}/include" > path-include + printf "%s" "${skalibs}/lib" > path-library + + rm -f flag-slashpackage + touch flag-allstatic + + popd + ''; + + preBuild = '' + patchShebangs src/sys + ''; + + meta = { + homepage = http://www.skarnet.org/software/s6-dns/; + description = "A suite of DNS client programs and libraries for Unix systems."; + platforms = stdenv.lib.platforms.all; + license = stdenv.lib.licenses.isc; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5aa699805f3..14f41703f4d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2051,6 +2051,8 @@ let ruby = ruby18; }; + s6Dns = callPackage ../tools/networking/s6-dns { }; + s6PortableUtils = callPackage ../tools/misc/s6-portable-utils { }; sablotron = callPackage ../tools/text/xml/sablotron { }; From 9247013255acfe2a81c5a6fa7c1bee1febef7d09 Mon Sep 17 00:00:00 2001 From: Patrick Mahoney Date: Sat, 30 Aug 2014 00:07:45 -0500 Subject: [PATCH 077/789] s6-networking: new package s6-networking is a suite of small networking utilities for Unix systems including UCSPI Unix and TCP tools, access control tools, and network time management utilities. --- .../networking/s6-networking/default.nix | 63 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 65 insertions(+) create mode 100644 pkgs/tools/networking/s6-networking/default.nix diff --git a/pkgs/tools/networking/s6-networking/default.nix b/pkgs/tools/networking/s6-networking/default.nix new file mode 100644 index 00000000000..3d5e3e04811 --- /dev/null +++ b/pkgs/tools/networking/s6-networking/default.nix @@ -0,0 +1,63 @@ +{ stdenv +, execline +, fetchurl +, s6Dns +, skalibs +}: + +let + + version = "0.1.0.0"; + +in stdenv.mkDerivation rec { + + name = "s6-networking-${version}"; + + src = fetchurl { + url = "http://www.skarnet.org/software/s6-networking/${name}.tar.gz"; + sha256 = "1np9m2j1i2450mbcjvpbb56kv3wc2fbyvmv2a039q61j2lk6vjz7"; + }; + + buildInputs = [ skalibs s6Dns execline ]; + + sourceRoot = "net/${name}"; + + configurePhase = '' + pushd conf-compile + + printf "$out/bin" > conf-install-command + printf "$out/include" > conf-install-include + printf "$out/lib" > conf-install-library + printf "$out/lib" > conf-install-library.so + + # let nix builder strip things, cross-platform + truncate --size 0 conf-stripbins + truncate --size 0 conf-striplibs + + printf "${skalibs}/sysdeps" > import + + rm -f path-include + rm -f path-library + for dep in "${execline}" "${s6Dns}" "${skalibs}"; do + printf "%s\n" "$dep/include" >> path-include + printf "%s\n" "$dep/lib" >> path-library + done + + rm -f flag-slashpackage + touch flag-allstatic + + popd + ''; + + preBuild = '' + patchShebangs src/sys + ''; + + meta = { + homepage = http://www.skarnet.org/software/s6-networking/; + description = "A suite of small networking utilities for Unix systems."; + platforms = stdenv.lib.platforms.all; + license = stdenv.lib.licenses.isc; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 14f41703f4d..bf0cc411e1d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2053,6 +2053,8 @@ let s6Dns = callPackage ../tools/networking/s6-dns { }; + s6Networking = callPackage ../tools/networking/s6-networking { }; + s6PortableUtils = callPackage ../tools/misc/s6-portable-utils { }; sablotron = callPackage ../tools/text/xml/sablotron { }; From b5f33dc13379ef2821d9e40a74206f22e8501cbb Mon Sep 17 00:00:00 2001 From: Patrick Mahoney Date: Sat, 30 Aug 2014 00:12:38 -0500 Subject: [PATCH 078/789] s6-linux-utils: new package s6-linux-utils is a set of minimalistic Linux-specific system utilities. --- .../linux/s6-linux-utils/default.nix | 53 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 55 insertions(+) create mode 100644 pkgs/os-specific/linux/s6-linux-utils/default.nix diff --git a/pkgs/os-specific/linux/s6-linux-utils/default.nix b/pkgs/os-specific/linux/s6-linux-utils/default.nix new file mode 100644 index 00000000000..0f0967079df --- /dev/null +++ b/pkgs/os-specific/linux/s6-linux-utils/default.nix @@ -0,0 +1,53 @@ +{ stdenv, fetchurl, skalibs }: + +let + + version = "1.0.3.1"; + +in stdenv.mkDerivation rec { + + name = "s6-linux-utils-${version}"; + + src = fetchurl { + url = "http://www.skarnet.org/software/s6-linux-utils/${name}.tar.gz"; + sha256 = "1s17g03z5hfpiz32g001g5wyamyvn9l36fr2csk3k7r0jkqfnl0d"; + }; + + buildInputs = [ skalibs ]; + + sourceRoot = "admin/${name}"; + + configurePhase = '' + pushd conf-compile + + printf "$out/bin" > conf-install-command + printf "$out/include" > conf-install-include + printf "$out/lib" > conf-install-library + printf "$out/lib" > conf-install-library.so + + # let nix builder strip things, cross-platform + truncate --size 0 conf-stripbins + truncate --size 0 conf-striplibs + + printf "${skalibs}/sysdeps" > import + printf "%s" "${skalibs}/include" > path-include + printf "%s" "${skalibs}/lib" > path-library + + rm -f flag-slashpackage + touch flag-allstatic + + popd + ''; + + preBuild = '' + patchShebangs src/sys + ''; + + meta = { + homepage = http://www.skarnet.org/software/s6-linux-utils/; + description = "A set of minimalistic Linux-specific system utilities."; + platforms = stdenv.lib.platforms.linux; + license = stdenv.lib.licenses.isc; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bf0cc411e1d..a29145144a1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2053,6 +2053,8 @@ let s6Dns = callPackage ../tools/networking/s6-dns { }; + s6LinuxUtils = callPackage ../os-specific/linux/s6-linux-utils { }; + s6Networking = callPackage ../tools/networking/s6-networking { }; s6PortableUtils = callPackage ../tools/misc/s6-portable-utils { }; From a283bec71cec60c2b9c84ea9af320fc8df0dfd5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 30 Aug 2014 09:44:07 +0200 Subject: [PATCH 079/789] glibc: fix CVE-2014-5119 by Debian patch --- .../libraries/glibc/2.19/common.nix | 1 + .../libraries/glibc/2.19/cve-2014-5119.patch | 206 ++++++++++++++++++ 2 files changed, 207 insertions(+) create mode 100644 pkgs/development/libraries/glibc/2.19/cve-2014-5119.patch diff --git a/pkgs/development/libraries/glibc/2.19/common.nix b/pkgs/development/libraries/glibc/2.19/common.nix index cd1ba747d7c..a828148c3d5 100644 --- a/pkgs/development/libraries/glibc/2.19/common.nix +++ b/pkgs/development/libraries/glibc/2.19/common.nix @@ -60,6 +60,7 @@ stdenv.mkDerivation ({ ./fix-math.patch ./cve-2014-0475.patch + ./cve-2014-5119.patch ]; postPatch = '' diff --git a/pkgs/development/libraries/glibc/2.19/cve-2014-5119.patch b/pkgs/development/libraries/glibc/2.19/cve-2014-5119.patch new file mode 100644 index 00000000000..cbae03425eb --- /dev/null +++ b/pkgs/development/libraries/glibc/2.19/cve-2014-5119.patch @@ -0,0 +1,206 @@ +http://anonscm.debian.org/viewvc/pkg-glibc/glibc-package/trunk/debian/patches/any/cvs-CVE-2014-5119.diff?revision=6248&view=co + +commit a1a6a401ab0a3c9f15fb7eaebbdcee24192254e8 +Author: Florian Weimer +Date: Tue Aug 26 19:38:59 2014 +0200 + + __gconv_translit_find: Disable function [BZ #17187] + + This functionality has never worked correctly, and the implementation + contained a security vulnerability (CVE-2014-5119). + +2014-08-26 Florian Weimer + + [BZ #17187] + * iconv/gconv_trans.c (struct known_trans, search_tree, lock, + trans_compare, open_translit, __gconv_translit_find): + Remove module loading code. + +--- a/iconv/gconv_trans.c ++++ b/iconv/gconv_trans.c +@@ -238,181 +238,12 @@ __gconv_transliterate (struct __gconv_step *step, + return __GCONV_ILLEGAL_INPUT; + } + +- +-/* Structure to represent results of found (or not) transliteration +- modules. */ +-struct known_trans +-{ +- /* This structure must remain the first member. */ +- struct trans_struct info; +- +- char *fname; +- void *handle; +- int open_count; +-}; +- +- +-/* Tree with results of previous calls to __gconv_translit_find. */ +-static void *search_tree; +- +-/* We modify global data. */ +-__libc_lock_define_initialized (static, lock); +- +- +-/* Compare two transliteration entries. */ +-static int +-trans_compare (const void *p1, const void *p2) +-{ +- const struct known_trans *s1 = (const struct known_trans *) p1; +- const struct known_trans *s2 = (const struct known_trans *) p2; +- +- return strcmp (s1->info.name, s2->info.name); +-} +- +- +-/* Open (maybe reopen) the module named in the struct. Get the function +- and data structure pointers we need. */ +-static int +-open_translit (struct known_trans *trans) +-{ +- __gconv_trans_query_fct queryfct; +- +- trans->handle = __libc_dlopen (trans->fname); +- if (trans->handle == NULL) +- /* Not available. */ +- return 1; +- +- /* Find the required symbol. */ +- queryfct = __libc_dlsym (trans->handle, "gconv_trans_context"); +- if (queryfct == NULL) +- { +- /* We cannot live with that. */ +- close_and_out: +- __libc_dlclose (trans->handle); +- trans->handle = NULL; +- return 1; +- } +- +- /* Get the context. */ +- if (queryfct (trans->info.name, &trans->info.csnames, &trans->info.ncsnames) +- != 0) +- goto close_and_out; +- +- /* Of course we also have to have the actual function. */ +- trans->info.trans_fct = __libc_dlsym (trans->handle, "gconv_trans"); +- if (trans->info.trans_fct == NULL) +- goto close_and_out; +- +- /* Now the optional functions. */ +- trans->info.trans_init_fct = +- __libc_dlsym (trans->handle, "gconv_trans_init"); +- trans->info.trans_context_fct = +- __libc_dlsym (trans->handle, "gconv_trans_context"); +- trans->info.trans_end_fct = +- __libc_dlsym (trans->handle, "gconv_trans_end"); +- +- trans->open_count = 1; +- +- return 0; +-} +- +- + int + internal_function + __gconv_translit_find (struct trans_struct *trans) + { +- struct known_trans **found; +- const struct path_elem *runp; +- int res = 1; +- +- /* We have to have a name. */ +- assert (trans->name != NULL); +- +- /* Acquire the lock. */ +- __libc_lock_lock (lock); +- +- /* See whether we know this module already. */ +- found = __tfind (trans, &search_tree, trans_compare); +- if (found != NULL) +- { +- /* Is this module available? */ +- if ((*found)->handle != NULL) +- { +- /* Maybe we have to reopen the file. */ +- if ((*found)->handle != (void *) -1) +- /* The object is not unloaded. */ +- res = 0; +- else if (open_translit (*found) == 0) +- { +- /* Copy the data. */ +- *trans = (*found)->info; +- (*found)->open_count++; +- res = 0; +- } +- } +- } +- else +- { +- size_t name_len = strlen (trans->name) + 1; +- int need_so = 0; +- struct known_trans *newp; +- +- /* We have to continue looking for the module. */ +- if (__gconv_path_elem == NULL) +- __gconv_get_path (); +- +- /* See whether we have to append .so. */ +- if (name_len <= 4 || memcmp (&trans->name[name_len - 4], ".so", 3) != 0) +- need_so = 1; +- +- /* Create a new entry. */ +- newp = (struct known_trans *) malloc (sizeof (struct known_trans) +- + (__gconv_max_path_elem_len +- + name_len + 3) +- + name_len); +- if (newp != NULL) +- { +- char *cp; +- +- /* Clear the struct. */ +- memset (newp, '\0', sizeof (struct known_trans)); +- +- /* Store a copy of the module name. */ +- newp->info.name = cp = (char *) (newp + 1); +- cp = __mempcpy (cp, trans->name, name_len); +- +- newp->fname = cp; +- +- /* Search in all the directories. */ +- for (runp = __gconv_path_elem; runp->name != NULL; ++runp) +- { +- cp = __mempcpy (__stpcpy ((char *) newp->fname, runp->name), +- trans->name, name_len); +- if (need_so) +- memcpy (cp, ".so", sizeof (".so")); +- +- if (open_translit (newp) == 0) +- { +- /* We found a module. */ +- res = 0; +- break; +- } +- } +- +- if (res) +- newp->fname = NULL; +- +- /* In any case we'll add the entry to our search tree. */ +- if (__tsearch (newp, &search_tree, trans_compare) == NULL) +- { +- /* Yickes, this should not happen. Unload the object. */ +- res = 1; +- /* XXX unload here. */ +- } +- } +- } +- +- __libc_lock_unlock (lock); +- +- return res; ++ /* Transliteration module loading has been removed because it never ++ worked as intended and suffered from a security vulnerability. ++ Consequently, this function always fails. */ ++ return 1; + } From fccf486762eb7213a27b4d265ef7eaf2487e7406 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 30 Aug 2014 10:17:40 +0200 Subject: [PATCH 080/789] libav: maintenance+security update CVE-2013-{0848,3672,3674,7020} and CVE-2014-{2098,2263} --- pkgs/development/libraries/libav/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libav/default.nix b/pkgs/development/libraries/libav/default.nix index 2f9e1786473..264868e4a97 100644 --- a/pkgs/development/libraries/libav/default.nix +++ b/pkgs/development/libraries/libav/default.nix @@ -28,7 +28,7 @@ let result = { libav_0_8 = libavFun "0.8.13" "1fr3rzykrlm1cla0csm9hqa3gcqp19hf5rgn70nyb9w92r67v685"; libav_9 = libavFun "9.16" "18378gdgzqsxaacc9vl7ligwndbdvy95wbn50hs8xvdqn1rn916a"; - libav_10 = libavFun "10.3" "1fq83rc5534fjqjlhkw5i9k54dmyqn2pgvyillm6pws8rkn9yb5r"; + libav_10 = libavFun "10.4" "1zzvjfdlv9swhq7dzvli1pk8cn02q1076ax9m3cx9ipilbg21639"; }; libavFun = version : sha256 : stdenv.mkDerivation rec { From 20aacf89a3d197bee10cc8e2d672a8e33f73d296 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 30 Aug 2014 10:25:16 +0200 Subject: [PATCH 081/789] libpng: code-cleanup update --- pkgs/development/libraries/libpng/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix index 1f04ae8fca5..3f8622535db 100644 --- a/pkgs/development/libraries/libpng/default.nix +++ b/pkgs/development/libraries/libpng/default.nix @@ -3,11 +3,11 @@ assert zlib != null; let - version = "1.6.12"; - sha256 = "0pkcirbfzhqqsm3hr2alxprw5n22a836qk4df1jnns6jk79gcby3"; + version = "1.6.13"; + sha256 = "09g631h1f1xvrdiy36mh1034r9w46damp9jcg7nm507wlmacxj6r"; patch_src = fetchurl { url = "mirror://sourceforge/libpng-apng/libpng-${version}-apng.patch.gz"; - sha256 = "0r2vmsc4cvxisjr7jqw2vjf66isb2fhs4nnssz3l3jgdangj8wz0"; + sha256 = "017pnxp3zhhlh6mg2yqn5xrb6dcxc5p3dp1kr46p8xx052i0hzqb"; }; whenPatched = stdenv.lib.optionalString apngSupport; From aa3248c62e55e329ebbc271dcd1dc3a72635a4e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 30 Aug 2014 10:47:22 +0200 Subject: [PATCH 082/789] harfbuzz: small update --- pkgs/development/libraries/harfbuzz/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix index 8340660e392..45cdc5be02b 100644 --- a/pkgs/development/libraries/harfbuzz/default.nix +++ b/pkgs/development/libraries/harfbuzz/default.nix @@ -8,11 +8,11 @@ # (icu is a ~30 MB dependency, the rest is very small in comparison) stdenv.mkDerivation rec { - name = "harfbuzz-0.9.33"; + name = "harfbuzz-0.9.35"; src = fetchurl { url = "http://www.freedesktop.org/software/harfbuzz/release/${name}.tar.bz2"; - sha256 = "1iql2ghlndqgx9q6p098xf253rjz5rnrv5qniwgd1b5q0jzwa4yk"; + sha256 = "1v86596994bnb9hx7laykhw4ipixqz9ckwzyyqf340pmlsmsi88a"; }; configureFlags = [ From 01c0be6ece84ff168a33feef08f1f69d1ce91ad7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 30 Aug 2014 11:23:50 +0200 Subject: [PATCH 083/789] gstreamer-1: bugfix-only update of all components 1.4.0 -> 1.4.1 --- pkgs/development/libraries/gstreamer/bad/default.nix | 6 +++--- pkgs/development/libraries/gstreamer/base/default.nix | 4 ++-- pkgs/development/libraries/gstreamer/core/default.nix | 6 +++--- pkgs/development/libraries/gstreamer/good/default.nix | 4 ++-- pkgs/development/libraries/gstreamer/libav/default.nix | 4 ++-- pkgs/development/libraries/gstreamer/ugly/default.nix | 4 ++-- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix index d86e450477d..a02af7f0cd7 100644 --- a/pkgs/development/libraries/gstreamer/bad/default.nix +++ b/pkgs/development/libraries/gstreamer/bad/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, python, gst-plugins-base, orc , faacSupport ? false, faac ? null , faad2, libass, libkate, libmms -, libmodplug, mpeg2dec, mpg123 +, libmodplug, mpeg2dec, mpg123 , openjpeg, libopus, librsvg , wildmidi, fluidsynth, libvdpau, wayland , libwebp, xvidcore, gnutls @@ -10,7 +10,7 @@ assert faacSupport -> faac != null; stdenv.mkDerivation rec { - name = "gst-plugins-bad-1.4.0"; + name = "gst-plugins-bad-1.4.1"; meta = with stdenv.lib; { description = "Gstreamer Bad Plugins"; @@ -28,7 +28,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz"; - sha256 = "1y821785rvr6s79cmdll66hg6h740qa2n036xid20nvjyxabfb7z"; + sha256 = "0268db2faaf0bb22e5b709a11633abbca4f3d289b1f513bb262d0bf3f53e19ae"; }; nativeBuildInputs = [ pkgconfig python ]; diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix index 9ae5f194fa2..3b9e94f4c65 100644 --- a/pkgs/development/libraries/gstreamer/base/default.nix +++ b/pkgs/development/libraries/gstreamer/base/default.nix @@ -4,7 +4,7 @@ }: stdenv.mkDerivation rec { - name = "gst-plugins-base-1.4.0"; + name = "gst-plugins-base-1.4.1"; meta = { description = "Base plugins and helper libraries"; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz"; - sha256 = "07jcs08hjyban0amls5s0g6i4a1hwiir1llwpqzlwkmnhfwx9bjx"; + sha256 = "aea9e25be6691bd3cc0785d005b2b5d70ce313a2c897901680a3f7e7cab5a499"; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix index a99c0f14ecc..8e9a2b87a01 100644 --- a/pkgs/development/libraries/gstreamer/core/default.nix +++ b/pkgs/development/libraries/gstreamer/core/default.nix @@ -1,9 +1,9 @@ { stdenv, fetchurl, pkgconfig, perl, bison, flex, python, gobjectIntrospection -, glib +, glib }: stdenv.mkDerivation rec { - name = "gstreamer-1.4.0"; + name = "gstreamer-1.4.1"; meta = { description = "Open source multimedia framework"; @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}/src/gstreamer/${name}.tar.xz"; - sha256 = "15f68pn2b47x543ih7hj59czgzl4af14j15bgjq8ky145gf9zhr3"; + sha256 = "5638f75003282135815c0077d491da11e9a884ad91d4ba6ab3cc78bae0fb452e"; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix index 69ffa81cb25..176814c5ecd 100644 --- a/pkgs/development/libraries/gstreamer/good/default.nix +++ b/pkgs/development/libraries/gstreamer/good/default.nix @@ -7,7 +7,7 @@ }: stdenv.mkDerivation rec { - name = "gst-plugins-good-1.4.0"; + name = "gst-plugins-good-1.4.1"; meta = with stdenv.lib; { description = "Gstreamer Good Plugins"; @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz"; - sha256 = "11965w4zr0jvrsnw33rbcc8d20dlh368rz0x16d2iypzhxwjx9j8"; + sha256 = "8559d4270065b30ed5c49b826e1b7a3a2bd5ee9a340ae745a2ae3f9718e4c637"; }; nativeBuildInputs = [ pkgconfig python ]; diff --git a/pkgs/development/libraries/gstreamer/libav/default.nix b/pkgs/development/libraries/gstreamer/libav/default.nix index ee4b3c392dd..e25492c1d13 100644 --- a/pkgs/development/libraries/gstreamer/libav/default.nix +++ b/pkgs/development/libraries/gstreamer/libav/default.nix @@ -6,7 +6,7 @@ assert withSystemLibav -> libav != null; stdenv.mkDerivation rec { - name = "gst-libav-1.4.0"; + name = "gst-libav-1.4.1"; meta = { homepage = "http://gstreamer.freedesktop.org"; @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}/src/gst-libav/${name}.tar.xz"; - sha256 = "1073p7xdpr3pwyx37fnldfni908apnq3k9fbqmxf5wk3g1jplb68"; + sha256 = "fc125521187fa84f3210269a0eecc51f8a856802f1ca4bb251f118dab90c5a9d"; }; configureFlags = stdenv.lib.optionalString withSystemLibav diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix index da37280af99..6a80514e8a1 100644 --- a/pkgs/development/libraries/gstreamer/ugly/default.nix +++ b/pkgs/development/libraries/gstreamer/ugly/default.nix @@ -5,7 +5,7 @@ }: stdenv.mkDerivation rec { - name = "gst-plugins-ugly-1.4.0"; + name = "gst-plugins-ugly-1.4.1"; meta = with stdenv.lib; { description = "Gstreamer Ugly Plugins"; @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz"; - sha256 = "0kblc5f4n0mh2sw8dhf7c9dg3wzm7a0p7pqpcff7n6ixy5hbn52k"; + sha256 = "25440435ac4ed795d213f2420a0e7355e4a2e2e76d1f9d020b2073f815e8b071"; }; nativeBuildInputs = [ pkgconfig python ]; From fcafdd27616b91049c506441802b9cfe970388d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 30 Aug 2014 13:28:44 +0200 Subject: [PATCH 084/789] stdenv/setup.sh: unbreak *.lz sources on darwin --- pkgs/stdenv/generic/setup.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index c3b9033b49a..94a73680e3e 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -450,6 +450,10 @@ unpackFile() { # Don't rely on tar knowing about .xz. xz -d < $curSrc | tar xf - ;; + *.tar.lz ) + # Don't rely on tar knowing about .lz. + lzip -d < $curSrc | tar xf - + ;; *.tar | *.tar.* | *.tgz | *.tbz2) # GNU tar can automatically select the decompression method # (info "(tar) gzip"). From 1c08efb8ab258856c6b2cb8794bdc03c96c2b8c9 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 23 Aug 2014 18:38:29 -0700 Subject: [PATCH 085/789] nixos/network-interfaces: Allow explicit virtual interface type setting --- nixos/modules/tasks/network-interfaces.nix | 32 ++++++++++++++++------ 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index ac3a55332e4..985e76cd708 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -138,8 +138,6 @@ let Whether this interface is virtual and should be created by tunctl. This is mainly useful for creating bridges between a host a virtual network such as VPN or a virtual machine. - - Defaults to tap device, unless interface contains "tun" in its name. ''; }; @@ -151,6 +149,15 @@ let ''; }; + virtualType = mkOption { + default = null; + type = types.nullOr (types.addCheck types.str (v: v == "tun" || v == "tap")); + description = '' + The explicit type of interface to create. Accepts tun or tap strings. + Also accepts null to implicitly detect the type of device. + ''; + }; + proxyARP = mkOption { default = false; type = types.bool; @@ -673,18 +680,25 @@ in ''); }; - createTunDevice = i: nameValuePair "${i.name}" + createTunDevice = i: nameValuePair "${i.name}-tun" { description = "Virtual Network Interface ${i.name}"; requires = [ "dev-net-tun.device" ]; after = [ "dev-net-tun.device" ]; wantedBy = [ "network.target" ]; requiredBy = [ "sys-subsystem-net-devices-${i.name}.device" ]; - serviceConfig = - { Type = "oneshot"; - RemainAfterExit = true; - ExecStart = "${pkgs.tunctl}/bin/tunctl -t '${i.name}' -u '${i.virtualOwner}'"; - ExecStop = "${pkgs.tunctl}/bin/tunctl -d '${i.name}'"; - }; + path = [ pkgs.iproute ]; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + }; + script = '' + ip tuntap add dev "${i.name}" \ + ${optionalString (i.virtualType != null) "mode ${i.virtualType}"} \ + user "${i.virtualOwner}" + ''; + postStop = '' + ip link del ${i.name} + ''; }; createBridgeDevice = n: v: From ed6040fc8dd833c31c67fadb54de320934e9668c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 24 Aug 2014 15:16:47 -0700 Subject: [PATCH 086/789] nixos/network-interface: Append -netdev for all device units Currently, device units are named directly after the name the user specifies for the device. A bridge device named lan will be defined within lan.service. This becomes a problem if you want your interface named nginx but also want to run the nginx service. This patch fixes the issue by appending netdev to all virtually created network device units. Therefore, the lan bridge -> lan-netdev.service. This naming convention is used for all types of network devices in order to ensure that all network devices are unique. --- nixos/modules/tasks/network-interfaces.nix | 34 +++++++++++----------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index 985e76cd708..14bf96ced7a 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -680,7 +680,7 @@ in ''); }; - createTunDevice = i: nameValuePair "${i.name}-tun" + createTunDevice = i: nameValuePair "${i.name}-netdev" { description = "Virtual Network Interface ${i.name}"; requires = [ "dev-net-tun.device" ]; after = [ "dev-net-tun.device" ]; @@ -701,8 +701,8 @@ in ''; }; - createBridgeDevice = n: v: - let + createBridgeDevice = n: v: nameValuePair "${n}-netdev" + (let deps = map (i: "sys-subsystem-net-devices-${i}.device") v.interfaces; in { description = "Bridge Interface ${n}"; @@ -739,10 +739,10 @@ in ip link set "${n}" down brctl delbr "${n}" ''; - }; + }); - createBondDevice = n: v: - let + createBondDevice = n: v: nameValuePair "${n}-netdev" + (let deps = map (i: "sys-subsystem-net-devices-${i}.device") v.interfaces; in { description = "Bond Interface ${n}"; @@ -778,10 +778,10 @@ in ifenslave -d "${n}" ip link delete "${n}" ''; - }; + }); - createSitDevice = n: v: - let + createSitDevice = n: v: nameValuePair "${n}-netdev" + (let deps = optional (v.dev != null) "sys-subsystem-net-devices-${v.dev}.device"; in { description = "6-to-4 Tunnel Interface ${n}"; @@ -804,10 +804,10 @@ in postStop = '' ip link delete "${n}" ''; - }; + }); - createVlanDevice = n: v: - let + createVlanDevice = n: v: nameValuePair "${n}-netdev" + (let deps = [ "sys-subsystem-net-devices-${v.interface}.device" ]; in { description = "Vlan Interface ${n}"; @@ -826,15 +826,15 @@ in postStop = '' ip link delete "${n}" ''; - }; + }); in listToAttrs ( map configureInterface interfaces ++ map createTunDevice (filter (i: i.virtual) interfaces)) - // mapAttrs createBridgeDevice cfg.bridges - // mapAttrs createBondDevice cfg.bonds - // mapAttrs createSitDevice cfg.sits - // mapAttrs createVlanDevice cfg.vlans + // mapAttrs' createBridgeDevice cfg.bridges + // mapAttrs' createBondDevice cfg.bonds + // mapAttrs' createSitDevice cfg.sits + // mapAttrs' createVlanDevice cfg.vlans // { "network-setup" = networkSetup; }; # Set the host and domain names in the activation script. Don't From ef92afe0da4ad622026c07a768f0b9e8b29447c9 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 24 Aug 2014 15:56:37 -0700 Subject: [PATCH 087/789] nixos/network-interfaces: Fix vlan device coming up during switch --- nixos/modules/tasks/network-interfaces.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index 14bf96ced7a..1163c729c9b 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -684,8 +684,7 @@ in { description = "Virtual Network Interface ${i.name}"; requires = [ "dev-net-tun.device" ]; after = [ "dev-net-tun.device" ]; - wantedBy = [ "network.target" ]; - requiredBy = [ "sys-subsystem-net-devices-${i.name}.device" ]; + wantedBy = [ "network.target" "sys-subsystem-net-devices-${i.name}.device" ]; path = [ pkgs.iproute ]; serviceConfig = { Type = "oneshot"; From 2559ea7138744bdf6e15b52e4c84bf134bba4fbf Mon Sep 17 00:00:00 2001 From: Patrick Mahoney Date: Sat, 30 Aug 2014 11:41:33 -0500 Subject: [PATCH 088/789] nginx: add lua module --- pkgs/servers/http/nginx/default.nix | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/http/nginx/default.nix b/pkgs/servers/http/nginx/default.nix index 903cf038d6e..700317bc799 100644 --- a/pkgs/servers/http/nginx/default.nix +++ b/pkgs/servers/http/nginx/default.nix @@ -1,10 +1,11 @@ { stdenv, fetchurl, fetchgit, openssl, zlib, pcre, libxml2, libxslt, expat -, gd, geoip +, gd, geoip, luajit , rtmp ? false , fullWebDAV ? false , syslog ? false , moreheaders ? false -, echo ? false }: +, echo ? false +, ngx_lua ? false }: with stdenv.lib; @@ -44,6 +45,19 @@ let rev = "refs/tags/v0.53"; sha256 = "90d4e3a49c678019f4f335bc18529aa108fcc9cfe0747ea4e2f6084a70da2868"; }; + + develkit-ext = fetchgit { + url = https://github.com/simpl/ngx_devel_kit.git; + rev = "refs/tags/v0.2.19"; + sha256 = "169m6gsa5b6zh1ws8qx2k7dbswld1zmhm4dh57qka0h07gs5dqjg"; + }; + + lua-ext = fetchgit { + url = https://github.com/openresty/lua-nginx-module.git; + rev = "refs/tags/v0.9.11"; + sha256 = "0y7238bvb907n7fsz5sivxbhfz2xnf4f0lzwk3k3h9j20fsyvwqq"; + }; + in stdenv.mkDerivation rec { @@ -52,7 +66,11 @@ stdenv.mkDerivation rec { buildInputs = [ openssl zlib pcre libxml2 libxslt gd geoip - ] ++ optional fullWebDAV expat; + ] ++ optional fullWebDAV expat + ++ optional ngx_lua luajit; + + LUAJIT_LIB = if ngx_lua then "${luajit}/lib" else ""; + LUAJIT_INC = if ngx_lua then "${luajit}/include/luajit-2.0" else ""; patches = if syslog then [ "${syslog-ext}/syslog-1.5.6.patch" ] else []; @@ -83,6 +101,7 @@ stdenv.mkDerivation rec { ++ optional syslog "--add-module=${syslog-ext}" ++ optional moreheaders "--add-module=${moreheaders-ext}" ++ optional echo "--add-module=${echo-ext}" + ++ optional ngx_lua "--add-module=${develkit-ext} --add-module=${lua-ext}" ++ optional (elem stdenv.system (with platforms; linux ++ freebsd)) "--with-file-aio"; From 74b808a66f2ce58f8edaca4e08b14f9c28e9a9e7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sat, 30 Aug 2014 22:41:01 +0200 Subject: [PATCH 089/789] Revert "ed: update to 1.10 (close #3852)" This reverts commit 60902b97fe4a96d370bc0c5e3690fa45da77d78d. It breaks building on Darwin: http://hydra.nixos.org/build/13832410 It also adds a gratuitous dependency to the stdenv bootstrap. --- pkgs/applications/editors/ed/default.nix | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix index ea8b2b27987..0c764fcf8f8 100644 --- a/pkgs/applications/editors/ed/default.nix +++ b/pkgs/applications/editors/ed/default.nix @@ -1,12 +1,11 @@ -{ fetchurl, stdenv, lzip }: +{ fetchurl, stdenv }: stdenv.mkDerivation rec { - version = "1.10"; - name = "ed-${version}"; + name = "ed-1.9"; src = fetchurl { - url = "mirror://gnu/ed/${name}.tar.lz"; - sha256 = "16kycdm5fcvpdr41hxb2da8da6jzs9dqznsg5552z6rh28n0jh4m"; + url = "mirror://gnu/ed/${name}.tar.gz"; + sha256 = "122syihsx2hwzj75mkf5a9ssiky2xby748kp4cc00wzhmp7p5cym"; }; /* FIXME: Tests currently fail on Darwin: @@ -24,8 +23,6 @@ stdenv.mkDerivation rec { compileFlags = [ "CC=${stdenv.cross.config}-gcc" ]; }; - buildInputs = [ lzip ]; - meta = { description = "An implementation of the standard Unix editor"; @@ -41,7 +38,9 @@ stdenv.mkDerivation rec { ''; license = stdenv.lib.licenses.gpl3Plus; + homepage = http://www.gnu.org/software/ed/; - maintainers = with stdenv.lib.maintainers; [ fuuzetsu ]; + + maintainers = [ ]; }; } From 3360fa1afb15bc82e49885d511de5e26b12a092d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sat, 30 Aug 2014 22:41:56 +0200 Subject: [PATCH 090/789] Revert "stdenv/setup.sh: unbreak *.lz sources on darwin" This reverts commit fcafdd27616b91049c506441802b9cfe970388d4. We're trying to modularise stdenv, not add more ad-hoc compression support. --- pkgs/stdenv/generic/setup.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 94a73680e3e..c3b9033b49a 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -450,10 +450,6 @@ unpackFile() { # Don't rely on tar knowing about .xz. xz -d < $curSrc | tar xf - ;; - *.tar.lz ) - # Don't rely on tar knowing about .lz. - lzip -d < $curSrc | tar xf - - ;; *.tar | *.tar.* | *.tgz | *.tbz2) # GNU tar can automatically select the decompression method # (info "(tar) gzip"). From acba6b4da25e4b92e2422036104ad2040bef1acd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 30 Aug 2014 22:52:27 +0200 Subject: [PATCH 091/789] ed: update to 1.10, working around *.lz problem --- pkgs/applications/editors/ed/default.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix index 0c764fcf8f8..bccd7754efb 100644 --- a/pkgs/applications/editors/ed/default.nix +++ b/pkgs/applications/editors/ed/default.nix @@ -1,11 +1,14 @@ { fetchurl, stdenv }: stdenv.mkDerivation rec { - name = "ed-1.9"; + name = "ed-1.10"; src = fetchurl { - url = "mirror://gnu/ed/${name}.tar.gz"; - sha256 = "122syihsx2hwzj75mkf5a9ssiky2xby748kp4cc00wzhmp7p5cym"; + # gnu only provides *.lz tarball, which is unfriendly for stdenv bootstrapping + #url = "mirror://gnu/ed/${name}.tar.gz"; + url = "http://pkgs.fedoraproject.org/repo/extras/ed/${name}.tar.bz2" + + "/38204d4c690a17a989e802ba01b45e98/${name}.tar.bz2"; + sha256 = "16qvshl8470f3znjfrrci3lzllqkzc6disk5kygzsg9hh4f6wysq"; }; /* FIXME: Tests currently fail on Darwin: From 0847250505aab535ecdc35c6b8f3c87d8f9dd0fe Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sat, 30 Aug 2014 23:48:45 -0300 Subject: [PATCH 092/789] Higan - a quick&dirty workaround Higan uses a lot of hardcoded paths when it looks for runtime files as shaders, icons and mainly BIOS files. So, we made a q&d wrapper script: it copies all these files to $HOME/.config/higan in the 1st invocation. --- pkgs/misc/emulators/higan/builder.sh | 22 ++++++++++++++++++++++ pkgs/misc/emulators/higan/default.nix | 3 ++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/pkgs/misc/emulators/higan/builder.sh b/pkgs/misc/emulators/higan/builder.sh index 144c23d39de..a99ccf26dbb 100644 --- a/pkgs/misc/emulators/higan/builder.sh +++ b/pkgs/misc/emulators/higan/builder.sh @@ -18,3 +18,25 @@ install -m 644 ananke/libananke.so $out/lib/libananke.so.1 (cd $out/lib && ln -s libananke.so.1 libananke.so) oldRPath=$(patchelf --print-rpath $out/bin/higan) patchelf --set-rpath $oldRPath:$out/lib $out/bin/higan + +# A dirty workaround, suggested by @cpages: +# we create a wrapper script to set up +# $HOME local configuration before higan runs + +mv $out/bin/higan $out/bin/.higan-wrapped +cat < $out/bin/higan + +#!/bin/bash +if [ ! -e \$HOME/.config/higan/.was_configured ] +then + cp --update --recursive $out/share/higan \$HOME/.config + chmod --recursive u+w \$HOME/.config/higan + touch \$HOME/.config/higan/.was_configured +fi +# LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:$out/lib +$out/bin/.higan-wrapped "\$@" + +EOF + +patchShebangs $out/bin/higan +chmod +x $out/bin/higan diff --git a/pkgs/misc/emulators/higan/default.nix b/pkgs/misc/emulators/higan/default.nix index aceb55b1396..532eeef2280 100644 --- a/pkgs/misc/emulators/higan/default.nix +++ b/pkgs/misc/emulators/higan/default.nix @@ -44,5 +44,6 @@ stdenv.mkDerivation rec { # TODO: # - options to choose profiles (accuracy, balanced, performance) # and different GUIs (gtk2, qt4) -# - fix the BML and BIOS paths - maybe a custom patch to Higan project? +# - fix the BML and BIOS paths - maybe submitting +# a custom patch to Higan project would not be a bad idea... # From a5a92fdd53ca36b85010ca26e239db30884ec22b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 31 Aug 2014 11:50:35 +0100 Subject: [PATCH 093/789] emulationstation: 1.0.2 -> 2.0.0-rc1 --- .../emulators/emulationstation/default.nix | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/pkgs/misc/emulators/emulationstation/default.nix b/pkgs/misc/emulators/emulationstation/default.nix index 5767786e814..6ff0a21135a 100644 --- a/pkgs/misc/emulators/emulationstation/default.nix +++ b/pkgs/misc/emulators/emulationstation/default.nix @@ -1,25 +1,22 @@ -{ stdenv, fetchurl, pkgconfig, cmake, boost, eigen, freeimage, freetype -, mesa, SDL, dejavu_fonts }: +{ stdenv, fetchFromGitHub, pkgconfig, cmake, curl, boost, eigen +, freeimage, freetype, mesa, SDL2, alsaLib, libarchive }: stdenv.mkDerivation rec { name = "emulationstation-${version}"; - version = "1.0.2"; - src = fetchurl { - url = "https://github.com/Aloshi/EmulationStation/archive/v${version}.tar.gz"; - sha256 = "809d67aaa727809c1426fb543e36bb788ca6a3404f8c46dd1917088b57ab5f50"; + version = "2.0.0-rc1"; + + src = fetchFromGitHub { + owner = "Aloshi"; + repo = "EmulationStation"; + rev = "8739519e1591819cab85e1d2056804d20c197dac"; + sha256 = "1psq5cqyq2yy1lqxrcj7pfp8szfmzhamxf3111l97w2h2zzcgvq9"; }; - buildInputs = [ pkgconfig cmake boost eigen freeimage freetype mesa SDL ]; - - prePatch = '' - sed -i \ - -e 's,/usr\(.*\)/ttf-dejavu\(.*\),${dejavu_fonts}\1\2,' src/Font.cpp - ''; + buildInputs = [ pkgconfig cmake alsaLib boost curl eigen freeimage freetype libarchive mesa SDL2 ]; buildPhase = "cmake . && make"; installPhase = '' - mkdir -p $out/bin - mv ../emulationstation $out/bin/. + install -D ../emulationstation $out/bin/emulationstation ''; meta = { From f5f4bf1a25464e03441c852c791f7ee8780536a1 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sun, 31 Aug 2014 09:45:44 -0300 Subject: [PATCH 094/789] Higan: Updating builder.sh script Now builder.sh will install a higan-config.sh script to write auxiliary stuff on $HOME/.config/higan directory. That way, higan searches locally and runs cleanly. Obviously it's a hack, but the only other way is to do a huge patch on upstream sources; personally I think it is better to work that type of thing directly on higan sources. --- pkgs/misc/emulators/higan/builder.sh | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/pkgs/misc/emulators/higan/builder.sh b/pkgs/misc/emulators/higan/builder.sh index a99ccf26dbb..0d01f7dc971 100644 --- a/pkgs/misc/emulators/higan/builder.sh +++ b/pkgs/misc/emulators/higan/builder.sh @@ -20,23 +20,16 @@ oldRPath=$(patchelf --print-rpath $out/bin/higan) patchelf --set-rpath $oldRPath:$out/lib $out/bin/higan # A dirty workaround, suggested by @cpages: -# we create a wrapper script to set up -# $HOME local configuration before higan runs +# we create a first-run script to populate +# the local $HOME with all the auxiliary +# stuff needed by higan at runtime -mv $out/bin/higan $out/bin/.higan-wrapped -cat < $out/bin/higan +cat < $out/bin/higan-config.sh +#!${shell} -#!/bin/bash -if [ ! -e \$HOME/.config/higan/.was_configured ] -then - cp --update --recursive $out/share/higan \$HOME/.config - chmod --recursive u+w \$HOME/.config/higan - touch \$HOME/.config/higan/.was_configured -fi -# LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:$out/lib -$out/bin/.higan-wrapped "\$@" +cp --update --recursive $out/share/higan \$HOME/.config +chmod --recursive u+w \$HOME/.config/higan EOF -patchShebangs $out/bin/higan -chmod +x $out/bin/higan +chmod +x $out/bin/higan-config.sh From d54b62ca6073efd99f1018c768214a2b9483f61e Mon Sep 17 00:00:00 2001 From: Mateusz Kowalczyk Date: Sun, 31 Aug 2014 18:40:11 +0100 Subject: [PATCH 095/789] Add a builder for Agda packages. --- pkgs/build-support/agda/default.nix | 95 +++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 8 +++ 2 files changed, 103 insertions(+) create mode 100644 pkgs/build-support/agda/default.nix diff --git a/pkgs/build-support/agda/default.nix b/pkgs/build-support/agda/default.nix new file mode 100644 index 00000000000..f8130b423a2 --- /dev/null +++ b/pkgs/build-support/agda/default.nix @@ -0,0 +1,95 @@ +# Builder for Agda packages. Mostly inspired by the cabal builder. +# +# Contact: stdenv.lib.maintainers.fuuzetsu + +{ stdenv, Agda, glibcLocales +, writeScriptBin +, extension ? (self: super: {}) +}: + +let + optionalString = stdenv.lib.optionalString; + filter = stdenv.lib.filter; + concatMapStringsSep = stdenv.lib.strings.concatMapStringsSep; + concatMapStrings = stdenv.lib.strings.concatMapStrings; + unwords = stdenv.lib.strings.concatStringsSep " "; + mapInside = xs: unwords (map (x: x + "/*") xs); +in +{ mkDerivation = args: + let + postprocess = x: x // { + sourceDirectories = filter (y: !(y == null)) x.sourceDirectories; + propagatedBuildInputs = filter (y : ! (y == null)) x.propagatedBuildInputs; + propagatedUserEnvPkgs = filter (y : ! (y == null)) x.propagatedUserEnvPkgs; + extraBuildFlags = filter (y : ! (y == null)) x.extraBuildFlags; + everythingFile = if x.everythingFile == "" then "Everything.agda" else x.everythingFile; + }; + + defaults = self : { + # There is no Hackage for Agda so we require src. + inherit (self) src name; + + buildInputs = [ Agda ] ++ self.buildDepends; + buildDepends = []; + # Not much choice here ;) + LANG = "en_US.UTF-8"; + LOCALE_ARCHIVE = optionalString stdenv.isLinux "${glibcLocales}/lib/locale/locale-archive"; + + everythingFile = "Everything.agda"; + + propagatedBuildInputs = self.buildDepends ++ self.buildTools; + propagatedUserEnvPkgs = self.buildDepends; + + # Immediate source directories under which modules can be found. + sourceDirectories = [ ]; + + # This is used if we have a top-level element that only serves + # as the container for the source and we only care about its + # contents. The directories put here will have their + # *contents* copied over as opposed to sourceDirectories which + # would make a direct copy of the whole thing. + topSourceDirectories = [ "src" ]; + + buildTools = []; + + # Extra stuff to pass to the Agda binary. + extraBuildFlags = [ "-i ." ]; + buildFlags = let r = map (x: "-i " + x + "/share/agda") self.buildDepends; + d = map (x : "-i " + x) (self.sourceDirectories ++ self.topSourceDirectories); + in unwords (r ++ d ++ self.extraBuildFlags); + + # We expose this as a mere convenience for any tools. + AGDA_PACKAGE_PATH = concatMapStrings (x: x + ":") self.buildDepends; + + # Makes a wrapper available to the user. Very useful in + # nix-shell where all dependencies are -i'd. + agdaWrapper = writeScriptBin "agda" '' + ${Agda}/bin/agda ${self.buildFlags} "$@" + ''; + + # configurePhase is idempotent + configurePhase = '' + eval "$preConfigure" + export AGDA_PACKAGE_PATH=${self.AGDA_PACKAGE_PATH}; + export PATH="${self.agdaWrapper}/bin:$PATH" + eval "$postConfigure" + ''; + + buildPhase = '' + eval "$preBuild" + ${Agda}/bin/agda ${self.buildFlags} ${self.everythingFile} + eval "$postBuild" + ''; + + installPhase = '' + eval "$preInstall" + mkdir -p $out/share/agda + cp -pR ${unwords self.sourceDirectories} ${mapInside self.topSourceDirectories} $out/share/agda + eval "$postInstall" + ''; + }; + in stdenv.mkDerivation + (postprocess (let super = defaults self // args self; + self = super // extension self super; + in self)); +} \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cfc93a8cf45..9770b178e44 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6526,6 +6526,14 @@ let zziplib = callPackage ../development/libraries/zziplib { }; + ### DEVELOPMENT / LIBRARIES / AGDA + + agda = callPackage ../build-support/agda { + glibcLocales = if pkgs.stdenv.isLinux then pkgs.glibcLocales else null; + extension = self : super : {}; + Agda = haskellPackages.Agda; + inherit writeScriptBin; + }; ### DEVELOPMENT / LIBRARIES / JAVA From 61c17e326f9c0f6fd742889c1b8743df83b79c0f Mon Sep 17 00:00:00 2001 From: Mateusz Kowalczyk Date: Mon, 1 Sep 2014 01:31:17 +0100 Subject: [PATCH 096/789] Use agda builder for stdlib. mv to all-packages --- pkgs/development/compilers/agda/stdlib.nix | 26 +++++++++------------- pkgs/top-level/all-packages.nix | 4 ++++ pkgs/top-level/haskell-packages.nix | 1 - 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/pkgs/development/compilers/agda/stdlib.nix b/pkgs/development/compilers/agda/stdlib.nix index d0ae1394f89..2857a7d3d71 100644 --- a/pkgs/development/compilers/agda/stdlib.nix +++ b/pkgs/development/compilers/agda/stdlib.nix @@ -1,7 +1,10 @@ -{ cabal, fetchurl, filemanip, Agda }: +{ stdenv, agda, fetchurl, ghcWithPackages }: -cabal.mkDerivation (self: rec { - pname = "Agda-stdlib"; +let + ghc = ghcWithPackages (s: [ s.filemanip ]); +in +agda.mkDerivation (self: rec { + name = "Agda-stdlib"; version = "0.8.1"; src = fetchurl { @@ -9,23 +12,16 @@ cabal.mkDerivation (self: rec { sha256 = "0ij4rg4lk0pq01ing285gbmnn23dcf2rhihdcs8bbdpjg52vl4gf"; }; - buildDepends = [ filemanip Agda ]; - - preConfigure = "cd ffi"; - - postInstall = '' - mkdir -p $out/share - cd .. - ${self.ghc.ghc}/bin/runhaskell GenerateEverything - ${Agda}/bin/agda -i . -i src Everything.agda - cp -pR src $out/share/agda + preConfigure = '' + ${ghc}/bin/runhaskell GenerateEverything.hs ''; + topSourceDirectories = [ "src" ]; + meta = { homepage = "http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Libraries.StandardLibrary"; description = "A standard library for use with the Agda compiler."; license = "unknown"; - platforms = self.ghc.meta.platforms; - maintainers = [ self.stdenv.lib.maintainers.jwiegley ]; + maintainers = with stdenv.lib.maintaianers; [ jwiegley ]; }; }) \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9770b178e44..6a0fd08cca7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6535,6 +6535,10 @@ let inherit writeScriptBin; }; + AgdaStdlib = callPackage ../development/compilers/agda/stdlib.nix { + ghcWithPackages = haskellPackages.ghcWithPackages; + }; + ### DEVELOPMENT / LIBRARIES / JAVA atermjava = callPackage ../development/libraries/java/aterm { diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index b074a6ab48d..9afe4b715aa 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -2888,7 +2888,6 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in # Compilers. Agda = callPackage ../development/compilers/agda {}; - AgdaStdlib = callPackage ../development/compilers/agda/stdlib.nix {}; uhc = callPackage ../development/compilers/uhc {}; From b2887c0b5ea3943a8dd5d99ddba6123428c8bfde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 1 Sep 2014 11:33:48 +0200 Subject: [PATCH 097/789] readline5: recover, as it was still used Partial revert of 30fef8a3cffbc1. I probably confused that with unused readline62. --- pkgs/development/libraries/readline/readline5.nix | 15 +++++++++++++++ .../libraries/readline/shobj-darwin.patch | 11 +++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 28 insertions(+) create mode 100644 pkgs/development/libraries/readline/readline5.nix create mode 100644 pkgs/development/libraries/readline/shobj-darwin.patch diff --git a/pkgs/development/libraries/readline/readline5.nix b/pkgs/development/libraries/readline/readline5.nix new file mode 100644 index 00000000000..ad9860d855e --- /dev/null +++ b/pkgs/development/libraries/readline/readline5.nix @@ -0,0 +1,15 @@ +{ stdenv, fetchurl, ncurses }: + +stdenv.mkDerivation { + name = "readline-5.2"; + + src = fetchurl { + url = mirror://gnu/readline/readline-5.2.tar.gz; + sha256 = "0icz4hqqq8mlkwrpczyaha94kns0am9z0mh3a2913kg2msb8vs0j"; + }; + + propagatedBuildInputs = [ncurses]; + + patches = stdenv.lib.optional stdenv.isDarwin ./shobj-darwin.patch; +} + diff --git a/pkgs/development/libraries/readline/shobj-darwin.patch b/pkgs/development/libraries/readline/shobj-darwin.patch new file mode 100644 index 00000000000..a9199ca3e89 --- /dev/null +++ b/pkgs/development/libraries/readline/shobj-darwin.patch @@ -0,0 +1,11 @@ +--- a/support/shobj-conf.orig 2006-04-11 06:15:43.000000000 -0700 ++++ b/support/shobj-conf 2007-11-08 01:15:43.000000000 -0800 +@@ -171,7 +171,7 @@ + SHLIB_LIBSUFF='dylib' + + case "${host_os}" in +- darwin[78]*) SHOBJ_LDFLAGS='' ++ darwin[789]*) SHOBJ_LDFLAGS='' + SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' + ;; + *) SHOBJ_LDFLAGS='-dynamic' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 48a4f8b1ba9..7d89e4b4292 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6104,6 +6104,8 @@ let readline = readline6; readline6 = readline63; + readline5 = callPackage ../development/libraries/readline/readline5.nix { }; + readline62 = callPackage ../development/libraries/readline/readline6.nix { }; readline63 = callPackage ../development/libraries/readline/readline6.3.nix { }; From 624e98e78e011014ba204ed414314836f15a1415 Mon Sep 17 00:00:00 2001 From: vbgl Date: Mon, 1 Sep 2014 11:59:16 +0200 Subject: [PATCH 098/789] ocaml-javalib, ocaml-sawja: removes wrong path to bash in configure scripts --- pkgs/development/ocaml-modules/javalib/configure.sh.patch | 6 ++++++ pkgs/development/ocaml-modules/sawja/configure.sh.patch | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/pkgs/development/ocaml-modules/javalib/configure.sh.patch b/pkgs/development/ocaml-modules/javalib/configure.sh.patch index 67e019b277a..77a2a5ba4ae 100644 --- a/pkgs/development/ocaml-modules/javalib/configure.sh.patch +++ b/pkgs/development/ocaml-modules/javalib/configure.sh.patch @@ -1,5 +1,11 @@ --- javalib-2.3-orig/configure.sh 2013-10-30 08:35:30.000000000 +0100 +++ javalib-2.3/configure.sh 2014-07-06 17:28:39.025066199 +0200 +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + + ### + ### A configuration script for Javalib @@ -44,7 +44,7 @@ DESTDIR= # The ocamlpath variable for the compiler to locate the locally-installed diff --git a/pkgs/development/ocaml-modules/sawja/configure.sh.patch b/pkgs/development/ocaml-modules/sawja/configure.sh.patch index 8165de242f5..e01df32bbde 100644 --- a/pkgs/development/ocaml-modules/sawja/configure.sh.patch +++ b/pkgs/development/ocaml-modules/sawja/configure.sh.patch @@ -1,5 +1,11 @@ --- sawja-1.5-orig/configure.sh 2013-10-30 08:35:29.000000000 +0100 +++ sawja-1.5/configure.sh 2014-07-05 18:50:26.833798254 +0200 +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + + ### + ### A configuration script for Sawja @@ -39,7 +39,7 @@ DESTDIR= # The ocamlpath variable for the compiler to locate the locally-installed From b21ac6029041a5fb0feb9c8d2428c59f2923085b Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Mon, 1 Sep 2014 22:20:59 +0200 Subject: [PATCH 099/789] nixos/nat: add forwardPorts for external->internal DNAT --- nixos/modules/services/networking/nat.nix | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/nixos/modules/services/networking/nat.nix b/nixos/modules/services/networking/nat.nix index e8d9d00cc0a..b6fa3b79eb2 100644 --- a/nixos/modules/services/networking/nat.nix +++ b/nixos/modules/services/networking/nat.nix @@ -75,6 +75,17 @@ in ''; }; + networking.nat.forwardPorts = mkOption { + type = types.listOf types.attrs; + default = []; + example = [ { sourcePort = 8080; destination = "10.0.0.1:80"; } ]; + description = + '' + List of forwarded ports from the external interface to + internal destinations by using DNAT. + ''; + }; + }; @@ -118,6 +129,14 @@ in -s '${range}' -o ${cfg.externalInterface} ${dest} '') cfg.internalIPs} + # NAT from external ports to internal ports. + ${concatMapStrings (fwd: '' + iptables -w -t nat -A PREROUTING \ + -i ${cfg.externalInterface} -p tcp \ + --dport ${builtins.toString fwd.sourcePort} \ + -j DNAT --to-destination ${fwd.destination} + '') cfg.forwardPorts} + echo 1 > /proc/sys/net/ipv4/ip_forward ''; From e12337156c35ed2bfd245a995e0e77a6192f94ee Mon Sep 17 00:00:00 2001 From: Vladimir Still Date: Sun, 31 Aug 2014 13:15:39 +0200 Subject: [PATCH 100/789] sshd: Allow to specify ListenAddress. --- .../modules/services/networking/ssh/sshd.nix | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix index e4b29a0b909..3eb646f0750 100644 --- a/nixos/modules/services/networking/ssh/sshd.nix +++ b/nixos/modules/services/networking/ssh/sshd.nix @@ -144,6 +144,33 @@ in ''; }; + listenAddresses = mkOption { + type = types.listOf types.optionSet; + default = []; + example = [ { addr = "192.168.3.1"; port = 22; } { addr = "0.0.0.0"; port = 64022; } ]; + description = '' + List of addresses and ports to listen on (ListenAddress directive + in config). If port is not specified for address sshd will listen + on all ports specified by ports option. + ''; + options = { + addr = mkOption { + type = types.nullOr types.str; + default = null; + description = '' + Host, IPv4 or IPv6 address to listen to. + ''; + }; + port = mkOption { + type = types.nullOr types.int; + default = null; + description = '' + Port to listen to. + ''; + }; + }; + }; + passwordAuthentication = mkOption { type = types.bool; default = true; @@ -349,6 +376,10 @@ in Port ${toString port} '') cfg.ports} + ${concatMapStrings ({ port, addr }: '' + ListenAddress ${addr}${if port != null then ":" + toString port else ""} + '') cfg.listenAddresses} + ${optionalString cfgc.setXAuthLocation '' XAuthLocation ${pkgs.xorg.xauth}/bin/xauth ''} @@ -383,6 +414,10 @@ in assertion = (data.publicKey == null && data.publicKeyFile != null) || (data.publicKey != null && data.publicKeyFile == null); message = "knownHost ${name} must contain either a publicKey or publicKeyFile"; + }) + ++ flip map cfg.listenAddresses ({ addr, port }: { + assertion = addr != null; + message = "addr must be spefied in each listenAddresses entry"; }); }; From ac39d839c3dccb2890b64a3fbe1a28d8aba1007f Mon Sep 17 00:00:00 2001 From: Vladimir Still Date: Sun, 31 Aug 2014 17:21:14 +0200 Subject: [PATCH 101/789] sshd: Add note about firewall and listenAddresses. --- nixos/modules/services/networking/ssh/sshd.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix index 3eb646f0750..9b2f56fa400 100644 --- a/nixos/modules/services/networking/ssh/sshd.nix +++ b/nixos/modules/services/networking/ssh/sshd.nix @@ -152,6 +152,8 @@ in List of addresses and ports to listen on (ListenAddress directive in config). If port is not specified for address sshd will listen on all ports specified by ports option. + NOTE: setting this option won't automatically enable given ports + in firewall configuration. ''; options = { addr = mkOption { From a2394f09c7003efc238eb065afdd57221f6ba257 Mon Sep 17 00:00:00 2001 From: Vladimir Still Date: Mon, 1 Sep 2014 13:02:39 +0200 Subject: [PATCH 102/789] sshd: Add note about listening on port 22 to listenAddresses. --- nixos/modules/services/networking/ssh/sshd.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix index 9b2f56fa400..956c31a8ba3 100644 --- a/nixos/modules/services/networking/ssh/sshd.nix +++ b/nixos/modules/services/networking/ssh/sshd.nix @@ -151,7 +151,8 @@ in description = '' List of addresses and ports to listen on (ListenAddress directive in config). If port is not specified for address sshd will listen - on all ports specified by ports option. + on all ports specified by ports option. + NOTE: this will override default listening on all local addresses and port 22. NOTE: setting this option won't automatically enable given ports in firewall configuration. ''; From a1eefe1a949a8426150a12a7cd809c9f6b48da17 Mon Sep 17 00:00:00 2001 From: Thomas Strobel Date: Mon, 1 Sep 2014 23:55:21 +0200 Subject: [PATCH 103/789] Update: Haste-Compiler: 0.4.1 -> 0.4.2 --- pkgs/development/libraries/haskell/haste-compiler/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/haste-compiler/default.nix b/pkgs/development/libraries/haskell/haste-compiler/default.nix index 962bf758a1e..dfedd812a20 100644 --- a/pkgs/development/libraries/haskell/haste-compiler/default.nix +++ b/pkgs/development/libraries/haskell/haste-compiler/default.nix @@ -8,8 +8,8 @@ cabal.mkDerivation (self: { pname = "haste-compiler"; - version = "0.4.1"; - sha256 = "15v4c6rxz4n0wmiys6mam8xprcdq8kxnhpwcqnljshr8wlyihn8b"; + version = "0.4.2"; + sha256 = "0agbd21c7mgzxyg6lwjl3n8w2r7xcrv3811y0x86rg7q1m7z730m"; isLibrary = true; isExecutable = true; buildDepends = [ From e743d1ca85c582d7f8b3c0d2588e68c485515c94 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 02:04:59 +0400 Subject: [PATCH 104/789] Minor cleanup --- pkgs/applications/misc/namecoin/default.nix | 4 ++-- pkgs/applications/misc/namecoin/qt.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/misc/namecoin/default.nix b/pkgs/applications/misc/namecoin/default.nix index 1a26403e6f4..b1bd401b2eb 100644 --- a/pkgs/applications/misc/namecoin/default.nix +++ b/pkgs/applications/misc/namecoin/default.nix @@ -30,8 +30,8 @@ stdenv.mkDerivation rec { meta = { description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency"; homepage = "http://namecoin.info"; - license = "MIT"; - maintainers = [ "Chris Double " ]; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.doublec ]; platforms = with stdenv.lib.platforms; linux; }; } diff --git a/pkgs/applications/misc/namecoin/qt.nix b/pkgs/applications/misc/namecoin/qt.nix index 08dbee26f0b..447a2b42b6b 100644 --- a/pkgs/applications/misc/namecoin/qt.nix +++ b/pkgs/applications/misc/namecoin/qt.nix @@ -26,8 +26,8 @@ stdenv.mkDerivation rec { meta = { description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency"; homepage = "http://namecoin.info"; - license = "MIT"; - maintainers = [ "Chris Double " ]; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.doublec ]; platforms = with stdenv.lib.platforms; linux; }; } From 4cf191a42530cce961b445b40243c3deb9fc4a7c Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Mon, 1 Sep 2014 23:58:43 +0200 Subject: [PATCH 105/789] miscfiles: update from 1.4.2 to 1.5 and adopt it --- pkgs/data/misc/miscfiles/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/data/misc/miscfiles/default.nix b/pkgs/data/misc/miscfiles/default.nix index db4d13b890f..a40856e5910 100644 --- a/pkgs/data/misc/miscfiles/default.nix +++ b/pkgs/data/misc/miscfiles/default.nix @@ -1,16 +1,17 @@ {stdenv, fetchurl}: stdenv.mkDerivation rec { - name = "miscfiles-1.4.2"; + name = "miscfiles-1.5"; src = fetchurl { url = "mirror://gnu/miscfiles/${name}.tar.gz"; - sha256 = "1rh10y63asyrqyp5mlmxy7y4kdp6svk2inws3y7mfx8lsrhcm6dn"; + sha256 = "005588vfrwx8ghsdv9p7zczj9lbc9a3r4m5aphcaqv8gif4siaka"; }; - meta = { + meta = with stdenv.lib; { homepage = http://www.gnu.org/software/miscfiles/; - license = stdenv.lib.licenses.gpl2Plus; + license = licenses.gpl2Plus; description = "Collection of files not of crucial importance for sysadmins"; + maintainers = with maintainers; [ pSub ]; }; } From 7727a3fe1dad9293eb58f5a7bf49bfb2cdf0daa9 Mon Sep 17 00:00:00 2001 From: Raymond Gauthier Date: Thu, 14 Aug 2014 07:00:00 +0200 Subject: [PATCH 106/789] Added support for minimal zim desktop wiki package. --- pkgs/applications/office/zim/default.nix | 82 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++ 2 files changed, 86 insertions(+) create mode 100644 pkgs/applications/office/zim/default.nix diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix new file mode 100644 index 00000000000..cca52be1a17 --- /dev/null +++ b/pkgs/applications/office/zim/default.nix @@ -0,0 +1,82 @@ +{ stdenv, lib, fetchurl, buildPythonPackage, pythonPackages, pygtk, pygobject, python }: + +# +# TODO: Declare configuration options for the following optional dependencies: +# - File stores: hg, git, bzr +# - Included plugins depenencies: dot, ditaa, dia, any other? +# - pyxdg: Need to make it work first (see setupPyInstallFlags). +# + +buildPythonPackage rec { + name = "zim-${version}"; + version = "0.60"; + namePrefix = ""; + + src = fetchurl { + url = "http://zim-wiki.org/downloads/zim-0.61.tar.gz"; + sha256 = "0jncxkf83bwra3022jbvjfwhk5w8az0jlwr8nsvm7wa1zfrajhsq"; + }; + + propagatedBuildInputs = [ pythonPackages.sqlite3 pygtk /*pythonPackages.pyxdg*/ pygobject ]; + + preBuild = '' + mkdir -p $tmp/home + export HOME="$tmp/home" + ''; + + setupPyInstallFlags = ["--skip-xdg-cmd"]; + + # + # Exactly identical to buildPythonPackage's version but for the + # `--old-and-unmanagable`, which I removed. This was removed because + # this is a setuptools specific flag and as zim is overriding + # the install step, setuptools could not perform its monkey + # patching trick for the command. Alternate solutions were to + # + # - Remove the custom install step (tested as working but + # also remove the possibility of performing the xdg-cmd + # stuff). + # - Explicitly replace distutils import(s) by their setuptools + # equivalent (untested). + # + # Both solutions were judged unsatisfactory as altering the code + # would be required. + # + # Note that a improved solution would be to expose the use of + # the `--old-and-unmanagable` flag as an option of passed to the + # buildPythonPackage function. + # + # Also note that I stripped all comments. + # + installPhase = '' + runHook preInstall + + mkdir -p "$out/lib/${python.libPrefix}/site-packages" + + export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH" + + ${python}/bin/${python.executable} setup.py install \ + --install-lib=$out/lib/${python.libPrefix}/site-packages \ + --prefix="$out" ${lib.concatStringsSep " " setupPyInstallFlags} + + eapth="$out/lib/${python.libPrefix}"/site-packages/easy-install.pth + if [ -e "$eapth" ]; then + # move colliding easy_install.pth to specifically named one + mv "$eapth" $(dirname "$eapth")/${name}.pth + fi + + rm -f "$out/lib/${python.libPrefix}"/site-packages/site.py* + + runHook postInstall + ''; + + # Testing fails. + doCheck = false; + + meta = { + description = "A desktop wiki"; + homepage = http://zim-wiki.org; + license = stdenv.lib.licenses.gpl2Plus; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4fd7fc950ea..dc04bb7f7f3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10279,6 +10279,10 @@ let zgrviewer = callPackage ../applications/graphics/zgrviewer {}; + zim = callPackage ../applications/office/zim { + pygtk = pyGtkGlade; + }; + zotero = callPackage ../applications/office/zotero { xulrunner = xulrunner_30; }; From fa55a997015820ec54f9847f7d297c561e98629f Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 02:12:46 +0400 Subject: [PATCH 107/789] Load EHCI befor OHCI and UHCI; from patch by Mathnerd314 --- nixos/modules/system/boot/modprobe.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/nixos/modules/system/boot/modprobe.nix b/nixos/modules/system/boot/modprobe.nix index 652eb046f50..eaf8cf1ecd6 100644 --- a/nixos/modules/system/boot/modprobe.nix +++ b/nixos/modules/system/boot/modprobe.nix @@ -77,6 +77,11 @@ with lib; '')} ${config.boot.extraModprobeConfig} ''; + environment.etc."modprobe.d/usb-load-ehci-first.conf".text = + '' + softdep uhci_hcd pre: ehci_hcd + softdep ohci_hcd pre: ehci_hcd + ''; environment.systemPackages = [ config.system.sbin.modprobe pkgs.kmod ]; From d1db6465bbfdfc1b53d194da5783af5d77cd9025 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Tue, 2 Sep 2014 00:08:51 +0200 Subject: [PATCH 108/789] muparser: update from 2.2.2 to 2.2.3 --- pkgs/development/libraries/muparser/default.nix | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/muparser/default.nix b/pkgs/development/libraries/muparser/default.nix index 9d9a524e86d..b68f04f642f 100644 --- a/pkgs/development/libraries/muparser/default.nix +++ b/pkgs/development/libraries/muparser/default.nix @@ -1,11 +1,14 @@ {stdenv, fetchurl, unzip}: -stdenv.mkDerivation { - name = "muparser-2.2.2"; - src = fetchurl { - url = mirror://sourceforge/muparser/muparser_v2_2_2.zip; - sha256 = "0pncvjzzbwcadgpwnq5r7sl9v5r2y9gjgfnlw0mrs9wj206dbhx9"; - }; +stdenv.mkDerivation rec { + name = "muparser-${version}"; + version = "2.2.3"; + url-version = stdenv.lib.replaceChars ["."] ["_"] version; + + src = fetchurl { + url = "mirror://sourceforge/muparser/muparser_v${url-version}.zip"; + sha256 = "00l92k231yb49wijzkspa2l58mapn6vh2dlxnlg0pawjjfv33s6z"; + }; buildInputs = [ unzip ]; From 416b20fbd5d44aea8ff76677ebf2e5ea36827724 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 03:04:17 +0400 Subject: [PATCH 109/789] Don't specify Perl version --- pkgs/os-specific/linux/openvswitch/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/openvswitch/default.nix b/pkgs/os-specific/linux/openvswitch/default.nix index 6b82cc5f9b6..2e25c0383b7 100644 --- a/pkgs/os-specific/linux/openvswitch/default.nix +++ b/pkgs/os-specific/linux/openvswitch/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, openssl, python27, iproute, perl510, kernel ? null}: +{ stdenv, fetchurl, openssl, python27, iproute, perl, kernel ? null}: let version = "2.1.2"; @@ -17,7 +17,7 @@ stdenv.mkDerivation { buildInputs = [ openssl python27 - perl510 + perl ]; configureFlags = [ "--localstatedir=/var" From aaa7e89a93eb54babb8facfcd214263e907788d9 Mon Sep 17 00:00:00 2001 From: Ricky Elrod Date: Tue, 2 Sep 2014 02:51:24 -0400 Subject: [PATCH 110/789] [screenfetch] Bump to the stable release Signed-off-by: Ricky Elrod --- pkgs/tools/misc/screenfetch/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/screenfetch/default.nix b/pkgs/tools/misc/screenfetch/default.nix index 0ebc712fcf0..826f4e4d869 100644 --- a/pkgs/tools/misc/screenfetch/default.nix +++ b/pkgs/tools/misc/screenfetch/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchgit, xdpyinfo, xprop }: let - version = "2014-05-27"; + version = "3.6.2"; in stdenv.mkDerivation { name = "screenFetch-${version}"; @@ -9,8 +9,8 @@ stdenv.mkDerivation { src = fetchgit { url = git://github.com/KittyKatt/screenFetch.git; - rev = "69c46cb94b5765dbcb36905c5a35c42eb8e6e470"; - sha256 = "0479na831120bpyrg5nb3nb1jr8p8ahkixk1znwg730q3vdcjd6j"; + rev = "dec1cd6c2471defe4459967fbc8ae15b55714338"; + sha256 = "138a7g0za5dq27jx7x8gqg7gjkgyq0017v0nbcg68ys7dqlxsdl3"; }; installPhase = '' From cc1866eacb1a19b1d57f4737123721e797c9d9b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cillian=20de=20R=C3=B3iste?= Date: Tue, 2 Sep 2014 00:25:18 +0200 Subject: [PATCH 111/789] processing: apply patch from IRC to make it work without the IDE too --- .../graphics/processing/default.nix | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/pkgs/applications/graphics/processing/default.nix b/pkgs/applications/graphics/processing/default.nix index 7d0595134e9..ecce0e260bb 100644 --- a/pkgs/applications/graphics/processing/default.nix +++ b/pkgs/applications/graphics/processing/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, ant, jre, makeWrapper, libXxf86vm }: +{ fetchurl, stdenv, ant, jre, makeWrapper, libXxf86vm, which }: stdenv.mkDerivation rec { name = "processing-${version}"; @@ -12,20 +12,21 @@ stdenv.mkDerivation rec { # Stop it trying to download its own version of java patches = [ ./use-nixpkgs-jre.patch ]; - buildInputs = [ ant jre makeWrapper libXxf86vm ]; + buildInputs = [ ant jre makeWrapper libXxf86vm which ]; buildPhase = "cd build && ant build"; installPhase = '' + mkdir -p $out/${name} mkdir -p $out/bin - cp -r linux/work/* $out/ - sed -e "s#APPDIR=\`dirname \"\$APPDIR\"\`#APPDIR=$out#" -i $out/processing - sed -e "s#APPDIR=\`dirname \"\$APPDIR\"\`#APPDIR=$out#" -i $out/processing-java - mv $out/processing{,-java} $out/bin/ - wrapProgram $out/bin/processing --prefix PATH : ${jre}/bin --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib - wrapProgram $out/bin/processing-java --prefix PATH : ${jre}/bin --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib - mkdir $out/java - ln -s ${jre}/bin $out/java/ + cp -r linux/work/* $out/${name}/ + makeWrapper $out/${name}/processing $out/bin/processing \ + --prefix PATH : "${jre}/bin:${which}/bin" \ + --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib + makeWrapper $out/${name}/processing-java $out/bin/processing-java \ + --prefix PATH : "${jre}/bin:${which}/bin" \ + --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib + ln -s ${jre} $out/${name}/java ''; meta = with stdenv.lib; { From b56a348af7c08baa0ca46844e45d34ea67e5bfcf Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Tue, 2 Sep 2014 00:55:19 -0700 Subject: [PATCH 112/789] add retroarchMaster package --- pkgs/misc/emulators/retroarch/master.nix | 28 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 29 insertions(+) create mode 100644 pkgs/misc/emulators/retroarch/master.nix diff --git a/pkgs/misc/emulators/retroarch/master.nix b/pkgs/misc/emulators/retroarch/master.nix new file mode 100644 index 00000000000..44bd6649045 --- /dev/null +++ b/pkgs/misc/emulators/retroarch/master.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit, freetype, libxml2, libv4l +, coreutils, python34, which, udev, alsaLib, libX11, libXext, libXxf86vm, libXdmcp, SDL +, pulseaudio ? null }: +stdenv.mkDerivation rec { + name = "retroarch-20140902"; + src = fetchgit { + url = git://github.com/libretro/RetroArch.git; + rev = "0856091296c2e47409f36e13007805d71db69483"; + sha256 = "152dfp6jd7yzvasqrqw4ydjbdcwq4khisia2dax3gydvxkq87nl4"; + }; + + buildInputs = [ pkgconfig ffmpeg mesa nvidia_cg_toolkit freetype libxml2 libv4l coreutils + python34 which udev alsaLib libX11 libXext libXxf86vm libXdmcp SDL pulseaudio ]; + + patchPhase = '' + export GLOBAL_CONFIG_DIR=$out/etc + sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh + ''; + + enableParallelBuilding = true; + + meta = { + homepage = http://libretro.org/; + description = "Multi-platform emulator frontend for libretro cores"; + license = stdenv.lib.licenses.gpl3; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 901c80dc659..e20cd89b416 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11397,6 +11397,7 @@ let putty = callPackage ../applications/networking/remote/putty { }; retroarch = callPackage ../misc/emulators/retroarch { }; + retroarchMaster = callPackage ../misc/emulators/retroarch/master.nix { }; rssglx = callPackage ../misc/screensavers/rss-glx { }; From 13bbce96c3fefa68cb81f36e171512bf5c84fc31 Mon Sep 17 00:00:00 2001 From: Vladimir Still Date: Tue, 2 Sep 2014 10:06:04 +0200 Subject: [PATCH 113/789] sshd: Fix typo in assetion. --- nixos/modules/services/networking/ssh/sshd.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix index 956c31a8ba3..379dec2e92c 100644 --- a/nixos/modules/services/networking/ssh/sshd.nix +++ b/nixos/modules/services/networking/ssh/sshd.nix @@ -420,7 +420,7 @@ in }) ++ flip map cfg.listenAddresses ({ addr, port }: { assertion = addr != null; - message = "addr must be spefied in each listenAddresses entry"; + message = "addr must be specified in each listenAddresses entry"; }); }; From 73439c605320d82be97aad276329777d3689e481 Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Tue, 2 Sep 2014 01:19:44 -0700 Subject: [PATCH 114/789] add dolphinEmu and dolphinEmuMaster Dolphin is a high quality, open source Gamecube/Wii/Triforce emulator for Windows, Mac OS X and Linux --- pkgs/misc/emulators/dolphin-emu/default.nix | 33 ++++++++++++++++++++ pkgs/misc/emulators/dolphin-emu/master.nix | 34 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 3 ++ 3 files changed, 70 insertions(+) create mode 100644 pkgs/misc/emulators/dolphin-emu/default.nix create mode 100644 pkgs/misc/emulators/dolphin-emu/master.nix diff --git a/pkgs/misc/emulators/dolphin-emu/default.nix b/pkgs/misc/emulators/dolphin-emu/default.nix new file mode 100644 index 00000000000..ff7a57723d3 --- /dev/null +++ b/pkgs/misc/emulators/dolphin-emu/default.nix @@ -0,0 +1,33 @@ +{ stdenv, pkgconfig, cmake, bluez, ffmpeg, libao, mesa, gtk2, glib +, gettext, git, libpthreadstubs, libXrandr, libXext, readline +, openal, libXdmcp, portaudio, SDL, wxGTK30, fetchurl +, pulseaudio ? null }: + +stdenv.mkDerivation rec { + name = "dolphin-emu-4.0.2"; + src = fetchurl { + url = https://github.com/dolphin-emu/dolphin/archive/4.0.2.tar.gz; + sha256 = "0a8ikcxdify9d7lqz8fn2axk2hq4q1nvbcsi1b8vb9z0mdrhzw89"; + }; + + cmakeFlags = '' + -DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib}/lib/glib-2.0/include + -DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2}/lib/gtk-2.0/include + -DGTK2_INCLUDE_DIRS=${gtk2}/include/gtk-2.0 + -DCMAKE_BUILD_TYPE=Release + -DENABLE_LTO=True + ''; + + enableParallelBuilding = true; + + buildInputs = [ stdenv pkgconfig cmake bluez ffmpeg libao mesa gtk2 glib + gettext libpthreadstubs libXrandr libXext readline openal + git libXdmcp portaudio SDL wxGTK30 pulseaudio ]; + + meta = { + homepage = http://dolphin-emu.org/; + description = "Gamecube/Wii/Triforce emulator for x86_64 and ARM"; + license = stdenv.lib.licenses.gpl2; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/misc/emulators/dolphin-emu/master.nix b/pkgs/misc/emulators/dolphin-emu/master.nix new file mode 100644 index 00000000000..4823d41d1ac --- /dev/null +++ b/pkgs/misc/emulators/dolphin-emu/master.nix @@ -0,0 +1,34 @@ +{ stdenv, pkgconfig, cmake, bluez, ffmpeg, libao, mesa, gtk2, glib +, gettext, git, libpthreadstubs, libXrandr, libXext, readline +, openal, libXdmcp, portaudio, SDL, wxGTK30, fetchgit +, pulseaudio ? null }: + +stdenv.mkDerivation rec { + name = "dolphin-emu-20140902"; + src = fetchgit { + url = git://github.com/dolphin-emu/dolphin.git; + rev = "cc6db8cf26c1508ae382912bc25e64aaf12e0543"; + sha256 = "17pc4kk1v0p1llc12ifih02j2klfjz29qh8nhz5lapb0a1wr6lb3"; + }; + + cmakeFlags = '' + -DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib}/lib/glib-2.0/include + -DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2}/lib/gtk-2.0/include + -DGTK2_INCLUDE_DIRS=${gtk2}/include/gtk-2.0 + -DCMAKE_BUILD_TYPE=Release + -DENABLE_LTO=True + ''; + + enableParallelBuilding = true; + + buildInputs = [ stdenv pkgconfig cmake bluez ffmpeg libao mesa gtk2 glib + gettext libpthreadstubs libXrandr libXext readline openal + git libXdmcp portaudio SDL wxGTK30 pulseaudio ]; + + meta = { + homepage = http://dolphin-emu.org/; + description = "Gamecube/Wii/Triforce emulator for x86_64 and ARM"; + license = stdenv.lib.licenses.gpl2; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 901c80dc659..d2d0f69132c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -933,6 +933,9 @@ let dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { }; + dolphinEmu = callPackage ../misc/emulators/dolphin-emu { }; + dolphinEmuMaster = callPackage ../misc/emulators/dolphin-emu/master.nix { }; + dropbear = callPackage ../tools/networking/dropbear { }; dtach = callPackage ../tools/misc/dtach { }; From f933ccd309a58d2a8fdddea3d9233bc66abc9d35 Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Tue, 2 Sep 2014 01:36:47 -0700 Subject: [PATCH 115/789] chocolateDoom and chocolateDoomMaster added chocolate doom is a port that aims to recreate the experience of Doom in the 1990s as accurately as possible --- pkgs/games/chocolate-doom/default.nix | 23 +++++++++++++++++++++++ pkgs/games/chocolate-doom/master.nix | 24 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 3 +++ 3 files changed, 50 insertions(+) create mode 100644 pkgs/games/chocolate-doom/default.nix create mode 100644 pkgs/games/chocolate-doom/master.nix diff --git a/pkgs/games/chocolate-doom/default.nix b/pkgs/games/chocolate-doom/default.nix new file mode 100644 index 00000000000..9cbc33dd955 --- /dev/null +++ b/pkgs/games/chocolate-doom/default.nix @@ -0,0 +1,23 @@ +{ stdenv, autoconf, automake, pkgconfig, SDL, SDL_mixer, SDL_net, fetchurl }: + +stdenv.mkDerivation rec { + name = "chocolate-doom-2.0.0"; + src = fetchurl { + url = https://github.com/chocolate-doom/chocolate-doom/archive/chocolate-doom-2.0.0.tar.gz; + sha256 = "1n9lkx97h987bq8z586jgissdhs07xyfr0xfdk7m2wpw4yhw10k1"; + }; + buildInputs = [ autoconf autoconf automake pkgconfig SDL SDL_mixer SDL_net ]; + patchPhase = '' + sed -e 's#/games#/bin#g' -i src{,/setup}/Makefile.am + ./autogen.sh --prefix=$out + ''; + + enableParallelBuilding = true; + + meta = { + homepage = http://chocolate-doom.org/; + description = "Chocolate Doom is a Doom source port that accurately reproduces the experience of Doom as it was played in the 1990s."; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/games/chocolate-doom/master.nix b/pkgs/games/chocolate-doom/master.nix new file mode 100644 index 00000000000..78db86ac059 --- /dev/null +++ b/pkgs/games/chocolate-doom/master.nix @@ -0,0 +1,24 @@ +{ stdenv, autoconf, automake, pkgconfig, SDL, SDL_mixer, SDL_net, git, fetchgit }: + +stdenv.mkDerivation rec { + name = "chocolate-doom-20140902"; + src = fetchgit { + url = git://github.com/fragglet/chocolate-doom.git; + rev = "204814c7bb16a8ad45435a15328072681978ea57"; + sha256 = "1xcdxpkgb9dk3zwqf4xcr3qn7dh5rx6hmniky67imbvi1h74p587"; + }; + buildInputs = [ autoconf autoconf automake pkgconfig SDL SDL_mixer SDL_net git ]; + patchPhase = '' + sed -e 's#/games#/bin#g' -i src{,/setup}/Makefile.am + ./autogen.sh --prefix=$out + ''; + + enableParallelBuilding = true; + + meta = { + homepage = http://chocolate-doom.org/; + description = "Chocolate Doom is a Doom source port that accurately reproduces the experience of Doom as it was played in the 1990s."; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 901c80dc659..b84e986b499 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -753,6 +753,9 @@ let chkrootkit = callPackage ../tools/security/chkrootkit { }; + chocolateDoom = callPackage ../games/chocolate-doom { }; + chocolateDoomMaster = callPackage ../games/chocolate-doom/master.nix { }; + chrony = callPackage ../tools/networking/chrony { }; chunkfs = callPackage ../tools/filesystems/chunkfs { }; From db64ebe167c653ef2b45bc253b6367b4e70666aa Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Tue, 2 Sep 2014 02:03:54 -0700 Subject: [PATCH 116/789] Add eternity engine, a Doom port by James Haley Eternity Engine is a limit removing port descended from BOOM --- pkgs/games/eternity-engine/default.nix | 29 +++++++++++++++++++++++++ pkgs/games/eternity-engine/master.nix | 30 ++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 3 +++ 3 files changed, 62 insertions(+) create mode 100644 pkgs/games/eternity-engine/default.nix create mode 100644 pkgs/games/eternity-engine/master.nix diff --git a/pkgs/games/eternity-engine/default.nix b/pkgs/games/eternity-engine/default.nix new file mode 100644 index 00000000000..2e04c76a990 --- /dev/null +++ b/pkgs/games/eternity-engine/default.nix @@ -0,0 +1,29 @@ +{ stdenv, cmake, mesa, SDL, SDL_mixer, SDL_net, fetchurl }: + +stdenv.mkDerivation rec { + name = "eternity-engine-3.40.46"; + src = fetchurl { + url = https://github.com/team-eternity/eternity/archive/3.40.46.tar.gz; + sha256 = "0jq8q0agw7lgab9q2h8wcaakvg913l9j3a6ss0hn9661plkw2yb4"; + }; + + cmakeFlags = '' + -DCMAKE_BUILD_TYPE=Release + ''; + + buildInputs = [ stdenv cmake mesa SDL SDL_mixer SDL_net ]; + + enableParallelBuilding = true; + + installPhase = '' + mkdir -p $out/bin + cp source/eternity $out/bin + ''; + + meta = { + homepage = http://doomworld.com/eternity; + description = "New school Doom port by James Haley"; + license = stdenv.lib.licenses.gpl3; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/games/eternity-engine/master.nix b/pkgs/games/eternity-engine/master.nix new file mode 100644 index 00000000000..0d0f8e26b44 --- /dev/null +++ b/pkgs/games/eternity-engine/master.nix @@ -0,0 +1,30 @@ +{ stdenv, cmake, mesa, SDL, SDL_mixer, SDL_net, fetchgit }: + +stdenv.mkDerivation rec { + name = "eternity-engine-20140902"; + src = fetchgit { + url = git://github.com/team-eternity/eternity.git; + rev = "db21379abb33f6d92dc0e1665e527e4d49acc722"; + sha256 = "0k54yvxqxnd60az21b734ka3myxkqb7pjmdp3klrkfwp1kl02ysc"; + }; + + cmakeFlags = '' + -DCMAKE_BUILD_TYPE=Release + ''; + + buildInputs = [ stdenv cmake mesa SDL SDL_mixer SDL_net ]; + + enableParallelBuilding = true; + + installPhase = '' + mkdir -p $out/bin + cp source/eternity $out/bin + ''; + + meta = { + homepage = http://doomworld.com/eternity; + description = "New school Doom port by James Haley"; + license = stdenv.lib.licenses.gpl3; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 901c80dc659..30f43d30059 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -993,6 +993,9 @@ let ethtool = callPackage ../tools/misc/ethtool { }; + eternity = callPackage ../games/eternity-engine { }; + eternityMaster = callPackage ../games/eternity-engine/master.nix { }; + ettercap = callPackage ../applications/networking/sniffers/ettercap { }; euca2ools = callPackage ../tools/virtualization/euca2ools { pythonPackages = python26Packages; }; From cc7fa316a4c3608cba955a4846fddcf21a2ff81b Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Tue, 2 Sep 2014 01:26:27 -0700 Subject: [PATCH 117/789] dolphinEmu doesn't need the git package --- pkgs/misc/emulators/dolphin-emu/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/misc/emulators/dolphin-emu/default.nix b/pkgs/misc/emulators/dolphin-emu/default.nix index ff7a57723d3..812e20ebc06 100644 --- a/pkgs/misc/emulators/dolphin-emu/default.nix +++ b/pkgs/misc/emulators/dolphin-emu/default.nix @@ -1,5 +1,5 @@ { stdenv, pkgconfig, cmake, bluez, ffmpeg, libao, mesa, gtk2, glib -, gettext, git, libpthreadstubs, libXrandr, libXext, readline +, gettext, libpthreadstubs, libXrandr, libXext, readline , openal, libXdmcp, portaudio, SDL, wxGTK30, fetchurl , pulseaudio ? null }: From eaeee5748320ca07caad646de3e981ad9bfe8c58 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 11:20:26 +0200 Subject: [PATCH 118/789] gnome-tweak-tool: update 3.10.1 -> 3.12.0 --- .../desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix b/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix index 2eccb9a32cf..e424ab3635a 100644 --- a/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix +++ b/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix @@ -4,11 +4,11 @@ , gnome3, librsvg, gdk_pixbuf, file, libnotify }: stdenv.mkDerivation rec { - name = "gnome-tweak-tool-3.10.1"; + name = "gnome-tweak-tool-3.12.0"; src = fetchurl { - url = "mirror://gnome/sources/gnome-tweak-tool/3.10/${name}.tar.xz"; - sha256 = "fb5af9022c0521a925ef9f295e4080212b1b45427cd5f5f3a901667590afa7ec"; + url = "mirror://gnome/sources/gnome-tweak-tool/3.12/${name}.tar.xz"; + sha256 = "f8811d638797ef62500770a8dccc5bc689a427c8396a0dff8cbeddffdebf0e29"; }; doCheck = true; From 463585a5ecf33064747fe9720007416fdd6f68a5 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 11:20:26 +0200 Subject: [PATCH 119/789] gnome-tweak-tool: update 3.10.1 -> 3.12.0 --- .../desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix b/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix index 2eccb9a32cf..e424ab3635a 100644 --- a/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix +++ b/pkgs/desktops/gnome-3/3.12/misc/gnome-tweak-tool/default.nix @@ -4,11 +4,11 @@ , gnome3, librsvg, gdk_pixbuf, file, libnotify }: stdenv.mkDerivation rec { - name = "gnome-tweak-tool-3.10.1"; + name = "gnome-tweak-tool-3.12.0"; src = fetchurl { - url = "mirror://gnome/sources/gnome-tweak-tool/3.10/${name}.tar.xz"; - sha256 = "fb5af9022c0521a925ef9f295e4080212b1b45427cd5f5f3a901667590afa7ec"; + url = "mirror://gnome/sources/gnome-tweak-tool/3.12/${name}.tar.xz"; + sha256 = "f8811d638797ef62500770a8dccc5bc689a427c8396a0dff8cbeddffdebf0e29"; }; doCheck = true; From aa8a728b047c3955f8bacda1016aeef39de90518 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 29 Aug 2014 18:18:02 +0200 Subject: [PATCH 120/789] Cache::Cache: Disable tests --- pkgs/top-level/perl-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index a50a5617794..67accf016cc 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -480,6 +480,7 @@ let self = _self // overrides; _self = with self; { sha256 = "14s75bsm5irisp8wkbwl3ycw160srr1rks7x9jcbvcxh79wr6gbh"; }; propagatedBuildInputs = [ DigestSHA1 Error IPCShareLite ]; + doCheck = false; # randomly fails }; CacheFastMmap = buildPerlPackage rec { From ccd4a52f68479599f8bfaa2656d0c00acd1cc209 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:13 +0200 Subject: [PATCH 121/789] haskell-git-annex: update to version 5.20140831 --- .../version-management/git-and-tools/git-annex/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 62132271ec9..7224d8c6900 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 @@ -17,8 +17,8 @@ cabal.mkDerivation (self: { pname = "git-annex"; - version = "5.20140817"; - sha256 = "0cly19rd250qiikzszgad2r5xz570kr00vcb8ij6icbm53pw3hxc"; + version = "5.20140831"; + sha256 = "0s2pc8bm3c79dsbafwp2pc5yghzh6vdzs9sj0mfq6rxiv27wrrwq"; isLibrary = false; isExecutable = true; buildDepends = [ From 1cac137bd799882b877778a69951cb023db80d4b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:24 +0200 Subject: [PATCH 122/789] haskell-Chart-cairo: update to version 1.3 --- pkgs/development/libraries/haskell/Chart-cairo/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/Chart-cairo/default.nix b/pkgs/development/libraries/haskell/Chart-cairo/default.nix index d2dea815819..28480a4d27d 100644 --- a/pkgs/development/libraries/haskell/Chart-cairo/default.nix +++ b/pkgs/development/libraries/haskell/Chart-cairo/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "Chart-cairo"; - version = "1.2.4"; - sha256 = "1ggqh3v14mwv9q1pmz3hbx7g1dvibfwl1vzvag92q7432q4pqm2z"; + version = "1.3"; + sha256 = "1d8v4imbb2g30gbxj3xlm1vqc17cnqbiysxp78n3vrxnalr8s98l"; buildDepends = [ cairo Chart colour dataDefaultClass lens mtl operational time ]; From e76cc54f0c36bbfaff4e0e29d18d3cec5753f678 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:26 +0200 Subject: [PATCH 123/789] haskell-Chart-diagrams: update to version 1.3 --- .../development/libraries/haskell/Chart-diagrams/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/haskell/Chart-diagrams/default.nix b/pkgs/development/libraries/haskell/Chart-diagrams/default.nix index 002b762fbac..ff4898eb1e7 100644 --- a/pkgs/development/libraries/haskell/Chart-diagrams/default.nix +++ b/pkgs/development/libraries/haskell/Chart-diagrams/default.nix @@ -7,8 +7,8 @@ cabal.mkDerivation (self: { pname = "Chart-diagrams"; - version = "1.2.4"; - sha256 = "099frqvfjqqc7h3zr52saqyg37di0klr0y649afzxd7lj3d67mvw"; + version = "1.3"; + sha256 = "1lfdv2bn942w4b0bjd6aw59wdc2jfk305ym5vm88liy9127b65bp"; buildDepends = [ blazeSvg Chart colour dataDefaultClass diagramsCore diagramsLib diagramsPostscript diagramsSvg lens mtl operational SVGFonts text @@ -20,6 +20,5 @@ cabal.mkDerivation (self: { description = "Diagrams backend for Charts"; license = self.stdenv.lib.licenses.bsd3; platforms = self.ghc.meta.platforms; - hydraPlatforms = self.stdenv.lib.platforms.none; }; }) From ba1ccb4bf446970ad40e32e697d8cd832de63e39 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:29 +0200 Subject: [PATCH 124/789] haskell-Chart-gtk: update to version 1.3 --- pkgs/development/libraries/haskell/Chart-gtk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/Chart-gtk/default.nix b/pkgs/development/libraries/haskell/Chart-gtk/default.nix index 9dbb3c8ae9a..0ce13bd8737 100644 --- a/pkgs/development/libraries/haskell/Chart-gtk/default.nix +++ b/pkgs/development/libraries/haskell/Chart-gtk/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "Chart-gtk"; - version = "1.2.4"; - sha256 = "16dfmkls341cmk13j1z3rw2wxdvxr5rqsv1ff4qjhjak9j7hkqjq"; + version = "1.3"; + sha256 = "1bi7gim31w3xf6jsd2hkwhkhw1i9c4dmxnm3f46336k9rsxn59ph"; buildDepends = [ cairo Chart ChartCairo colour gtk mtl time ]; meta = { homepage = "https://github.com/timbod7/haskell-chart/wiki"; From 7c8afa9d047f601dac68817830271c938d6bc20a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:31 +0200 Subject: [PATCH 125/789] haskell-Chart: update to version 1.3 --- pkgs/development/libraries/haskell/Chart/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/Chart/default.nix b/pkgs/development/libraries/haskell/Chart/default.nix index d5696a562da..557721007ed 100644 --- a/pkgs/development/libraries/haskell/Chart/default.nix +++ b/pkgs/development/libraries/haskell/Chart/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "Chart"; - version = "1.2.4"; - sha256 = "0zizrkxsligvxs5x5r2j0pynf6ncjl4mgyzbh1zfqgnz29frylh7"; + version = "1.3"; + sha256 = "1xvr90x1kmnjfmbap47ffzi3xbawcwz7q6b76v2gbqp4gjlhiyx7"; buildDepends = [ colour dataDefaultClass lens mtl operational time ]; From 3bd01d920317564d110520f0c926007495382ddb Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:34 +0200 Subject: [PATCH 126/789] haskell-c2hs: update to version 0.18.1 --- pkgs/development/libraries/haskell/c2hs/default.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/haskell/c2hs/default.nix b/pkgs/development/libraries/haskell/c2hs/default.nix index 95ead17f01f..eaa91c51a23 100644 --- a/pkgs/development/libraries/haskell/c2hs/default.nix +++ b/pkgs/development/libraries/haskell/c2hs/default.nix @@ -1,18 +1,19 @@ # This file was auto-generated by cabal2nix. Please do NOT edit manually! -{ cabal, filepath, HUnit, languageC, shelly, testFramework -, testFrameworkHunit, text, yaml +{ cabal, dlist, filepath, HUnit, languageC, shelly, testFramework +, testFrameworkHunit, text, transformers, yaml }: cabal.mkDerivation (self: { pname = "c2hs"; - version = "0.17.2"; - sha256 = "1xrk0izdy5akjgmg9k4l9ccmmgv1avwh152pfpc1xm2rrwrg4bxk"; + version = "0.18.1"; + sha256 = "17miqihfidzd1nqdswnd7j0580jlv2pj19wxlx8vb3dc5wga58xd"; isLibrary = false; isExecutable = true; - buildDepends = [ filepath languageC ]; + buildDepends = [ dlist filepath languageC shelly text yaml ]; testDepends = [ - filepath HUnit shelly testFramework testFrameworkHunit text yaml + filepath HUnit shelly testFramework testFrameworkHunit text + transformers ]; jailbreak = true; doCheck = false; From 3c52c0c203de642b79deada54b5901e9d9bc682d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:37 +0200 Subject: [PATCH 127/789] haskell-doctest: update to version 0.9.11.1 --- pkgs/development/libraries/haskell/doctest/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/haskell/doctest/default.nix b/pkgs/development/libraries/haskell/doctest/default.nix index 018fac06670..af3f9e2d525 100644 --- a/pkgs/development/libraries/haskell/doctest/default.nix +++ b/pkgs/development/libraries/haskell/doctest/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "doctest"; - version = "0.9.11"; - sha256 = "04y6y5hixqh8awl37wrss20c2drvx070w7wd6icfx7r0jqds97jr"; + version = "0.9.11.1"; + sha256 = "1gzzzwr7f7281mlbfbk74nxr28l70lwfaws4xjfx2v06xazl99db"; isLibrary = true; isExecutable = true; buildDepends = [ deepseq filepath ghcPaths syb transformers ]; @@ -18,7 +18,7 @@ cabal.mkDerivation (self: { doCheck = false; noHaddock = self.stdenv.lib.versionOlder self.ghc.version "7.4"; meta = { - homepage = "https://github.com/sol/doctest-haskell#readme"; + homepage = "https://github.com/sol/doctest#readme"; description = "Test interactive Haskell examples"; license = self.stdenv.lib.licenses.mit; platforms = self.ghc.meta.platforms; From ab5e6c2e5cf7f7539f6cd42fc890242a8ad13820 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:40 +0200 Subject: [PATCH 128/789] haskell-haddock-library: update to version 1.1.1 --- .../development/libraries/haskell/haddock-library/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/haddock-library/default.nix b/pkgs/development/libraries/haskell/haddock-library/default.nix index aece9e35873..a7041b3ba28 100644 --- a/pkgs/development/libraries/haskell/haddock-library/default.nix +++ b/pkgs/development/libraries/haskell/haddock-library/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "haddock-library"; - version = "1.1.0"; - sha256 = "0apqm9nxgxbpvcphaim93q4z67c1cd0vdjz0i1cbr67ymffl69nd"; + version = "1.1.1"; + sha256 = "0sjnmbmq1pss9ikcqnhvpf57rv78lzi1r99ywpmmvj1gyva2s31m"; buildDepends = [ deepseq ]; testDepends = [ baseCompat deepseq hspec QuickCheck ]; meta = { From 1e43fac17110c71871a11ee343397b03d295511a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:42 +0200 Subject: [PATCH 129/789] haskell-http-client: update to version 0.3.8.1 --- pkgs/development/libraries/haskell/http-client/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/http-client/default.nix b/pkgs/development/libraries/haskell/http-client/default.nix index 7015c9446e8..6e41fb85e68 100644 --- a/pkgs/development/libraries/haskell/http-client/default.nix +++ b/pkgs/development/libraries/haskell/http-client/default.nix @@ -9,8 +9,8 @@ cabal.mkDerivation (self: { pname = "http-client"; - version = "0.3.8"; - sha256 = "0v5j6fcigjpksj1m0n15g3j680k7qkms3cqd0b1w0ma7k63kcibc"; + version = "0.3.8.1"; + sha256 = "1iy3wg88z1w0l5dzxkynlw0xd7np5xbxcrcdj3f2kzyfr39mw5v0"; buildDepends = [ base64Bytestring blazeBuilder caseInsensitive cookie dataDefaultClass deepseq exceptions filepath httpTypes mimeTypes From 3c63776aa597c172cd2f01509fdd3c8337fc245b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:10:45 +0200 Subject: [PATCH 130/789] haskell-recaptcha: update to version 0.1.0.3 --- pkgs/development/libraries/haskell/recaptcha/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/haskell/recaptcha/default.nix b/pkgs/development/libraries/haskell/recaptcha/default.nix index dd92b7e79de..00fe58be4b1 100644 --- a/pkgs/development/libraries/haskell/recaptcha/default.nix +++ b/pkgs/development/libraries/haskell/recaptcha/default.nix @@ -1,12 +1,12 @@ # This file was auto-generated by cabal2nix. Please do NOT edit manually! -{ cabal, HTTP, network, xhtml }: +{ cabal, HTTP, network, networkUri, xhtml }: cabal.mkDerivation (self: { pname = "recaptcha"; - version = "0.1.0.2"; - sha256 = "04sdfp6bmcd3qkz1iqxijfiqa4qf78m5d16r9gjv90ckqf68kbih"; - buildDepends = [ HTTP network xhtml ]; + version = "0.1.0.3"; + sha256 = "18rqsqzni11nr2cvs7ah9k87w493d92c0gmc0n6fhfq6gay9ia19"; + buildDepends = [ HTTP network networkUri xhtml ]; meta = { homepage = "http://github.com/jgm/recaptcha/tree/master"; description = "Functions for using the reCAPTCHA service in web applications"; From 49c7b7040bc9cb8c989f9a0dea5ef6522bd3dc82 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:12:59 +0200 Subject: [PATCH 131/789] haskell-haddock: add version 2.15.0 --- .../libraries/haskell/haddock-api/default.nix | 19 ++++++++++++++++++ .../tools/documentation/haddock/2.15.0.nix | 20 +++++++++++++++++++ pkgs/top-level/haskell-packages.nix | 5 ++++- 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/haskell/haddock-api/default.nix create mode 100644 pkgs/development/tools/documentation/haddock/2.15.0.nix diff --git a/pkgs/development/libraries/haskell/haddock-api/default.nix b/pkgs/development/libraries/haskell/haddock-api/default.nix new file mode 100644 index 00000000000..2f3afa32196 --- /dev/null +++ b/pkgs/development/libraries/haskell/haddock-api/default.nix @@ -0,0 +1,19 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, Cabal, deepseq, filepath, ghcPaths, haddockLibrary, xhtml +}: + +cabal.mkDerivation (self: { + pname = "haddock-api"; + version = "2.15.0"; + sha256 = "17h5h40ddn0kiqnz6rmz9p0jqvng11lq3xm6lnizwix9kcwl843b"; + buildDepends = [ + Cabal deepseq filepath ghcPaths haddockLibrary xhtml + ]; + meta = { + homepage = "http://www.haskell.org/haddock/"; + description = "A documentation-generation tool for Haskell libraries"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/tools/documentation/haddock/2.15.0.nix b/pkgs/development/tools/documentation/haddock/2.15.0.nix new file mode 100644 index 00000000000..3b3d91a1f2f --- /dev/null +++ b/pkgs/development/tools/documentation/haddock/2.15.0.nix @@ -0,0 +1,20 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, Cabal, filepath, haddockApi }: + +cabal.mkDerivation (self: { + pname = "haddock"; + version = "2.15.0"; + sha256 = "1vay0v0a02xj2m40w71vmjadlm6pzv309r1jhr61xv1wnj88i75w"; + isLibrary = false; + isExecutable = true; + buildDepends = [ haddockApi ]; + testDepends = [ Cabal filepath ]; + preCheck = "unset GHC_PACKAGE_PATH"; + meta = { + homepage = "http://www.haskell.org/haddock/"; + description = "A documentation-generation tool for Haskell libraries"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index cfb06b0880d..15f6ed71007 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -2928,7 +2928,10 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in haddock_2_13_2 = callPackage ../development/tools/documentation/haddock/2.13.2.nix {}; haddock_2_14_2 = callPackage ../development/tools/documentation/haddock/2.14.2.nix {}; haddock_2_14_3 = callPackage ../development/tools/documentation/haddock/2.14.3.nix {}; - haddock = self.haddock_2_14_3; + haddock_2_15_0 = callPackage ../development/tools/documentation/haddock/2.15.0.nix {}; + haddock = self.haddock_2_15_0; + + haddockApi = callPackage ../development/libraries/haskell/haddock-api {}; haddockLibrary = callPackage ../development/libraries/haskell/haddock-library {}; From baa186c020edd5294d89f44e41aa6038c7e12189 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 15:19:19 +0200 Subject: [PATCH 132/789] haskell-directory-layout: disable test suite to fix https://github.com/supki/directory-layout/issues/9 --- pkgs/development/libraries/haskell/directory-layout/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/haskell/directory-layout/default.nix b/pkgs/development/libraries/haskell/directory-layout/default.nix index 610b1a5ec63..2cc9682dccb 100644 --- a/pkgs/development/libraries/haskell/directory-layout/default.nix +++ b/pkgs/development/libraries/haskell/directory-layout/default.nix @@ -16,6 +16,7 @@ cabal.mkDerivation (self: { commandQq doctest filepath free hspec lens semigroups temporary text transformers unorderedContainers ]; + doCheck = false; meta = { description = "Directory layout DSL"; license = self.stdenv.lib.licenses.bsd3; From 3129fb3a11051de5ace0ce25a21e02e8e481cfa8 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 16:10:06 +0200 Subject: [PATCH 133/789] haskell-docs: broken by the recent update to Haddock 2.15 --- pkgs/development/tools/haskell/haskell-docs/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/tools/haskell/haskell-docs/default.nix b/pkgs/development/tools/haskell/haskell-docs/default.nix index b9cd34c716e..9cc92aafc21 100644 --- a/pkgs/development/tools/haskell/haskell-docs/default.nix +++ b/pkgs/development/tools/haskell/haskell-docs/default.nix @@ -20,5 +20,7 @@ cabal.mkDerivation (self: { description = "A program to find and display the docs and type of a name"; license = self.stdenv.lib.licenses.bsd3; platforms = self.ghc.meta.platforms; + hydraPlatforms = self.stdenv.lib.platforms.none; + broken = true; }; }) From bf197d6f58627d8a10c11690f7e8a7b874296a00 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Sep 2014 16:18:09 +0200 Subject: [PATCH 134/789] haskell-ncurses: broken by update of c2hs Upstream has been notified. --- pkgs/development/libraries/haskell/ncurses/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/haskell/ncurses/default.nix b/pkgs/development/libraries/haskell/ncurses/default.nix index 7e9ac0ddd95..f964af3c8b7 100644 --- a/pkgs/development/libraries/haskell/ncurses/default.nix +++ b/pkgs/development/libraries/haskell/ncurses/default.nix @@ -15,5 +15,7 @@ cabal.mkDerivation (self: { description = "Modernised bindings to GNU ncurses"; license = self.stdenv.lib.licenses.gpl3; platforms = self.ghc.meta.platforms; + hydraPlatforms = self.stdenv.lib.platforms.none; + broken = true; }; }) From 2fcbff576ad95922a66c73a7ba8551f1eab19410 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 2 Sep 2014 11:41:54 +0200 Subject: [PATCH 135/789] haskell-timeplot: broken by Chart update https://github.com/jkff/timeplot/issues/17 --- pkgs/development/tools/haskell/timeplot/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/tools/haskell/timeplot/default.nix b/pkgs/development/tools/haskell/timeplot/default.nix index 4342b877a2e..a07383778ed 100644 --- a/pkgs/development/tools/haskell/timeplot/default.nix +++ b/pkgs/development/tools/haskell/timeplot/default.nix @@ -20,5 +20,7 @@ cabal.mkDerivation (self: { description = "A tool for visualizing time series from log files"; license = self.stdenv.lib.licenses.bsd3; platforms = self.ghc.meta.platforms; + hydraPlatforms = self.stdenv.lib.platforms.none; + broken = true; }; }) From b8260f543597ab2b5a9afa5c4937934416a646a5 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 2 Sep 2014 11:57:34 +0200 Subject: [PATCH 136/789] dolphin-emu: drop reference to git from buildInputs since it's no longer an argument to the expression after #3936 --- pkgs/misc/emulators/dolphin-emu/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/misc/emulators/dolphin-emu/default.nix b/pkgs/misc/emulators/dolphin-emu/default.nix index 812e20ebc06..bf03e1e52aa 100644 --- a/pkgs/misc/emulators/dolphin-emu/default.nix +++ b/pkgs/misc/emulators/dolphin-emu/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { buildInputs = [ stdenv pkgconfig cmake bluez ffmpeg libao mesa gtk2 glib gettext libpthreadstubs libXrandr libXext readline openal - git libXdmcp portaudio SDL wxGTK30 pulseaudio ]; + libXdmcp portaudio SDL wxGTK30 pulseaudio ]; meta = { homepage = http://dolphin-emu.org/; From 44b58f4e7455124ec97f075755130def29a45734 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Tue, 2 Sep 2014 12:07:36 +0200 Subject: [PATCH 137/789] pythonPackages: add docker-py --- pkgs/top-level/python-packages.nix | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 57032cf2ec4..3af1950f9b1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1835,6 +1835,27 @@ rec { }; }; + docker = buildPythonPackage rec { + name = "docker-py-0.4.0"; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/d/docker-py/${name}.tar.gz"; + md5 = "21ab8fd729105487e6423b654d6c0860"; + }; + + propagatedBuildInputs = [ six requests ]; + + # Version conflict + doCheck = false; + + meta = { + description = "An API client for docker written in Python"; + homepage = https://github.com/docker/docker-py; + license = licenses.asl20; + }; + }; + + dogpile_cache = buildPythonPackage rec { name = "dogpile.cache-0.5.4"; From f6dd506372cf9501eb992849fd8e28ec12fa97b3 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 12:58:17 +0400 Subject: [PATCH 138/789] Update freeipmi --- pkgs/tools/system/freeipmi/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/system/freeipmi/default.nix b/pkgs/tools/system/freeipmi/default.nix index 48562adffeb..8f94b21a771 100644 --- a/pkgs/tools/system/freeipmi/default.nix +++ b/pkgs/tools/system/freeipmi/default.nix @@ -1,11 +1,12 @@ { fetchurl, stdenv, libgcrypt, readline }: stdenv.mkDerivation rec { - name = "freeipmi-1.3.4"; + version = "1.4.5"; + name = "freeipmi-${version}"; src = fetchurl { url = "mirror://gnu/freeipmi/${name}.tar.gz"; - sha256 = "0gadf3yj019y3rvgf34pxk502p0p6nrhy6nwldvvir5rknndxh63"; + sha256 = "033zakrk3kvi4y41kslicr90b3yb2kj052cl6nbja7ybn70y9nkz"; }; buildInputs = [ libgcrypt readline ]; @@ -30,10 +31,14 @@ stdenv.mkDerivation rec { ''; homepage = http://www.gnu.org/software/freeipmi/; + downloadPage = "http://www.gnu.org/software/freeipmi/download.html"; license = stdenv.lib.licenses.gpl3Plus; maintainers = with stdenv.lib.maintainers; [ raskin ]; platforms = stdenv.lib.platforms.gnu; # arbitrary choice + + updateWalker = true; + inherit version; }; } From 9668a7a63bf7f3f12404f9cd742c63a2b1e78cf4 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 12:58:32 +0400 Subject: [PATCH 139/789] Update getmail --- pkgs/tools/networking/getmail/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/getmail/default.nix b/pkgs/tools/networking/getmail/default.nix index 6d9666506b8..8c9103790b9 100644 --- a/pkgs/tools/networking/getmail/default.nix +++ b/pkgs/tools/networking/getmail/default.nix @@ -1,12 +1,13 @@ { stdenv, fetchurl, buildPythonPackage }: buildPythonPackage rec { - name = "getmail-4.43.0"; + version = "4.46.0"; + name = "getmail-${version}"; namePrefix = ""; src = fetchurl { url = "http://pyropus.ca/software/getmail/old-versions/${name}.tar.gz"; - sha256 = "0abcj4d2jp9y56c85kq7265d8wcij91w9lpzib9q6j9lcs4la8hy"; + sha256 = "15rqmm25pq6ll8aaqh8h6pfdkpqs7y6yismb3h3w1bz8j292c8zl"; }; doCheck = false; @@ -15,5 +16,9 @@ buildPythonPackage rec { description = "A program for retrieving mail"; maintainers = [ stdenv.lib.maintainers.raskin stdenv.lib.maintainers.iElectric ]; platforms = stdenv.lib.platforms.linux; + + homepage = "http://pyropus.ca/software/getmail/"; + inherit version; + updateWalker = true; }; } From 23639a93fa0822168009033ae35ede874546d9cc Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:03:33 +0400 Subject: [PATCH 140/789] Update ioping --- pkgs/tools/system/ioping/default.nix | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pkgs/tools/system/ioping/default.nix b/pkgs/tools/system/ioping/default.nix index 52d32b4e838..588da0624ce 100644 --- a/pkgs/tools/system/ioping/default.nix +++ b/pkgs/tools/system/ioping/default.nix @@ -10,16 +10,15 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="ioping"; - version="0.7"; + version = "0.8"; name="${baseName}-${version}"; url="http://ioping.googlecode.com/files/${name}.tar.gz"; - hash="1c0k9gsq7rr9fqh6znn3i196l84zsm44nq3pl1b7grsnnbp2hki3"; }; in rec { src = a.fetchurl { url = sourceInfo.url; - sha256 = sourceInfo.hash; + sha256 = "0j7yal61nby1lkg9wnr6lxfljbd7wl3n0z8khqwvc9lf57bxngz2"; }; inherit (sourceInfo) name version; @@ -40,11 +39,8 @@ rec { platforms = with a.lib.platforms; linux; license = a.lib.licenses.gpl3Plus; - }; - passthru = { - updateInfo = { - downloadPage = "http://code.google.com/p/ioping/downloads/list"; - }; + downloadPage = "http://code.google.com/p/ioping/downloads/list"; + inherit version; }; }) x From 36e3de7646a8afd4a1cfc6f0b4b327f7bc9e2fb5 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:07:53 +0400 Subject: [PATCH 141/789] ioping auto-updater --- pkgs/tools/system/ioping/default.upstream | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 pkgs/tools/system/ioping/default.upstream diff --git a/pkgs/tools/system/ioping/default.upstream b/pkgs/tools/system/ioping/default.upstream new file mode 100644 index 00000000000..e51cb487852 --- /dev/null +++ b/pkgs/tools/system/ioping/default.upstream @@ -0,0 +1,5 @@ +url http://code.google.com/p/ioping/downloads/list +version_link '[.]tar[.][a-z0-9]+$' +process 'code[.]google[.]com//' '' + +do_overwrite() { do_overwrite_just_version; } From 5addaeb74f4dbb57220ebe8ad3bdd092fd48d768 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:08:18 +0400 Subject: [PATCH 142/789] More support for SF.net in auto-updater --- .../upstream-updater/update-walker-service-specific.sh | 4 ++++ pkgs/build-support/upstream-updater/update-walker.sh | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/upstream-updater/update-walker-service-specific.sh b/pkgs/build-support/upstream-updater/update-walker-service-specific.sh index 28c28f69587..b66001073f2 100644 --- a/pkgs/build-support/upstream-updater/update-walker-service-specific.sh +++ b/pkgs/build-support/upstream-updater/update-walker-service-specific.sh @@ -8,6 +8,10 @@ SF_version_dir () { version_link 'http://sourceforge.net/.+/'"$1"'[0-9.]+/$' } +SF_version_tarball () { + version_link '[.]tar[.].*/download$' +} + GH_latest () { prefetch_command_rel ../fetchgit/nix-prefetch-git revision "$("$(dirname "$0")/urls-from-page.sh" "$CURRENT_URL/commits" | grep /commit/ | head -n 1 | xargs basename )" diff --git a/pkgs/build-support/upstream-updater/update-walker.sh b/pkgs/build-support/upstream-updater/update-walker.sh index e11eb722e0e..e60499b60f2 100755 --- a/pkgs/build-support/upstream-updater/update-walker.sh +++ b/pkgs/build-support/upstream-updater/update-walker.sh @@ -280,6 +280,12 @@ do_overwrite_just_version () { set_var_value sha256 $CURRENT_HASH } +minimize_overwrite() { + do_overwrite(){ + do_overwrite_just_version + } +} + process_config () { CONFIG_DIR="$(directory_of "$1")" CONFIG_NAME="$(basename "$1")" @@ -297,9 +303,7 @@ process_config () { exit 1; } [ -z "$(retrieve_meta fullRegenerate)" ] && eval " - do_overwrite(){ - do_overwrite_just_version - } + minimize_overwrite " fi ensure_attribute_name From 1d7f18798ee74d9ad099d97f4cfbfce139b7b63f Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:09:44 +0400 Subject: [PATCH 143/789] Update ipmiutil --- pkgs/tools/system/ipmiutil/default.nix | 12 ++++-------- pkgs/tools/system/ipmiutil/default.upstream | 4 ++++ 2 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 pkgs/tools/system/ipmiutil/default.upstream diff --git a/pkgs/tools/system/ipmiutil/default.nix b/pkgs/tools/system/ipmiutil/default.nix index c5f33c32359..6590b1ad209 100644 --- a/pkgs/tools/system/ipmiutil/default.nix +++ b/pkgs/tools/system/ipmiutil/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { baseName = "ipmiutil"; - version = "2.9.3"; + version = "2.7.3"; name = "${baseName}-${version}"; src = fetchurl { url = "mirror://sourceforge/project/${baseName}/${name}.tar.gz"; - sha256 = "1dwyxp4jn5wxzyahd0x839kj1q7z6xin1wybpx9na4xsgscj6v27"; + sha256 = "0z6ykz5db4ws7hpi25waf9vznwsh0vp819h5s7s8r054vxslrfpq"; }; buildInputs = [ openssl ]; @@ -26,11 +26,7 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ raskin ]; platforms = platforms.linux; license = licenses.bsd3; - }; - - passthru = { - updateInfo = { - downloadPage = "http://sourceforge.net/projects/ipmiutil/files/ipmiutil/"; - }; + downloadPage = "http://sourceforge.net/projects/ipmiutil/files/ipmiutil/"; + inherit version; }; } diff --git a/pkgs/tools/system/ipmiutil/default.upstream b/pkgs/tools/system/ipmiutil/default.upstream new file mode 100644 index 00000000000..18dc096a36b --- /dev/null +++ b/pkgs/tools/system/ipmiutil/default.upstream @@ -0,0 +1,4 @@ +url http://sourceforge.net/projects/ipmiutil/files/ipmiutil/ +SF_version_tarball +SF_redirect +minimize_overwrite From 6d7c2c785821b08f69f558049610d253fc777773 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:16:25 +0400 Subject: [PATCH 144/789] Update ised --- pkgs/tools/misc/ised/default.nix | 11 +++-------- pkgs/tools/misc/ised/default.upstream | 4 ++++ 2 files changed, 7 insertions(+), 8 deletions(-) create mode 100644 pkgs/tools/misc/ised/default.upstream diff --git a/pkgs/tools/misc/ised/default.nix b/pkgs/tools/misc/ised/default.nix index 02cb65b1060..96acc6c8ab9 100644 --- a/pkgs/tools/misc/ised/default.nix +++ b/pkgs/tools/misc/ised/default.nix @@ -10,16 +10,15 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="ised"; - version="2.5.0"; + version = "2.6.0"; name="${baseName}-${version}"; url="mirror://sourceforge/project/ised/${name}.tar.bz2"; - hash="1avfb4ivq6iz50rraci0pcxl0w94899sz6icdqc0l4954y4zs8qd"; }; in rec { src = a.fetchurl { url = sourceInfo.url; - sha256 = sourceInfo.hash; + sha256 = "0rf9brqkrad8f3czpfc1bxq9ybv3nxci9276wdxas033c82cqkjs"; }; inherit (sourceInfo) name version; @@ -37,11 +36,7 @@ rec { platforms = with a.lib.platforms; linux; license = a.lib.licenses.gpl3Plus; - }; - passthru = { - updateInfo = { - downloadPage = "ised.sf.net"; - }; + inherit version; }; }) x diff --git a/pkgs/tools/misc/ised/default.upstream b/pkgs/tools/misc/ised/default.upstream new file mode 100644 index 00000000000..6539bf477e5 --- /dev/null +++ b/pkgs/tools/misc/ised/default.upstream @@ -0,0 +1,4 @@ +url http://ised.sourceforge.net/web_nav.html +SF_version_tarball +SF_redirect +minimize_overwrite From ee713859f4017aececc4025f11d1874d1e930690 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:25:05 +0400 Subject: [PATCH 145/789] Update libosip --- pkgs/development/libraries/osip/default.nix | 5 +++-- pkgs/development/libraries/osip/default.upstream | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/libraries/osip/default.upstream diff --git a/pkgs/development/libraries/osip/default.nix b/pkgs/development/libraries/osip/default.nix index cfa838f5a37..4db1cb5b524 100644 --- a/pkgs/development/libraries/osip/default.nix +++ b/pkgs/development/libraries/osip/default.nix @@ -1,9 +1,9 @@ {stdenv, fetchurl}: stdenv.mkDerivation rec { - version = "4.0.0"; + version = "4.1.0"; src = fetchurl { url = "mirror://gnu/osip/libosip2-${version}.tar.gz"; - sha256 = "05dhj4s5k4qmhn2amca070xgh1gkcl42n040fhwsn3vm86524bdv"; + sha256 = "014503kqv7z63az6lgxr5fbajlrqylm5c4kgbf8p3a0n6cva0slr"; }; name = "libosip2-${version}"; @@ -13,5 +13,6 @@ stdenv.mkDerivation rec { description = "The GNU oSIP library, an implementation of the Session Initiation Protocol (SIP)"; maintainers = with stdenv.lib.maintainers; [ raskin ]; platforms = stdenv.lib.platforms.linux; + inherit version; }; } diff --git a/pkgs/development/libraries/osip/default.upstream b/pkgs/development/libraries/osip/default.upstream new file mode 100644 index 00000000000..ba0ed2a9b29 --- /dev/null +++ b/pkgs/development/libraries/osip/default.upstream @@ -0,0 +1,3 @@ +url http://ftp.u-tx.net/gnu/osip/ +attribute_name libosip +minimize_overwrite From bacd3e852dbd11fd24f3013e0535ac9d1af19e36 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:41:46 +0400 Subject: [PATCH 146/789] Update pari --- pkgs/applications/science/math/pari/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/math/pari/default.nix b/pkgs/applications/science/math/pari/default.nix index 576a28b054f..e59bb9fe666 100644 --- a/pkgs/applications/science/math/pari/default.nix +++ b/pkgs/applications/science/math/pari/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl, gmp, readline }: stdenv.mkDerivation rec { - name = "pari-2.5.5"; + version = "2.7.1"; + name = "pari-${version}"; src = fetchurl { url = "http://pari.math.u-bordeaux.fr/pub/pari/unix/${name}.tar.gz"; - sha256 = "058nw1fhggy7idii4f124ami521lv3izvngs9idfz964aks8cvvn"; + sha256 = "1gj1rddi22hinzwy7r6hljgbi252wwwyd6gapg4hvcn0ycc7jqyc"; }; buildInputs = [gmp readline]; @@ -21,5 +22,9 @@ stdenv.mkDerivation rec { license = "GPLv2+"; maintainers = with stdenv.lib.maintainers; [ertes raskin]; platforms = stdenv.lib.platforms.linux; + + inherit version; + downloadPage = "http://pari.math.u-bordeaux.fr/download.html"; + updateWalker = true; }; } From 3ba3ec0f8fb68f4c0f9b731af4dadf3f3686def5 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 13:48:05 +0400 Subject: [PATCH 147/789] Update Regina-REXX --- pkgs/development/interpreters/regina/default.nix | 12 ++++-------- .../development/interpreters/regina/default.upstream | 5 +++++ 2 files changed, 9 insertions(+), 8 deletions(-) create mode 100644 pkgs/development/interpreters/regina/default.upstream diff --git a/pkgs/development/interpreters/regina/default.nix b/pkgs/development/interpreters/regina/default.nix index d8b3558be4f..992f7281554 100644 --- a/pkgs/development/interpreters/regina/default.nix +++ b/pkgs/development/interpreters/regina/default.nix @@ -12,16 +12,15 @@ let sourceInfo = rec { baseName="Regina-REXX"; pname="regina-rexx"; - version="3.5"; + version = "3.8.2"; name="${baseName}-${version}"; url="mirror://sourceforge/${pname}/${pname}/${version}/${name}.tar.gz"; - hash="0gh0k6lbhfixs44adha7lxirl3a08jabdylzr6m7mh5q5fhzv5f8"; }; in rec { src = a.fetchurl { url = sourceInfo.url; - sha256 = sourceInfo.hash; + sha256 = "06vr6p9pqr5zzsxm1l9iwb2w9z8qkm971c2knh0vf5bbm6znjz35"; }; inherit (sourceInfo) name version; @@ -43,11 +42,8 @@ rec { platforms = with a.lib.platforms; linux; license = a.lib.licenses.lgpl2; - }; - passthru = { - updateInfo = { - downloadPage = "http://sourceforge.net/projects/regina-rexx/files/regina-rexx/"; - }; + downloadPage = "http://sourceforge.net/projects/regina-rexx/files/regina-rexx/"; + inherit version; }; }) x diff --git a/pkgs/development/interpreters/regina/default.upstream b/pkgs/development/interpreters/regina/default.upstream new file mode 100644 index 00000000000..7b3c6905a1c --- /dev/null +++ b/pkgs/development/interpreters/regina/default.upstream @@ -0,0 +1,5 @@ +url http://sourceforge.net/projects/regina-rexx/files/regina-rexx/ +SF_version_dir +SF_version_tarball +SF_redirect +minimize_overwrite From f78afc0b27622372ad485466509a6cc377c172bf Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 14:15:10 +0400 Subject: [PATCH 148/789] Update libefw. Releases on Google Drive. Ouch --- pkgs/development/libraries/libewf/default.nix | 13 ++++++++----- pkgs/development/libraries/libewf/default.upstream | 7 +++++++ 2 files changed, 15 insertions(+), 5 deletions(-) create mode 100644 pkgs/development/libraries/libewf/default.upstream diff --git a/pkgs/development/libraries/libewf/default.nix b/pkgs/development/libraries/libewf/default.nix index 7c948aa9824..fad0170ade7 100644 --- a/pkgs/development/libraries/libewf/default.nix +++ b/pkgs/development/libraries/libewf/default.nix @@ -1,10 +1,11 @@ -{ fetchurl, stdenv, zlib, openssl, libuuid, file }: +{ fetchurl, stdenv, zlib, openssl, libuuid, file, fuse }: stdenv.mkDerivation rec { - name = "libewf-20100226"; + version = "20140608"; + name = "libewf-${version}"; src = fetchurl { - url = "mirror://sourceforge/libewf/${name}.tar.gz"; - sha256 = "aedd2a6b3df6525ff535ab95cd569ebb361a4022eb4163390f26257913c2941a"; + url = "https://googledrive.com/host/0B3fBvzttpiiSMTdoaVExWWNsRjg/libewf-20140608.tar.gz"; + sha256 = "0wfsffzxk934hl8cpwr14w8ixnh8d23x0xnnzcspjwi2c7730h6i"; }; preConfigure = ''sed -e 's@/usr/bin/file@file@g' -i configure''; @@ -14,6 +15,8 @@ stdenv.mkDerivation rec { meta = { description = "Library for support of the Expert Witness Compression Format"; homepage = http://sourceforge.net/projects/libewf/; - license = "free"; + license = stdenv.lib.licenses.lgpl3; + maintainers = [ stdenv.lib.maintainers.raskin ] ; + inherit version; }; } diff --git a/pkgs/development/libraries/libewf/default.upstream b/pkgs/development/libraries/libewf/default.upstream new file mode 100644 index 00000000000..a071132463f --- /dev/null +++ b/pkgs/development/libraries/libewf/default.upstream @@ -0,0 +1,7 @@ +url https://code.google.com/p/libewf/ +version_link 'googledrive[.]com' +version_link '[.]tar[.]' +do_overwrite () { + do_overwrite_just_version + set_var_value url "$CURRENT_URL" +} From 7b6d33a591a541af26564fd5e3312fbc4782d387 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 14:15:51 +0400 Subject: [PATCH 149/789] Update spandsp --- pkgs/development/libraries/spandsp/default.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/spandsp/default.nix b/pkgs/development/libraries/spandsp/default.nix index f88ab48e027..24dc443ca70 100644 --- a/pkgs/development/libraries/spandsp/default.nix +++ b/pkgs/development/libraries/spandsp/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, audiofile, libtiff}: stdenv.mkDerivation rec { - version = "0.0.5"; + version = "0.0.6"; name = "spandsp-${version}"; src=fetchurl { - url = "http://www.soft-switch.org/downloads/spandsp/spandsp-${version}.tgz"; - sha256 = "07f42a237c77b08fa765c3a148c83cdfa267bf24c0ab681d80b90d30dd0b3dbf"; + url = "http://www.soft-switch.org/downloads/spandsp/spandsp-${version}.tar.gz"; + sha256 = "0rclrkyspzk575v8fslzjpgp4y2s4x7xk3r55ycvpi4agv33l1fc"; }; buildInputs = []; propagatedBuildInputs = [audiofile libtiff]; @@ -13,6 +13,9 @@ stdenv.mkDerivation rec { platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [raskin]; license = with stdenv.lib.licenses; gpl2; + downloadPage = "http://www.soft-switch.org/downloads/spandsp/"; + inherit version; + updateWalker = true; }; } From 0d8c76057fa561407d4f23e1b903cd1927f56efa Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 14:17:59 +0400 Subject: [PATCH 150/789] Update Wavemon --- pkgs/tools/networking/wavemon/default.nix | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/pkgs/tools/networking/wavemon/default.nix b/pkgs/tools/networking/wavemon/default.nix index e9c102817e1..b5927fd2478 100644 --- a/pkgs/tools/networking/wavemon/default.nix +++ b/pkgs/tools/networking/wavemon/default.nix @@ -11,16 +11,15 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="wavemon"; - version="0.7.5"; + version = "0.7.6"; name="${baseName}-${version}"; url="http://eden-feed.erg.abdn.ac.uk/wavemon/stable-releases/${name}.tar.bz2"; - hash="0b1fx00aar2fsw49a10w5bpiyjpz8h8f4nrlwb1acfw36yi1pfkd"; }; in rec { src = a.fetchurl { url = sourceInfo.url; - sha256 = sourceInfo.hash; + sha256 = "18cwlzgmwzy7z9dfr6lwd8kmkv0pqiihizm4gi0kkm52bzz6836y"; }; inherit (sourceInfo) name version; @@ -38,11 +37,9 @@ rec { platforms = with a.lib.platforms; linux; license = a.lib.licenses.gpl2Plus; - }; - passthru = { - updateInfo = { - downloadPage = "http://eden-feed.erg.abdn.ac.uk/wavemon/"; - }; + downloadPage = "http://eden-feed.erg.abdn.ac.uk/wavemon/"; + inherit version; + updateWalker = true; }; }) x From 85caa0942d2a468782d83e21d8cf4a6ed98e5415 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 14:18:19 +0400 Subject: [PATCH 151/789] Update SleuthKit --- pkgs/tools/system/sleuthkit/default.nix | 6 ++++-- pkgs/tools/system/sleuthkit/default.upstream | 5 +++++ 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 pkgs/tools/system/sleuthkit/default.upstream diff --git a/pkgs/tools/system/sleuthkit/default.nix b/pkgs/tools/system/sleuthkit/default.nix index 0148e3c699e..016e2ccda37 100644 --- a/pkgs/tools/system/sleuthkit/default.nix +++ b/pkgs/tools/system/sleuthkit/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl, libewf, afflib, openssl, zlib }: stdenv.mkDerivation rec { - name = "sleuthkit-3.2.2"; + version = "4.1.3"; + name = "sleuthkit-${version}"; src = fetchurl { url = "mirror://sourceforge/sleuthkit/${name}.tar.gz"; - sha256 = "02hik5xvbgh1dpisvc3wlhhq1aprnlsk0spbw6h5khpbq9wqnmgj"; + sha256 = "09q3ky4rpv18jasf5gc2hlivzadzl70jy4nnk23db1483aix5yb7"; }; enableParallelBuilding = true; @@ -20,5 +21,6 @@ stdenv.mkDerivation rec { maintainers = [ stdenv.lib.maintainers.raskin ]; platforms = stdenv.lib.platforms.linux; license = "IBM Public License"; + inherit version; }; } diff --git a/pkgs/tools/system/sleuthkit/default.upstream b/pkgs/tools/system/sleuthkit/default.upstream new file mode 100644 index 00000000000..f8ffe9352ed --- /dev/null +++ b/pkgs/tools/system/sleuthkit/default.upstream @@ -0,0 +1,5 @@ +url http://sourceforge.net/projects/sleuthkit/files/sleuthkit/ +SF_version_dir +SF_version_tarball +SF_redirect +minimize_overwrite From 10b4bc3c439c0d37c833d7a00f52673759d9b3b4 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 14:22:49 +0400 Subject: [PATCH 152/789] Update XDaliClock --- pkgs/tools/misc/xdaliclock/default.nix | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/pkgs/tools/misc/xdaliclock/default.nix b/pkgs/tools/misc/xdaliclock/default.nix index 79c6a743bce..df1a7eedeff 100644 --- a/pkgs/tools/misc/xdaliclock/default.nix +++ b/pkgs/tools/misc/xdaliclock/default.nix @@ -12,17 +12,16 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="xdaliclock"; - version="2.40"; + version = "2.41"; name="${baseName}-${version}"; project="${baseName}"; url="http://www.jwz.org/${project}/${name}.tar.gz"; - hash="03i8vwi9vz3gr938wr4miiymwv283mg11wgfaf2jhl6aqbmz4id7"; }; in rec { src = a.fetchurl { url = sourceInfo.url; - sha256 = sourceInfo.hash; + sha256 = "1crkjvza692irkqm9vwgn58m8ps93n0rxigm6pasgl5dnx3p6d1d"; }; inherit (sourceInfo) name version; @@ -46,10 +45,8 @@ rec { platforms = with a.lib.platforms; linux ++ freebsd; license = "free"; #TODO BSD on Gentoo, looks like MIT - }; - passthru = { - updateInfo = { - downloadPage = "http://www.jwz.org/xdaliclock/"; - }; + downloadPage = "http://www.jwz.org/xdaliclock/"; + inherit version; + updateWalker = true; }; }) x From 48dce0642bef6481a934ae19c6db514f12cb5c10 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 14:25:04 +0400 Subject: [PATCH 153/789] Add auto-updater for XScreensaver --- pkgs/misc/screensavers/xscreensaver/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/misc/screensavers/xscreensaver/default.nix b/pkgs/misc/screensavers/xscreensaver/default.nix index 04791749810..40fad768b16 100644 --- a/pkgs/misc/screensavers/xscreensaver/default.nix +++ b/pkgs/misc/screensavers/xscreensaver/default.nix @@ -41,5 +41,8 @@ stdenv.mkDerivation rec { description = "A set of screensavers"; maintainers = with stdenv.lib.maintainers; [ raskin urkud ]; platforms = with stdenv.lib.platforms; allBut cygwin; + inherit version; + downloadPage = "http://www.jwz.org/xscreensaver/download.html"; + updateWalker = true; }; } From 2fc76ea05417671306d27f9ba83ef1b8d4049f3d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 2 Sep 2014 12:28:56 +0200 Subject: [PATCH 154/789] haskell-auto-update: disable test suite to work around build failure https://github.com/yesodweb/wai/issues/285 --- pkgs/development/libraries/haskell/auto-update/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/haskell/auto-update/default.nix b/pkgs/development/libraries/haskell/auto-update/default.nix index e047e938dae..85f15b500ed 100644 --- a/pkgs/development/libraries/haskell/auto-update/default.nix +++ b/pkgs/development/libraries/haskell/auto-update/default.nix @@ -7,6 +7,7 @@ cabal.mkDerivation (self: { version = "0.1.1.2"; sha256 = "0901zqky70wyxl17vwz6smhnpsfjnsk0f2xqiyz902vl7apx66c6"; testDepends = [ hspec ]; + doCheck = false; meta = { homepage = "https://github.com/yesodweb/wai"; description = "Efficiently run periodic, on-demand actions"; From 6329b7ae600105227bf13498a23ce328a98554c0 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 2 Sep 2014 12:44:44 +0200 Subject: [PATCH 155/789] Drop unnecessary attributes --- pkgs/development/libraries/serf/default.nix | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/serf/default.nix b/pkgs/development/libraries/serf/default.nix index 873f59dba3a..1e8eec6ae45 100644 --- a/pkgs/development/libraries/serf/default.nix +++ b/pkgs/development/libraries/serf/default.nix @@ -1,8 +1,7 @@ { stdenv, fetchurl, apr, scons, openssl, aprutil, zlib, krb5, pkgconfig }: stdenv.mkDerivation rec { - version = "1.3.7"; - name = "serf-${version}"; + name = "serf-1.3.7"; src = fetchurl { url = "http://serf.googlecode.com/svn/src_releases/${name}.tar.bz2"; @@ -28,11 +27,8 @@ stdenv.mkDerivation rec { meta = { description = "HTTP client library based on APR"; - license = stdenv.lib.licenses.asl20 ; + license = stdenv.lib.licenses.asl20; maintainers = [stdenv.lib.maintainers.raskin]; hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; - inherit version; - downloadPage = "http://serf.googlecode.com/svn/src_releases/"; - updateWalker = true; }; } From ac9cb299355fb082c0b9ee1950606dcc5e82fc08 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:53:33 +0200 Subject: [PATCH 156/789] gnome3_12.clutter-gst: update from 2.0.10 to 2.0.12 --- pkgs/development/libraries/clutter-gst/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/clutter-gst/default.nix b/pkgs/development/libraries/clutter-gst/default.nix index c73aac074e7..7cef673dbc6 100644 --- a/pkgs/development/libraries/clutter-gst/default.nix +++ b/pkgs/development/libraries/clutter-gst/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, pkgconfig, clutter, gtk3, glib, cogl }: stdenv.mkDerivation rec { - name = "clutter-gst-2.0.10"; + name = "clutter-gst-2.0.12"; src = fetchurl { url = "mirror://gnome/sources/clutter-gst/2.0/${name}.tar.xz"; - sha256 = "f00cf492a6d4f1036c70d8a0ebd2f0f47586ea9a9b49b1ffda79c9dc7eadca00"; + sha256 = "1dgzpd5l5ld622b8185c3khvvllm5hfvq4q1a1mgzhxhj8v4bwf2"; }; propagatedBuildInputs = [ clutter gtk3 glib cogl ]; From df6d65ad550f5f6dc76f4889dc74eb621744a663 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:53:41 +0200 Subject: [PATCH 157/789] gnome3_12.empathy: update from 3.12.2 to 3.12.5 --- pkgs/desktops/gnome-3/3.12/core/empathy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix b/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix index 7fb341948be..c6ac93b1074 100644 --- a/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix @@ -11,11 +11,11 @@ # TODO: enable more features stdenv.mkDerivation rec { - name = "empathy-3.12.2"; + name = "empathy-3.12.5"; src = fetchurl { url = "mirror://gnome/sources/empathy/3.12/${name}.tar.xz"; - sha256 = "414d0c6b1a30b1afbf35ad04b0b9ff3ada3e06fab797a50a7147cdfe0905e7cd"; + sha256 = "0rhgpiv75aafmdh6r7d4ci59lnxqmmwg9hvsa5b3mk7j2d2pma86"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard From 64746e1f24d073e958ff16b42d17be73751c68fe Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:53:49 +0200 Subject: [PATCH 158/789] gnome3_12.evolution: update from 3.12.2 to 3.12.5 --- pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix b/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix index f9fbbbe56c6..8cba366faae 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix @@ -5,11 +5,11 @@ , libcanberra_gtk3, bogofilter, gst_all_1, procps, p11_kit }: stdenv.mkDerivation rec { - name = "evolution-3.12.2"; + name = "evolution-3.12.5"; src = fetchurl { url = "mirror://gnome/sources/evolution/3.12/${name}.tar.xz"; - sha256 = "60742334aaf1e3b9f044c2003c44a37be5905b166e24580e9e6e6c5ae1b9f948"; + sha256 = "08y1qiydbbk4fq8rrql9sgbwsny8bwz6f7m5kbbj5zjqvf1baksj"; }; doCheck = true; From de51a490f5039b950b8742b8c2dd78089fb0b6a3 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:54:01 +0200 Subject: [PATCH 159/789] gnome3_12.folks: update from 0.9.6 to 0.9.8 --- pkgs/desktops/gnome-3/3.12/core/folks/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/folks/default.nix b/pkgs/desktops/gnome-3/3.12/core/folks/default.nix index 47b958002a3..7e3af8405a4 100644 --- a/pkgs/desktops/gnome-3/3.12/core/folks/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/folks/default.nix @@ -5,11 +5,11 @@ # TODO: enable more folks backends stdenv.mkDerivation rec { - name = "folks-0.9.6"; + name = "folks-0.9.8"; src = fetchurl { url = "mirror://gnome/sources/folks/0.9/${name}.tar.xz"; - sha256 = "a67e055b5a2724a34a80946e2940c4c0ad708cb1f4e0a09407c6b69a5e40267f"; + sha256 = "09cbs3ihcswpi1wg8xbjmkqjbhnxa1idy1fbzmz0gah7l5mxmlfj"; }; propagatedBuildInputs = [ glib gnome3.libgee sqlite ]; From f3bc1dc2632ffa8b46055ea088a400f993b4830f Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:54:08 +0200 Subject: [PATCH 160/789] gnome3_12.geary: update from 0.6.0 to 0.6.2 --- pkgs/desktops/gnome-3/3.12/misc/geary/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix b/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix index 1eb6c0e3ed2..768e8bdb36e 100644 --- a/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix +++ b/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix @@ -5,11 +5,11 @@ , gnome3, librsvg, gnome_doc_utils, webkitgtk }: stdenv.mkDerivation rec { - name = "geary-0.6.0"; + name = "geary-0.6.2"; src = fetchurl { url = "mirror://gnome/sources/geary/0.6/${name}.tar.xz"; - sha256 = "44ad1dc2c81c50006c751f8e72aa817f07002188da4c29e158060524a1962715"; + sha256 = "0ap40mpj89sx82kcxlhl9gipq34ks2b70yhiv9s8zc5wg0nm7rpg"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; From f08c327ab2dc69b0151d6d589e7732c5655efdfd Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:54:14 +0200 Subject: [PATCH 161/789] gnome3_12.gedit: update from 3.12.1 to 3.12.2 --- pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix b/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix index 0909a4239db..c65a28c3446 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix @@ -4,11 +4,11 @@ , gnome3, librsvg, gdk_pixbuf, file }: stdenv.mkDerivation rec { - name = "gedit-3.12.1"; + name = "gedit-3.12.2"; src = fetchurl { url = "mirror://gnome/sources/gedit/3.12/${name}.tar.xz"; - sha256 = "8e3edc62102934a8be708b0fdf27b86368fa9ede885628283bf8e91b26bbb67f"; + sha256 = "0lxnswqa0ysr57cqh062wp41sd76p6q7y3mnkl7rligd5c8hnikm"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; From 95dffc12e8049b0caa8c8490fdfde6adbd154b22 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:54:22 +0200 Subject: [PATCH 162/789] gnome3_12.gnome-calculator: update from 3.12.1 to 3.12.3 --- pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix b/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix index 666032f56a7..19d0c9c10e8 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix @@ -3,11 +3,11 @@ , itstool, gnome3, librsvg, gdk_pixbuf }: stdenv.mkDerivation rec { - name = "gnome-calculator-3.12.1"; + name = "gnome-calculator-3.12.3"; src = fetchurl { url = "mirror://gnome/sources/gnome-calculator/3.12/${name}.tar.xz"; - sha256 = "15a75bbe19f6d2280d864f0504f6fc5b1f148fea9738b5548b64b7b8c0c64740"; + sha256 = "0bn3agh3g22iradfpzkc19a2b33b1mbf0ciy1hf2sijrczi24410"; }; NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0"; From ac7f0a8cf257f1f2dd589d57e332da47fb216f3b Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:54:30 +0200 Subject: [PATCH 163/789] gnome3_12.gnome-music: update from 3.12.2 to 3.12.2.1 --- pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix b/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix index d784544a183..c5f9bdb2774 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix @@ -4,11 +4,11 @@ , makeWrapper, itstool, gnome3, librsvg, gst_all_1 }: stdenv.mkDerivation rec { - name = "gnome-music-3.12.2"; + name = "gnome-music-3.12.2.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-music/3.12/${name}.tar.xz"; - sha256 = "ec4807018166aabed0263cb3ffce672e1fc1a3e959f48a5ad48b8eb08ddb451a"; + sha256 = "1vwzjv5001pg37qc0sh4ph3srqwg3vgibbdlqpim9w2k70l9j34z"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; From b00b560dba7477bdfa20b18e2b0a9bb4b504ddf5 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:54:38 +0200 Subject: [PATCH 164/789] gnome3_12.gnome-user-docs: update from 3.12.1 to 3.12.2 --- pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix b/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix index 7377c839d1c..2a237b15c21 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, file, gnome3, itstool, libxml2, intltool }: stdenv.mkDerivation rec { - name = "gnome-user-docs-3.12.1"; + name = "gnome-user-docs-3.12.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-user-docs/3.12/${name}.tar.xz"; - sha256 = "bfd084d72c688d6efb0c34bb572a704cc2ce093c97a33390eaffb5e42158d418"; + sha256 = "1cj45lpa74vkbxyila3d6pn5m1gh51nljp9fjirxmzwi1h6wg7jd"; }; buildInputs = [ pkgconfig gnome3.yelp itstool libxml2 intltool ]; From 4426b5aca7e05e78c10a0ebaedaa6dd0e99c8907 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:55:33 +0200 Subject: [PATCH 165/789] grilo: update from 0.2.10 to 0.2.11 --- pkgs/desktops/gnome-3/3.12/core/grilo/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix b/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix index 6f1bfbbcfe9..9c0e3f9a0bc 100644 --- a/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix @@ -2,11 +2,11 @@ , libxml2, gnome3, gobjectIntrospection, libsoup }: stdenv.mkDerivation rec { - name = "grilo-0.2.10"; + name = "grilo-0.2.11"; src = fetchurl { url = "mirror://gnome/sources/grilo/0.2/${name}.tar.xz"; - sha256 = "559a2470fe541b0090bcfdfac7a33e92dba967727bbab6d0eca70e5636a77b25"; + sha256 = "8a52c37521de80d6caf08a519a708489b9e2b097c2758a0acaab6fbd26d30ea6"; }; configureFlags = [ "--enable-grl-pls" "--enable-grl-net" ]; From 7cb6d4cd87702dd5f61487431d846d318b91fb05 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:55:46 +0200 Subject: [PATCH 166/789] gnome3_12.grilo-plugins: update from 0.2.12 to 0.2.13 --- pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix b/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix index a8a1c244767..9076d5c5839 100644 --- a/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix @@ -3,11 +3,11 @@ , gmime, json_glib, avahi, tracker, itstool }: stdenv.mkDerivation rec { - name = "grilo-plugins-0.2.12"; + name = "grilo-plugins-0.2.13"; src = fetchurl { url = "mirror://gnome/sources/grilo-plugins/0.2/${name}.tar.xz"; - sha256 = "15bed8a633c81b251920ab677d455433e641388f605277ca88e549cc89012b48"; + sha256 = "008jwm5ydl0k25p3d2fkcail40fj9y3qknihxb5fg941p8qlhm55"; }; installFlags = [ "GRL_PLUGINS_DIR=$(out)/lib/grilo-0.2" ]; From 70991e666e44d8ee314bda3ee6a4315f5e064632 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:55:54 +0200 Subject: [PATCH 167/789] gnome3_12.gtksourceview: update from 3.12.2 to 3.12.3 --- pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix index 4564b0d21e1..8a89425a696 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { name = "gtksourceview-${version}"; - version = "3.12.2"; + version = "3.12.3"; src = fetchurl { url = "mirror://gnome/sources/gtksourceview/3.12/gtksourceview-${version}.tar.xz"; - sha256 = "62a31eee00f633d7959efb7eec44049ebd0345d670265853dcd21c057f3f30ad"; + sha256 = "1xzmw9n9zbkaasl8xi7s5h49wiv5dq4qf8hr2pzjkack3ai5j6gk"; }; buildInputs = [ pkgconfig atk cairo glib gtk3 pango From f02ab3f9c4f4afa08c2b32f4fea74241d9800327 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:56:01 +0200 Subject: [PATCH 168/789] gnome3_12.totem: update from 3.12.1 to 3.12.2 --- pkgs/desktops/gnome-3/3.12/core/totem/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/totem/default.nix b/pkgs/desktops/gnome-3/3.12/core/totem/default.nix index 3589299df3e..1322fdcaae3 100644 --- a/pkgs/desktops/gnome-3/3.12/core/totem/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/totem/default.nix @@ -5,11 +5,11 @@ , gnome3, librsvg, gdk_pixbuf, file }: stdenv.mkDerivation rec { - name = "totem-3.12.1"; + name = "totem-3.12.2"; src = fetchurl { url = "mirror://gnome/sources/totem/3.12/${name}.tar.xz"; - sha256 = "dd168cdd4051d01131d47c24fa45bfd08b6ccf45900ac4b64bae47f6f47a35e3"; + sha256 = "1law033wxbs8v3l2fk0p1v8lf9m45dm997yhq0cmqgw10jxxiybn"; }; doCheck = true; From 12018a0df9b2d33e4c0c8ec4366382211447a54d Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:56:07 +0200 Subject: [PATCH 169/789] gnome3_12.tracker: update from 1.0.1 to 1.0.3, potentially fixes CVE-2012-2671, CVE-2012-6109 --- pkgs/desktops/gnome-3/3.12/core/tracker/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix b/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix index 79155fe9b56..cf84f511416 100644 --- a/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix @@ -8,11 +8,11 @@ , libpng, libexif, libgsf, libuuid, bzip2 }: stdenv.mkDerivation rec { - name = "tracker-1.0.1"; + name = "tracker-1.0.3"; src = fetchurl { url = "mirror://gnome/sources/tracker/1.0/${name}.tar.xz"; - sha256 = "76e7918e62526a8209f9c9226f82abe592a6332826ac7c12e6e405063181e889"; + sha256 = "11pqcldgh07mjn38dlbj6ry5qkfbpf79ln5sqx7q86hhqzh3712h"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; From 17e96cd1a3d09e250b5a067a4402c01966adf832 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:57:10 +0200 Subject: [PATCH 170/789] vte: update from 0.36.2 to 0.36.3 --- pkgs/desktops/gnome-3/3.12/core/vte/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/vte/default.nix b/pkgs/desktops/gnome-3/3.12/core/vte/default.nix index 41597e47fa5..011424820e8 100644 --- a/pkgs/desktops/gnome-3/3.12/core/vte/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/vte/default.nix @@ -3,14 +3,14 @@ stdenv.mkDerivation rec { versionMajor = "0.36"; - versionMinor = "2"; + versionMinor = "3"; moduleName = "vte"; name = "${moduleName}-${versionMajor}.${versionMinor}"; src = fetchurl { url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; - sha256 = "f45eed3aed823068c7563345ea947be0e6ddb3dacd74646e6d7d26a921e04345"; + sha256 = "54e5b07be3c0f7b158302f54ee79d4de1cb002f4259b6642b79b1e0e314a959c"; }; buildInputs = [ gobjectIntrospection intltool pkgconfig gnome3.glib gnome3.gtk3 ncurses ]; From 8a4a0a5aa077298bc87cc3547789339fcaa139c2 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Tue, 2 Sep 2014 12:58:06 +0200 Subject: [PATCH 171/789] json-glib: update from 1.0.0 to 1.0.2 --- pkgs/development/libraries/json-glib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/json-glib/default.nix b/pkgs/development/libraries/json-glib/default.nix index 7a45ca0f227..a50163c601d 100644 --- a/pkgs/development/libraries/json-glib/default.nix +++ b/pkgs/development/libraries/json-glib/default.nix @@ -7,9 +7,9 @@ stdenv.mkDerivation rec { project = "json-glib"; major = "1"; minor = "0"; - patchlevel = "0"; + patchlevel = "2"; extension = "xz"; - sha256 = "dbf558d2da989ab84a27e4e13daa51ceaa97eb959c2c2f80976c9322a8f4cdde"; + sha256 = "887bd192da8f5edc53b490ec51bf3ffebd958a671f5963e4f3af32c22e35660a"; }; configureflags= "--with-introspection" ; From 9d64b445b61f71b13f9803cf0313ebd77dda4499 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 2 Sep 2014 13:07:49 +0200 Subject: [PATCH 172/789] swig: Disable ccache stuff http://hydra.nixos.org/build/13936297 --- pkgs/development/tools/misc/swig/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/swig/default.nix b/pkgs/development/tools/misc/swig/default.nix index 66d6b65453e..c4fcd315845 100644 --- a/pkgs/development/tools/misc/swig/default.nix +++ b/pkgs/development/tools/misc/swig/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { # 'make check' uses boost and tcl buildInputs = stdenv.lib.optionals doCheck [ boost tcl ]; - configureFlags = stdenv.lib.optionalString stdenv.isDarwin "--disable-ccache"; + configureFlags = "--disable-ccache"; meta = { description = "Interface compiler that connects C/C++ code to higher-level languages"; From 715943a6fbaf025bcadd6dcee5f6007c4da15ab7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 2 Sep 2014 13:18:03 +0200 Subject: [PATCH 173/789] ld-wrapper: Put back the --sysroot filter We still need this because some clang-based packages depend on it. (The sysroot filtering was originally done by clang-wrapper's ld-wrapper, but we merged the ld-wrappers in a4f9b9c8b5ec9ef106671ffdf93e0059835d0ec1.) http://hydra.nixos.org/build/13906922 --- pkgs/build-support/gcc-wrapper/ld-wrapper.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/build-support/gcc-wrapper/ld-wrapper.sh b/pkgs/build-support/gcc-wrapper/ld-wrapper.sh index 51803e12a4e..822c4a03a21 100644 --- a/pkgs/build-support/gcc-wrapper/ld-wrapper.sh +++ b/pkgs/build-support/gcc-wrapper/ld-wrapper.sh @@ -32,6 +32,9 @@ if test "$NIX_ENFORCE_PURITY" = "1" -a -n "$NIX_STORE" \ # We cannot skip this; barf. echo "impure path \`$p' used in link" >&2 exit 1 + elif test "${p:0:9}" = "--sysroot"; then + # Our ld is not built with sysroot support (Can we fix that?) + : else rest=("${rest[@]}" "$p") fi From 1e786087e4e5bf8d602c87e49edd2fa5d61b8a82 Mon Sep 17 00:00:00 2001 From: Andreas Herrmann Date: Sun, 31 Aug 2014 20:02:25 +0200 Subject: [PATCH 174/789] mpi4py: New package, version 1.3.1 --- .../python-modules/mpi4py/default.nix | 55 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 6 ++ 2 files changed, 61 insertions(+) create mode 100644 pkgs/development/python-modules/mpi4py/default.nix diff --git a/pkgs/development/python-modules/mpi4py/default.nix b/pkgs/development/python-modules/mpi4py/default.nix new file mode 100644 index 00000000000..6c487dc07ad --- /dev/null +++ b/pkgs/development/python-modules/mpi4py/default.nix @@ -0,0 +1,55 @@ +{ stdenv, fetchurl, python, buildPythonPackage, mpi, openssh }: + +buildPythonPackage rec { + name = "mpi4py-1.3.1"; + + src = fetchurl { + url = "https://bitbucket.org/mpi4py/mpi4py/downloads/${name}.tar.gz"; + sha256 = "e7bd2044aaac5a6ea87a87b2ecc73b310bb6efe5026031e33067ea3c2efc3507"; + }; + + passthru = { + inherit mpi; + }; + + # The tests in the `test_spawn` module fail in the chroot build environment. + # However, they do pass in a pure, or non-pure nix-shell. Hence, we + # deactivate these particular tests. + # Unfortunately, the command-line arguments to `./setup.py test` are not + # correctly passed to the test-runner. Hence, these arguments are patched + # directly into `setup.py`. + patchPhase = '' + sed 's/err = main(cmd.args or \[\])/err = main(cmd.args or ["-v", "-e", "test_spawn"])/' -i setup.py + ''; + + configurePhase = ""; + + installPhase = '' + mkdir -p "$out/lib/${python.libPrefix}/site-packages" + export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH" + + ${python}/bin/${python.executable} setup.py install \ + --install-lib=$out/lib/${python.libPrefix}/site-packages \ + --prefix="$out" + + # --install-lib: + # sometimes packages specify where files should be installed outside the usual + # python lib prefix, we override that back so all infrastructure (setup hooks) + # work as expected + ''; + + setupPyBuildFlags = ["--mpicc=${mpi}/bin/mpicc"]; + + buildInputs = [ mpi ]; + # Requires openssh for tests. Tests of dependent packages will also fail, + # if openssh is not present. E.g. h5py with mpi support. + propagatedBuildInputs = [ openssh ]; + + meta = { + description = " + Provides Python bindings for the Message Passing Interface standard. + "; + homepage = "http://code.google.com/p/mpi4py/"; + license = stdenv.lib.licenses.bsd3; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7b39b083eea..c786da4e0e0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -106,6 +106,12 @@ rec { pylabQtSupport = false; }); + mpi4py = callPackage ../development/python-modules/mpi4py { + inherit (pkgs) stdenv fetchurl openssh; + inherit python buildPythonPackage; + mpi = pkgs.openmpi; + }; + nixpart = callPackage ../tools/filesystems/nixpart { }; # This is used for NixOps to make sure we won't break it with the next major From 728793ef0bb7dd3ebf0bb4471492eed6f3a1a8ab Mon Sep 17 00:00:00 2001 From: Andreas Herrmann Date: Sun, 31 Aug 2014 20:02:38 +0200 Subject: [PATCH 175/789] h5py: New package, version 2.3.1 --- .../python-modules/h5py/default.nix | 43 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 13 ++++++ 2 files changed, 56 insertions(+) create mode 100644 pkgs/development/python-modules/h5py/default.nix diff --git a/pkgs/development/python-modules/h5py/default.nix b/pkgs/development/python-modules/h5py/default.nix new file mode 100644 index 00000000000..9ab68ac4cd2 --- /dev/null +++ b/pkgs/development/python-modules/h5py/default.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchurl, python, buildPythonPackage +, numpy, hdf5, cython +, mpiSupport ? false, mpi4py ? null, mpi ? null }: + +assert mpiSupport == hdf5.mpiSupport; +assert mpiSupport -> mpi != null + && mpi4py != null + && mpi == mpi4py.mpi + && mpi == hdf5.mpi + ; + +with stdenv.lib; + +buildPythonPackage rec { + name = "h5py-2.3.1"; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/h/h5py/${name}.tar.gz"; + md5 = "8f32f96d653e904d20f9f910c6d9dd91"; + }; + + setupPyBuildFlags = [ "--hdf5=${hdf5}" ] + ++ optional mpiSupport "--mpi" + ; + setupPyInstallFlags = setupPyBuildFlags; + + preBuild = if mpiSupport then "export CC=${mpi}/bin/mpicc" else ""; + + buildInputs = [ hdf5 cython ] + ++ optional mpiSupport mpi + ; + propagatedBuildInputs = [ numpy ] + ++ optional mpiSupport mpi4py + ; + + meta = { + description = " + The h5py package is a Pythonic interface to the HDF5 binary data format. + "; + homepage = "http://www.h5py.org/"; + license = stdenv.lib.licenses.bsd2; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c786da4e0e0..48155df7815 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -90,6 +90,19 @@ rec { ''; }; + h5py = callPackage ../development/python-modules/h5py { + inherit (pkgs) stdenv fetchurl; + inherit python buildPythonPackage cython numpy; + hdf5 = pkgs.hdf5.override { mpi = null; }; + }; + + h5py-mpi = h5py.override { + mpiSupport = true; + mpi = pkgs.openmpi; + hdf5 = pkgs.hdf5.override { mpi = pkgs.openmpi; enableShared = true; }; + inherit mpi4py; + }; + ipython = import ../shells/ipython { inherit (pkgs) stdenv fetchurl sip pyqt4; inherit buildPythonPackage pythonPackages; From 3b0c725255259723fb496c2732eb9dd10890a798 Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Tue, 2 Sep 2014 14:05:09 +0200 Subject: [PATCH 176/789] Add attributes for all relevant Android SDK API levels and their capabilities --- .../development/mobile/androidenv/default.nix | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/pkgs/development/mobile/androidenv/default.nix b/pkgs/development/mobile/androidenv/default.nix index 422c1516f2d..6e71195e41c 100644 --- a/pkgs/development/mobile/androidenv/default.nix +++ b/pkgs/development/mobile/androidenv/default.nix @@ -63,8 +63,38 @@ rec { abiVersions = [ "armeabi-v7a" ]; useGoogleAPIs = true; }; + + androidsdk_2_3_3 = androidsdk { + platformVersions = [ "10" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_3_0 = androidsdk { + platformVersions = [ "11" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_3_1 = androidsdk { + platformVersions = [ "12" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_3_2 = androidsdk { + platformVersions = [ "13" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; androidsdk_4_0 = androidsdk { + platformVersions = [ "14" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_4_0_3 = androidsdk { platformVersions = [ "15" ]; abiVersions = [ "armeabi-v7a" ]; useGoogleAPIs = true; From c8871e0b654c318508559ba4a7e2651d3e1a0e42 Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Fri, 1 Aug 2014 18:26:21 -0700 Subject: [PATCH 177/789] ewemoa : add the Android Support repository --- .../mobile/androidenv/androidsdk.nix | 11 ++++++++++- pkgs/development/mobile/androidenv/default.nix | 6 +++++- .../mobile/androidenv/support-repository.nix | 17 +++++++++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/mobile/androidenv/support-repository.nix diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix index 3c9327f1c59..60f71517323 100644 --- a/pkgs/development/mobile/androidenv/androidsdk.nix +++ b/pkgs/development/mobile/androidenv/androidsdk.nix @@ -1,5 +1,5 @@ { stdenv, stdenv_32bit, fetchurl, unzip, makeWrapper -, platformTools, buildTools, support, platforms, sysimages, addons +, platformTools, buildTools, support, supportRepository, platforms, sysimages, addons , zlib_32bit , libX11_32bit, libxcb_32bit, libXau_32bit, libXdmcp_32bit, libXext_32bit, mesa_32bit, alsaLib_32bit , libX11, libXext, libXrender, libxcb, libXau, libXdmcp, libXtst, mesa, alsaLib @@ -139,6 +139,15 @@ stdenv.mkDerivation rec { cd .. + # Symlink required extras + + mkdir -p extras/android + cd extras/android + + ln -s ${supportRepository}/m2repository + + cd ../.. + # Symlink required platforms mkdir -p platforms diff --git a/pkgs/development/mobile/androidenv/default.nix b/pkgs/development/mobile/androidenv/default.nix index 6e71195e41c..796f0f862bd 100644 --- a/pkgs/development/mobile/androidenv/default.nix +++ b/pkgs/development/mobile/androidenv/default.nix @@ -16,6 +16,10 @@ rec { inherit (pkgs) stdenv fetchurl unzip; }; + supportRepository = import ./support-repository.nix { + inherit (pkgs) stdenv fetchurl unzip; + }; + platforms = if (pkgs.stdenv.system == "i686-linux" || pkgs.stdenv.system == "x86_64-linux") then import ./platforms-linux.nix { inherit (pkgs) stdenv fetchurl unzip; @@ -39,7 +43,7 @@ rec { inherit (pkgs) freetype fontconfig glib gtk atk mesa file alsaLib jdk; inherit (pkgs.xorg) libX11 libXext libXrender libxcb libXau libXdmcp libXtst; - inherit platformTools buildTools support platforms sysimages addons; + inherit platformTools buildTools support supportRepository platforms sysimages addons; stdenv_32bit = pkgs_i686.stdenv; zlib_32bit = pkgs_i686.zlib; diff --git a/pkgs/development/mobile/androidenv/support-repository.nix b/pkgs/development/mobile/androidenv/support-repository.nix new file mode 100644 index 00000000000..66a532328b1 --- /dev/null +++ b/pkgs/development/mobile/androidenv/support-repository.nix @@ -0,0 +1,17 @@ +{stdenv, fetchurl, unzip}: + +stdenv.mkDerivation { + name = "android-support-repository-r5"; + src = fetchurl { + url = http://dl-ssl.google.com/android/repository/android_m2repository_r05.zip; + sha1 = "2ee9723da079ba0d4fe2a185e00ded842de96f13"; + }; + + buildCommand = '' + mkdir -p $out + cd $out + unzip $src + ''; + + buildInputs = [ unzip ]; +} From ef8220d1bf6143d73be248fcfb58f14d1c4d987f Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Tue, 2 Sep 2014 14:11:09 +0200 Subject: [PATCH 178/789] Expose Android NDK in the top level expression --- pkgs/tools/package-management/disnix/default.nix | 6 +++--- pkgs/tools/package-management/disnix/disnixos/default.nix | 6 +++--- pkgs/tools/package-management/disnix/dysnomia/default.nix | 6 +++--- pkgs/top-level/all-packages.nix | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix index 61e998fd545..b6b88aef022 100644 --- a/pkgs/tools/package-management/disnix/default.nix +++ b/pkgs/tools/package-management/disnix/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconvOrEmpty }: stdenv.mkDerivation { - name = "disnix-0.3pre174e883b7b09da822494876d2f297736f33707a7"; + name = "disnix-0.3pre24d959b3b37ce285971810245643a7f18cb85fcc"; src = fetchurl { - url = http://hydra.nixos.org/build/11773951/download/4/disnix-0.3pre174e883b7b09da822494876d2f297736f33707a7.tar.gz; - sha256 = "19hdh2mrlyiq1g3z6lnnqqvripmfcdnm18jpm4anp5iarhnwh3y4"; + url = http://hydra.nixos.org/build/13612993/download/4/disnix-0.3pre24d959b3b37ce285971810245643a7f18cb85fcc.tar.gz; + sha256 = "0ml8g6h7x79mvv84il9vb9b88kqak9m3yzavmar66i3dvyqr1dwb"; }; buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconvOrEmpty dysnomia ]; diff --git a/pkgs/tools/package-management/disnix/disnixos/default.nix b/pkgs/tools/package-management/disnix/disnixos/default.nix index 65ae91f6e18..0190a5fd679 100644 --- a/pkgs/tools/package-management/disnix/disnixos/default.nix +++ b/pkgs/tools/package-management/disnix/disnixos/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, disnix, socat, pkgconfig, getopt }: stdenv.mkDerivation { - name = "disnixos-0.2prebb320d396f93d7062c28d6a54105d8e8196b9d99"; + name = "disnixos-0.2prec3310e2d8975c45e4ffacec940049fb781739b8d"; src = fetchurl { - url = http://hydra.nixos.org/build/9877039/download/3/disnixos-0.2preb10c56eeb1be3046645eea90c779e2d64045581f.tar.gz; - sha256 = "1pkpf6vp9q3jjp212lghbs1km8iqh4rm9xa5jm0dqb5ya25f0jf2"; + url = http://hydra.nixos.org/build/13617499/download/3/disnixos-0.2prec3310e2d8975c45e4ffacec940049fb781739b8d.tar.gz; + sha256 = "1kcpzzwy9jc1zz700whnp6sc77yp3wxzr935f07jy55ddkl8mdi5"; }; buildInputs = [ socat pkgconfig disnix getopt ]; diff --git a/pkgs/tools/package-management/disnix/dysnomia/default.nix b/pkgs/tools/package-management/disnix/dysnomia/default.nix index a1914224dbd..574bf8f9ab3 100644 --- a/pkgs/tools/package-management/disnix/dysnomia/default.nix +++ b/pkgs/tools/package-management/disnix/dysnomia/default.nix @@ -19,10 +19,10 @@ assert enableEjabberdDump -> ejabberd != null; assert enableMongoDatabase -> mongodb != null; stdenv.mkDerivation { - name = "dysnomia-0.3pre09cc08f5ffc737d988923bb7329a7ec711badd82"; + name = "dysnomia-0.3precf347cbd508f488f115f8961371a3cecf03fd530"; src = fetchurl { - url = http://hydra.nixos.org/build/11407191/download/1/dysnomia-0.3pre09cc08f5ffc737d988923bb7329a7ec711badd82.tar.gz; - sha256 = "1i7yb299bq1z7cy4sk83m5faahj8inh73xn5bi6jcv492zv3kgwz"; + url = http://hydra.nixos.org/build/13281061/download/1/dysnomia-0.3precf347cbd508f488f115f8961371a3cecf03fd530.tar.gz; + sha256 = "0xiqpz2c3dh4pbdprvrd7plvq3ipngqbjkwpmbhw1nw90x5rpa2d"; }; preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else ""; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d2d0f69132c..05c9d695bc2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -528,7 +528,7 @@ let pkgs_i686 = pkgsi686Linux; }; - inherit (androidenv) androidsdk_4_1; + inherit (androidenv) androidsdk_4_4 androidndk; aria2 = callPackage ../tools/networking/aria2 { }; aria = aria2; From 217cda9c5430ef74b171edc65c4149bbefc4742b Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Tue, 2 Sep 2014 16:37:13 +0200 Subject: [PATCH 179/789] pythonPackages: add websocket_client, fix pythonPackages.docker --- pkgs/top-level/python-packages.nix | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3af1950f9b1..a3018b8e15f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1843,7 +1843,7 @@ rec { md5 = "21ab8fd729105487e6423b654d6c0860"; }; - propagatedBuildInputs = [ six requests ]; + propagatedBuildInputs = [ six requests websocket_client ]; # Version conflict doCheck = false; @@ -9948,6 +9948,24 @@ rec { }; + websocket_client = buildPythonPackage rec { + name = "websocket-client-0.17.0"; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/w/websocket-client/${name}.tar.gz"; + md5 = "c86591719085eaf4a01c2275e0c834fc"; + }; + + propagatedBuildInputs = [ six backports_ssl_match_hostname_3_4_0_2 unittest2 argparse ]; + + meta = { + homepage = https://github.com/liris/websocket-client; + description = "Websocket client for python"; + license = licenses.lgpl2; + }; + }; + + webhelpers = buildPythonPackage rec { name = "WebHelpers-1.3"; From 6a0b39b0afe9be1caae76adb925a26cb6adc5485 Mon Sep 17 00:00:00 2001 From: Michel Kuhlmann Date: Tue, 2 Sep 2014 12:48:34 +0200 Subject: [PATCH 180/789] haskell-hindent: initial expression --- .../libraries/haskell/hindent/default.nix | 17 +++++++++++++++++ pkgs/top-level/haskell-packages.nix | 2 ++ 2 files changed, 19 insertions(+) create mode 100644 pkgs/development/libraries/haskell/hindent/default.nix diff --git a/pkgs/development/libraries/haskell/hindent/default.nix b/pkgs/development/libraries/haskell/hindent/default.nix new file mode 100644 index 00000000000..cef49d0b2fa --- /dev/null +++ b/pkgs/development/libraries/haskell/hindent/default.nix @@ -0,0 +1,17 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, dataDefault, haskellSrcExts, mtl, text }: + +cabal.mkDerivation (self: { + pname = "hindent"; + version = "2.1"; + sha256 = "0gvrh26d1d6d1fy4qfpwrghdrlvk82mkya8vaz0xnrs89p9gr9rz"; + isLibrary = true; + isExecutable = true; + buildDepends = [ dataDefault haskellSrcExts mtl text ]; + meta = { + description = "Extensible Haskell pretty printer"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 15f6ed71007..cb235361783 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -1188,6 +1188,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in hi = callPackage ../development/libraries/haskell/hi {}; + hindent = callPackage ../development/libraries/haskell/hindent {}; + hint = callPackage ../development/libraries/haskell/hint {}; hit = callPackage ../development/libraries/haskell/hit {}; From d812281674d6852a61e9aebc24787ce3213a2c95 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Tue, 2 Sep 2014 17:57:09 +0200 Subject: [PATCH 181/789] zile: update from 2.4.9 to 2.4.11, adpot it and set platforms to linux --- pkgs/applications/editors/zile/default.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/editors/zile/default.nix b/pkgs/applications/editors/zile/default.nix index 32d30cd4745..48839246600 100644 --- a/pkgs/applications/editors/zile/default.nix +++ b/pkgs/applications/editors/zile/default.nix @@ -1,14 +1,14 @@ -{ fetchurl, stdenv, ncurses, boehmgc, perl, help2man }: +{ fetchurl, stdenv, pkgconfig, ncurses, boehmgc, perl, help2man }: stdenv.mkDerivation rec { - name = "zile-2.4.9"; + name = "zile-2.4.11"; src = fetchurl { url = "mirror://gnu/zile/${name}.tar.gz"; - sha256 = "0j801c28ypm924rw3lqyb6khxyslg6ycrv16wmmwcam0mk3mj6f7"; + sha256 = "1k593y1xzvlj52q0gyhcx2lllws4sg84b8r9pcginjb1vjypplhz"; }; - buildInputs = [ ncurses boehmgc ]; + buildInputs = [ pkgconfig ncurses boehmgc ]; nativeBuildInputs = [ help2man perl ]; # `help2man' wants to run Zile, which fails when cross-compiling. @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { # XXX: Work around cross-compilation-unfriendly `gl_FUNC_FSTATAT' macro. preConfigure = "export gl_cv_func_fstatat_zero_flag=yes"; - meta = { + meta = with stdenv.lib; { description = "Lightweight Emacs clone"; longDescription = '' @@ -45,8 +45,10 @@ stdenv.mkDerivation rec { homepage = http://www.gnu.org/software/zile/; - license = stdenv.lib.licenses.gpl3Plus; + license = licenses.gpl3Plus; - maintainers = [ ]; + maintainers = with maintainers; [ pSub ]; + + platforms = platforms.linux; }; } From 36614ff3e290a9330dd8e29bdc6cc38ede1e7001 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 31 Aug 2014 09:18:13 -0700 Subject: [PATCH 182/789] Revert "Revert "Merge pull request #2449 from wkennington/master.grub"" This reverts commit 94205f5f21c4d9942bb4205c06229438051b6853. Conflicts: nixos/modules/system/boot/loader/grub/install-grub.pl --- .../installer/tools/nixos-generate-config.pl | 21 +++ nixos/modules/installer/tools/tools.nix | 1 + nixos/modules/installer/virtualbox-demo.nix | 3 + .../modules/system/boot/loader/grub/grub.nix | 37 +++-- .../system/boot/loader/grub/install-grub.pl | 135 +++++++++++++++--- nixos/modules/tasks/filesystems/zfs.nix | 6 +- nixos/release-combined.nix | 4 + nixos/release.nix | 2 +- nixos/tests/installer.nix | 13 +- pkgs/tools/misc/grub/2.0x.nix | 60 ++++---- pkgs/top-level/all-packages.nix | 6 +- 11 files changed, 223 insertions(+), 65 deletions(-) diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index 66a8152a3a6..73dd87cef5c 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -20,6 +20,13 @@ sub uniq { return @res; } +sub runCommand { + my ($cmd) = @_; + open FILE, "$cmd 2>/dev/null |" or die "Failed to execute: $cmd\n"; + my @ret = ; + close FILE; + return ($?, @ret); +} # Process the command line. my $outDir = "/etc/nixos"; @@ -337,6 +344,20 @@ EOF } } + # Is this a btrfs filesystem? + if ($fsType eq "btrfs") { + my ($status, @info) = runCommand("btrfs subvol show $rootDir$mountPoint"); + if ($status != 0) { + die "Failed to retreive subvolume info for $mountPoint"; + } + my @subvols = join("", @info) =~ m/Name:[ \t\n]*([^ \t\n]*)/; + if ($#subvols > 0) { + die "Btrfs subvol name for $mountPoint listed multiple times in mount\n" + } elsif ($#subvols == 0) { + push @extraOptions, "subvol=$subvols[0]"; + } + } + # Emit the filesystem. $fileSystems .= <df or + mount. Note, zfs zpools / datasets are ignored + and will always be mounted using their labels. + ''; + }; + + zfsSupport = mkOption { + default = false; + type = types.bool; + description = '' + Whether grub should be build against libzfs. ''; }; @@ -260,6 +276,9 @@ in ${pkgs.coreutils}/bin/cp -pf "${v}" "/boot/${n}" '') config.boot.loader.grub.extraFiles); + assertions = [{ assertion = !cfg.zfsSupport || cfg.version == 2; + message = "Only grub version 2 provides zfs support";}]; + }) ]; diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index b4900358a5d..7ced51f57e1 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -1,5 +1,6 @@ use strict; use warnings; +use Class::Struct; use XML::LibXML; use File::Basename; use File::Path; @@ -27,6 +28,14 @@ sub writeFile { close FILE or die; } +sub runCommand { + my ($cmd) = @_; + open FILE, "$cmd 2>/dev/null |" or die "Failed to execute: $cmd\n"; + my @ret = ; + close FILE; + return ($?, @ret); +} + my $grub = get("grub"); my $grubVersion = int(get("version")); my $extraConfig = get("extraConfig"); @@ -39,7 +48,7 @@ my $configurationLimit = int(get("configurationLimit")); my $copyKernels = get("copyKernels") eq "true"; my $timeout = int(get("timeout")); my $defaultEntry = int(get("default")); -my $explicitBootRoot = get("explicitBootRoot"); +my $fsIdentifier = get("fsIdentifier"); $ENV{'PATH'} = get("path"); die "unsupported GRUB version\n" if $grubVersion != 1 && $grubVersion != 2; @@ -48,22 +57,108 @@ print STDERR "updating GRUB $grubVersion menu...\n"; mkpath("/boot/grub", 0, 0700); - # Discover whether /boot is on the same filesystem as / and # /nix/store. If not, then all kernels and initrds must be copied to -# /boot, and all paths in the GRUB config file must be relative to the -# root of the /boot filesystem. `$bootRoot' is the path to be -# prepended to paths under /boot. -my $bootRoot = "/boot"; -if (stat("/")->dev != stat("/boot")->dev) { - $bootRoot = ""; - $copyKernels = 1; -} elsif (stat("/boot")->dev != stat("/nix/store")->dev) { +# /boot. +if (stat("/boot")->dev != stat("/nix/store")->dev) { $copyKernels = 1; } -if ($explicitBootRoot ne "") { - $bootRoot = $explicitBootRoot; +# Discover information about the location of /boot +struct(Fs => { + device => '$', + type => '$', + mount => '$', +}); +sub GetFs { + my ($dir) = @_; + my ($status, @dfOut) = runCommand("df -T $dir"); + if ($status != 0 || $#dfOut != 1) { + die "Failed to retrieve output about $dir from `df`"; + } + my @boot = split(/[ \n\t]+/, $dfOut[1]); + return Fs->new(device => $boot[0], type => $boot[1], mount => $boot[6]); +} +struct (Grub => { + path => '$', + search => '$', +}); +my $driveid = 1; +sub GrubFs { + my ($dir) = @_; + my $fs = GetFs($dir); + my $path = "/" . substr($dir, length($fs->mount)); + my $search = ""; + + if ($grubVersion > 1) { + # ZFS is completely separate logic as zpools are always identified by a label + # or custom UUID + if ($fs->type eq 'zfs') { + my $sid = index($fs->device, '/'); + + if ($sid < 0) { + $search = '--label ' . $fs->device; + $path = '/@' . $path; + } else { + $search = '--label ' . substr($fs->device, 0, $sid); + $path = '/' . substr($fs->device, $sid) . '/@' . $path; + } + } else { + my %types = ('uuid' => '--fs-uuid', 'label' => '--label'); + + if ($fsIdentifier eq 'provided') { + # If the provided dev is identifying the partition using a label or uuid, + # we should get the label / uuid and do a proper search + my @matches = $fs->device =~ m/\/dev\/disk\/by-(label|uuid)\/(.*)/; + if ($#matches > 1) { + die "Too many matched devices" + } elsif ($#matches == 1) { + $search = "$types{$matches[0]} $matches[1]" + } + } else { + # Determine the identifying type + $search = $types{$fsIdentifier} . ' '; + + # Based on the type pull in the identifier from the system + my ($status, @devInfo) = runCommand("blkid -o export @{[$fs->device]}"); + if ($status != 0) { + die "Failed to get blkid info for @{[$fs->device]}"; + } + my @matches = join("", @devInfo) =~ m/@{[uc $fsIdentifier]}=([^\n]*)/; + if ($#matches != 0) { + die "Couldn't find a $types{$fsIdentifier} for @{[$fs->device]}\n" + } + $search .= $matches[0]; + } + + # BTRFS is a special case in that we need to fix the referrenced path based on subvolumes + if ($fs->type eq 'btrfs') { + my ($status, @info) = runCommand("btrfs subvol show @{[$fs->mount]}"); + if ($status != 0) { + die "Failed to retreive subvolume info for @{[$fs->mount]}"; + } + my @subvols = join("", @info) =~ m/Name:[ \t\n]*([^ \t\n]*)/; + if ($#subvols > 0) { + die "Btrfs subvol name for @{[$fs->device]} listed multiple times in mount\n" + } elsif ($#subvols == 0) { + $path = "/$subvols[0]$path"; + } + } + } + if (not $search eq "") { + $search = "search --set=drive$driveid " . $search; + $path = "(\$drive$driveid)$path"; + $driveid += 1; + } + } + return Grub->new(path => $path, search => $search); +} +my $grubBoot = GrubFs("/boot"); +my $grubStore = GrubFs("/nix"); + +# We don't need to copy if we can read the kernels directly +if ($grubStore->search ne "") { + $copyKernels = 0; } # Generate the header. @@ -76,12 +171,14 @@ if ($grubVersion == 1) { "; if ($splashImage) { copy $splashImage, "/boot/background.xpm.gz" or die "cannot copy $splashImage to /boot\n"; - $conf .= "splashimage $bootRoot/background.xpm.gz\n"; + $conf .= "splashimage " . $grubBoot->path . "/background.xpm.gz\n"; } } else { $conf .= " + " . $grubBoot->search . " + " . $grubStore->search . " if [ -s \$prefix/grubenv ]; then load_env fi @@ -102,7 +199,7 @@ else { set timeout=$timeout fi - if loadfont $bootRoot/grub/fonts/unicode.pf2; then + if loadfont " . $grubBoot->path . "/grub/fonts/unicode.pf2; then set gfxmode=640x480 insmod gfxterm insmod vbe @@ -116,7 +213,7 @@ else { copy $splashImage, "/boot/background.png" or die "cannot copy $splashImage to /boot\n"; $conf .= " insmod png - if background_image $bootRoot/background.png; then + if background_image " . $grubBoot->path . "/background.png; then set color_normal=white/black set color_highlight=black/white else @@ -138,7 +235,7 @@ mkpath("/boot/kernels", 0, 0755) if $copyKernels; sub copyToKernelsDir { my ($path) = @_; - return $path unless $copyKernels; + return $grubStore->path . substr($path, length("/nix")) unless $copyKernels; $path =~ /\/nix\/store\/(.*)/ or die; my $name = $1; $name =~ s/\//-/g; my $dst = "/boot/kernels/$name"; @@ -151,7 +248,7 @@ sub copyToKernelsDir { rename $tmp, $dst or die "cannot rename $tmp to $dst\n"; } $copied{$dst} = 1; - return "$bootRoot/kernels/$name"; + return $grubBoot->path . "/kernels/$name"; } sub addEntry { @@ -178,6 +275,8 @@ sub addEntry { $conf .= " " . ($xen ? "module" : "initrd") . " $initrd\n\n"; } else { $conf .= "menuentry \"$name\" {\n"; + $conf .= $grubBoot->search . "\n"; + $conf .= $grubStore->search . "\n"; $conf .= " $extraPerEntryConfig\n" if $extraPerEntryConfig; $conf .= " multiboot $xen $xenParams\n" if $xen; $conf .= " " . ($xen ? "module" : "linux") . " $kernel $kernelParams\n"; @@ -195,7 +294,7 @@ addEntry("NixOS - Default", $defaultConfig); $conf .= "$extraEntries\n" unless $extraEntriesBeforeNixOS; # extraEntries could refer to @bootRoot@, which we have to substitute -$conf =~ s/\@bootRoot\@/$bootRoot/g; +$conf =~ s/\@bootRoot\@/$grubBoot->path/g; # Emit submenus for all system profiles. sub addProfile { diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix index d7deb44c407..1c4bbc16b49 100644 --- a/nixos/modules/tasks/filesystems/zfs.nix +++ b/nixos/modules/tasks/filesystems/zfs.nix @@ -133,7 +133,7 @@ in }; boot.initrd = mkIf inInitrd { - kernelModules = [ "spl" "zfs" ] ; + kernelModules = [ "spl" "zfs" ]; extraUtilsCommands = '' cp -v ${zfsPkg}/sbin/zfs $out/bin @@ -148,6 +148,10 @@ in ''; }; + boot.loader.grub = mkIf inInitrd { + zfsSupport = true; + }; + systemd.services."zpool-import" = { description = "Import zpools"; after = [ "systemd-udev-settle.service" ]; diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index dae3b9210a8..23348e1d089 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -52,6 +52,10 @@ in rec { (all nixos.tests.installer.lvm) (all nixos.tests.installer.separateBoot) (all nixos.tests.installer.simple) + (all nixos.tests.installer.simpleLabels) + (all nixos.tests.installer.simpleProvided) + (all nixos.tests.installer.btrfsSimple) + (all nixos.tests.installer.btrfsSubvols) (all nixos.tests.ipv6) (all nixos.tests.kde4) (all nixos.tests.login) diff --git a/nixos/release.nix b/nixos/release.nix index e2b93640f91..f78ecb4383d 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -231,7 +231,7 @@ in rec { tests.installer.simpleLabels = forAllSystems (system: (import tests/installer.nix { inherit system; }).simpleLabels.test); tests.installer.simpleProvided = forAllSystems (system: (import tests/installer.nix { inherit system; }).simpleProvided.test); tests.installer.btrfsSimple = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSimple.test); - #tests.installer.btrfsSubvols = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSubvols.test); + tests.installer.btrfsSubvols = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSubvols.test); tests.influxdb = callTest tests/influxdb.nix {}; tests.ipv6 = callTest tests/ipv6.nix {}; tests.jenkins = callTest tests/jenkins.nix {}; diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 6ee52fd63d8..154f3323d29 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -35,8 +35,8 @@ let # The configuration to install. - makeConfig = { testChannel, useEFI, grubVersion, grubDevice }: pkgs.writeText "configuration.nix" - '' + makeConfig = { testChannel, useEFI, grubVersion, grubDevice, grubIdentifier }: + pkgs.writeText "configuration.nix" '' { config, pkgs, modulesPath, ... }: { imports = @@ -54,6 +54,7 @@ let ''} boot.loader.grub.device = "${grubDevice}"; boot.loader.grub.extraConfig = "serial; terminal_output.serial"; + boot.loader.grub.fsIdentifier = "${grubIdentifier}"; ''} environment.systemPackages = [ ${optionalString testChannel "pkgs.rlwrap"} ]; @@ -93,7 +94,7 @@ let # disk, and then reboot from the hard disk. It's parameterized with # a test script fragment `createPartitions', which must create # partitions and filesystems. - testScriptFun = { createPartitions, testChannel, useEFI, grubVersion, grubDevice }: + testScriptFun = { createPartitions, testChannel, useEFI, grubVersion, grubDevice, grubIdentifier }: let # FIXME: OVMF doesn't boot from virtio http://www.mail-archive.com/edk2-devel@lists.sourceforge.net/msg01501.html iface = if useEFI || grubVersion == 1 then "scsi" else "virtio"; @@ -161,7 +162,7 @@ let $machine->succeed("cat /mnt/etc/nixos/hardware-configuration.nix >&2"); $machine->copyFileFromHost( - "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice; } }", + "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice grubIdentifier; } }", "/mnt/etc/nixos/configuration.nix"); # Perform the installation. @@ -216,13 +217,13 @@ let makeInstallerTest = name: - { createPartitions, testChannel ? false, useEFI ? false, grubVersion ? 2, grubDevice ? "/dev/vda" }: + { createPartitions, testChannel ? false, useEFI ? false, grubVersion ? 2, grubDevice ? "/dev/vda", grubIdentifier ? "uuid" }: makeTest { inherit iso; name = "installer-" + name; nodes = if testChannel then { inherit webserver; } else { }; testScript = testScriptFun { - inherit createPartitions testChannel useEFI grubVersion grubDevice; + inherit createPartitions testChannel useEFI grubVersion grubDevice grubIdentifier; }; }; diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix index b1877bdcf98..e3c07af759c 100644 --- a/pkgs/tools/misc/grub/2.0x.nix +++ b/pkgs/tools/misc/grub/2.0x.nix @@ -1,30 +1,45 @@ -{ fetchurl, stdenv, flex, bison, gettext, ncurses, libusb, freetype, qemu -, devicemapper, EFIsupport ? false }: +{ stdenv, fetchurl, autogen, flex, bison, python, autoconf, automake +, gettext, ncurses, libusb, freetype, qemu, devicemapper +, linuxPackages ? null +, efiSupport ? false +, zfsSupport ? false +}: +with stdenv.lib; let + efiSystems = { + "i686-linux".target = "i386"; + "x86_64-linux".target = "x86_64"; + }; - prefix = "grub${if EFIsupport then "-efi" else ""}"; + canEfi = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) efiSystems); - version = "2.00"; + prefix = "grub${if efiSupport then "-efi" else ""}"; + + version = "2.02-beta2"; unifont_bdf = fetchurl { url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz"; sha256 = "0s0qfff6n6282q28nwwblp5x295zd6n71kl43xj40vgvdqxv0fxx"; }; +in ( -in +assert efiSupport -> canEfi; +assert zfsSupport -> linuxPackages != null && linuxPackages.zfs != null; stdenv.mkDerivation rec { name = "${prefix}-${version}"; src = fetchurl { - url = "mirror://gnu/grub/grub-${version}.tar.xz"; - sha256 = "0n64hpmsccvicagvr0c6v0kgp2yw0kgnd3jvsyd26cnwgs7c6kkq"; + name = "grub-2.02-beta2.tar.xz"; + url = "http://alpha.gnu.org/gnu/grub/grub-2.02~beta2.tar.xz"; + sha256 = "13a13fhc0wf473dn73zhga15mjvkg6vqp4h25dxg4n7am2r05izn"; }; - nativeBuildInputs = [ flex bison ]; + nativeBuildInputs = [ autogen flex bison python autoconf automake ]; buildInputs = [ ncurses libusb freetype gettext devicemapper ] - ++ stdenv.lib.optional doCheck qemu; + ++ optional doCheck qemu + ++ optional zfsSupport linuxPackages.zfs; preConfigure = '' for i in "tests/util/"*.in @@ -43,27 +58,19 @@ stdenv.mkDerivation rec { # See . sed -i "tests/util/grub-shell.in" \ -e's/qemu-system-i386/qemu-system-x86_64 -nodefaults/g' - - # Fix for building on Glibc 2.16. Won't be needed once the - # gnulib in grub is updated. - sed -i '/gets is a security hole/d' grub-core/gnulib/stdio.in.h ''; prePatch = - '' gunzip < "${unifont_bdf}" > "unifont.bdf" + '' sh autogen.sh + gunzip < "${unifont_bdf}" > "unifont.bdf" sed -i "configure" \ -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g" ''; patches = [ ./fix-bash-completion.patch ]; - configureFlags = - let arch = if stdenv.system == "i686-linux" then "i386" - else if stdenv.system == "x86_64-linux" then "x86_64" - else throw "unsupported EFI firmware architecture"; - in - stdenv.lib.optionals EFIsupport - [ "--with-platform=efi" "--target=${arch}" "--program-prefix=" ]; + configureFlags = optional zfsSupport "--enable-libzfs" + ++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystems.${stdenv.system}.target}" "--program-prefix=" ]; doCheck = false; enableParallelBuilding = true; @@ -72,7 +79,7 @@ stdenv.mkDerivation rec { paxmark pms $out/sbin/grub-{probe,bios-setup} ''; - meta = { + meta = with stdenv.lib; { description = "GNU GRUB, the Grand Unified Boot Loader (2.x beta)"; longDescription = @@ -89,11 +96,8 @@ stdenv.mkDerivation rec { homepage = http://www.gnu.org/software/grub/; - license = stdenv.lib.licenses.gpl3Plus; + license = licenses.gpl3Plus; - platforms = if EFIsupport then - [ "i686-linux" "x86_64-linux" ] - else - stdenv.lib.platforms.gnu; + platforms = platforms.gnu; }; -} +}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 05c9d695bc2..6e5caa3af9e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1235,9 +1235,11 @@ let buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true; }; - grub2 = callPackage ../tools/misc/grub/2.0x.nix { libusb = libusb1; flex = flex_2_5_35; }; + grub2 = callPackage ../tools/misc/grub/2.0x.nix { }; - grub2_efi = grub2.override { EFIsupport = true; }; + grub2_efi = grub2.override { efiSupport = true; }; + + grub2_zfs = grub2.override { zfsSupport = true; }; gssdp = callPackage ../development/libraries/gssdp { inherit (gnome) libsoup; From 0b66483c9a64ccda86828edadda29d5ccd532b9f Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 31 Aug 2014 09:18:51 -0700 Subject: [PATCH 183/789] nixos/install-grub: Store path should be /nix/store not /nix --- nixos/modules/system/boot/loader/grub/install-grub.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index 7ced51f57e1..9ef1a697704 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -154,7 +154,7 @@ sub GrubFs { return Grub->new(path => $path, search => $search); } my $grubBoot = GrubFs("/boot"); -my $grubStore = GrubFs("/nix"); +my $grubStore = GrubFs("/nix/store"); # We don't need to copy if we can read the kernels directly if ($grubStore->search ne "") { From 7fae42352235b9315021005928fea9a058c516e8 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 30 Aug 2014 15:33:44 -0700 Subject: [PATCH 184/789] nixos/generate-config: Support detecting nested subvolumes --- .../installer/tools/nixos-generate-config.pl | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index 73dd87cef5c..ab5b2954f6b 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -346,15 +346,25 @@ EOF # Is this a btrfs filesystem? if ($fsType eq "btrfs") { - my ($status, @info) = runCommand("btrfs subvol show $rootDir$mountPoint"); + my ($status, @id_info) = runCommand("btrfs subvol show $rootDir$mountPoint"); if ($status != 0) { - die "Failed to retreive subvolume info for $mountPoint"; + die "Failed to retreive subvolume info for $mountPoint\n"; } - my @subvols = join("", @info) =~ m/Name:[ \t\n]*([^ \t\n]*)/; - if ($#subvols > 0) { + my @ids = join("", @id_info) =~ m/Object ID:[ \t\n]*([^ \t\n]*)/; + if ($#ids > 0) { die "Btrfs subvol name for $mountPoint listed multiple times in mount\n" - } elsif ($#subvols == 0) { - push @extraOptions, "subvol=$subvols[0]"; + } elsif ($#ids == 0) { + my ($status, @path_info) = runCommand("btrfs subvol list $rootDir$mountPoint"); + if ($status != 0) { + die "Failed to find $mountPoint subvolume id from btrfs\n"; + } + my @paths = join("", @path_info) =~ m/ID $ids[0] [^\n]* path ([^\n]*)/; + if ($#paths > 0) { + die "Btrfs returned multiple paths for a single subvolume id, mountpoint $mountPoint\n"; + } elsif ($#paths != 0) { + die "Btrfs did not return a path for the subvolume at $mountPoint\n"; + } + push @extraOptions, "subvol=$paths[0]"; } } From 01ab1d57a3e02d388a8e1903031b273b47c6bb94 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 30 Aug 2014 15:44:13 -0700 Subject: [PATCH 185/789] nixos/install-grub: Detect nested btrfs subvolumes --- .../system/boot/loader/grub/install-grub.pl | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index 9ef1a697704..f1807f53ff1 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -133,15 +133,25 @@ sub GrubFs { # BTRFS is a special case in that we need to fix the referrenced path based on subvolumes if ($fs->type eq 'btrfs') { - my ($status, @info) = runCommand("btrfs subvol show @{[$fs->mount]}"); + my ($status, @id_info) = runCommand("btrfs subvol show @{[$fs->mount]}"); if ($status != 0) { - die "Failed to retreive subvolume info for @{[$fs->mount]}"; + die "Failed to retreive subvolume info for @{[$fs->mount]}\n"; } - my @subvols = join("", @info) =~ m/Name:[ \t\n]*([^ \t\n]*)/; - if ($#subvols > 0) { + my @ids = join("", @id_info) =~ m/Object ID:[ \t\n]*([^ \t\n]*)/; + if ($#ids > 0) { die "Btrfs subvol name for @{[$fs->device]} listed multiple times in mount\n" - } elsif ($#subvols == 0) { - $path = "/$subvols[0]$path"; + } elsif ($#ids == 0) { + my ($status, @path_info) = runCommand("btrfs subvol list @{[$fs->mount]}"); + if ($status != 0) { + die "Failed to find @{[$fs->mount]} subvolume id from btrfs\n"; + } + my @paths = join("", @path_info) =~ m/ID $ids[0] [^\n]* path ([^\n]*)/; + if ($#paths > 0) { + die "Btrfs returned multiple paths for a single subvolume id, mountpoint @{[$fs->mount]}\n"; + } elsif ($#paths != 0) { + die "Btrfs did not return a path for the subvolume at @{[$fs->mount]}\n"; + } + $path = "/$paths[0]$path"; } } } From 39442393627569a4fd644b3d23658178a8245218 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 29 Aug 2014 16:37:28 -0700 Subject: [PATCH 186/789] nixos/tests-installer: Add a test for btrfs default volumes and bind mounts --- nixos/release-combined.nix | 1 + nixos/release.nix | 1 + nixos/tests/installer.nix | 24 ++++++++++++++++++++++++ 3 files changed, 26 insertions(+) diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 23348e1d089..0c72bae35bb 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -56,6 +56,7 @@ in rec { (all nixos.tests.installer.simpleProvided) (all nixos.tests.installer.btrfsSimple) (all nixos.tests.installer.btrfsSubvols) + (all nixos.tests.installer.btrfsSubvolDefault) (all nixos.tests.ipv6) (all nixos.tests.kde4) (all nixos.tests.login) diff --git a/nixos/release.nix b/nixos/release.nix index f78ecb4383d..d4e1a3737e3 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -232,6 +232,7 @@ in rec { tests.installer.simpleProvided = forAllSystems (system: (import tests/installer.nix { inherit system; }).simpleProvided.test); tests.installer.btrfsSimple = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSimple.test); tests.installer.btrfsSubvols = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSubvols.test); + tests.installer.btrfsSubvolDefault = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSubvolDefault.test); tests.influxdb = callTest tests/influxdb.nix {}; tests.ipv6 = callTest tests/ipv6.nix {}; tests.jenkins = callTest tests/jenkins.nix {}; diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 154f3323d29..7765b7945c7 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -469,4 +469,28 @@ in { ); ''; }; + + # Test to see if we can detect default and aux subvolumes correctly + btrfsSubvolDefault = makeInstallerTest "btrfsSubvolDefault" { + createPartitions = '' + $machine->succeed( + "sgdisk -Z /dev/vda", + "sgdisk -n 1:0:+1M -n 2:0:+1G -N 3 -t 1:ef02 -t 2:8200 -t 3:8300 -c 3:root /dev/vda", + "mkswap /dev/vda2 -L swap", + "swapon -L swap", + "mkfs.btrfs -L root /dev/vda3", + "btrfs device scan", + "mount LABEL=root /mnt", + "btrfs subvol create /mnt/badpath", + "btrfs subvol create /mnt/badpath/boot", + "btrfs subvol create /mnt/nixos", + "btrfs subvol set-default \$(btrfs subvol list /mnt | grep 'nixos' | awk '{print \$2}') /mnt", + "umount /mnt", + "mount -o defaults LABEL=root /mnt", + "mkdir -p /mnt/badpath/boot", # Help ensure the detection mechanism is actually looking up subvolumes + "mkdir /mnt/boot", + "mount -o defaults,subvol=badpath/boot LABEL=root /mnt/boot", + ); + ''; + }; } From 87b6232f3a4c9903a432fffd8bc627f2c445a10d Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 30 Aug 2014 16:30:56 -0700 Subject: [PATCH 187/789] nixos/generate-config: Don't interpret btrfs subvols as bind mounts --- .../installer/tools/nixos-generate-config.pl | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index ab5b2954f6b..c6f499b8250 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -22,7 +22,7 @@ sub uniq { sub runCommand { my ($cmd) = @_; - open FILE, "$cmd 2>/dev/null |" or die "Failed to execute: $cmd\n"; + open FILE, "$cmd 2>&1 |" or die "Failed to execute: $cmd\n"; my @ret = ; close FILE; return ($?, @ret); @@ -311,10 +311,13 @@ foreach my $fs (read_file("/proc/self/mountinfo")) { # Maybe this is a bind-mount of a filesystem we saw earlier? if (defined $fsByDev{$fields[2]}) { - my $path = $fields[3]; $path = "" if $path eq "/"; - my $base = $fsByDev{$fields[2]}; - $base = "" if $base eq "/"; - $fileSystems .= < Date: Sat, 30 Aug 2014 15:48:54 -0700 Subject: [PATCH 188/789] nixos/installer-test: Use nested subvolumes for root to test detection --- nixos/tests/installer.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 7765b7945c7..66ab2567e19 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -462,8 +462,9 @@ in { "mount LABEL=root /mnt", "btrfs subvol create /mnt/boot", "btrfs subvol create /mnt/nixos", + "btrfs subvol create /mnt/nixos/default", "umount /mnt", - "mount -o defaults,subvol=nixos LABEL=root /mnt", + "mount -o defaults,subvol=nixos/default LABEL=root /mnt", "mkdir /mnt/boot", "mount -o defaults,subvol=boot LABEL=root /mnt/boot", ); From 61908bdd80a40b8231e4106e38f8b38d4e4a4c09 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 31 Aug 2014 09:28:45 -0700 Subject: [PATCH 189/789] nixos/install-grub: Always copy kernels for different devices --- nixos/modules/system/boot/loader/grub/install-grub.pl | 5 ----- 1 file changed, 5 deletions(-) diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index f1807f53ff1..05fc9900609 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -166,11 +166,6 @@ sub GrubFs { my $grubBoot = GrubFs("/boot"); my $grubStore = GrubFs("/nix/store"); -# We don't need to copy if we can read the kernels directly -if ($grubStore->search ne "") { - $copyKernels = 0; -} - # Generate the header. my $conf .= "# Automatically generated. DO NOT EDIT THIS FILE!\n"; From 94679376395b32759c19b2145b684099b6f67471 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 31 Aug 2014 17:15:39 -0700 Subject: [PATCH 190/789] nixos/install-grub: Only check for /nix to be the mountPoint for the store --- nixos/modules/system/boot/loader/grub/install-grub.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index 05fc9900609..570cd2239b0 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -164,7 +164,8 @@ sub GrubFs { return Grub->new(path => $path, search => $search); } my $grubBoot = GrubFs("/boot"); -my $grubStore = GrubFs("/nix/store"); +# FIXME: Should be /nix/store, but this fails in the installer +my $grubStore = GrubFs("/nix"); # Generate the header. my $conf .= "# Automatically generated. DO NOT EDIT THIS FILE!\n"; From 961e9867b3e502e66001280c2c7c5f3b08d6e469 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 1 Sep 2014 00:01:41 -0700 Subject: [PATCH 191/789] nixos/generate-config: Only add store search path when kernels are not copied --- nixos/modules/system/boot/loader/grub/install-grub.pl | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index 570cd2239b0..4e196d67e93 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -182,9 +182,12 @@ if ($grubVersion == 1) { } else { + if ($copyKernels == 0) { + $conf .= " + " . $grubStore->search; + } $conf .= " " . $grubBoot->search . " - " . $grubStore->search . " if [ -s \$prefix/grubenv ]; then load_env fi @@ -282,7 +285,9 @@ sub addEntry { } else { $conf .= "menuentry \"$name\" {\n"; $conf .= $grubBoot->search . "\n"; - $conf .= $grubStore->search . "\n"; + if ($copyKernels == 0) { + $conf .= $grubStore->search . "\n"; + } $conf .= " $extraPerEntryConfig\n" if $extraPerEntryConfig; $conf .= " multiboot $xen $xenParams\n" if $xen; $conf .= " " . ($xen ? "module" : "linux") . " $kernel $kernelParams\n"; From ac502d28ff4fabd8fb97c45c209e67c0d35d184a Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 23 Aug 2014 14:05:31 -0700 Subject: [PATCH 192/789] tinc_pre: Add derivation The tinc developer has made significant developments to the next version of tinc including many protocol security fixes. This patch adds the prerelease of the next major tinc release. --- pkgs/tools/networking/tinc/pre.nix | 33 ++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 35 insertions(+) create mode 100644 pkgs/tools/networking/tinc/pre.nix diff --git a/pkgs/tools/networking/tinc/pre.nix b/pkgs/tools/networking/tinc/pre.nix new file mode 100644 index 00000000000..b2a7ca53728 --- /dev/null +++ b/pkgs/tools/networking/tinc/pre.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchgit, autoreconfHook, texinfo, ncurses, readline, zlib, lzo, openssl }: + +stdenv.mkDerivation rec { + version = "1.1pre78bf82c"; + name = "tinc-${version}"; + + src = fetchgit { + url = "git://tinc-vpn.org/tinc"; + rev = "78bf82cf332327889f0f61388b73053850d8e59b"; + sha256 = "0azjy78qrzpk16b5jm08kx01ln2j9q0q69g86ah60fms525w1xjk"; + }; + + buildInputs = [ autoreconfHook texinfo ncurses readline zlib lzo openssl ]; + + configureFlags = [ + "--sysconfdir=/etc" + "--localstatedir=/var" + ]; + + meta = with stdenv.lib; { + description = "VPN daemon with full mesh routing"; + longDescription = '' + tinc is a Virtual Private Network (VPN) daemon that uses tunnelling and + encryption to create a secure private network between hosts on the + Internet. It features full mesh routing, as well as encryption, + authentication, compression and ethernet bridging. + ''; + homepage="http://www.tinc-vpn.org/"; + license = licenses.gpl2Plus; + platforms = platforms.unix; + maintainers = with maintainers; [ wkennington ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 05c9d695bc2..eee5ed3d9b0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2260,6 +2260,8 @@ let tinc = callPackage ../tools/networking/tinc { }; + tinc_pre = callPackage ../tools/networking/tinc/pre.nix { }; + tiny8086 = callPackage ../applications/virtualization/8086tiny { }; tmpwatch = callPackage ../tools/misc/tmpwatch { }; From d13423c74f93620c1b8810e9818bbb025016d137 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 24 Aug 2014 19:53:13 -0700 Subject: [PATCH 193/789] tinc_pre: Experimental Patches --- pkgs/tools/networking/tinc/pre.nix | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/networking/tinc/pre.nix b/pkgs/tools/networking/tinc/pre.nix index b2a7ca53728..030cb30a150 100644 --- a/pkgs/tools/networking/tinc/pre.nix +++ b/pkgs/tools/networking/tinc/pre.nix @@ -1,13 +1,12 @@ { stdenv, fetchgit, autoreconfHook, texinfo, ncurses, readline, zlib, lzo, openssl }: stdenv.mkDerivation rec { - version = "1.1pre78bf82c"; - name = "tinc-${version}"; + name = "tinc-1.1pre38d7e73"; src = fetchgit { url = "git://tinc-vpn.org/tinc"; - rev = "78bf82cf332327889f0f61388b73053850d8e59b"; - sha256 = "0azjy78qrzpk16b5jm08kx01ln2j9q0q69g86ah60fms525w1xjk"; + rev = "38d7e730e619a8b86dfbf68d77773564595f12a1"; + sha256 = "0xac1jm6x9lkybd6sz8lfcdrb8h69kh1ckg35ag1rssr45hxikbz"; }; buildInputs = [ autoreconfHook texinfo ncurses readline zlib lzo openssl ]; From af4c369d0a21e77afb1bdb0993e67e027d29235a Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 20:17:55 +0400 Subject: [PATCH 194/789] Revert "Create wrapper directory outside of /bin/ for FHS chroots to be closer to FHS" This reverts commit 9deb7f8aae431ed7725cfaa13edf8645d19d91f2. --- pkgs/build-support/setup-hooks/make-wrapper.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/setup-hooks/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh index dd43068be27..95d1a519213 100644 --- a/pkgs/build-support/setup-hooks/make-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-wrapper.sh @@ -97,9 +97,9 @@ filterExisting() { wrapProgram() { local prog="$1" local progBasename=$(basename $prog) - local hiddenDir="$(dirname $prog)/../wrapped-bin/.$progBasename-wrapped-bin" - mkdir -p $hiddenDir - local hidden="$(cd "$hiddenDir"; pwd)/$progBasename" + local hiddenDir=$(dirname $prog)/.$progBasename-wrapped-bin + local hidden=$hiddenDir/$progBasename + mkdir $hiddenDir mv $prog $hidden makeWrapper $hidden $prog "$@" } From 76f4eb5f93451b6300e42f775c4a63adbb7f4986 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 20:45:41 +0400 Subject: [PATCH 195/789] Revert "python-wrapper: fix wrapped argv[0] w/o sed, maybe" This reverts commit a6dd9bd0cb3ef4896c41f70e37bc3a72d36aa569. --- pkgs/build-support/setup-hooks/make-wrapper.sh | 5 +---- pkgs/development/python-modules/generic/wrap.sh | 6 ++++++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/setup-hooks/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh index 95d1a519213..41f2a59246d 100644 --- a/pkgs/build-support/setup-hooks/make-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-wrapper.sh @@ -96,10 +96,7 @@ filterExisting() { # Syntax: wrapProgram wrapProgram() { local prog="$1" - local progBasename=$(basename $prog) - local hiddenDir=$(dirname $prog)/.$progBasename-wrapped-bin - local hidden=$hiddenDir/$progBasename - mkdir $hiddenDir + local hidden="$(dirname "$prog")/.$(basename "$prog")"-wrapped mv $prog $hidden makeWrapper $hidden $prog "$@" } diff --git a/pkgs/development/python-modules/generic/wrap.sh b/pkgs/development/python-modules/generic/wrap.sh index 282aeca9ed1..857f002cace 100644 --- a/pkgs/development/python-modules/generic/wrap.sh +++ b/pkgs/development/python-modules/generic/wrap.sh @@ -26,6 +26,12 @@ wrapPythonProgramsIn() { # dont wrap EGG-INFO scripts since they are called from python if echo "$i" | grep -v EGG-INFO/scripts; then echo "wrapping \`$i'..." + sed -i "$i" -re '1 { + /^#!/!b; :r + /\\$/{N;b r} + /__future__|^ *(#.*)?$/{n;b r} + /^ *[^# ]/i import sys; sys.argv[0] = '"'$(basename "$i")'"' + }' wrapProgram "$i" \ --prefix PYTHONPATH ":" $program_PYTHONPATH \ --prefix PATH ":" $program_PATH From 0ede64bfcb18430f2e5d5b4079a173f809947b0e Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Tue, 2 Sep 2014 21:17:52 +0400 Subject: [PATCH 196/789] Override postFixup for urlwatch so it works somehwo --- pkgs/tools/networking/urlwatch/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/tools/networking/urlwatch/default.nix b/pkgs/tools/networking/urlwatch/default.nix index 4843f07c8f2..1be71942e70 100644 --- a/pkgs/tools/networking/urlwatch/default.nix +++ b/pkgs/tools/networking/urlwatch/default.nix @@ -12,6 +12,10 @@ python3Packages.buildPythonPackage rec { ./convert-to-python3.sh ''; + postFixup = '' + wrapProgram "$out/bin/urlwatch" --prefix "PYTHONPATH" : "$PYTHONPATH" + ''; + meta = { description = "A tool for monitoring webpages for updates"; homepage = https://thp.io/2008/urlwatch/; From 02f5f25b2ddcb8ea5b577e35ac170547716603aa Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Sun, 31 Aug 2014 23:37:43 -0700 Subject: [PATCH 197/789] merge in ewemoa's zipalign fix with my updated build-tools now passes Android tests found at https://github.com/svanderburg/nix-androidenvtests ! --- pkgs/development/mobile/androidenv/build-tools.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/mobile/androidenv/build-tools.nix b/pkgs/development/mobile/androidenv/build-tools.nix index 58bf3549361..215844ea396 100644 --- a/pkgs/development/mobile/androidenv/build-tools.nix +++ b/pkgs/development/mobile/androidenv/build-tools.nix @@ -39,6 +39,13 @@ stdenv.mkDerivation { do patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib:`pwd` $i done + + # These binaries also need zlib in addition to libstdc++ + for i in zipalign + do + patchelf --set-interpreter ${stdenv_32bit.gcc.libc}/lib/ld-linux.so.2 $i + patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib:${zlib_32bit}/lib $i + done # These binaries need to find libstdc++, libgcc_s, and zlib for i in aapt dexdump From 800beea5f96c18fda25ab01e935a31e9f01a4a78 Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Tue, 2 Sep 2014 19:18:30 +0200 Subject: [PATCH 198/789] androidsdk: Bump to version 23.02 and update all its plugins and conversion scripts --- pkgs/development/mobile/androidenv/addon.xml | 621 ++++--- pkgs/development/mobile/androidenv/addons.nix | 4 +- .../mobile/androidenv/androidsdk.nix | 27 +- .../mobile/androidenv/build-tools.nix | 10 +- .../mobile/androidenv/{fetch => fetch.sh} | 5 +- .../mobile/androidenv/generate-addons.xsl | 6 +- .../mobile/androidenv/generate-platforms.sh | 4 +- .../mobile/androidenv/generate-platforms.xsl | 10 +- .../androidenv/generate-sysimages-others.xsl | 21 - .../mobile/androidenv/generate-sysimages.sh | 4 +- .../mobile/androidenv/generate-sysimages.xsl | 10 +- .../mobile/androidenv/platforms-linux.nix | 10 +- .../mobile/androidenv/platforms-macosx.nix | 10 +- .../mobile/androidenv/repository-10.xml | 1562 +++++++++++++++++ .../mobile/androidenv/repository-8.xml | 1277 -------------- .../mobile/androidenv/sys-img-mips.xml | 132 -- .../mobile/androidenv/sys-img-x86.xml | 154 -- .../development/mobile/androidenv/sys-img.xml | 712 ++++++++ .../mobile/androidenv/sysimages.nix | 84 +- 19 files changed, 2675 insertions(+), 1988 deletions(-) rename pkgs/development/mobile/androidenv/{fetch => fetch.sh} (58%) delete mode 100644 pkgs/development/mobile/androidenv/generate-sysimages-others.xsl create mode 100644 pkgs/development/mobile/androidenv/repository-10.xml delete mode 100644 pkgs/development/mobile/androidenv/repository-8.xml delete mode 100644 pkgs/development/mobile/androidenv/sys-img-mips.xml delete mode 100644 pkgs/development/mobile/androidenv/sys-img-x86.xml create mode 100644 pkgs/development/mobile/androidenv/sys-img.xml diff --git a/pkgs/development/mobile/androidenv/addon.xml b/pkgs/development/mobile/androidenv/addon.xml index aee3c847e93..274ae734b6e 100644 --- a/pkgs/development/mobile/androidenv/addon.xml +++ b/pkgs/development/mobile/androidenv/addon.xml @@ -14,167 +14,274 @@ * See the License for the specific language governing permissions and * limitations under the License. --> - + - Terms and Conditions - -This is the Android Software Development Kit License Agreement. + To get started with the Android SDK, you must agree to the following terms and conditions. +This is the Android SDK License Agreement (the "License Agreement"). 1. Introduction - -1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. +1.1 The Android SDK (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and SDK library files and tools , if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. 1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. 1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. +2. Accepting the License Agreement -2. Accepting this License Agreement +2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement. - -2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement. - -2.2 By clicking to accept, you hereby agree to the terms of this License Agreement. +2.2 By clicking to accept and/or using the SDK, you hereby agree to the terms of the License Agreement. 2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. -2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. - +2.4 If you will use the SDK internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. 3. SDK License from Google - -3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform. +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the SDK, personally or internally within your company or organization, solely to develop and distribute applications to run on the Android platform. 3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. -3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. +3.3 You may not use the SDK for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. 3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. -3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement. +3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. 3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. -3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. 3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. - 4. Use of the SDK by You +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. -4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. +4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). -4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). +4.3 You agree that if you use the SDK to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. -4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so. - -4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier. +4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. 4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. -4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. - +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. 5. Your Developer Credentials - 5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. - 6. Privacy and Information - 6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. -6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy. - +6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. 7. Third Party Applications - 7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. 7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. -7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties. +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. +8. Using Google APIs -8. Using Android APIs - - -8.1 Google Data APIs +8.1 Google APIs 8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. 8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. +9. Terminating the License Agreement -9. Terminating this License Agreement +9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below. +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. -9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below. +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. -9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. +9.4 The License Agreement will automatically terminate without notice or other action when Google ceases to provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service. -9.3 Google may at any time, terminate this License Agreement with you if: -(A) you have breached any provision of this License Agreement; or -(B) Google is required to do so by law; or -(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or -(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable. - -9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely. - - -10. DISCLAIMER OF WARRANTIES +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the SDK, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. +10. DISCLAIMERS 10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. -10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. +10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE SDK MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. 10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - 11. LIMITATION OF LIABILITY - 11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. - 12. Indemnification - -12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement. - +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. 13. Changes to the License Agreement - 13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. - 14. General Legal Terms +14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. -14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. -14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. -14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable. - -14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement. +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. 14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. -14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party. +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. -14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. -November 13, 2012 +June 2014. + + + + To get started with the Android SDK Preview, you must agree to the following terms and conditions. +As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk. The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data. + +This is the Android SDK Preview License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview. + +2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity. + +3. Preview License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform. + +3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview. + +3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview. + +4. Use of the Preview by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of: +(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and +(B) Google issues a final release version of the Android SDK. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available. + +14. General Legal Terms + +14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. Terms and Conditions @@ -321,151 +428,6 @@ This is the Google TV Add-on for the Android Software Development Kit License Ag August 15, 2011 - This is an early Sneak Peek of the GDK that is subject to change. Please stay tuned for the full Developer Preview coming soon. - -Terms and Conditions - -This is the Glass Development Kit License Agreement. - -1. Introduction - -1.1 The Glass Development Kit (referred to in this License Agreement as the "GDK" and specifically including the Android system files, packaged APIs, and GDK library files, if and when they are made available) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the GDK. - -1.2 "Glass" means Glass devices and the Glass software stack for use on Glass devices. - - -1.3 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. - -1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. - -2. Accepting this License Agreement - -2.1 In order to use the GDK, you must first agree to this License Agreement. You may not use the GDK if you do not accept this License Agreement. - -2.2 By clicking to accept, you hereby agree to the terms of this License Agreement. - -2.3 You may not use the GDK and may not accept the License Agreement if you are a person barred from receiving the GDK under the laws of the United States or other countries including the country in which you are resident or from which you use the GDK. - -2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the GDK on behalf of your employer or other entity. - -3. GDK License from Google - -3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the GDK solely to develop applications to run on the Glass platform for Glass devices. - -3.2 You agree that Google or third parties own all legal right, title and interest in and to the GDK, including any Intellectual Property Rights that subsist in the GDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. - -3.3 You may not use the GDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the GDK or any part of the GDK; or (b) load any part of the GDK onto a mobile handset or wearable computing device or any other hardware device except a Glass device personal computer, combine any part of the GDK with other software, or distribute any software or device incorporating a part of the GDK. - -3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Glass, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the GDK. - -3.5 Use, reproduction and distribution of components of the GDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement. - -3.6 You agree that the form and nature of the GDK that Google provides may change without prior notice to you and that future versions of the GDK may be incompatible with applications developed on previous versions of the GDK. You agree that Google may stop (permanently or temporarily) providing the GDK (or any features within the GDK) to you or to users generally at Google's sole discretion, without prior notice to you. - -3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. - -3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the GDK. - - -3.9 Your use of any Android system files, packaged APIs, or other components of the GDK which are part of the Android Software Development Kit is subject to the terms of the Android Software Development Kit License Agreement located at http://developer.android.com/sdk/terms.html. These terms are hereby incorporated by reference into this License Agreement. - -4. Use of the GDK by You - -4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the GDK, including any intellectual property rights that subsist in those applications. - -4.2 You agree to use the GDK and write applications only for purposes that are permitted by (a) this License Agreement, (b) the Glass Platform Developer Policies (located at https://developers.google.com/glass/policies, and hereby incorporated into this License Agreement by reference), and (c) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). - -4.3 You agree that if you use the GDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so. - -4.4 You agree that you will not engage in any activity with the GDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google. - -4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Glass and/or applications for Glass, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. - -4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. - - -4.7 The GDK is in development, and your testing and feedback are an important part of the development process. By using the GDK, you acknowledge that implementation of some features are still under development and that you should not rely on the GDK, Glass devices, Glass system software, Google Mirror API, or Glass services having the full functionality of a stable release. - -5. Your Developer Credentials - -5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. - -6. Privacy and Information - - -6.1 In order to continually innovate and improve the GDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the GDK are being used and how they are being used. Before any of this information is collected, the GDK will notify you and seek your consent. If you withhold consent, the information will not be collected. - -6.2 The data collected is examined in the aggregate to improve the GDK and is maintained in accordance with Google's Privacy Policy. - -7. Third Party Applications - -7.1 If you use the GDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. - -7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. - -7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties. - -8. Using Google APIs - -8.1 Google APIs - -8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. - -8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. - -9. Terminating this License Agreement - -9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below. - -9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the GDK and any relevant developer credentials. - -9.3 Google may at any time, terminate this License Agreement with you if: -(A) you have breached any provision of this License Agreement; or -(B) Google is required to do so by law; or -(C) the partner with whom Google offered certain parts of GDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the GDK to you; or -(D) Google decides to no longer provide the GDK or certain parts of the GDK to users in the country in which you are resident or from which you use the service, or the provision of the GDK or certain GDK services to you by Google is, in Google's sole discretion, no longer commercially viable. - -9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely. - -10. DISCLAIMER OF WARRANTIES - -10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE GDK IS AT YOUR SOLE RISK AND THAT THE GDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. - -10.2 YOUR USE OF THE GDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE GDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. - -10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - -11. LIMITATION OF LIABILITY - -11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. - -12. Indemnification - -12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the GDK, (b) any application you develop on the GDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement. - -13. Changes to the License Agreement - -13.1 Google may make changes to the License Agreement as it distributes new versions of the GDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the GDK is made available. - -14. General Legal Terms - -14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the GDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the GDK. - -14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. - -14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable. - -14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement. - -14.5 EXPORT RESTRICTIONS. THE GDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE GDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. - -14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party. - -14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. - -November 19, 2013 - - @@ -479,7 +441,7 @@ November 19, 2013 http://developer.android.com/ - + 34908058 1f92abf3a76be66ae8032257fc7620acbd2b2e3a google_apis-3-r03.zip @@ -506,7 +468,7 @@ November 19, 2013 http://developer.android.com/ - + 42435735 9b6e86d8568558de4d606a7debc4f6049608dbd0 google_apis-4_r02.zip @@ -534,7 +496,7 @@ November 19, 2013 - + 49123776 46eaeb56b645ee7ffa24ede8fa17f3df70db0503 google_apis-5_r01.zip @@ -562,7 +524,7 @@ November 19, 2013 - + 53382941 5ff545d96e031e09580a6cf55713015c7d4936b2 google_apis-6_r01.zip @@ -589,7 +551,7 @@ November 19, 2013 http://developer.android.com/ - + 53691339 2e7f91e0fe34fef7f58aeced973c6ae52361b5ac google_apis-7_r01.zip @@ -616,7 +578,7 @@ November 19, 2013 http://developer.android.com/ - + 59505020 3079958e7ec87222cac1e6b27bc471b27bf2c352 google_apis-8_r02.zip @@ -643,7 +605,7 @@ November 19, 2013 http://developer.android.com/ - + 63401546 78664645a1e9accea4430814f8694291a7f1ea5d google_apis-9_r02.zip @@ -671,7 +633,7 @@ November 19, 2013 http://developer.android.com/ - + 65781578 cc0711857c881fa7534f90cf8cc09b8fe985484d google_apis-10_r02.zip @@ -698,7 +660,7 @@ November 19, 2013 http://developer.android.com/ - + 83477179 5eab5e81addee9f3576d456d205208314b5146a5 google_apis-11_r01.zip @@ -725,7 +687,7 @@ November 19, 2013 http://developer.android.com/ - + 86099835 e9999f4fa978812174dfeceec0721c793a636e5d google_apis-12_r01.zip @@ -752,7 +714,7 @@ November 19, 2013 http://developer.android.com/ - + 88615525 3b153edd211c27dc736c893c658418a4f9041417 google_apis-13_r01.zip @@ -785,7 +747,7 @@ November 19, 2013 - + 106533714 f8eb4d96ad0492b4c0db2d7e4f1a1a3836664d39 google_apis-14_r02.zip @@ -814,7 +776,7 @@ November 19, 2013 - + 106612472 6757c12788da0ea00c2ab58e54cb438b9f2bcf66 google_apis-15_r02.zip @@ -844,7 +806,7 @@ November 19, 2013 - + 127278413 63467dd32f471e3e81e33e9772c22f33235aa3b3 google_apis-16_r03.zip @@ -874,7 +836,7 @@ November 19, 2013 - + 137156978 8246f61d24f0408c8e7bc352a1e522b7e2b619ba google_apis-17_r03.zip @@ -904,7 +866,7 @@ November 19, 2013 - + 143149689 147bce09c1163edc17194f3db496ec1086fcf965 google_apis-18_r03.zip @@ -914,14 +876,14 @@ November 19, 2013 - + google Google Inc. google_apis - Google APIs + Google APIs (ARM System Image) Android + Google APIs 19 - 1 + 7 com.google.android.maps @@ -934,16 +896,15 @@ November 19, 2013 - - 150689239 - 6c530a8318446e4da1e3ab7d2abd154bc493bc5a - google_apis-19_r01.zip + + 160661775 + 150f5a3fec4f03313ca770b90126605619bd713c + google_apis-19_r07.zip - @@ -957,10 +918,11 @@ November 19, 2013 http://developer.android.com/ - + 78266751 92128a12e7e8b0fb5bac59153d7779b717e7b840 google_tv-12_r02.zip + linux @@ -977,7 +939,7 @@ November 19, 2013 http://developer.android.com/ - + 87721879 b73f7c66011ac8180b44aa4e83b8d78c66ea9a09 google_tv-13_r01.zip @@ -986,71 +948,48 @@ November 19, 2013 - - - - - google - Google Inc. - google_gdk - Glass Development Kit Sneak Peek - 15 - 01 - Sneak peek of the Glass Development Kit - https://developers.google.com/glass/gdk/ - - - - 281839 - a3c7317fb2fe8a0dfc06828a5aabc457372b82a7 - https://dl-ssl.google.com/glass/xe11/google-gdk.zip - - - - - com.google.android.glass - APIs for Google Glass Development Kit Sneak Peek. - - - - - - - 19 + + + 20 + 0 + 0 + Android android Android Support Library support compatibility - - 4905998 - 54b8661595856a08f032d41bb139f375a7609308 - support_r19.zip + + 5508097 + 719c260dc3eb950712988f987daaf91afa9e36af + support_r20.zip - - 3 + + + 6 + Android android Android Support Repository Local Maven repository for Support Libraries m2repository - - 6282146 - db4650f817f1507211ec6186d2d9e72074e6df12 - android_m2repository_r03.zip + + 22271942 + d4874fd330f41a7c16de392ce917c2a3562dd620 + android_m2repository_r06.zip - + @@ -1060,14 +999,16 @@ November 19, 2013 Google Inc. Google Repository m2repository - 4 + + 11 + Local Maven repository for Google Libraries - - 3891592 - c418daafd203a8cb4899d49bd321da83b927586e - google_m2repository_r04.zip + + 18832133 + 08b5114037d187cf3d4b44a25570149ef4f8ab3d + google_m2repository_r11.zip @@ -1078,11 +1019,13 @@ November 19, 2013 Google Play Licensing Library play_licensing market_licensing - 2 + + 2 + Google Play Licensing client library http://developer.android.com/guide/publishing/licensing.html - + 75109 355e8dc304a92a5616db235af8ee7bd554356254 market_licensing-r02.zip @@ -1097,11 +1040,13 @@ November 19, 2013 Google Play APK Expansion Library play_apk_expansion market_apk_expansion - 3 + + 3 + Google Play APK Expansion library http://developer.android.com/guide/market/expansion-files.html - + 110201 5305399dc1a56814e86b8459ce24871916f78b8c market_apk_expansion-r03.zip @@ -1115,12 +1060,14 @@ November 19, 2013 Google Inc. Google Play services for Froyo google_play_services_froyo - 12 + + 12 + Google Play services client library and sample code https://developers.google.com/android/google-play-services/index - + 5265389 92558dbc380bba3d55d0ec181167fb05ce7c79d9 google_play_services_3265130_r12.zip @@ -1133,34 +1080,59 @@ November 19, 2013 Google Inc. Google Play services google_play_services - 13 + + 19 + Google Play services client library and sample code https://developers.google.com/android/google-play-services/index - - 7958511 - 1be94e8f767616e862f0088ab673e1980a6022c4 - google_play_services_4030530_r13.zip + + 13982276 + 847a8806dd3c43effc2afdd7b49fc6ba27f72d5d + google_play_services_5089000_r19.zip - google Google Inc. - Google USB Driver - usb_driver - 8 - USB Driver for Windows, revision 8 - http://developer.android.com/ - + Google Play services for Fit Preview + google_play_services_fit_preview + + 1 + + Google Play services client library and sample code + https://developers.google.com/android/google-play-services/index + - - 8682230 - 2b2f91098a984a865a70f0bd841a843fb54462fc - usb_driver_r08-windows.zip + + 15224769 + 34369ca796268ec7274bc49d659d9e8f042b55ae + google_play_services_fit_preview_5208000_r01.zip + + + + + + + google + + http://developer.android.com/ + usb_driver + USB Driver for Windows, revision 10 + Google USB Driver + Google Inc. + + 10 + + + + usb_driver_r10-windows.zip + a5f8280829f07bb3144a8d657ec7aa0128443a2c + 8682752 + windows @@ -1171,11 +1143,13 @@ November 19, 2013 Google Play Billing Library play_billing market_billing - 5 + + 5 + Google Play Billing files and sample code http://developer.android.com/google/play/billing/index.html - + 436654 bd2ac5ce7127070ac3229003eb69cfb806628ac9 play_billing_r05.zip @@ -1189,29 +1163,35 @@ November 19, 2013 Google Inc. Google AdMob Ads SDK admob_ads_sdk - 11 + + 11 + AdMob Ads SDK https://developers.google.com/mobile-ads-sdk/docs/ - + 704512 0102859d9575baa0bf4fd5eb422af2ad0fe6cb82 https://dl-ssl.google.com/googleadmobadssdk/googleadmobadssdkandroid-6.4.1.zip + + google Google Inc. Google Analytics App Tracking SDK analytics_sdk_v2 - 3 + + 3 + Analytics App Tracking SDK http://developers.google.com/analytics/devguides/collection/ - + 211432 dc14026bf0ce78315cb5dd00552607de0894de83 https://dl.google.com/gaformobileapps/GoogleAnalyticsAndroid_2.0beta5.zip @@ -1225,11 +1205,13 @@ November 19, 2013 Google Inc. Google Web Driver webdriver - 2 + + 2 + WebDriver http://selenium.googlecode.com - + 4055193 13f3a3b2670a5fc04a7342861644be9a01b07e38 webdriver_r02.zip @@ -1241,18 +1223,21 @@ November 19, 2013 google Google Inc. - [Deprecated] Google Cloud Messaging for Android Library + Google Cloud Messaging for Android Library gcm - 3 + + 3 + GCM library has been moved to Google Play Services (com.google.android.gms.gcm) and this standalone version is no longer supported https://developers.google.com/android/gcm/index - + 5901400 ad066fd0dc7fc99d8aadac09c65a3c2519fbc7bf gcm_r03.zip + diff --git a/pkgs/development/mobile/androidenv/addons.nix b/pkgs/development/mobile/androidenv/addons.nix index 8aacde4eee7..4f7ed6e9e8e 100644 --- a/pkgs/development/mobile/androidenv/addons.nix +++ b/pkgs/development/mobile/androidenv/addons.nix @@ -209,8 +209,8 @@ in google_apis_19 = buildGoogleApis { name = "google_apis-19"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/google_apis-19_r01.zip; - sha1 = "6c530a8318446e4da1e3ab7d2abd154bc493bc5a"; + url = https://dl-ssl.google.com/android/repository/google_apis-19_r07.zip; + sha1 = "150f5a3fec4f03313ca770b90126605619bd713c"; }; meta = { description = "Android + Google APIs"; diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix index 60f71517323..1a5cf9500cd 100644 --- a/pkgs/development/mobile/androidenv/androidsdk.nix +++ b/pkgs/development/mobile/androidenv/androidsdk.nix @@ -9,36 +9,35 @@ stdenv.mkDerivation rec { name = "android-sdk-${version}"; - version = "22.6.2"; + version = "23.0.2"; src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl { url = "http://dl.google.com/android/android-sdk_r${version}-linux.tgz"; - md5 = "ff1541418a44d894bedc5cef10622220"; + md5 = "94a8c62086a7398cc0e73e1c8e65f71e"; } else if stdenv.system == "x86_64-darwin" then fetchurl { url = "http://dl.google.com/android/android-sdk_r${version}-macosx.zip"; - md5 = "2a319c862dd1dcf450bfe2a6b3d9c608"; + md5 = "322787b0e6c629d926c28690c79ac0d8"; } else throw "platform not ${stdenv.system} supported!"; buildCommand = '' mkdir -p $out/libexec cd $out/libexec - unpackFile $src; - + unpackFile $src cd android-sdk-*/tools ${stdenv.lib.optionalString (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") '' # There are a number of native binaries. We must patch them to let them find the interpreter and libstdc++ - - for i in dmtracedump emulator emulator-arm emulator-mips emulator-x86 hprof-conv mksdcard sqlite3 + + for i in emulator emulator-arm emulator-mips emulator-x86 mksdcard do patchelf --set-interpreter ${stdenv_32bit.gcc.libc}/lib/ld-linux.so.2 $i patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib $i done - + ${stdenv.lib.optionalString (stdenv.system == "x86_64-linux") '' # We must also patch the 64-bit emulator instances, if needed @@ -49,16 +48,8 @@ stdenv.mkDerivation rec { done ''} - # These tools also need zlib in addition to libstdc++ - - for i in etc1tool zipalign - do - patchelf --set-interpreter ${stdenv_32bit.gcc.libc}/lib/ld-linux.so.2 $i - patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib:${zlib_32bit}/lib $i - done - - # The android script has a hardcoded reference to /bin/ls that must be patched - sed -i -e "s|/bin/ls|ls|" android + # Patch the path to the executable so that it can find sdkmanager.jar file + #sed -i -e 's|frameworkdir="\$progdir"|'"frameworkdir=$(echo $out/libexec/android-sdk-*/tools/lib)|" android # The android script used SWT and wants to dynamically load some GTK+ stuff. # The following wrapper ensures that they can be found: diff --git a/pkgs/development/mobile/androidenv/build-tools.nix b/pkgs/development/mobile/androidenv/build-tools.nix index 215844ea396..11beb29f3ce 100644 --- a/pkgs/development/mobile/androidenv/build-tools.nix +++ b/pkgs/development/mobile/androidenv/build-tools.nix @@ -1,15 +1,15 @@ {stdenv, stdenv_32bit, fetchurl, unzip, zlib_32bit}: stdenv.mkDerivation { - name = "android-build-tools-r18.1.0"; + name = "android-build-tools-r20"; src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl { - url = https://dl-ssl.google.com/android/repository/build-tools_r18.1-linux.zip; - sha1 = "f314a0599e51397f0886fe888b50dd98f2f050d8"; + url = https://dl-ssl.google.com/android/repository/build-tools_r20-linux.zip; + sha1 = "b688905526a5584d1327a662d871a635ff502758"; } else if stdenv.system == "x86_64-darwin" then fetchurl { - url = https://dl-ssl.google.com/android/repository/build-tools_r18.1-macosx.zip; - sha1 = "16ddb299b8b43063e5bb3387ec17147c5053dfd8"; + url = https://dl-ssl.google.com/android/repository/build-tools_r20-macosx.zip; + sha1 = "1240f629411c108a714c4ddd756937c7fab93f83"; } else throw "System ${stdenv.system} not supported!"; diff --git a/pkgs/development/mobile/androidenv/fetch b/pkgs/development/mobile/androidenv/fetch.sh similarity index 58% rename from pkgs/development/mobile/androidenv/fetch rename to pkgs/development/mobile/androidenv/fetch.sh index 30aabc9e086..92abb18f25f 100755 --- a/pkgs/development/mobile/androidenv/fetch +++ b/pkgs/development/mobile/androidenv/fetch.sh @@ -5,10 +5,9 @@ android list sdk | grep 'Parse XML:' | cut -f8- -d\ # | xargs -n 1 curl -O # we skip the intel addons, as they are Windows+osX only # we skip the default sys-img (arm?) because it is empty -curl -o repository-8.xml https://dl-ssl.google.com/android/repository/repository-8.xml +curl -o repository-10.xml https://dl-ssl.google.com/android/repository/repository-10.xml curl -o addon.xml https://dl-ssl.google.com/android/repository/addon.xml -curl -o sys-img-mips.xml https://dl-ssl.google.com/android/repository/sys-img/mips/sys-img.xml -curl -o sys-img-x86.xml https://dl-ssl.google.com/android/repository/sys-img/x86/sys-img.xml +curl -o sys-img.xml https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml ./generate-addons.sh ./generate-platforms.sh diff --git a/pkgs/development/mobile/androidenv/generate-addons.xsl b/pkgs/development/mobile/androidenv/generate-addons.xsl index 0100b980a4e..51d0c07c934 100644 --- a/pkgs/development/mobile/androidenv/generate-addons.xsl +++ b/pkgs/development/mobile/androidenv/generate-addons.xsl @@ -1,7 +1,7 @@ + xmlns:sdk="http://schemas.android.com/sdk/android/addon/7"> @@ -23,8 +23,8 @@ in google_apis_ = buildGoogleApis { name = "-"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/; - sha1 = ""; + url = https://dl-ssl.google.com/android/repository/; + sha1 = ""; }; meta = { description = ""; diff --git a/pkgs/development/mobile/androidenv/generate-platforms.sh b/pkgs/development/mobile/androidenv/generate-platforms.sh index 8ac4ad328f4..58d3ba58d37 100755 --- a/pkgs/development/mobile/androidenv/generate-platforms.sh +++ b/pkgs/development/mobile/androidenv/generate-platforms.sh @@ -1,4 +1,4 @@ #!/bin/sh -e -xsltproc --stringparam os linux generate-platforms.xsl repository-8.xml > platforms-linux.nix -xsltproc --stringparam os macosx generate-platforms.xsl repository-8.xml > platforms-macosx.nix +xsltproc --stringparam os linux generate-platforms.xsl repository-10.xml > platforms-linux.nix +xsltproc --stringparam os macosx generate-platforms.xsl repository-10.xml > platforms-macosx.nix diff --git a/pkgs/development/mobile/androidenv/generate-platforms.xsl b/pkgs/development/mobile/androidenv/generate-platforms.xsl index 249f044550b..ba556f2baac 100644 --- a/pkgs/development/mobile/androidenv/generate-platforms.xsl +++ b/pkgs/development/mobile/androidenv/generate-platforms.xsl @@ -1,7 +1,7 @@ + xmlns:sdk="http://schemas.android.com/sdk/android/repository/10"> @@ -10,7 +10,7 @@ let buildPlatform = args: - stdenv.mkDerivation (args // { + stdenv.mkDerivation (args // { buildInputs = [ unzip ]; buildCommand = '' mkdir -p $out @@ -20,12 +20,12 @@ let }); in { - + platform_ = buildPlatform { name = "android-platform-"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/; - sha1 = ""; + url = ; + sha1 = ""; }; meta = { description = ""; diff --git a/pkgs/development/mobile/androidenv/generate-sysimages-others.xsl b/pkgs/development/mobile/androidenv/generate-sysimages-others.xsl deleted file mode 100644 index 31ab72add36..00000000000 --- a/pkgs/development/mobile/androidenv/generate-sysimages-others.xsl +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - sysimg__ = buildSystemImage { - name = "-"; - src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img//; - sha1 = ""; - }; - }; - - - diff --git a/pkgs/development/mobile/androidenv/generate-sysimages.sh b/pkgs/development/mobile/androidenv/generate-sysimages.sh index 90b1e04c229..ef2f825642b 100755 --- a/pkgs/development/mobile/androidenv/generate-sysimages.sh +++ b/pkgs/development/mobile/androidenv/generate-sysimages.sh @@ -17,9 +17,7 @@ in { EOF -xsltproc generate-sysimages.xsl repository-8.xml >> sysimages.nix -xsltproc --stringparam abi x86 generate-sysimages-others.xsl sys-img-x86.xml >> sysimages.nix -xsltproc --stringparam abi mips generate-sysimages-others.xsl sys-img-mips.xml >> sysimages.nix +xsltproc generate-sysimages.xsl sys-img.xml >> sysimages.nix cat >> sysimages.nix << "EOF" } diff --git a/pkgs/development/mobile/androidenv/generate-sysimages.xsl b/pkgs/development/mobile/androidenv/generate-sysimages.xsl index be9947d536a..6de690622b5 100644 --- a/pkgs/development/mobile/androidenv/generate-sysimages.xsl +++ b/pkgs/development/mobile/androidenv/generate-sysimages.xsl @@ -2,17 +2,17 @@ + xmlns:sdk="http://schemas.android.com/sdk/android/sys-img/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> - + sysimg__ = buildSystemImage { - name = "-"; + name = "sysimg--"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/; - sha1 = ""; + url = https://dl-ssl.google.com/android/repository/sys-img/android/; + sha1 = ""; }; }; diff --git a/pkgs/development/mobile/androidenv/platforms-linux.nix b/pkgs/development/mobile/androidenv/platforms-linux.nix index f9f5a2d50f4..feb967d0108 100644 --- a/pkgs/development/mobile/androidenv/platforms-linux.nix +++ b/pkgs/development/mobile/androidenv/platforms-linux.nix @@ -3,7 +3,7 @@ let buildPlatform = args: - stdenv.mkDerivation (args // { + stdenv.mkDerivation (args // { buildInputs = [ unzip ]; buildCommand = '' mkdir -p $out @@ -219,13 +219,13 @@ in }; platform_19 = buildPlatform { - name = "android-platform-4.4"; + name = "android-platform-4.4.2"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/android-19_r01.zip; - sha1 = "96281811998272dce46e8285d15fce444a3d5a96"; + url = https://dl-ssl.google.com/android/repository/android-19_r03.zip; + sha1 = "5f33d8fd36a384fe2b170035e04a29c274a9ef95"; }; meta = { - description = "Android SDK Platform 4.4"; + description = "Android SDK Platform 4.4.2"; }; }; diff --git a/pkgs/development/mobile/androidenv/platforms-macosx.nix b/pkgs/development/mobile/androidenv/platforms-macosx.nix index a95561d3e85..0e93ed9412b 100644 --- a/pkgs/development/mobile/androidenv/platforms-macosx.nix +++ b/pkgs/development/mobile/androidenv/platforms-macosx.nix @@ -3,7 +3,7 @@ let buildPlatform = args: - stdenv.mkDerivation (args // { + stdenv.mkDerivation (args // { buildInputs = [ unzip ]; buildCommand = '' mkdir -p $out @@ -219,13 +219,13 @@ in }; platform_19 = buildPlatform { - name = "android-platform-4.4"; + name = "android-platform-4.4.2"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/android-19_r01.zip; - sha1 = "96281811998272dce46e8285d15fce444a3d5a96"; + url = https://dl-ssl.google.com/android/repository/android-19_r03.zip; + sha1 = "5f33d8fd36a384fe2b170035e04a29c274a9ef95"; }; meta = { - description = "Android SDK Platform 4.4"; + description = "Android SDK Platform 4.4.2"; }; }; diff --git a/pkgs/development/mobile/androidenv/repository-10.xml b/pkgs/development/mobile/androidenv/repository-10.xml new file mode 100644 index 00000000000..81023cae2ee --- /dev/null +++ b/pkgs/development/mobile/androidenv/repository-10.xml @@ -0,0 +1,1562 @@ + + + + + To get started with the Android SDK, you must agree to the following terms and conditions. + +This is the Android SDK License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and SDK library files and tools , if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the SDK, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. + +2.4 If you will use the SDK internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. + +3. SDK License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the SDK, personally or internally within your company or organization, solely to develop and distribute applications to run on the Android platform. + +3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the SDK for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. + +3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. + +4. Use of the SDK by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the SDK to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action when Google ceases to provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the SDK, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE SDK MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. + +14. General Legal Terms + +14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + To get started with the Android SDK Preview, you must agree to the following terms and conditions. +As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk. The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data. + +This is the Android SDK Preview License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview. + +2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity. + +3. Preview License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform. + +3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview. + +3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview. + +4. Use of the Preview by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of: +(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and +(B) Google issues a final release version of the Android SDK. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available. + +14. General Legal Terms + +14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + + + + 1.1 + 2 + 1 + Android SDK Platform 1.1_r1 + http://developer.android.com/sdk/android-1.1.html + + + + 46828615 + a4060f29ed39fc929c302836d488998c53c3002e + https://dl-ssl.google.com/android/repository/android-1.1_r1-windows.zip + windows + + + 45584305 + e21dbcff45b7356657449ebb3c7e941be2bb5ebe + https://dl-ssl.google.com/android/repository/android-1.1_r1-macosx.zip + macosx + + + 45476658 + c054d25c9b4c6251fa49c2f9c54336998679d3fe + https://dl-ssl.google.com/android/repository/android-1.1_r1-linux.zip + linux + + + + 4 + + + + + + + + 1.5 + 3 + 04 + + 6 + + Android SDK Platform 1.5_r3 + http://developer.android.com/sdk/android-1.5.html + + + 54624370 + 5bb106d2e40d481edd337b0833093843e15fe49a + https://dl-ssl.google.com/android/repository/android-1.5_r04-windows.zip + windows + + + 52440607 + d3a67c2369afa48b6c3c7624de5031c262018d1e + https://dl-ssl.google.com/android/repository/android-1.5_r04-macosx.zip + macosx + + + 53348669 + 5c134b7df5f4b8bd5b61ba93bdaebada8fa3468c + https://dl-ssl.google.com/android/repository/android-1.5_r04-linux.zip + linux + + + + 4 + + + + + + 1.6 + 4 + + 03 + + 6 + + Android SDK Platform 1.6_r2 + http://developer.android.com/sdk/android-1.6.html + + + 63454485 + 483ed088e45bbdf3444baaf9250c8b02e5383cb0 + https://dl-ssl.google.com/android/repository/android-1.6_r03-linux.zip + linux + + + 62418496 + bdafad44f5df9f127979bdb21a1fdd87ee3cd625 + https://dl-ssl.google.com/android/repository/android-1.6_r03-macosx.zip + macosx + + + 64654625 + ce0b5e4ffaf12ca4fd07c2da71a8a1ab4a03dc22 + https://dl-ssl.google.com/android/repository/android-1.6_r03-windows.zip + windows + + + + 4 + + + + + + + + 2.0 + 5 + + 01 + + 3 + + Android SDK Platform 2.0, revision 1 + http://developer.android.com/sdk/android-2.0.html + + + + 75095268 + be9be6a99ca32875c96ec7f91160ca9fce7e3c7d + https://dl-ssl.google.com/android/repository/android-2.0_r01-linux.zip + linux + + + 74956356 + 2a866d0870dbba18e0503cd41e5fae988a21b314 + https://dl-ssl.google.com/android/repository/android-2.0_r01-macosx.zip + macosx + + + 76288040 + aeb623217ff88b87216d6eb7dbc846ed53f68f57 + https://dl-ssl.google.com/android/repository/android-2.0_r01-windows.zip + windows + + + + 4 + + + + + + + + 2.0.1 + 6 + + 01 + + 4 + + Android SDK Platform 2.0.1_r1 + http://developer.android.com/sdk/android-2.0.1.html + + + + 79192618 + ce2c971dce352aa28af06bda92a070116aa5ae1a + https://dl-ssl.google.com/android/repository/android-2.0.1_r01-linux.zip + linux + + + 79035527 + c3096f80d75a6fc8cb38ef8a18aec920e53d42c0 + https://dl-ssl.google.com/android/repository/android-2.0.1_r01-macosx.zip + macosx + + + 80385601 + 255781ebe4509d9707d0e77edda2815e2bc216e6 + https://dl-ssl.google.com/android/repository/android-2.0.1_r01-windows.zip + windows + + + + 4 + + + + + + + + 2.1 + 7 + + 03 + + 8 + + Android SDK Platform 2.1_r3 + http://developer.android.com/sdk/ + + + 70142829 + 5ce51b023ac19f8738500b1007a1da5de2349a1e + https://dl-ssl.google.com/android/repository/android-2.1_r03-linux.zip + + + + 4 + + + + + + + + 2.2 + 8 + + 03 + + 8 + + Android SDK Platform 2.2_r3 + http://developer.android.com/sdk/ + + + 74652366 + 231262c63eefdff8fd0386e9ccfefeb27a8f9202 + https://dl-ssl.google.com/android/repository/android-2.2_r03-linux.zip + + + + 4 + + + + + + + + 2.3.1 + 9 + + 02 + + 8 + + Android SDK Platform 2.3.1_r2 + http://developer.android.com/sdk/ + + + + 78732563 + 209f8a7a8b2cb093fce858b8b55fed3ba5206773 + https://dl-ssl.google.com/android/repository/android-2.3.1_r02-linux.zip + + + + 4 + + + + + + + + 2.3.3 + 10 + + 02 + + 8 + + Android SDK Platform 2.3.3._r2 + http://developer.android.com/sdk/ + + + 85470907 + 887e37783ec32f541ea33c2c649dda648e8e6fb3 + https://dl-ssl.google.com/android/repository/android-2.3.3_r02-linux.zip + + + + 4 + + + + + + + + 3.0 + 11 + + 02 + + 10 + + Android SDK Platform 3.0, revision 2 + http://developer.android.com/sdk/ + + + 104513908 + 2c7d4bd13f276e76f6bbd87315fe27aba351dd37 + https://dl-ssl.google.com/android/repository/android-3.0_r02-linux.zip + + + + 4 + + + + + + + + 3.1 + 12 + + 03 + + 11 + + Android SDK Platform 3.1, revision 3 + http://developer.android.com/sdk/ + + + 106472351 + 4a50a6679cd95bb68bb5fc032e754cd7c5e2b1bf + https://dl-ssl.google.com/android/repository/android-3.1_r03-linux.zip + + + + 4 + + + + + + + + 3.2 + 13 + + 01 + + 12 + + Android SDK Platform 3.2, revision 1 + http://developer.android.com/sdk/ + + + 108426536 + 6189a500a8c44ae73a439604363de93591163cd9 + https://dl-ssl.google.com/android/repository/android-3.2_r01-linux.zip + + + + 4 + + + + + + + 3 + Android SDK Platform 4.0 + 4.0 + 14 + + 7 + 1 + + + + 45919570 + 41ba83b51e886461628c41b1b4d47762e0688ed5 + https://dl-ssl.google.com/android/repository/android-14_r03.zip + + + + + + + + 3 + Android SDK Platform 4.0.3 + 4.0.3 + 15 + + 15 + + + 7 + 1 + + + + 44414679 + 23da24610a8da51054c5391001c51ce43a778b97 + https://dl-ssl.google.com/android/repository/android-15_r03.zip + + + + + + + + 4 + Android SDK Platform 4.1.2 + 4.1.2 + 16 + + 21 + + + 9 + 1 + + + + 48005140 + 90b9157b8b45f966be97e11a22fba4591b96c2ee + https://dl-ssl.google.com/android/repository/android-16_r04.zip + + + + + + + + 2 + Android SDK Platform 4.2.2 + 4.2.2 + 17 + + 21 + + + 9 + 1 + + + + 48057484 + c442c32c1b702173ab0929a74486e4f86fe528ec + https://dl-ssl.google.com/android/repository/android-17_r02.zip + + + + + + + + 2 + Android SDK Platform 4.3 + 4.3 + 18 + + 21 + + + 10 + 1 + + + + 57319855 + 62a9438d4cf6692f4d6510c27a380be195db9534 + https://dl-ssl.google.com/android/repository/android-18_r02.zip + + + + + + + + 3 + Android SDK Platform 4.4.2 + 4.4.2 + 19 + + 22 + + + 10 + 1 + + + + 63798840 + 5f33d8fd36a384fe2b170035e04a29c274a9ef95 + https://dl-ssl.google.com/android/repository/android-19_r03.zip + + + + + + + + 1 + Android SDK Platform 4.4W + 4.4W + 20 + + 22 + + + 10 + 1 + + + + 63548914 + 928b1d181101a5bc06f739eb40501e1249dd4895 + android-20_r01.zip + + + + + + + + 3 + Android SDK Platform L + L + 20 + L + + 22 + + + 11 + 1 + + + + 69421660 + 76b6da426db06b2e2901dbc5e02d210ba83753c4 + android-L_r03.zip + + + + + + + + + + + 7 + + 01 + Android SDK Samples for Android API 7, revision 1 + http://developer.android.com/sdk/ + + + 7677831 + 51e4907f60f248ede5c58b54ce7b6ae0b473e0ca + https://dl-ssl.google.com/android/repository/samples-2.1_r01-linux.zip + + + + + + + + + 8 + + 01 + Android SDK Samples for Android API 8, revision 1 + http://developer.android.com/sdk/ + + + 7969716 + d16d8bf2dd84cedf73b98b948d66461c8f19d6fb + https://dl-ssl.google.com/android/repository/samples-2.2_r01-linux.zip + + + + + + + + + 9 + + 01 + Android SDK Samples for Android API 9, revision 1 + http://developer.android.com/sdk/ + + + + 8516326 + 36f7dd6c8b5dbb50b3cf3e3ac5209f3fe55db2aa + https://dl-ssl.google.com/android/repository/samples-2.3_r01-linux.zip + + + + + + + + + 10 + + 01 + Android SDK Samples for Android API 10, revision 1 + http://developer.android.com/sdk/ + + + 8539583 + 93b0c3f3bdf5b07f1f115100b4954f0665297a0d + https://dl-ssl.google.com/android/repository/samples-2.3.3_r01-linux.zip + + + + + + + + + 11 + + 01 + Android SDK Samples for Android API 11, revision 1 + http://developer.android.com/sdk/ + + + 11976920 + 3749ace584631270268d65bb1d0ad61b0d691682 + https://dl-ssl.google.com/android/repository/samples-3.0_r01-linux.zip + + + + + + + + + 12 + + 01 + Android SDK Samples for Android API 12, revision 1 + http://developer.android.com/sdk/ + + + 12150514 + df0ace37cbca73373fe94080f94c71557cac73a7 + https://dl-ssl.google.com/android/repository/samples-3.1_r01-linux.zip + + + + + + + + + 13 + + 01 + Android SDK Samples for Android API 13, revision 1 + http://developer.android.com/sdk/ + + + 12193502 + 078bcf1abc1cb8921f3fa482c252963a782bed60 + https://dl-ssl.google.com/android/repository/samples-3.2_r01-linux.zip + + + + + + + + 2 + 14 + + + 16253619 + 1312c22ab0b650e26835cc3945d4ff8cea183416 + https://dl-ssl.google.com/android/repository/samples-14_r02.zip + + + + + + + + 2 + 15 + + + 16366656 + 042f368c5b09eca4d278264e6dbf9c12c5f73d1f + https://dl-ssl.google.com/android/repository/samples-15_r02.zip + + + + + + + + 1 + 16 + + + 14729945 + dce3a2d41db50a381ef47ee8bddbe928520e685e + https://dl-ssl.google.com/android/repository/samples-16_r01.zip + + + + + + + + 1 + 17 + + + 14840030 + 12d58cb26503610fc05bd7618c434cc6f983bc41 + https://dl-ssl.google.com/android/repository/samples-17_r01.zip + + + + + + + + 1 + 18 + + + 19897793 + 73e879ce46c04a6e63ad1a9107018b4782945007 + https://dl-ssl.google.com/android/repository/samples-18_r01.zip + + + + + + + + 6 + 19 + + + 31900752 + 19593662771934b0b1e3be56ed18d13e6489bcd4 + samples-19_r06.zip + + + + + + + + 2 + 20 + + + 49718791 + 4b906c46057ee8f502b4f27c23670fd87a49d6ff + samples-20_r02.zip + + + + + + + + 2 + 20 + L + + + 41182182 + 4afc36cf3f53051881729f733fe9bb571104c48f + samples-L_r02.zip + + + + + + + + + + + 20 + 0 + 0 + + + + 1741113 + 72c34cc6a991f53e2588f9d5487559f013bc30f9 + platform-tools_r20-windows.zip + windows + + + 1753061 + fb120ce85b6698b801cb4788b204693c1d682b87 + platform-tools_r20-linux.zip + linux + + + 1666257 + f2c65c58caf76169d9bebf25eef5c69ff99670b5 + platform-tools_r20-macosx.zip + macosx + + + + + + + + + + + 17 + 0 + 0 + + + + 11004914 + 899897d327b0bad492d3a40d3db4d96119c15bc0 + https://dl-ssl.google.com/android/repository/build-tools_r17-windows.zip + windows + + + 11696007 + 2c2872bc3806aabf16a12e3959c2183ddc866e6d + https://dl-ssl.google.com/android/repository/build-tools_r17-linux.zip + linux + + + 12208114 + 602ee709be9dbb8f179b1e4075148a57f9419930 + https://dl-ssl.google.com/android/repository/build-tools_r17-macosx.zip + macosx + + + + + + + + + + + 18 + 0 + 1 + + + + 15413527 + a6c2afd0b6289d589351956d2f5212b37014ca7d + https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-windows.zip + windows + + + 16627330 + f11618492b0d2270c332325d45d752d3656a9640 + https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-linux.zip + linux + + + 16633121 + d84f5692fb44d60fc53e5b2507cebf9f24626902 + https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-macosx.zip + macosx + + + + + + + + + 18 + 1 + 0 + + + + 19659547 + 3a9810fc8559ab03c09378f07531e8cae2f1db30 + https://dl-ssl.google.com/android/repository/build-tools_r18.1-windows.zip + windows + + + 20229298 + f314a0599e51397f0886fe888b50dd98f2f050d8 + https://dl-ssl.google.com/android/repository/build-tools_r18.1-linux.zip + linux + + + 20451524 + 16ddb299b8b43063e5bb3387ec17147c5053dfd8 + https://dl-ssl.google.com/android/repository/build-tools_r18.1-macosx.zip + macosx + + + + + + + + + 18 + 1 + 1 + + + + 19660000 + c4605066e2f851387ea70bc1442b1968bd7b4a15 + https://dl-ssl.google.com/android/repository/build-tools_r18.1.1-windows.zip + windows + + + 20229760 + 68c9acbfc0cec2d51b19efaed39831a17055d998 + https://dl-ssl.google.com/android/repository/build-tools_r18.1.1-linux.zip + linux + + + 20452157 + a9d9d37f6ddf859e57abc78802a77aaa166e48d4 + https://dl-ssl.google.com/android/repository/build-tools_r18.1.1-macosx.zip + macosx + + + + + + + + + 19 + 0 + 0 + + + + 20611447 + 6edf505c20f5ece9c48fa0aff9a90488f9654d52 + https://dl-ssl.google.com/android/repository/build-tools_r19-windows.zip + windows + + + 21339943 + 55c1a6cf632e7d346f0002b275ec41fd3137fd83 + https://dl-ssl.google.com/android/repository/build-tools_r19-linux.zip + linux + + + 21441270 + 86ec1c12db1bc446b7bcaefc5cc14eb361044e90 + https://dl-ssl.google.com/android/repository/build-tools_r19-macosx.zip + macosx + + + + + + + + + 19 + 0 + 1 + + + + 20500648 + 5ef422bac5b28f4ced108319ed4a6bc7050a6234 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.1-windows.zip + windows + + + 21229048 + 18d2312dc4368858914213087f4e61445aca4517 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.1-linux.zip + linux + + + 21450597 + efaf50fb19a3edb8d03efbff76f89a249ad2920b + https://dl-ssl.google.com/android/repository/build-tools_r19.0.1-macosx.zip + macosx + + + + + + + + + 19 + 0 + 2 + + + + 20621117 + af664672d0d709c9ae30937b1062317d3ade7f95 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.2-windows.zip + windows + + + 21352552 + a03a6bdea0091aea32e1b35b90a7294c9f04e3dd + https://dl-ssl.google.com/android/repository/build-tools_r19.0.2-linux.zip + linux + + + 21453726 + 145bc43065d45f756d99d87329d899052b9a9288 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.2-macosx.zip + macosx + + + + + + + + + 19 + 0 + 3 + + + + 20730715 + cb46b433b67a0a6910ff00db84be8b527ea3102f + https://dl-ssl.google.com/android/repository/build-tools_r19.0.3-windows.zip + windows + + + 21462150 + c2d6055478e9d2d4fba476ee85f99181ddd1160c + https://dl-ssl.google.com/android/repository/build-tools_r19.0.3-linux.zip + linux + + + 21563992 + 651cf8754373b2d52e7f6aab2c52eabffe4e9ea4 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.3-macosx.zip + macosx + + + + + + + + + 19 + 1 + 0 + + + + 20812533 + 13b367fbdbff8132cb4356f716e8dc8a8df745c5 + https://dl-ssl.google.com/android/repository/build-tools_r19.1-windows.zip + windows + + + 21490972 + 1ff20ac15fa47a75d00346ec12f180d531b3ca89 + https://dl-ssl.google.com/android/repository/build-tools_r19.1-linux.zip + linux + + + 21590160 + 0d11aae3417de1efb4b9a0e0a7855904a61bcec1 + https://dl-ssl.google.com/android/repository/build-tools_r19.1-macosx.zip + macosx + + + + + + + + + 20 + 0 + 0 + + + + 20828006 + cf20720e452b642d5eb59dabe05c0c729b36ec75 + build-tools_r20-windows.zip + windows + + + 21445463 + b688905526a5584d1327a662d871a635ff502758 + build-tools_r20-linux.zip + linux + + + 21650508 + 1240f629411c108a714c4ddd756937c7fab93f83 + build-tools_r20-macosx.zip + macosx + + + + + + + + + + + 23 + 0 + 2 + + + 20 + + + + 141154615 + 0a64ec9b7777bb00ff299c94c359163ef5e443ae + tools_r23.0.2-windows.zip + windows + + + 141930870 + e8a2d55d750adeaded60a3daad48e62b09aa472a + tools_r23.0.2-linux.zip + linux + + + 90920343 + c46b1e173188ba82a56d6b9e349fdae4e8922bab + tools_r23.0.2-macosx.zip + macosx + + + + + + + + + + 1 + 20 + L + + + 207889084 + 58a94248c7c960829db3d779c84534e5e783210f + docs-L_r01.zip + + + + + + + + + + 1 + 14 + + + 16152383 + eaf4ed7dcac46e68516a1b4aa5b0d9e5a39a7555 + https://dl-ssl.google.com/android/repository/sources-14_r01.zip + + + + + + + + 2 + 15 + + + 16468746 + e5992a5747c9590783fbbdd700337bf0c9f6b1fa + https://dl-ssl.google.com/android/repository/sources-15_r02.zip + + + + + + + + 2 + 16 + + + 17876720 + 0f83c14ed333c45d962279ab5d6bc98a0269ef84 + https://dl-ssl.google.com/android/repository/sources-16_r02.zip + + + + + + + + 1 + 17 + + + 18976816 + 6f1f18cd2d2b1852d7f6892df9cee3823349d43a + https://dl-ssl.google.com/android/repository/sources-17_r01.zip + + + + + + + + 1 + 18 + + + 20226735 + 8b49fdf7433f4881a2bfb559b5dd05d8ec65fb78 + https://dl-ssl.google.com/android/repository/sources-18_r01.zip + + + + + + + + 2 + 19 + + + 21819439 + 433a1d043ef77561571250e94cb7a0ef24a202e7 + https://dl-ssl.google.com/android/repository/sources-19_r02.zip + + + + + + + + 1 + 20 + + + 23367603 + 8da3e40f2625f9f7ef38b7e403f49f67226c0d76 + sources-20_r01.zip + + + + + + diff --git a/pkgs/development/mobile/androidenv/repository-8.xml b/pkgs/development/mobile/androidenv/repository-8.xml deleted file mode 100644 index 46ae8aa9a7c..00000000000 --- a/pkgs/development/mobile/androidenv/repository-8.xml +++ /dev/null @@ -1,1277 +0,0 @@ - - - - - Terms and Conditions - -This is the Android Software Development Kit License Agreement. - - -1. Introduction - - -1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. - -1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. - -1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. - - -2. Accepting this License Agreement - - -2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement. - -2.2 By clicking to accept, you hereby agree to the terms of this License Agreement. - -2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. - -2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. - - -3. SDK License from Google - - -3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform. - -3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. - -3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. - -3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. - -3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement. - -3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. - -3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. - -3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. - - -4. Use of the SDK by You - - -4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. - -4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). - -4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so. - -4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier. - -4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. - -4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. - - -5. Your Developer Credentials - - -5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. - - -6. Privacy and Information - - -6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. - -6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy. - - -7. Third Party Applications - - -7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. - -7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. - -7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties. - - -8. Using Android APIs - - -8.1 Google Data APIs - -8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. - -8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. - - -9. Terminating this License Agreement - - -9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below. - -9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. - -9.3 Google may at any time, terminate this License Agreement with you if: -(A) you have breached any provision of this License Agreement; or -(B) Google is required to do so by law; or -(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or -(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable. - -9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely. - - -10. DISCLAIMER OF WARRANTIES - - -10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. - -10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. - -10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - - -11. LIMITATION OF LIABILITY - - -11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. - - -12. Indemnification - - -12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement. - - -13. Changes to the License Agreement - - -13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. - - -14. General Legal Terms - - -14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. - -14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. - -14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable. - -14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement. - -14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. - -14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party. - -14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. - -November 13, 2012 - - - - - - 1.1 - 2 - 1 - Android SDK Platform 1.1_r1 - http://developer.android.com/sdk/android-1.1.html - - - - 46828615 - a4060f29ed39fc929c302836d488998c53c3002e - android-1.1_r1-windows.zip - - - 45584305 - e21dbcff45b7356657449ebb3c7e941be2bb5ebe - android-1.1_r1-macosx.zip - - - 45476658 - c054d25c9b4c6251fa49c2f9c54336998679d3fe - android-1.1_r1-linux.zip - - - - 4 - - - - - - - - 1.5 - 3 - 04 - - 6 - - Android SDK Platform 1.5_r3 - http://developer.android.com/sdk/android-1.5.html - - - 54624370 - 5bb106d2e40d481edd337b0833093843e15fe49a - android-1.5_r04-windows.zip - - - 52440607 - d3a67c2369afa48b6c3c7624de5031c262018d1e - android-1.5_r04-macosx.zip - - - 53348669 - 5c134b7df5f4b8bd5b61ba93bdaebada8fa3468c - android-1.5_r04-linux.zip - - - - 4 - - - - - - 1.6 - 4 - - 03 - - 6 - - Android SDK Platform 1.6_r2 - http://developer.android.com/sdk/android-1.6.html - - - 63454485 - 483ed088e45bbdf3444baaf9250c8b02e5383cb0 - android-1.6_r03-linux.zip - - - 62418496 - bdafad44f5df9f127979bdb21a1fdd87ee3cd625 - android-1.6_r03-macosx.zip - - - 64654625 - ce0b5e4ffaf12ca4fd07c2da71a8a1ab4a03dc22 - android-1.6_r03-windows.zip - - - - 4 - - - - - - - - 2.0 - 5 - - 01 - - 3 - - Android SDK Platform 2.0, revision 1 - http://developer.android.com/sdk/android-2.0.html - - - - 75095268 - be9be6a99ca32875c96ec7f91160ca9fce7e3c7d - android-2.0_r01-linux.zip - - - 74956356 - 2a866d0870dbba18e0503cd41e5fae988a21b314 - android-2.0_r01-macosx.zip - - - 76288040 - aeb623217ff88b87216d6eb7dbc846ed53f68f57 - android-2.0_r01-windows.zip - - - - 4 - - - - - - - - 2.0.1 - 6 - - 01 - - 4 - - Android SDK Platform 2.0.1_r1 - http://developer.android.com/sdk/android-2.0.1.html - - - - 79192618 - ce2c971dce352aa28af06bda92a070116aa5ae1a - android-2.0.1_r01-linux.zip - - - 79035527 - c3096f80d75a6fc8cb38ef8a18aec920e53d42c0 - android-2.0.1_r01-macosx.zip - - - 80385601 - 255781ebe4509d9707d0e77edda2815e2bc216e6 - android-2.0.1_r01-windows.zip - - - - 4 - - - - - - - - 2.1 - 7 - - 03 - - 8 - - Android SDK Platform 2.1_r3 - http://developer.android.com/sdk/ - - - 70142829 - 5ce51b023ac19f8738500b1007a1da5de2349a1e - android-2.1_r03-linux.zip - - - - 4 - - - - - - - - 2.2 - 8 - - 03 - - 8 - - Android SDK Platform 2.2_r3 - http://developer.android.com/sdk/ - - - 74652366 - 231262c63eefdff8fd0386e9ccfefeb27a8f9202 - android-2.2_r03-linux.zip - - - - 4 - - - - - - - - 2.3.1 - 9 - - 02 - - 8 - - Android SDK Platform 2.3.1_r2 - http://developer.android.com/sdk/ - - - - 78732563 - 209f8a7a8b2cb093fce858b8b55fed3ba5206773 - android-2.3.1_r02-linux.zip - - - - 4 - - - - - - - - 2.3.3 - 10 - - 02 - - 8 - - Android SDK Platform 2.3.3._r2 - http://developer.android.com/sdk/ - - - 85470907 - 887e37783ec32f541ea33c2c649dda648e8e6fb3 - android-2.3.3_r02-linux.zip - - - - 4 - - - - - - - - 3.0 - 11 - - 02 - - 10 - - Android SDK Platform 3.0, revision 2 - http://developer.android.com/sdk/ - - - 104513908 - 2c7d4bd13f276e76f6bbd87315fe27aba351dd37 - android-3.0_r02-linux.zip - - - - 4 - - - - - - - - 3.1 - 12 - - 03 - - 11 - - Android SDK Platform 3.1, revision 3 - http://developer.android.com/sdk/ - - - 106472351 - 4a50a6679cd95bb68bb5fc032e754cd7c5e2b1bf - android-3.1_r03-linux.zip - - - - 4 - - - - - - - - 3.2 - 13 - - 01 - - 12 - - Android SDK Platform 3.2, revision 1 - http://developer.android.com/sdk/ - - - 108426536 - 6189a500a8c44ae73a439604363de93591163cd9 - android-3.2_r01-linux.zip - - - - 4 - - - - - - - 3 - Android SDK Platform 4.0 - 4.0 - 14 - - 7 - 1 - - - - 45919570 - 41ba83b51e886461628c41b1b4d47762e0688ed5 - android-14_r03.zip - - - - - - - - 3 - Android SDK Platform 4.0.3 - 4.0.3 - 15 - - 15 - - - 7 - 1 - - - - 44414679 - 23da24610a8da51054c5391001c51ce43a778b97 - android-15_r03.zip - - - - - - - - 4 - Android SDK Platform 4.1.2 - 4.1.2 - 16 - - 21 - - - 9 - 1 - - - - 48005140 - 90b9157b8b45f966be97e11a22fba4591b96c2ee - android-16_r04.zip - - - - - - - - 2 - Android SDK Platform 4.2.2 - 4.2.2 - 17 - - 21 - - - 9 - 1 - - - - 48057484 - c442c32c1b702173ab0929a74486e4f86fe528ec - android-17_r02.zip - - - - - - - - 2 - Android SDK Platform 4.3 - 4.3 - 18 - - 21 - - - 10 - 1 - - - - 57319855 - 62a9438d4cf6692f4d6510c27a380be195db9534 - android-18_r02.zip - - - - - - - - 1 - Android SDK Platform 4.4 - 4.4 - 19 - - 22 - - - 10 - 1 - - - - 59279956 - 96281811998272dce46e8285d15fce444a3d5a96 - android-19_r01.zip - - - - - - - - - - - 2 - Android SDK Platform 4.0 - 14 - armeabi-v7a - - - 99621822 - d8991b0c06b18d7d6ed4169d67460ee1add6661b - sysimg_armv7a-14_r02.zip - - - - - - - - 2 - Android SDK Platform 4.0.3 - 15 - armeabi-v7a - - - 96227377 - 1bf977d6cb4e0ad38dceac0c4863d1caa21f326e - sysimg_armv7a-15_r02.zip - - - - - - - - 3 - Android SDK Platform 4.1 - 16 - armeabi-v7a - - - 112528368 - d1cddb23f17aad5821a089c403d4cddad2cf9ef7 - sysimg_armv7a-16_r03.zip - - - - - - - - 2 - Android SDK Platform 4.2.2 - 17 - armeabi-v7a - - - 116553808 - 1c321cda1af793b84d47d1a8d15f85444d265e3c - sysimg_armv7a-17_r02.zip - - - - - - - - 2 - Android SDK Platform 4.3 - 18 - armeabi-v7a - - - 125457135 - 4a1a93200210d8c42793324362868846f67401ab - sysimg_armv7a-18_r02.zip - - - - - - - - 1 - Android SDK Platform 4.4 - 19 - armeabi-v7a - - - 155838103 - 12dd1187dfd953b1ffcef5067d94578590f9e600 - sysimg_armv7a-19_r01.zip - - - - - - - - - - - - 7 - - 01 - Android SDK Samples for Android API 7, revision 1 - http://developer.android.com/sdk/ - - - 7677831 - 51e4907f60f248ede5c58b54ce7b6ae0b473e0ca - samples-2.1_r01-linux.zip - - - - - - - - - 8 - - 01 - Android SDK Samples for Android API 8, revision 1 - http://developer.android.com/sdk/ - - - 7969716 - d16d8bf2dd84cedf73b98b948d66461c8f19d6fb - samples-2.2_r01-linux.zip - - - - - - - - - 9 - - 01 - Android SDK Samples for Android API 9, revision 1 - http://developer.android.com/sdk/ - - - - 8516326 - 36f7dd6c8b5dbb50b3cf3e3ac5209f3fe55db2aa - samples-2.3_r01-linux.zip - - - - - - - - - 10 - - 01 - Android SDK Samples for Android API 10, revision 1 - http://developer.android.com/sdk/ - - - 8539583 - 93b0c3f3bdf5b07f1f115100b4954f0665297a0d - samples-2.3.3_r01-linux.zip - - - - - - - - - 11 - - 01 - Android SDK Samples for Android API 11, revision 1 - http://developer.android.com/sdk/ - - - 11976920 - 3749ace584631270268d65bb1d0ad61b0d691682 - samples-3.0_r01-linux.zip - - - - - - - - - 12 - - 01 - Android SDK Samples for Android API 12, revision 1 - http://developer.android.com/sdk/ - - - 12150514 - df0ace37cbca73373fe94080f94c71557cac73a7 - samples-3.1_r01-linux.zip - - - - - - - - - 13 - - 01 - Android SDK Samples for Android API 13, revision 1 - http://developer.android.com/sdk/ - - - 12193502 - 078bcf1abc1cb8921f3fa482c252963a782bed60 - samples-3.2_r01-linux.zip - - - - - - - - 2 - 14 - - - 16253619 - 1312c22ab0b650e26835cc3945d4ff8cea183416 - samples-14_r02.zip - - - - - - - - 2 - 15 - - - 16366656 - 042f368c5b09eca4d278264e6dbf9c12c5f73d1f - samples-15_r02.zip - - - - - - - - 1 - 16 - - - 14729945 - dce3a2d41db50a381ef47ee8bddbe928520e685e - samples-16_r01.zip - - - - - - - - 1 - 17 - - - 14840030 - 12d58cb26503610fc05bd7618c434cc6f983bc41 - samples-17_r01.zip - - - - - - - - 1 - 18 - - - 19897793 - 73e879ce46c04a6e63ad1a9107018b4782945007 - samples-18_r01.zip - - - - - - - - 1 - 19 - - - 20697510 - c2007694b5e5ad6737f647db8160155d5258cb7f - samples-19_r01.zip - - - - - - - - - - - 19 - 0 - 0 - - - - 1116358 - 755dcb5b5b72bbca90dd055eec4c8d0b1fce7cfd - platform-tools_r19-windows.zip - - - 1172749 - 66ee37daf8a2a8f1aa8939ccd4093658e30aa49b - platform-tools_r19-linux.zip - - - 1120849 - 69af30f488163dfc3da8cef1bb6cc7e8a6df5681 - platform-tools_r19-macosx.zip - - - - - - - - - - - 17 - 0 - 0 - - - - 11004914 - 899897d327b0bad492d3a40d3db4d96119c15bc0 - build-tools_r17-windows.zip - - - 11696007 - 2c2872bc3806aabf16a12e3959c2183ddc866e6d - build-tools_r17-linux.zip - - - 12208114 - 602ee709be9dbb8f179b1e4075148a57f9419930 - build-tools_r17-macosx.zip - - - - - - - - - - - 18 - 0 - 1 - - - - 15413527 - a6c2afd0b6289d589351956d2f5212b37014ca7d - build-tools_r18.0.1-windows.zip - - - 16627330 - f11618492b0d2270c332325d45d752d3656a9640 - build-tools_r18.0.1-linux.zip - - - 16633121 - d84f5692fb44d60fc53e5b2507cebf9f24626902 - build-tools_r18.0.1-macosx.zip - - - - - - - - - 18 - 1 - 0 - - - - 19659547 - 3a9810fc8559ab03c09378f07531e8cae2f1db30 - build-tools_r18.1-windows.zip - - - 20229298 - f314a0599e51397f0886fe888b50dd98f2f050d8 - build-tools_r18.1-linux.zip - - - 20451524 - 16ddb299b8b43063e5bb3387ec17147c5053dfd8 - build-tools_r18.1-macosx.zip - - - - - - - - - 18 - 1 - 1 - - - - 19660000 - c4605066e2f851387ea70bc1442b1968bd7b4a15 - build-tools_r18.1.1-windows.zip - - - 20229760 - 68c9acbfc0cec2d51b19efaed39831a17055d998 - build-tools_r18.1.1-linux.zip - - - 20452157 - a9d9d37f6ddf859e57abc78802a77aaa166e48d4 - build-tools_r18.1.1-macosx.zip - - - - - - - - - 19 - 0 - 0 - - - - 20611447 - 6edf505c20f5ece9c48fa0aff9a90488f9654d52 - build-tools_r19-windows.zip - - - 21339943 - 55c1a6cf632e7d346f0002b275ec41fd3137fd83 - build-tools_r19-linux.zip - - - 21441270 - 86ec1c12db1bc446b7bcaefc5cc14eb361044e90 - build-tools_r19-macosx.zip - - - - - - - - - - - 22 - 3 - - - 18 - - - - 108726734 - 1cdc825c9a84ccf69b4a6386076a881d962dd7a9 - tools_r22.3-windows.zip - - - 101224750 - f76251916a23cb3d85e579f01cc6711a334f9064 - tools_r22.3-linux.zip - - - 74859563 - 697d7f6fa44f02e6894d0eeb948ea97e3cdc8c3c - tools_r22.3-macosx.zip - - - - - - - - - - 1 - 19 - - - 181765706 - 6c92bb045f75a2eabfbdc3e26ff64ce0a7a2b3fc - docs-19_r01.zip - - - - - - - - - - 1 - 14 - - - 16152383 - eaf4ed7dcac46e68516a1b4aa5b0d9e5a39a7555 - sources-14_r01.zip - - - - - - - - 2 - 15 - - - 16468746 - e5992a5747c9590783fbbdd700337bf0c9f6b1fa - sources-15_r02.zip - - - - - - - - 2 - 16 - - - 17876720 - 0f83c14ed333c45d962279ab5d6bc98a0269ef84 - sources-16_r02.zip - - - - - - - - 1 - 17 - - - 18976816 - 6f1f18cd2d2b1852d7f6892df9cee3823349d43a - sources-17_r01.zip - - - - - - - - 1 - 18 - - - 20226735 - 8b49fdf7433f4881a2bfb559b5dd05d8ec65fb78 - sources-18_r01.zip - - - - - - - - 1 - 19 - - - 21656670 - 91d9f5f4117723eecc4434b7de0e7f6295ea0508 - sources-19_r01.zip - - - - - diff --git a/pkgs/development/mobile/androidenv/sys-img-mips.xml b/pkgs/development/mobile/androidenv/sys-img-mips.xml deleted file mode 100644 index c839d283f4e..00000000000 --- a/pkgs/development/mobile/androidenv/sys-img-mips.xml +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - - - 1 - Android 4.0.4 - 15 - mips - - - - 117503178 - a753bb4a6783124dad726c500ce9aec9d2c1b2d9 - sysimg_mips-15_r01.zip - - - - - - 4 - - Android 4.1.2 - 16 - mips - - - - 122482530 - 67943c54fb3943943ffeb05fdd39c0b753681f6e - sysimg_mips-16_r04.zip - - - - - - 1 - - Android 4.2.1 - 17 - mips - - - - 131781761 - f0c6e153bd584c29e51b5c9723cfbf30f996a05d - sysimg_mips-17_r01.zip - - - - - diff --git a/pkgs/development/mobile/androidenv/sys-img-x86.xml b/pkgs/development/mobile/androidenv/sys-img-x86.xml deleted file mode 100644 index 75ddf73eb1d..00000000000 --- a/pkgs/development/mobile/androidenv/sys-img-x86.xml +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - - - - Android SDK Platform 2.3.7 - 2 - 10 - x86 - - - - 55463895 - 34e2436f69606cdfe35d3ef9112f0c64e3ff021d - sysimg_x86-10_r02.zip - - - - - - Android SDK Platform 4.0.4 - 1 - 15 - x86 - - - - 112619605 - d540325952e0f097509622b9e685737584b83e40 - sysimg_x86-15_r01.zip - - - - - - Android SDK Platform 4.1.1 - 1 - 16 - x86 - - - - 131840348 - 9d35bcaa4f9b40443941f32b8a50337f413c021a - sysimg_x86-16_r01.zip - - - - - - Android SDK Platform 4.2 - 1 - 17 - x86 - - - - 138799122 - ddb3313e8dcd07926003f7b828eafea1115ea35b - sysimg_x86-17_r01.zip - - - - - - Android SDK Platform 4.3 - 1 - 18 - x86 - - - - 155656419 - f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1 - sysimg_x86-18_r01.zip - - - - - diff --git a/pkgs/development/mobile/androidenv/sys-img.xml b/pkgs/development/mobile/androidenv/sys-img.xml new file mode 100644 index 00000000000..5d2b0f7a883 --- /dev/null +++ b/pkgs/development/mobile/androidenv/sys-img.xml @@ -0,0 +1,712 @@ + + + + + To get started with the Android SDK, you must agree to the following terms and conditions. + +This is the Android SDK License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and SDK library files and tools , if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the SDK, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. + +2.4 If you will use the SDK internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. + +3. SDK License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the SDK, personally or internally within your company or organization, solely to develop and distribute applications to run on the Android platform. + +3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the SDK for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. + +3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. + +4. Use of the SDK by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the SDK to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action when Google ceases to provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the SDK, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE SDK MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. + +14. General Legal Terms + +14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + To get started with the Android SDK Preview, you must agree to the following terms and conditions. +As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk. The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data. + +This is the Android SDK Preview License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview. + +2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity. + +3. Preview License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform. + +3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview. + +3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview. + +4. Use of the Preview by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of: +(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and +(B) Google issues a final release version of the Android SDK. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available. + +14. General Legal Terms + +14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + + + + + + + + + + + + 2 + Android SDK Platform 4.0 + 14 + armeabi-v7a + + + 99621822 + d8991b0c06b18d7d6ed4169d67460ee1add6661b + sysimg_armv7a-14_r02.zip + + + + default + + + + + 2 + Android SDK Platform 4.0.3 + 15 + armeabi-v7a + + + 96227377 + 1bf977d6cb4e0ad38dceac0c4863d1caa21f326e + sysimg_armv7a-15_r02.zip + + + + default + + + + + 3 + Android SDK Platform 4.1 + 16 + armeabi-v7a + + + 112528368 + d1cddb23f17aad5821a089c403d4cddad2cf9ef7 + sysimg_armv7a-16_r03.zip + + + + default + + + + + 2 + Android SDK Platform 4.2.2 + 17 + armeabi-v7a + + + 116553808 + 1c321cda1af793b84d47d1a8d15f85444d265e3c + sysimg_armv7a-17_r02.zip + + + + default + + + + + 2 + Android SDK Platform 4.3 + 18 + armeabi-v7a + + + 125457135 + 4a1a93200210d8c42793324362868846f67401ab + sysimg_armv7a-18_r02.zip + + + + default + + + + + 2 + Android SDK Platform 4.4.2 + 19 + armeabi-v7a + + + 158478012 + e0d375397e28e3d5d9577a00132463a4696248e5 + sysimg_armv7a-19_r02.zip + + + + default + + + + + 1 + Android SDK Platform L + 20 + L + armeabi-v7a + default + + + 227716008 + 1d5d81a7078b5b2a685620d93e1e04a51d2e786a + sysimg_armv7a-L_r01.zip + + + + + + + + 1 + Android SDK Platform L + 20 + L + x86 + default + + + 245850484 + c2d32d6244821ff59f370469778525f6a5345010 + sysimg_x86-L_r01.zip + + + + + + + + Android SDK Platform 2.3.7 + 2 + 10 + x86 + + + + 55463895 + 34e2436f69606cdfe35d3ef9112f0c64e3ff021d + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-10_r02.zip + + + default + + + + Android SDK Platform 4.0.4 + 1 + 15 + x86 + + + + 112619605 + d540325952e0f097509622b9e685737584b83e40 + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-15_r01.zip + + + default + + + + Android SDK Platform 4.1.1 + 1 + 16 + x86 + + + + 131840348 + 9d35bcaa4f9b40443941f32b8a50337f413c021a + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-16_r01.zip + + + default + + + + Android SDK Platform 4.2 + 1 + 17 + x86 + + + + 138799122 + ddb3313e8dcd07926003f7b828eafea1115ea35b + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-17_r01.zip + + + default + + + + Android SDK Platform 4.3 + 1 + 18 + x86 + + + + 155656419 + f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1 + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-18_r01.zip + + + default + + + + + 2 + Android SDK Platform 4.4.2 + 19 + x86 + + + 178922720 + 8889cb418984a2a7916a359da7c429d2431ed060 + sysimg_x86-19_r02.zip + + + + default + + + + + + 1 + Android 4.0.4 + 15 + mips + + + + 117503178 + a753bb4a6783124dad726c500ce9aec9d2c1b2d9 + sysimg_mips-15_r01.zip + + + default + + + + 4 + + Android 4.1.2 + 16 + mips + + + + 122482530 + 67943c54fb3943943ffeb05fdd39c0b753681f6e + sysimg_mips-16_r04.zip + + + default + + + + 1 + + Android 4.2.1 + 17 + mips + + + + 131781761 + f0c6e153bd584c29e51b5c9723cfbf30f996a05d + sysimg_mips-17_r01.zip + + + default + + + diff --git a/pkgs/development/mobile/androidenv/sysimages.nix b/pkgs/development/mobile/androidenv/sysimages.nix index bbbf3a4fc68..ddc6dd99d39 100644 --- a/pkgs/development/mobile/androidenv/sysimages.nix +++ b/pkgs/development/mobile/androidenv/sysimages.nix @@ -14,113 +14,137 @@ in { sysimg_armeabi-v7a_14 = buildSystemImage { - name = "armeabi-v7a-14"; + name = "sysimg-armeabi-v7a-14"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-14_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-14_r02.zip; sha1 = "d8991b0c06b18d7d6ed4169d67460ee1add6661b"; }; }; sysimg_armeabi-v7a_15 = buildSystemImage { - name = "armeabi-v7a-15"; + name = "sysimg-armeabi-v7a-15"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-15_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-15_r02.zip; sha1 = "1bf977d6cb4e0ad38dceac0c4863d1caa21f326e"; }; }; sysimg_armeabi-v7a_16 = buildSystemImage { - name = "armeabi-v7a-16"; + name = "sysimg-armeabi-v7a-16"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-16_r03.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-16_r03.zip; sha1 = "d1cddb23f17aad5821a089c403d4cddad2cf9ef7"; }; }; sysimg_armeabi-v7a_17 = buildSystemImage { - name = "armeabi-v7a-17"; + name = "sysimg-armeabi-v7a-17"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-17_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-17_r02.zip; sha1 = "1c321cda1af793b84d47d1a8d15f85444d265e3c"; }; }; sysimg_armeabi-v7a_18 = buildSystemImage { - name = "armeabi-v7a-18"; + name = "sysimg-armeabi-v7a-18"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-18_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-18_r02.zip; sha1 = "4a1a93200210d8c42793324362868846f67401ab"; }; }; sysimg_armeabi-v7a_19 = buildSystemImage { - name = "armeabi-v7a-19"; + name = "sysimg-armeabi-v7a-19"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-19_r01.zip; - sha1 = "12dd1187dfd953b1ffcef5067d94578590f9e600"; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-19_r02.zip; + sha1 = "e0d375397e28e3d5d9577a00132463a4696248e5"; + }; + }; + + sysimg_armeabi-v7a_20 = buildSystemImage { + name = "sysimg-armeabi-v7a-20"; + src = fetchurl { + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-L_r01.zip; + sha1 = "1d5d81a7078b5b2a685620d93e1e04a51d2e786a"; + }; + }; + + sysimg_x86_20 = buildSystemImage { + name = "sysimg-x86-20"; + src = fetchurl { + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-L_r01.zip; + sha1 = "c2d32d6244821ff59f370469778525f6a5345010"; }; }; sysimg_x86_10 = buildSystemImage { - name = "x86-10"; + name = "sysimg-x86-10"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-10_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-10_r02.zip; sha1 = "34e2436f69606cdfe35d3ef9112f0c64e3ff021d"; }; }; sysimg_x86_15 = buildSystemImage { - name = "x86-15"; + name = "sysimg-x86-15"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-15_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-15_r01.zip; sha1 = "d540325952e0f097509622b9e685737584b83e40"; }; }; sysimg_x86_16 = buildSystemImage { - name = "x86-16"; + name = "sysimg-x86-16"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-16_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-16_r01.zip; sha1 = "9d35bcaa4f9b40443941f32b8a50337f413c021a"; }; }; sysimg_x86_17 = buildSystemImage { - name = "x86-17"; + name = "sysimg-x86-17"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-17_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-17_r01.zip; sha1 = "ddb3313e8dcd07926003f7b828eafea1115ea35b"; }; }; sysimg_x86_18 = buildSystemImage { - name = "x86-18"; + name = "sysimg-x86-18"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-18_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-18_r01.zip; sha1 = "f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1"; }; }; - sysimg_mips_15 = buildSystemImage { - name = "mips-15"; + sysimg_x86_19 = buildSystemImage { + name = "sysimg-x86-19"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-15_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-19_r02.zip; + sha1 = "8889cb418984a2a7916a359da7c429d2431ed060"; + }; + }; + + sysimg_mips_15 = buildSystemImage { + name = "sysimg-mips-15"; + src = fetchurl { + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_mips-15_r01.zip; sha1 = "a753bb4a6783124dad726c500ce9aec9d2c1b2d9"; }; }; sysimg_mips_16 = buildSystemImage { - name = "mips-16"; + name = "sysimg-mips-16"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-16_r04.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_mips-16_r04.zip; sha1 = "67943c54fb3943943ffeb05fdd39c0b753681f6e"; }; }; sysimg_mips_17 = buildSystemImage { - name = "mips-17"; + name = "sysimg-mips-17"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-17_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_mips-17_r01.zip; sha1 = "f0c6e153bd584c29e51b5c9723cfbf30f996a05d"; }; }; From 7b7fd5044fd41252d3f3da156e139b08ad6cb2ad Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Tue, 2 Sep 2014 19:19:03 +0200 Subject: [PATCH 199/789] androidsdk: remove obsolete workaround --- pkgs/development/mobile/androidenv/androidsdk.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix index 1a5cf9500cd..560753eecfc 100644 --- a/pkgs/development/mobile/androidenv/androidsdk.nix +++ b/pkgs/development/mobile/androidenv/androidsdk.nix @@ -48,9 +48,6 @@ stdenv.mkDerivation rec { done ''} - # Patch the path to the executable so that it can find sdkmanager.jar file - #sed -i -e 's|frameworkdir="\$progdir"|'"frameworkdir=$(echo $out/libexec/android-sdk-*/tools/lib)|" android - # The android script used SWT and wants to dynamically load some GTK+ stuff. # The following wrapper ensures that they can be found: wrapProgram `pwd`/android \ From 6734f37ec6b7d263374f0a6ef9a1cdeab68be1d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 2 Sep 2014 21:52:34 +0200 Subject: [PATCH 200/789] twinkle: disable parallel building, as it was failing http://hydra.nixos.org/build/13919809 --- .../networking/instant-messengers/twinkle/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/networking/instant-messengers/twinkle/default.nix b/pkgs/applications/networking/instant-messengers/twinkle/default.nix index 2e6b904c134..c7f33c1f580 100644 --- a/pkgs/applications/networking/instant-messengers/twinkle/default.nix +++ b/pkgs/applications/networking/instant-messengers/twinkle/default.nix @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { NIX_CFLAGS_LINK = "-Wl,--as-needed -lboost_regex -lasound -lzrtpcpp -lspeex -lspeexdsp"; - enableParallelBuilding = true; + #enableParallelBuilding = true; # fatal error: messageform.h: No such file or directory meta = with stdenv.lib; { homepage = http://www.twinklephone.com/; From e39b1f4ec8740e7dd34185c38464db5ac814eed5 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 02:09:52 +0400 Subject: [PATCH 201/789] Add a few meta-attribute descriptions; rewrite the meta-attribure list description to mean that it is expected that all used meta-attributes are described in the manual. --- doc/meta.xml | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/doc/meta.xml b/doc/meta.xml index e91f94d15c2..fc0ff977792 100644 --- a/doc/meta.xml +++ b/doc/meta.xml @@ -84,8 +84,7 @@ hello-2.3 A program that produces a familiar, friendly greeting
Standard meta-attributes -The following meta-attributes have a standard -interpretation: +It is expected that each meta-attribute is one of the following: @@ -112,12 +111,23 @@ interpretation: package. + + version + Package version. + + homepage The package’s homepage. Example: http://www.gnu.org/software/hello/manual/ + + downloadPage + The page where a link to the current version can be found. Example: + http://ftp.gnu.org/gnu/hello/ + + license The license for the package. One from the @@ -195,6 +205,16 @@ meta.hydraPlatforms = []; they are fixed. + + updateWalker + If set to true, the package is + tested to be updated correctly by the update-walker.sh + script without additional settings. Such packages have + meta.version set and their homepage (or + the page specified by meta.downloadPage) contains + a direct link to the package tarball. + + @@ -256,9 +276,9 @@ to indicate the specific license: - +
- + From 9659d0f4fb5cc596e7574dc5dbaf0b4075fb1955 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 2 Sep 2014 15:36:25 -0700 Subject: [PATCH 202/789] nixos/dnsmasq: Fix regressions during the systemd update --- nixos/modules/services/networking/dnsmasq.nix | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/nixos/modules/services/networking/dnsmasq.nix b/nixos/modules/services/networking/dnsmasq.nix index d2a8af6ac8b..31d57a648bf 100644 --- a/nixos/modules/services/networking/dnsmasq.nix +++ b/nixos/modules/services/networking/dnsmasq.nix @@ -11,7 +11,10 @@ let conf-file=/etc/dnsmasq-conf.conf resolv-file=/etc/dnsmasq-resolv.conf ''} - ${cfg.extraConfig} + ${flip concatMapStrings cfg.servers (server: '' + server=${server} + '')} + ${cfg.extraConfig} ''; in @@ -43,12 +46,10 @@ in default = []; example = [ "8.8.8.8" "8.8.4.4" ]; description = '' - The parameter to dnsmasq -S. + The dns servers which dnsmasq should query. ''; }; - - extraConfig = mkOption { type = types.string; default = ""; @@ -67,8 +68,8 @@ in config = mkIf config.services.dnsmasq.enable { - environment.systemPackages = [ dnsmasq ] - ++ (if cfg.resolveLocalQueries then [ pkgs.openresolv ] else []); + networking.nameservers = + optional cfg.resolveLocalQueries "127.0.0.1"; services.dbus.packages = [ dnsmasq ]; @@ -83,10 +84,14 @@ in description = "dnsmasq daemon"; after = [ "network.target" ]; wantedBy = [ "multi-user.target" ]; + path = [ dnsmasq ]; + preStart = '' + touch /etc/dnsmasq-{conf,resolv}.conf + dnsmasq --test + ''; serviceConfig = { Type = "dbus"; BusName = "uk.org.thekelleys.dnsmasq"; - ExecStartPre = "${dnsmasq}/bin/dnsmasq --test"; ExecStart = "${dnsmasq}/bin/dnsmasq -k --enable-dbus --user=dnsmasq -C ${dnsmasqConf}"; ExecReload = "${dnsmasq}/bin/kill -HUP $MAINPID"; }; From 0bf05a02f4a1637a1b9a06ce886350e2ea9f2b96 Mon Sep 17 00:00:00 2001 From: Michael Fellinger Date: Wed, 3 Sep 2014 02:30:04 +0200 Subject: [PATCH 203/789] diod: add systemd service and config --- nixos/modules/module-list.nix | 1 + .../services/network-filesystems/diod.nix | 164 ++++++++++++++++++ 2 files changed, 165 insertions(+) create mode 100644 nixos/modules/services/network-filesystems/diod.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 76d1ed8a9d4..3604753c880 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -192,6 +192,7 @@ ./services/network-filesystems/openafs-client/default.nix ./services/network-filesystems/rsyncd.nix ./services/network-filesystems/samba.nix + ./services/network-filesystems/diod.nix ./services/networking/amuled.nix ./services/networking/atftpd.nix ./services/networking/avahi-daemon.nix diff --git a/nixos/modules/services/network-filesystems/diod.nix b/nixos/modules/services/network-filesystems/diod.nix new file mode 100644 index 00000000000..efd8e1018f1 --- /dev/null +++ b/nixos/modules/services/network-filesystems/diod.nix @@ -0,0 +1,164 @@ +{ config, lib, pkgs, ... }: +with lib; +let + cfg = config.services.diod; + + diodBool = b: if b then "1" else "0"; + + diodConfig = pkgs.writeText "diod.conf" '' + allsquash = ${diodBool cfg.allsquash} + auth_required = ${diodBool cfg.authRequired} + exportall = ${diodBool cfg.exportall} + exportopts = "${concatStringsSep "," cfg.exportopts}" + exports = { ${concatStringsSep ", " (map (s: ''"${s}"'' ) cfg.exports)} } + listen = { ${concatStringsSep ", " (map (s: ''"${s}"'' ) cfg.listen)} } + logdest = "${cfg.logdest}" + nwthreads = ${toString cfg.nwthreads} + squashuser = "${cfg.squashuser}" + statfs_passthru = ${diodBool cfg.statfsPassthru} + userdb = ${diodBool cfg.userdb} + ${cfg.extraConfig} + ''; +in +{ + options = { + services.diod = { + enable = mkOption { + type = types.bool; + default = false; + description = "Whether to enable the diod 9P file server."; + }; + + listen = mkOption { + type = types.listOf types.str; + default = [ ]; + description = '' + [ "IP:PORT" [,"IP:PORT",...] ] + List the interfaces and ports that diod should listen on. + ''; + }; + + exports = mkOption { + type = types.listOf types.path; + default = []; + description = '' + List the file systems that clients will be allowed to mount. All paths should + be fully qualified. The exports table can include two types of element: + a string element (as above), + or an alternate table element form { path="/path", opts="ro" }. + In the alternate form, the (optional) opts attribute is a comma-separated list + of export options. The two table element forms can be mixed in the exports + table. Note that although diod will not traverse file system boundaries for a + given mount due to inode uniqueness constraints, subdirectories of a file + system can be separately exported. + ''; + }; + + exportall = mkOption { + type = types.bool; + default = true; + description = '' + Export all file systems listed in /proc/mounts. If new file systems are mounted + after diod has started, they will become immediately mountable. If there is a + duplicate entry for a file system in the exports list, any options listed in + the exports entry will apply. + ''; + }; + + exportopts = mkOption { + type = types.listOf types.str; + default = []; + description = '' + Establish a default set of export options. These are overridden, not appended + to, by opts attributes in an "exports" entry. + ''; + }; + + nwthreads = mkOption { + type = types.int; + default = 16; + description = '' + Sets the (fixed) number of worker threads created to handle 9P + requests for a unique aname. The default is 16 per aname. + ''; + }; + + authRequired = mkOption { + type = types.bool; + default = false; + description = '' + Allow clients to connect without authentication, i.e. without a valid MUNGE credential. + Default is false. + ''; + }; + + userdb = mkOption { + type = types.bool; + default = false; + description = '' + This option disables password/group lookups. It allows any uid to attach and + assumes gid=uid, and supplementary groups contain only the primary gid. + Default is false + ''; + }; + + allsquash = mkOption { + type = types.bool; + default = true; + description = '' + Remap all users to "nobody". The attaching user need not be present in the + password file. + Default is true + ''; + }; + + squashuser = mkOption { + type = types.str; + default = "nobody"; + description = '' + Change the squash user from the default of "nobody". The squash user must be + present in the password file. + ''; + }; + + logdest = mkOption { + type = types.str; + default = "syslog:daemon:err"; + description = '' + Set the destination for logging. + DEST is in the form of "syslog:facility:level" or "filename". + The default is "syslog:daemon:err". + ''; + }; + + + statfsPassthru = mkOption { + type = types.bool; + default = false; + description = '' + This option configures statfs to return the host file system's type + rather than V9FS_MAGIC. The default is false (return V9FS_MAGIC). + ''; + }; + + extraConfig = mkOption { + type = types.lines; + default = ""; + description = "Extra configuration options for diod.conf."; + }; + }; + }; + + config = mkIf config.services.diod.enable { + environment.systemPackages = [ pkgs.diod ]; + + systemd.services.diod = { + description = "diod 9P file server"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + serviceConfig = { + ExecStart = "${pkgs.diod}/sbin/diod -c ${diodConfig}"; + }; + }; + }; +} From e805c78ed3a19c362305a2c7633e0d718c4e2665 Mon Sep 17 00:00:00 2001 From: Michael Fellinger Date: Wed, 3 Sep 2014 02:55:00 +0200 Subject: [PATCH 204/789] diod: remove redundant default doc --- nixos/modules/services/network-filesystems/diod.nix | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/nixos/modules/services/network-filesystems/diod.nix b/nixos/modules/services/network-filesystems/diod.nix index efd8e1018f1..1ab5f52d438 100644 --- a/nixos/modules/services/network-filesystems/diod.nix +++ b/nixos/modules/services/network-filesystems/diod.nix @@ -79,7 +79,7 @@ in default = 16; description = '' Sets the (fixed) number of worker threads created to handle 9P - requests for a unique aname. The default is 16 per aname. + requests for a unique aname. ''; }; @@ -88,7 +88,6 @@ in default = false; description = '' Allow clients to connect without authentication, i.e. without a valid MUNGE credential. - Default is false. ''; }; @@ -98,7 +97,6 @@ in description = '' This option disables password/group lookups. It allows any uid to attach and assumes gid=uid, and supplementary groups contain only the primary gid. - Default is false ''; }; @@ -108,7 +106,6 @@ in description = '' Remap all users to "nobody". The attaching user need not be present in the password file. - Default is true ''; }; @@ -116,8 +113,7 @@ in type = types.str; default = "nobody"; description = '' - Change the squash user from the default of "nobody". The squash user must be - present in the password file. + Change the squash user. The squash user must be present in the password file. ''; }; @@ -126,8 +122,7 @@ in default = "syslog:daemon:err"; description = '' Set the destination for logging. - DEST is in the form of "syslog:facility:level" or "filename". - The default is "syslog:daemon:err". + The value has the form of "syslog:facility:level" or "filename". ''; }; @@ -137,7 +132,7 @@ in default = false; description = '' This option configures statfs to return the host file system's type - rather than V9FS_MAGIC. The default is false (return V9FS_MAGIC). + rather than V9FS_MAGIC. ''; }; From ccc758f414821d7115dfddc3c05ab1adfb1a11f7 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 2 Sep 2014 18:56:53 -0700 Subject: [PATCH 205/789] nixos/install-grub: Fix typo --- nixos/modules/system/boot/loader/grub/install-grub.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index 4e196d67e93..668e74a9722 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -135,7 +135,7 @@ sub GrubFs { if ($fs->type eq 'btrfs') { my ($status, @id_info) = runCommand("btrfs subvol show @{[$fs->mount]}"); if ($status != 0) { - die "Failed to retreive subvolume info for @{[$fs->mount]}\n"; + die "Failed to retrieve subvolume info for @{[$fs->mount]}\n"; } my @ids = join("", @id_info) =~ m/Object ID:[ \t\n]*([^ \t\n]*)/; if ($#ids > 0) { From c369c4afbd8ca0e1d43e53408383bb623fe41a79 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 2 Sep 2014 18:57:09 -0700 Subject: [PATCH 206/789] grub2: Fix zfs support --- pkgs/tools/misc/grub/2.0x.nix | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix index e3c07af759c..fdb2ae556e8 100644 --- a/pkgs/tools/misc/grub/2.0x.nix +++ b/pkgs/tools/misc/grub/2.0x.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, autogen, flex, bison, python, autoconf, automake +{ stdenv, fetchurl, fetchgit, autogen, flex, bison, python, autoconf, automake , gettext, ncurses, libusb, freetype, qemu, devicemapper , linuxPackages ? null , efiSupport ? false @@ -14,9 +14,9 @@ let canEfi = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) efiSystems); - prefix = "grub${if efiSupport then "-efi" else ""}"; + prefix = "grub${if efiSupport then "-efi" else ""}${optionalString zfsSupport "-zfs"}"; - version = "2.02-beta2"; + version = "2.02-git-1de3a4"; unifont_bdf = fetchurl { url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz"; @@ -30,10 +30,10 @@ assert zfsSupport -> linuxPackages != null && linuxPackages.zfs != null; stdenv.mkDerivation rec { name = "${prefix}-${version}"; - src = fetchurl { - name = "grub-2.02-beta2.tar.xz"; - url = "http://alpha.gnu.org/gnu/grub/grub-2.02~beta2.tar.xz"; - sha256 = "13a13fhc0wf473dn73zhga15mjvkg6vqp4h25dxg4n7am2r05izn"; + src = fetchgit { + url = "git://git.savannah.gnu.org/grub.git"; + rev = "1de3a48098053aaebd35232bd73e3ce3f3fdf51c"; + sha256 = "0d1953nmi251czkm1dmd7vnm3iz2rkqbznlp6ph33va0d7kw1kfc"; }; nativeBuildInputs = [ autogen flex bison python autoconf automake ]; From 626a666da53229e463549bca0d24e2b21a4801cd Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Wed, 3 Sep 2014 05:36:45 +0200 Subject: [PATCH 207/789] gummiboot/builder: fix timeout setting when unset The gummiboot-builder.py script is expecting the @timeout@ metavar to be substituted for either an empty string (in the case where a user has left the timeout unset) or the actual value set in the system configuration. However, the config.boot.loader.gummiboot.timeout option defaults to 'null', and due to the way pkgs.substituteAll works, the substitution for '@timeout@' is _never_ set to the empty string. This causes the builder script to put a bogus line into /boot/loader/loader.conf: timeout @timeout@ Fix this by explicitly setting 'timeout' to the empty string when it's unset in the system configuration. Signed-off-by: Josh Cartwright --- nixos/modules/system/boot/loader/gummiboot/gummiboot.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/loader/gummiboot/gummiboot.nix b/nixos/modules/system/boot/loader/gummiboot/gummiboot.nix index e7a481e90a7..003f72b37f9 100644 --- a/nixos/modules/system/boot/loader/gummiboot/gummiboot.nix +++ b/nixos/modules/system/boot/loader/gummiboot/gummiboot.nix @@ -16,7 +16,7 @@ let nix = config.nix.package; - inherit (cfg) timeout; + timeout = if cfg.timeout != null then cfg.timeout else ""; inherit (efi) efiSysMountPoint canTouchEfiVariables; }; From 28af151e1a0c010da8b98d3a33245ab78b3cfd9a Mon Sep 17 00:00:00 2001 From: Justin Bedo Date: Wed, 3 Sep 2014 15:48:33 +1000 Subject: [PATCH 208/789] Added missing curl dependency to RCurl package --- pkgs/development/r-modules/cran-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/r-modules/cran-packages.nix b/pkgs/development/r-modules/cran-packages.nix index dcffbccb510..e986944d45d 100644 --- a/pkgs/development/r-modules/cran-packages.nix +++ b/pkgs/development/r-modules/cran-packages.nix @@ -38,7 +38,7 @@ let - inherit (pkgs) R fetchurl stdenv; + inherit (pkgs) R fetchurl stdenv curl; buildRPackage = import ./generic-builder.nix R; @@ -4252,7 +4252,7 @@ let self = _self // overrides; _self = with self; { rcqp = derive { name="rcqp"; version="0.3"; sha256="0vxcgchnxdsdamclcshjbkn00ysmfmqp586a36wsyv3zqrd6rg7p"; depends=[plyr]; }; Rcsdp = derive { name="Rcsdp"; version="0.1.53"; sha256="0x91hyx6z9f4zd7djxlq7dnznmr9skyzwbbcbjyid9hxbcfyvhcp"; depends=[]; }; rCUR = derive { name="rCUR"; version="1.3"; sha256="1f38xbc5n91k2y88cg0sv1z2p4g5vl7v2k1024f42f7526g2p2lx"; depends=[MASS Matrix lattice]; }; - RCurl = derive { name="RCurl"; version="1.95-4.3"; sha256="1gyjarnxwz3ldpm1vwq9ls6al66rvs7yshzhrl1fv9lbm1qi8yfg"; depends=[bitops]; }; + RCurl = derive { name="RCurl"; version="1.95-4.3"; sha256="1gyjarnxwz3ldpm1vwq9ls6al66rvs7yshzhrl1fv9lbm1qi8yfg"; depends=[bitops curl]; }; Rd2roxygen = derive { name="Rd2roxygen"; version="1.4"; sha256="09dxgp65zac5b9mxbjrvy3ihdwski98xva5afq659b8yfvkviq4g"; depends=[roxygen2 formatR]; }; rda = derive { name="rda"; version="1.0.2-2"; sha256="1g2q7c0y138i9r7jgjrlpqznvwpqsj6f7vljqqfzh2l6kcj43vjj"; depends=[]; }; rdatamarket = derive { name="rdatamarket"; version="0.6.4"; sha256="16a1yxvf841505a8gh7jf09fx6ipysymrpvsd4b07xdg5hvbzx25"; depends=[zoo RCurl RJSONIO]; }; From 74343ca3abe9968e1f59eda56627023a07270440 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 10:11:18 +0400 Subject: [PATCH 209/789] =?UTF-8?q?Fix=20handling=20of=20paths=20with=20mu?= =?UTF-8?q?ltuple=20mounts=20=E2=80=94=20for=20example=20rootfs=20first=20?= =?UTF-8?q?mount=20for=20/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/tools/filesystems/btrfsprogs/default.nix | 2 ++ .../filesystems/btrfsprogs/multiple_mounts.patch | 13 +++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 pkgs/tools/filesystems/btrfsprogs/multiple_mounts.patch diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix index 02f214ad430..79566d15bb9 100644 --- a/pkgs/tools/filesystems/btrfsprogs/default.nix +++ b/pkgs/tools/filesystems/btrfsprogs/default.nix @@ -16,6 +16,8 @@ stdenv.mkDerivation rec { asciidoc xmlto docbook_xml_dtd_45 docbook_xsl libxslt ]; + patches = [ ./multiple_mounts.patch ]; + # for btrfs to get the rpath to libgcc_s, needed for pthread_cancel to work NIX_CFLAGS_LINK = "-lgcc_s"; diff --git a/pkgs/tools/filesystems/btrfsprogs/multiple_mounts.patch b/pkgs/tools/filesystems/btrfsprogs/multiple_mounts.patch new file mode 100644 index 00000000000..0ba6550a2d3 --- /dev/null +++ b/pkgs/tools/filesystems/btrfsprogs/multiple_mounts.patch @@ -0,0 +1,13 @@ +Only in btrfs-progs-v3.16-orig: btrfs-progs-v3.16 +diff -U3 -r btrfs-progs-v3.16-orig/utils.c btrfs-progs-v3.16/utils.c +--- btrfs-progs-v3.16-orig/utils.c 2014-09-03 09:57:45.644858545 +0400 ++++ btrfs-progs-v3.16/utils.c 2014-09-03 09:59:26.968855663 +0400 +@@ -2360,7 +2360,7 @@ + len = strlen(ent->mnt_dir); + if (strncmp(ent->mnt_dir, path, len) == 0) { + /* match found */ +- if (longest_matchlen < len) { ++ if ((longest_matchlen < len) || (longest_matchlen==len && not_btrfs)) { + free(longest_match); + longest_matchlen = len; + longest_match = strdup(ent->mnt_dir); From 33a3f76ee4e4fe7040aef35d5c01e23f68b4797b Mon Sep 17 00:00:00 2001 From: Nathan Bijnens Date: Wed, 3 Sep 2014 10:39:48 +0400 Subject: [PATCH 210/789] Copy.com: client #3617 --- nixos/modules/module-list.nix | 1 + nixos/modules/module-list.nix.orig | 372 + .../modules/services/networking/copy-com.nix | 53 + .../networking/copy-com/default.nix | 58 + pkgs/top-level/all-packages.nix | 2 + pkgs/top-level/all-packages.nix.orig | 11653 ++++++++++++++++ 6 files changed, 12139 insertions(+) mode change 100644 => 100755 nixos/modules/module-list.nix create mode 100644 nixos/modules/module-list.nix.orig create mode 100644 nixos/modules/services/networking/copy-com.nix create mode 100644 pkgs/applications/networking/copy-com/default.nix create mode 100644 pkgs/top-level/all-packages.nix.orig diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix old mode 100644 new mode 100755 index 3604753c880..7679d3e6ac4 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -203,6 +203,7 @@ ./services/networking/cjdns.nix ./services/networking/cntlm.nix ./services/networking/connman.nix + ./services/networking/copy-com.nix ./services/networking/ddclient.nix ./services/networking/dhcpcd.nix ./services/networking/dhcpd.nix diff --git a/nixos/modules/module-list.nix.orig b/nixos/modules/module-list.nix.orig new file mode 100644 index 00000000000..3604753c880 --- /dev/null +++ b/nixos/modules/module-list.nix.orig @@ -0,0 +1,372 @@ +[ + ./config/fonts/corefonts.nix + ./config/fonts/fontconfig.nix + ./config/fonts/fontdir.nix + ./config/fonts/fonts.nix + ./config/fonts/ghostscript.nix + ./config/gnu.nix + ./config/gtk-exe-env.nix + ./config/i18n.nix + ./config/krb5.nix + ./config/ldap.nix + ./config/networking.nix + ./config/no-x-libs.nix + ./config/nsswitch.nix + ./config/power-management.nix + ./config/pulseaudio.nix + ./config/qt-plugin-env.nix + ./config/shells-environment.nix + ./config/swap.nix + ./config/sysctl.nix + ./config/system-environment.nix + ./config/system-path.nix + ./config/timezone.nix + ./config/vpnc.nix + ./config/unix-odbc-drivers.nix + ./config/users-groups.nix + ./config/zram.nix + ./hardware/all-firmware.nix + ./hardware/cpu/amd-microcode.nix + ./hardware/cpu/intel-microcode.nix + ./hardware/network/b43.nix + ./hardware/network/intel-2100bg.nix + ./hardware/network/intel-2200bg.nix + ./hardware/network/intel-3945abg.nix + ./hardware/network/ralink.nix + ./hardware/network/rtl8192c.nix + ./hardware/opengl.nix + ./hardware/pcmcia.nix + ./hardware/video/bumblebee.nix + ./hardware/video/nvidia.nix + ./installer/tools/nixos-checkout.nix + ./installer/tools/tools.nix + ./misc/assertions.nix + ./misc/check-config.nix + ./misc/crashdump.nix + ./misc/ids.nix + ./misc/lib.nix + ./misc/locate.nix + ./misc/meta.nix + ./misc/nixpkgs.nix + ./misc/passthru.nix + ./misc/version.nix + ./programs/atop.nix + ./programs/bash/bash.nix + ./programs/bash/command-not-found.nix + ./programs/blcr.nix + ./programs/dconf.nix + ./programs/environment.nix + ./programs/info.nix + ./programs/nano.nix + ./programs/screen.nix + ./programs/shadow.nix + ./programs/shell.nix + ./programs/ssh.nix + ./programs/ssmtp.nix + ./programs/uim.nix + ./programs/venus.nix + ./programs/wvdial.nix + ./programs/freetds.nix + ./programs/zsh/zsh.nix + ./rename.nix + ./security/apparmor.nix + ./security/apparmor-suid.nix + ./security/ca.nix + ./security/duosec.nix + ./security/grsecurity.nix + ./security/pam.nix + ./security/pam_usb.nix + ./security/polkit.nix + ./security/prey.nix + ./security/rngd.nix + ./security/rtkit.nix + ./security/setuid-wrappers.nix + ./security/sudo.nix + ./services/amqp/activemq/default.nix + ./services/amqp/rabbitmq.nix + ./services/audio/alsa.nix + ./services/audio/fuppes.nix + ./services/audio/mpd.nix + ./services/audio/mopidy.nix + ./services/backup/almir.nix + ./services/backup/bacula.nix + ./services/backup/mysql-backup.nix + ./services/backup/postgresql-backup.nix + ./services/backup/rsnapshot.nix + ./services/backup/sitecopy-backup.nix + ./services/backup/tarsnap.nix + ./services/continuous-integration/jenkins/default.nix + ./services/continuous-integration/jenkins/slave.nix + ./services/databases/4store-endpoint.nix + ./services/databases/4store.nix + ./services/databases/couchdb.nix + ./services/databases/firebird.nix + ./services/databases/influxdb.nix + ./services/databases/memcached.nix + ./services/databases/monetdb.nix + ./services/databases/mongodb.nix + ./services/databases/mysql.nix + ./services/databases/neo4j.nix + ./services/databases/openldap.nix + ./services/databases/postgresql.nix + ./services/databases/redis.nix + ./services/databases/virtuoso.nix + ./services/desktops/accountsservice.nix + ./services/desktops/geoclue2.nix + ./services/desktops/gnome3/at-spi2-core.nix + ./services/desktops/gnome3/evolution-data-server.nix + ./services/desktops/gnome3/gnome-documents.nix + ./services/desktops/gnome3/gnome-keyring.nix + ./services/desktops/gnome3/gnome-online-accounts.nix + ./services/desktops/gnome3/gnome-online-miners.nix + ./services/desktops/gnome3/gnome-user-share.nix + ./services/desktops/gnome3/gvfs.nix + ./services/desktops/gnome3/seahorse.nix + ./services/desktops/gnome3/sushi.nix + ./services/desktops/gnome3/tracker.nix + ./services/desktops/telepathy.nix + ./services/games/ghost-one.nix + ./services/games/minecraft-server.nix + ./services/hardware/acpid.nix + ./services/hardware/amd-hybrid-graphics.nix + ./services/hardware/bluetooth.nix + ./services/hardware/nvidia-optimus.nix + ./services/hardware/pcscd.nix + ./services/hardware/pommed.nix + ./services/hardware/sane.nix + ./services/hardware/tcsd.nix + ./services/hardware/thinkfan.nix + ./services/hardware/udev.nix + ./services/hardware/udisks2.nix + ./services/hardware/upower.nix + ./services/logging/klogd.nix + ./services/logging/logcheck.nix + ./services/logging/logrotate.nix + ./services/logging/logstash.nix + ./services/logging/rsyslogd.nix + ./services/logging/syslogd.nix + ./services/logging/syslog-ng.nix + ./services/mail/dovecot.nix + ./services/mail/freepops.nix + ./services/mail/mail.nix + ./services/mail/mlmmj.nix + ./services/mail/opensmtpd.nix + ./services/mail/postfix.nix + ./services/mail/spamassassin.nix + #./services/misc/autofs.nix + ./services/misc/cgminer.nix + ./services/misc/dictd.nix + ./services/misc/disnix.nix + ./services/misc/felix.nix + ./services/misc/folding-at-home.nix + ./services/misc/gitolite.nix + ./services/misc/gpsd.nix + ./services/misc/nix-daemon.nix + ./services/misc/nix-gc.nix + ./services/misc/nixos-manual.nix + ./services/misc/nix-ssh-serve.nix + ./services/misc/rippled.nix + ./services/misc/rogue.nix + ./services/misc/siproxd.nix + ./services/misc/svnserve.nix + ./services/misc/synergy.nix + ./services/misc/uhub.nix + ./services/misc/zookeeper.nix + ./services/monitoring/apcupsd.nix + ./services/monitoring/dd-agent.nix + ./services/monitoring/graphite.nix + ./services/monitoring/monit.nix + ./services/monitoring/munin.nix + ./services/monitoring/nagios.nix + ./services/monitoring/riemann.nix + ./services/monitoring/riemann-dash.nix + ./services/monitoring/smartd.nix + ./services/monitoring/statsd.nix + ./services/monitoring/systemhealth.nix + ./services/monitoring/ups.nix + ./services/monitoring/uptime.nix + ./services/monitoring/zabbix-agent.nix + ./services/monitoring/zabbix-server.nix + ./services/network-filesystems/drbd.nix + ./services/network-filesystems/nfsd.nix + ./services/network-filesystems/openafs-client/default.nix + ./services/network-filesystems/rsyncd.nix + ./services/network-filesystems/samba.nix + ./services/network-filesystems/diod.nix + ./services/networking/amuled.nix + ./services/networking/atftpd.nix + ./services/networking/avahi-daemon.nix + ./services/networking/bind.nix + ./services/networking/bitlbee.nix + ./services/networking/btsync.nix + ./services/networking/chrony.nix + ./services/networking/cjdns.nix + ./services/networking/cntlm.nix + ./services/networking/connman.nix + ./services/networking/ddclient.nix + ./services/networking/dhcpcd.nix + ./services/networking/dhcpd.nix + ./services/networking/dnsmasq.nix + ./services/networking/ejabberd.nix + ./services/networking/firewall.nix + ./services/networking/flashpolicyd.nix + ./services/networking/freenet.nix + ./services/networking/git-daemon.nix + ./services/networking/gnunet.nix + ./services/networking/gogoclient.nix + ./services/networking/gvpe.nix + ./services/networking/haproxy.nix + ./services/networking/hostapd.nix + ./services/networking/ifplugd.nix + ./services/networking/iodined.nix + ./services/networking/ircd-hybrid/default.nix + ./services/networking/kippo.nix + ./services/networking/minidlna.nix + ./services/networking/murmur.nix + ./services/networking/nat.nix + ./services/networking/networkmanager.nix + ./services/networking/ngircd.nix + ./services/networking/notbit.nix + ./services/networking/nsd.nix + ./services/networking/ntopng.nix + ./services/networking/ntpd.nix + ./services/networking/oidentd.nix + ./services/networking/openfire.nix + ./services/networking/openntpd.nix + ./services/networking/openvpn.nix + ./services/networking/polipo.nix + ./services/networking/prayer.nix + ./services/networking/privoxy.nix + ./services/networking/quassel.nix + ./services/networking/radicale.nix + ./services/networking/radvd.nix + ./services/networking/rdnssd.nix + ./services/networking/rpcbind.nix + ./services/networking/sabnzbd.nix + ./services/networking/searx.nix + ./services/networking/spiped.nix + ./services/networking/ssh/lshd.nix + ./services/networking/ssh/sshd.nix + ./services/networking/supybot.nix + ./services/networking/syncthing.nix + ./services/networking/tcpcrypt.nix + ./services/networking/teamspeak3.nix + ./services/networking/tftpd.nix + ./services/networking/unbound.nix + ./services/networking/unifi.nix + ./services/networking/vsftpd.nix + ./services/networking/wakeonlan.nix + ./services/networking/websockify.nix + ./services/networking/wicd.nix + ./services/networking/wpa_supplicant.nix + ./services/networking/xinetd.nix + ./services/networking/znc.nix + ./services/printing/cupsd.nix + ./services/scheduling/atd.nix + ./services/scheduling/cron.nix + ./services/scheduling/fcron.nix + ./services/search/elasticsearch.nix + ./services/search/solr.nix + ./services/security/clamav.nix + ./services/security/fail2ban.nix + ./services/security/fprot.nix + ./services/security/frandom.nix + ./services/security/haveged.nix + ./services/security/torify.nix + ./services/security/tor.nix + ./services/security/torsocks.nix + ./services/system/dbus.nix + ./services/system/kerberos.nix + ./services/system/nscd.nix + ./services/system/uptimed.nix + ./services/torrent/deluge.nix + ./services/torrent/transmission.nix + ./services/ttys/agetty.nix + ./services/ttys/gpm.nix + ./services/ttys/kmscon.nix + ./services/web-servers/apache-httpd/default.nix + ./services/web-servers/fcgiwrap.nix + ./services/web-servers/jboss/default.nix + ./services/web-servers/lighttpd/cgit.nix + ./services/web-servers/lighttpd/default.nix + ./services/web-servers/lighttpd/gitweb.nix + ./services/web-servers/nginx/default.nix + ./services/web-servers/phpfpm.nix + ./services/web-servers/tomcat.nix + ./services/web-servers/varnish/default.nix + ./services/web-servers/winstone.nix + ./services/web-servers/zope2.nix + ./services/x11/desktop-managers/default.nix + ./services/x11/display-managers/auto.nix + ./services/x11/display-managers/default.nix + ./services/x11/display-managers/gdm.nix + ./services/x11/display-managers/kdm.nix + ./services/x11/display-managers/lightdm.nix + ./services/x11/display-managers/slim.nix + ./services/x11/hardware/multitouch.nix + ./services/x11/hardware/synaptics.nix + ./services/x11/hardware/wacom.nix + ./services/x11/redshift.nix + ./services/x11/window-managers/awesome.nix + #./services/x11/window-managers/compiz.nix + ./services/x11/window-managers/default.nix + ./services/x11/window-managers/fluxbox.nix + ./services/x11/window-managers/icewm.nix + ./services/x11/window-managers/bspwm.nix + ./services/x11/window-managers/metacity.nix + ./services/x11/window-managers/none.nix + ./services/x11/window-managers/twm.nix + ./services/x11/window-managers/wmii.nix + ./services/x11/window-managers/xmonad.nix + ./services/x11/xfs.nix + ./services/x11/xserver.nix + ./system/activation/activation-script.nix + ./system/activation/top-level.nix + ./system/boot/emergency-mode.nix + ./system/boot/kernel.nix + ./system/boot/kexec.nix + ./system/boot/loader/efi.nix + ./system/boot/loader/generations-dir/generations-dir.nix + ./system/boot/loader/grub/grub.nix + ./system/boot/loader/grub/memtest.nix + ./system/boot/loader/gummiboot/gummiboot.nix + ./system/boot/loader/init-script/init-script.nix + ./system/boot/loader/raspberrypi/raspberrypi.nix + ./system/boot/luksroot.nix + ./system/boot/modprobe.nix + ./system/boot/shutdown.nix + ./system/boot/stage-1.nix + ./system/boot/stage-2.nix + ./system/boot/systemd.nix + ./system/boot/tmp.nix + ./system/etc/etc.nix + ./system/upstart/upstart.nix + ./tasks/cpu-freq.nix + ./tasks/encrypted-devices.nix + ./tasks/filesystems.nix + ./tasks/filesystems/btrfs.nix + ./tasks/filesystems/cifs.nix + ./tasks/filesystems/ext.nix + ./tasks/filesystems/f2fs.nix + ./tasks/filesystems/nfs.nix + ./tasks/filesystems/reiserfs.nix + ./tasks/filesystems/unionfs-fuse.nix + ./tasks/filesystems/vfat.nix + ./tasks/filesystems/xfs.nix + ./tasks/filesystems/zfs.nix + ./tasks/kbd.nix + ./tasks/lvm.nix + ./tasks/network-interfaces.nix + ./tasks/scsi-link-power-management.nix + ./tasks/swraid.nix + ./tasks/trackpoint.nix + ./testing/service-runner.nix + ./virtualisation/container-config.nix + ./virtualisation/containers.nix + ./virtualisation/docker.nix + ./virtualisation/libvirtd.nix + #./virtualisation/nova.nix + ./virtualisation/openvswitch.nix + ./virtualisation/virtualbox-guest.nix + #./virtualisation/xen-dom0.nix +] diff --git a/nixos/modules/services/networking/copy-com.nix b/nixos/modules/services/networking/copy-com.nix new file mode 100644 index 00000000000..36bd29109b8 --- /dev/null +++ b/nixos/modules/services/networking/copy-com.nix @@ -0,0 +1,53 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + + cfg = config.services.copy-com; + +in + +{ + options = { + + services.copy-com = { + + enable = mkOption { + default = false; + description = " + Enable the copy.com client. + + The first time copy.com is run, it needs to be configured. Before enabling run + copy_console manually. + "; + }; + + user = mkOption { + description = "The user for which copy should run."; + }; + + debug = mkOption { + default = false; + description = "Output more."; + }; + }; + }; + + config = mkIf cfg.enable { + environment.systemPackages = [ pkgs.postfix ]; + + systemd.services."copy-com-${cfg.user}" = { + description = "Copy.com Client"; + after = [ "network.target" "local-fs.target" ]; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ExecStart = "${pkgs.copy-com}/bin/copy_console ${if cfg.debug then "-consoleOutput -debugToConsole=dirwatch,path-watch,csm_path,csm -debug -console" else ""}"; + User = "${cfg.user}"; + }; + + }; + }; + +} + diff --git a/pkgs/applications/networking/copy-com/default.nix b/pkgs/applications/networking/copy-com/default.nix new file mode 100644 index 00000000000..98679e9609e --- /dev/null +++ b/pkgs/applications/networking/copy-com/default.nix @@ -0,0 +1,58 @@ +{ stdenv, coreutils, fetchurl, patchelf, gcc }: + +let + arch = if stdenv.system == "x86_64-linux" then "x86_64" + else if stdenv.system == "i686-linux" then "x86" + else if stdenv.system == "armv6-linux" then "armv6h" + else throw "Copy.com client for: ${stdenv.system} not supported!"; + + interpreter = if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2" + else if stdenv.system == "i686-linux" then "ld-linux.so.2" + else if stdenv.system == "armv6-linux" then "ld-linux.so.2" + else throw "Copy.com client for: ${stdenv.system} not supported!"; + + appdir = "opt/copy"; + +in stdenv.mkDerivation { + + name = "copy-com-1.4"; + + src = fetchurl { + # Note: copy.com doesn't version this file. Annoying. + url = "https://copy.com/install/linux/Copy.tgz"; + sha256 = "f8da6dbfdaac71c4c4e9102671cf8fbe4ac5cb1dac63464783b8b62a7939b6fa"; + }; + + buildInputs = [ coreutils patchelf ]; + + phases = "unpackPhase installPhase"; + + installPhase = '' + mkdir -p $out/opt + cp -r ${arch} "$out/${appdir}" + ensureDir "$out/bin" + ln -s "$out/${appdir}/CopyConsole" "$out/bin/copy_console" + ln -s "$out/${appdir}/CopyAgent" "$out/bin/copy_agent" + ln -s "$out/${appdir}/CopyCmd" "$out/bin/copy_cmd" + patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \ + "$out/${appdir}/CopyConsole" + + RPATH=${gcc.gcc}/lib:$out/${appdir} + echo "updating rpaths to: $RPATH" + find "$out/${appdir}" -type f -a -perm +0100 \ + -print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \; + + + + ''; + + meta = { + homepage = http://copy.com; + description = "Copy.com Client"; + # Closed Source unfortunately. + license = stdenv.lib.licenses.unfree; + maintainers = with stdenv.lib.maintainers; [ nathan-gs ]; + # NOTE: Copy.com itself only works on linux, so this is ok. + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2fc56937e36..b7462553522 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9780,6 +9780,8 @@ let bittorrentSync = callPackage ../applications/networking/bittorrentsync { }; + copy-com = callPackage ../applications/networking/copy-com { }; + dropbox = callPackage ../applications/networking/dropbox { }; dropbox-cli = callPackage ../applications/networking/dropbox-cli { }; diff --git a/pkgs/top-level/all-packages.nix.orig b/pkgs/top-level/all-packages.nix.orig new file mode 100644 index 00000000000..6e5caa3af9e --- /dev/null +++ b/pkgs/top-level/all-packages.nix.orig @@ -0,0 +1,11653 @@ +/* This file composes the Nix Packages collection. That is, it + imports the functions that build the various packages, and calls + them with appropriate arguments. The result is a set of all the + packages in the Nix Packages collection for some particular + platform. */ + + +{ # The system (e.g., `i686-linux') for which to build the packages. + system ? builtins.currentSystem + +, # The standard environment to use. Only used for bootstrapping. If + # null, the default standard environment is used. + bootStdenv ? null + +, # Non-GNU/Linux OSes are currently "impure" platforms, with their libc + # outside of the store. Thus, GCC, GFortran, & co. must always look for + # files in standard system directories (/usr/include, etc.) + noSysDirs ? (system != "x86_64-darwin" + && system != "x86_64-freebsd" && system != "i686-freebsd" + && system != "x86_64-kfreebsd-gnu") + + # More flags for the bootstrapping of stdenv. +, gccWithCC ? true +, gccWithProfiling ? true + +, # Allow a configuration attribute set to be passed in as an + # argument. Otherwise, it's read from $NIXPKGS_CONFIG or + # ~/.nixpkgs/config.nix. + config ? null + +, crossSystem ? null +, platform ? null +}: + + +let config_ = config; platform_ = platform; in # rename the function arguments + +let + + lib = import ../../lib; + + # The contents of the configuration file found at $NIXPKGS_CONFIG or + # $HOME/.nixpkgs/config.nix. + # for NIXOS (nixos-rebuild): use nixpkgs.config option + config = + let + toPath = builtins.toPath; + getEnv = x: if builtins ? getEnv then builtins.getEnv x else ""; + pathExists = name: + builtins ? pathExists && builtins.pathExists (toPath name); + + configFile = getEnv "NIXPKGS_CONFIG"; + homeDir = getEnv "HOME"; + configFile2 = homeDir + "/.nixpkgs/config.nix"; + + configExpr = + if config_ != null then config_ + else if configFile != "" && pathExists configFile then import (toPath configFile) + else if homeDir != "" && pathExists configFile2 then import (toPath configFile2) + else {}; + + in + # allow both: + # { /* the config */ } and + # { pkgs, ... } : { /* the config */ } + if builtins.isFunction configExpr + then configExpr { inherit pkgs; } + else configExpr; + + # Allow setting the platform in the config file. Otherwise, let's use a reasonable default (pc) + + platformAuto = let + platforms = (import ./platforms.nix); + in + if system == "armv6l-linux" then platforms.raspberrypi + else if system == "armv5tel-linux" then platforms.sheevaplug + else if system == "mips64el-linux" then platforms.fuloong2f_n32 + else if system == "x86_64-linux" then platforms.pc64 + else if system == "i686-linux" then platforms.pc32 + else platforms.pcBase; + + platform = if platform_ != null then platform_ + else config.platform or platformAuto; + + # Helper functions that are exported through `pkgs'. + helperFunctions = + stdenvAdapters // + (import ../build-support/trivial-builders.nix { inherit (pkgs) stdenv; inherit (pkgs.xorg) lndir; }); + + stdenvAdapters = + import ../stdenv/adapters.nix pkgs; + + + # Allow packages to be overriden globally via the `packageOverrides' + # configuration option, which must be a function that takes `pkgs' + # as an argument and returns a set of new or overriden packages. + # The `packageOverrides' function is called with the *original* + # (un-overriden) set of packages, allowing packageOverrides + # attributes to refer to the original attributes (e.g. "foo = + # ... pkgs.foo ..."). + pkgs = applyGlobalOverrides (config.packageOverrides or (pkgs: {})); + + + # Return the complete set of packages, after applying the overrides + # returned by the `overrider' function (see above). Warning: this + # function is very expensive! + applyGlobalOverrides = overrider: + let + # Call the overrider function. We don't want stdenv overrides + # in the case of cross-building, or otherwise the basic + # overrided packages will not be built with the crossStdenv + # adapter. + overrides = overrider pkgsOrig // + (lib.optionalAttrs (pkgsOrig.stdenv ? overrides && crossSystem == null) (pkgsOrig.stdenv.overrides pkgsOrig)); + + # The un-overriden packages, passed to `overrider'. + pkgsOrig = pkgsFun pkgs {}; + + # The overriden, final packages. + pkgs = pkgsFun pkgs overrides; + in pkgs; + + + # The package compositions. Yes, this isn't properly indented. + pkgsFun = pkgs: overrides: + with helperFunctions; + let defaultScope = pkgs // pkgs.xorg; self = self_ // overrides; + self_ = with self; helperFunctions // { + + # Make some arguments passed to all-packages.nix available + inherit system platform; + + # Allow callPackage to fill in the pkgs argument + inherit pkgs; + + + # We use `callPackage' to be able to omit function arguments that + # can be obtained from `pkgs' or `pkgs.xorg' (i.e. `defaultScope'). + # Use `newScope' for sets of packages in `pkgs' (see e.g. `gnome' + # below). + callPackage = newScope {}; + + newScope = extra: lib.callPackageWith (defaultScope // extra); + + + # Override system. This is useful to build i686 packages on x86_64-linux. + forceSystem = system: kernel: (import ./all-packages.nix) { + inherit system; + platform = platform // { kernelArch = kernel; }; + inherit bootStdenv noSysDirs gccWithCC gccWithProfiling config + crossSystem; + }; + + + # Used by wine, firefox with debugging version of Flash, ... + pkgsi686Linux = forceSystem "i686-linux" "i386"; + + callPackage_i686 = lib.callPackageWith (pkgsi686Linux // pkgsi686Linux.xorg); + + + # For convenience, allow callers to get the path to Nixpkgs. + path = ../..; + + + ### Symbolic names. + + x11 = xlibsWrapper; + + # `xlibs' is the set of X library components. This used to be the + # old modular X llibraries project (called `xlibs') but now it's just + # the set of packages in the modular X.org tree (which also includes + # non-library components like the server, drivers, fonts, etc.). + xlibs = xorg // {xlibs = xlibsWrapper;}; + + + ### Helper functions. + + inherit lib config stdenvAdapters; + + inherit (lib) lowPrio hiPrio appendToName makeOverridable; + inherit (misc) versionedDerivation; + + # Applying this to an attribute set will cause nix-env to look + # inside the set for derivations. + recurseIntoAttrs = attrs: attrs // { recurseForDerivations = true; }; + + builderDefs = lib.composedArgsAndFun (import ../build-support/builder-defs/builder-defs.nix) { + inherit stringsWithDeps lib stdenv writeScript + fetchurl fetchmtn fetchgit; + }; + + builderDefsPackage = builderDefs.builderDefsPackage builderDefs; + + stringsWithDeps = lib.stringsWithDeps; + + + ### Nixpkgs maintainer tools + + nix-generate-from-cpan = callPackage ../../maintainers/scripts/nix-generate-from-cpan.nix { }; + + nixpkgs-lint = callPackage ../../maintainers/scripts/nixpkgs-lint.nix { }; + + + ### STANDARD ENVIRONMENT + + + allStdenvs = import ../stdenv { + inherit system platform config; + allPackages = args: import ./all-packages.nix ({ inherit config system; } // args); + }; + + defaultStdenv = allStdenvs.stdenv // { inherit platform; }; + + stdenvCross = lowPrio (makeStdenvCross defaultStdenv crossSystem binutilsCross gccCrossStageFinal); + + stdenv = + if bootStdenv != null then (bootStdenv // {inherit platform;}) else + if crossSystem != null then + stdenvCross + else + let + changer = config.replaceStdenv or null; + in if changer != null then + changer { + # We import again all-packages to avoid recursivities. + pkgs = import ./all-packages.nix { + # We remove packageOverrides to avoid recursivities + config = removeAttrs config [ "replaceStdenv" ]; + }; + } + else + defaultStdenv; + + stdenvApple = stdenvAdapters.overrideGCC allStdenvs.stdenvNative gccApple; + + forceNativeDrv = drv : if crossSystem == null then drv else + (drv // { crossDrv = drv.nativeDrv; }); + + # A stdenv capable of building 32-bit binaries. On x86_64-linux, + # it uses GCC compiled with multilib support; on i686-linux, it's + # just the plain stdenv. + stdenv_32bit = lowPrio ( + if system == "x86_64-linux" then + overrideGCC stdenv gcc48_multi + else + stdenv); + + + ### BUILD SUPPORT + + attrSetToDir = arg: import ../build-support/upstream-updater/attrset-to-dir.nix { + inherit writeTextFile stdenv lib; + theAttrSet = arg; + }; + + autoreconfHook = makeSetupHook + { substitutions = { inherit autoconf automake libtool; }; } + ../build-support/setup-hooks/autoreconf.sh; + + buildEnv = import ../build-support/buildenv { + inherit (pkgs) runCommand perl; + }; + + buildFHSChrootEnv = import ../build-support/build-fhs-chrootenv { + inherit stdenv glibc glibcLocales gcc coreutils diffutils findutils; + inherit gnused gnugrep gnutar gzip bzip2 bashInteractive xz shadow gawk; + inherit less buildEnv; + }; + + dotnetenv = import ../build-support/dotnetenv { + inherit stdenv; + dotnetfx = dotnetfx40; + }; + + scatterOutputHook = makeSetupHook {} ../build-support/setup-hooks/scatter_output.sh; + + vsenv = callPackage ../build-support/vsenv { + vs = vs90wrapper; + }; + + fetchbower = import ../build-support/fetchbower { + inherit stdenv git; + inherit (nodePackages) fetch-bower; + }; + + fetchbzr = import ../build-support/fetchbzr { + inherit stdenv bazaar; + }; + + fetchcvs = import ../build-support/fetchcvs { + inherit stdenv cvs; + }; + + fetchdarcs = import ../build-support/fetchdarcs { + inherit stdenv darcs nix; + }; + + fetchgit = import ../build-support/fetchgit { + inherit stdenv git cacert; + }; + + fetchgitPrivate = import ../build-support/fetchgit/private.nix { + inherit fetchgit writeScript openssh stdenv; + }; + + fetchgitrevision = import ../build-support/fetchgitrevision runCommand git; + + fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or {}); + + packer = callPackage ../development/tools/packer { }; + + fetchpatch = callPackage ../build-support/fetchpatch { }; + + fetchsvn = import ../build-support/fetchsvn { + inherit stdenv subversion openssh; + sshSupport = true; + }; + + fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion; + + fetchsvnssh = import ../build-support/fetchsvnssh { + inherit stdenv subversion openssh expect; + sshSupport = true; + }; + + fetchhg = import ../build-support/fetchhg { + inherit stdenv mercurial nix; + }; + + # `fetchurl' downloads a file from the network. + fetchurl = import ../build-support/fetchurl { + inherit curl stdenv; + }; + + # A wrapper around fetchurl that generates miror://gnome URLs automatically + fetchurlGnome = callPackage ../build-support/fetchurl/gnome.nix { }; + + # fetchurlBoot is used for curl and its dependencies in order to + # prevent a cyclic dependency (curl depends on curl.tar.bz2, + # curl.tar.bz2 depends on fetchurl, fetchurl depends on curl). It + # uses the curl from the previous bootstrap phase (e.g. a statically + # linked curl in the case of stdenv-linux). + fetchurlBoot = stdenv.fetchurlBoot; + + fetchzip = import ../build-support/fetchzip { inherit lib fetchurl unzip; }; + + fetchFromGitHub = { owner, repo, rev, sha256 }: fetchzip { + name = "${repo}-${rev}-src"; + url = "https://github.com/${owner}/${repo}/archive/${rev}.tar.gz"; + inherit sha256; + }; + + resolveMirrorURLs = {url}: fetchurl { + showURLs = true; + inherit url; + }; + + libredirect = callPackage ../build-support/libredirect { }; + + makeDesktopItem = import ../build-support/make-desktopitem { + inherit stdenv; + }; + + makeAutostartItem = import ../build-support/make-startupitem { + inherit stdenv; + inherit lib; + }; + + makeInitrd = {contents, compressor ? "gzip -9"}: + import ../build-support/kernel/make-initrd.nix { + inherit stdenv perl perlArchiveCpio cpio contents ubootChooser compressor; + }; + + makeWrapper = makeSetupHook { } ../build-support/setup-hooks/make-wrapper.sh; + + makeModulesClosure = { kernel, rootModules, allowMissing ? false }: + import ../build-support/kernel/modules-closure.nix { + inherit stdenv kmod kernel nukeReferences rootModules allowMissing; + }; + + pathsFromGraph = ../build-support/kernel/paths-from-graph.pl; + + srcOnly = args: (import ../build-support/src-only) ({inherit stdenv; } // args); + + substituteAll = import ../build-support/substitute/substitute-all.nix { + inherit stdenv; + }; + + replaceDependency = import ../build-support/replace-dependency.nix { + inherit runCommand nix lib; + }; + + nukeReferences = callPackage ../build-support/nuke-references/default.nix { }; + + vmTools = import ../build-support/vm/default.nix { + inherit pkgs; + }; + + releaseTools = import ../build-support/release/default.nix { + inherit pkgs; + }; + + composableDerivation = (import ../../lib/composable-derivation.nix) { + inherit pkgs lib; + }; + + platforms = import ./platforms.nix; + + setJavaClassPath = makeSetupHook { } ../build-support/setup-hooks/set-java-classpath.sh; + + fixDarwinDylibNames = makeSetupHook { } ../build-support/setup-hooks/fix-darwin-dylib-names.sh; + + keepBuildTree = makeSetupHook { } ../build-support/setup-hooks/keep-build-tree.sh; + + enableGCOVInstrumentation = makeSetupHook { } ../build-support/setup-hooks/enable-coverage-instrumentation.sh; + + makeGCOVReport = makeSetupHook + { deps = [ pkgs.lcov pkgs.enableGCOVInstrumentation ]; } + ../build-support/setup-hooks/make-coverage-analysis-report.sh; + + + ### TOOLS + + abduco = callPackage ../tools/misc/abduco { }; + + acct = callPackage ../tools/system/acct { }; + + acoustidFingerprinter = callPackage ../tools/audio/acoustid-fingerprinter { + ffmpeg = ffmpeg_1; + }; + + actdiag = pythonPackages.actdiag; + + adom = callPackage ../games/adom { }; + + aefs = callPackage ../tools/filesystems/aefs { }; + + aegisub = callPackage ../applications/video/aegisub { + wxGTK = wxGTK30; + lua = lua5_1; + }; + + aespipe = callPackage ../tools/security/aespipe { }; + + aescrypt = callPackage ../tools/misc/aescrypt { }; + + ahcpd = callPackage ../tools/networking/ahcpd { }; + + aircrackng = callPackage ../tools/networking/aircrack-ng { }; + + analog = callPackage ../tools/admin/analog {}; + + apktool = callPackage ../development/tools/apktool { + buildTools = androidenv.buildTools; + }; + + apt-offline = callPackage ../tools/misc/apt-offline { }; + + archivemount = callPackage ../tools/filesystems/archivemount { }; + + arandr = callPackage ../tools/X11/arandr { }; + + arcanist = callPackage ../development/tools/misc/arcanist {}; + + arduino_core = callPackage ../development/arduino/arduino-core { + jdk = jdk; + jre = jdk; + }; + + argyllcms = callPackage ../tools/graphics/argyllcms {}; + + arp-scan = callPackage ../tools/misc/arp-scan { }; + + ascii = callPackage ../tools/text/ascii { }; + + asymptote = builderDefsPackage ../tools/graphics/asymptote { + inherit freeglut ghostscriptX imagemagick fftw boehmgc + mesa ncurses readline gsl libsigsegv python zlib perl + texinfo xz; + texLive = texLiveAggregationFun { + paths = [ texLive texLiveExtra texLiveCMSuper ]; + }; + }; + + awscli = callPackage ../tools/admin/awscli { }; + + ec2_api_tools = callPackage ../tools/virtualization/ec2-api-tools { }; + + ec2_ami_tools = callPackage ../tools/virtualization/ec2-ami-tools { }; + + altermime = callPackage ../tools/networking/altermime {}; + + amule = callPackage ../tools/networking/p2p/amule { }; + + amuleDaemon = appendToName "daemon" (amule.override { + monolithic = false; + daemon = true; + }); + + amuleGui = appendToName "gui" (amule.override { + monolithic = false; + client = true; + }); + + androidenv = import ../development/mobile/androidenv { + inherit pkgs; + pkgs_i686 = pkgsi686Linux; + }; + + apg = callPackage ../tools/security/apg { }; + + grc = callPackage ../tools/misc/grc { }; + + otool = callPackage ../os-specific/darwin/otool { }; + + pass = callPackage ../tools/security/pass { + gnupg = gnupg1compat; + }; + + setfile = callPackage ../os-specific/darwin/setfile { }; + + install_name_tool = callPackage ../os-specific/darwin/install_name_tool { }; + + xcodeenv = callPackage ../development/mobile/xcodeenv { }; + + titaniumenv = callPackage ../development/mobile/titaniumenv { + inherit pkgs; + pkgs_i686 = pkgsi686Linux; + }; + + inherit (androidenv) androidsdk_4_4 androidndk; + + aria2 = callPackage ../tools/networking/aria2 { }; + aria = aria2; + + at = callPackage ../tools/system/at { }; + + atftp = callPackage ../tools/networking/atftp {}; + + autogen = callPackage ../development/tools/misc/autogen { }; + + autojump = callPackage ../tools/misc/autojump { }; + + autorandr = callPackage ../tools/misc/autorandr { + inherit (xorg) xrandr xdpyinfo; + }; + + avahi = callPackage ../development/libraries/avahi { + qt4Support = config.avahi.qt4Support or false; + }; + + aws = callPackage ../tools/virtualization/aws { }; + + aws_mturk_clt = callPackage ../tools/misc/aws-mturk-clt { }; + + axel = callPackage ../tools/networking/axel { }; + + azureus = callPackage ../tools/networking/p2p/azureus { }; + + basex = callPackage ../tools/text/xml/basex { }; + + babeld = callPackage ../tools/networking/babeld { }; + + badvpn = callPackage ../tools/networking/badvpn {}; + + banner = callPackage ../games/banner {}; + + barcode = callPackage ../tools/graphics/barcode {}; + + bc = callPackage ../tools/misc/bc { }; + + bcache-tools = callPackage ../tools/filesystems/bcache-tools { }; + + bchunk = callPackage ../tools/cd-dvd/bchunk { }; + + bfr = callPackage ../tools/misc/bfr { }; + + bindfs = callPackage ../tools/filesystems/bindfs { }; + + bitbucket-cli = pythonPackages.bitbucket-cli; + + blockdiag = pythonPackages.blockdiag; + + bmon = callPackage ../tools/misc/bmon { }; + + bochs = callPackage ../applications/virtualization/bochs { wxSupport = false; }; + + boomerang = callPackage ../development/tools/boomerang { }; + + bootchart = callPackage ../tools/system/bootchart { }; + + bro = callPackage ../applications/networking/ids/bro { }; + + bsod = callPackage ../misc/emulators/bsod { }; + + btrfsProgs = callPackage ../tools/filesystems/btrfsprogs { }; + + bwm_ng = callPackage ../tools/networking/bwm-ng { }; + + byobu = callPackage ../tools/misc/byobu { }; + + capstone = callPackage ../development/libraries/capstone { }; + + catdoc = callPackage ../tools/text/catdoc { }; + + ccnet = callPackage ../tools/networking/ccnet { }; + + consul = callPackage ../servers/consul { }; + consul_ui = callPackage ../servers/consul/ui.nix { }; + + chntpw = callPackage ../tools/security/chntpw { }; + + coprthr = callPackage ../development/libraries/coprthr { + flex = flex_2_5_35; + }; + + crawl = callPackage ../games/crawl { lua = lua5; }; + + cv = callPackage ../tools/misc/cv { }; + + direnv = callPackage ../tools/misc/direnv { }; + + ditaa = callPackage ../tools/graphics/ditaa { }; + + dlx = callPackage ../misc/emulators/dlx { }; + + eggdrop = callPackage ../tools/networking/eggdrop { }; + + enca = callPackage ../tools/text/enca { }; + + fasd = callPackage ../tools/misc/fasd { + inherit (haskellPackages) pandoc; + }; + + fop = callPackage ../tools/typesetting/fop { }; + + mcrl = callPackage ../tools/misc/mcrl { }; + + mcrl2 = callPackage ../tools/misc/mcrl2 { }; + + mpdcron = callPackage ../tools/audio/mpdcron { }; + + syslogng = callPackage ../tools/system/syslog-ng { }; + + syslogng_incubator = callPackage ../tools/system/syslog-ng-incubator { }; + + rsyslog = callPackage ../tools/system/rsyslog { }; + + mcrypt = callPackage ../tools/misc/mcrypt { }; + + mcelog = callPackage ../os-specific/linux/mcelog { }; + + apparix = callPackage ../tools/misc/apparix { }; + + appdata-tools = callPackage ../tools/misc/appdata-tools { }; + + asciidoc = callPackage ../tools/typesetting/asciidoc { + inherit (pythonPackages) matplotlib numpy aafigure recursivePthLoader; + enableStandardFeatures = false; + }; + + asciidoc-full = appendToName "full" (asciidoc.override { + inherit (pythonPackages) pygments; + enableStandardFeatures = true; + }); + + autossh = callPackage ../tools/networking/autossh { }; + + bacula = callPackage ../tools/backup/bacula { }; + + beanstalkd = callPackage ../servers/beanstalkd { }; + + bgs = callPackage ../tools/X11/bgs { }; + + biber = callPackage ../tools/typesetting/biber { + inherit (perlPackages) + autovivification BusinessISBN BusinessISMN BusinessISSN ConfigAutoConf + DataCompare DataDump DateSimple EncodeEUCJPASCII EncodeHanExtra EncodeJIS2K + ExtUtilsLibBuilder FileSlurp IPCRun3 Log4Perl LWPProtocolHttps ListAllUtils + ListMoreUtils ModuleBuild MozillaCA ReadonlyXS RegexpCommon TextBibTeX + UnicodeCollate UnicodeLineBreak URI XMLLibXMLSimple XMLLibXSLT XMLWriter; + }; + + bibtextools = callPackage ../tools/typesetting/bibtex-tools { + inherit (strategoPackages016) strategoxt sdf; + }; + + bittorrent = callPackage ../tools/networking/p2p/bittorrent { + gui = true; + }; + + bittornado = callPackage ../tools/networking/p2p/bit-tornado { }; + + blueman = callPackage ../tools/bluetooth/blueman { + inherit (pythonPackages) notify; + }; + + bmrsa = builderDefsPackage (import ../tools/security/bmrsa/11.nix) { + inherit unzip; + }; + + bogofilter = callPackage ../tools/misc/bogofilter { }; + + bsdiff = callPackage ../tools/compression/bsdiff { }; + + btar = callPackage ../tools/backup/btar { }; + + bud = callPackage ../tools/networking/bud { + inherit (pythonPackages) gyp; + }; + + bup = callPackage ../tools/backup/bup { + inherit (pythonPackages) pyxattr pylibacl setuptools fuse; + inherit (haskellPackages) pandoc; + par2Support = (config.bup.par2Support or false); + }; + + ori = callPackage ../tools/backup/ori { }; + + atool = callPackage ../tools/archivers/atool { }; + + bzip2 = callPackage ../tools/compression/bzip2 { }; + + cabextract = callPackage ../tools/archivers/cabextract { }; + + cadaver = callPackage ../tools/networking/cadaver { }; + + cantata = callPackage ../applications/audio/cantata { }; + + can-utils = callPackage ../os-specific/linux/can-utils { }; + + ccid = callPackage ../tools/security/ccid { }; + + ccrypt = callPackage ../tools/security/ccrypt { }; + + cdecl = callPackage ../development/tools/cdecl { }; + + cdrdao = callPackage ../tools/cd-dvd/cdrdao { }; + + cdrkit = callPackage ../tools/cd-dvd/cdrkit { }; + + ceph = callPackage ../tools/filesystems/ceph { }; + + cfdg = builderDefsPackage ../tools/graphics/cfdg { + inherit libpng bison flex ffmpeg; + }; + + checkinstall = callPackage ../tools/package-management/checkinstall { }; + + cheetahTemplate = builderDefsPackage (import ../tools/text/cheetah-template/2.0.1.nix) { + inherit makeWrapper python; + }; + + chkrootkit = callPackage ../tools/security/chkrootkit { }; + + chrony = callPackage ../tools/networking/chrony { }; + + chunkfs = callPackage ../tools/filesystems/chunkfs { }; + + chunksync = callPackage ../tools/backup/chunksync { }; + + cjdns = callPackage ../tools/networking/cjdns { }; + + cksfv = callPackage ../tools/networking/cksfv { }; + + clementine = callPackage ../applications/audio/clementine { }; + + ciopfs = callPackage ../tools/filesystems/ciopfs { }; + + colord = callPackage ../tools/misc/colord { }; + + colord-gtk = callPackage ../tools/misc/colord-gtk { }; + + colordiff = callPackage ../tools/text/colordiff { }; + + concurrencykit = callPackage ../development/libraries/concurrencykit { }; + + connect = callPackage ../tools/networking/connect { }; + + conspy = callPackage ../os-specific/linux/conspy {}; + + connman = callPackage ../tools/networking/connman { }; + + connmanui = callPackage ../tools/networking/connmanui { }; + + convertlit = callPackage ../tools/text/convertlit { }; + + collectd = callPackage ../tools/system/collectd { }; + + colormake = callPackage ../development/tools/build-managers/colormake { }; + + cowsay = callPackage ../tools/misc/cowsay { }; + + cpuminer = callPackage ../tools/misc/cpuminer { }; + + cpuminer-multi = callPackage ../tools/misc/cpuminer-multi { }; + + cuetools = callPackage ../tools/cd-dvd/cuetools { }; + + unifdef = callPackage ../development/tools/misc/unifdef { }; + + "unionfs-fuse" = callPackage ../tools/filesystems/unionfs-fuse { }; + + usb_modeswitch = callPackage ../development/tools/misc/usb-modeswitch { }; + + anthy = callPackage ../tools/inputmethods/anthy { }; + + biosdevname = callPackage ../tools/networking/biosdevname { }; + + clamav = callPackage ../tools/security/clamav { }; + + cloc = callPackage ../tools/misc/cloc { + inherit (perlPackages) perl AlgorithmDiff RegexpCommon; + }; + + cloog = callPackage ../development/libraries/cloog { }; + + cloogppl = callPackage ../development/libraries/cloog-ppl { }; + + convmv = callPackage ../tools/misc/convmv { }; + + cool-old-term = callPackage ../applications/misc/cool-old-term { }; + + coreutils = callPackage ../tools/misc/coreutils + { + # TODO: Add ACL support for cross-Linux. + aclSupport = crossSystem == null && stdenv.isLinux; + }; + + cpio = callPackage ../tools/archivers/cpio { }; + + cromfs = callPackage ../tools/archivers/cromfs { }; + + cron = callPackage ../tools/system/cron { }; + + cudatoolkit5 = callPackage ../development/compilers/cudatoolkit/5.5.nix { + python = python26; + }; + + cudatoolkit6 = callPackage ../development/compilers/cudatoolkit/6.0.nix { + python = python26; + }; + + cudatoolkit = cudatoolkit5; + + curl = callPackage ../tools/networking/curl rec { + fetchurl = fetchurlBoot; + zlibSupport = true; + sslSupport = zlibSupport; + scpSupport = zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin; + }; + + curl3 = callPackage ../tools/networking/curl/7.15.nix rec { + zlibSupport = true; + sslSupport = zlibSupport; + }; + + cunit = callPackage ../tools/misc/cunit { }; + + curlftpfs = callPackage ../tools/filesystems/curlftpfs { }; + + cutter = callPackage ../tools/networking/cutter { }; + + dadadodo = builderDefsPackage (import ../tools/text/dadadodo) { }; + + daq = callPackage ../applications/networking/ids/daq { }; + + dar = callPackage ../tools/archivers/dar { }; + + davfs2 = callPackage ../tools/filesystems/davfs2 { }; + + dbench = callPackage ../development/tools/misc/dbench { }; + + dcraw = callPackage ../tools/graphics/dcraw { }; + + debian_devscripts = callPackage ../tools/misc/debian-devscripts { + inherit (perlPackages) CryptSSLeay LWP TimeDate DBFile FileDesktopEntry; + }; + + debootstrap = callPackage ../tools/misc/debootstrap { }; + + detox = callPackage ../tools/misc/detox { }; + + ddclient = callPackage ../tools/networking/ddclient { }; + + dd_rescue = callPackage ../tools/system/dd_rescue { }; + + ddrescue = callPackage ../tools/system/ddrescue { }; + + deluge = pythonPackages.deluge; + + desktop_file_utils = callPackage ../tools/misc/desktop-file-utils { }; + + despotify = callPackage ../development/libraries/despotify { }; + + dev86 = callPackage ../development/compilers/dev86 { }; + + dnsmasq = callPackage ../tools/networking/dnsmasq { }; + + dnstop = callPackage ../tools/networking/dnstop { }; + + dhcp = callPackage ../tools/networking/dhcp { }; + + dhcpcd = callPackage ../tools/networking/dhcpcd { }; + + di = callPackage ../tools/system/di { }; + + diffstat = callPackage ../tools/text/diffstat { }; + + diffutils = callPackage ../tools/text/diffutils { }; + + wgetpaste = callPackage ../tools/text/wgetpaste { }; + + dirmngr = callPackage ../tools/security/dirmngr { }; + + disper = callPackage ../tools/misc/disper { }; + + dmd = callPackage ../development/compilers/dmd { }; + + dmg2img = callPackage ../tools/misc/dmg2img { }; + + docbook2odf = callPackage ../tools/typesetting/docbook2odf { + inherit (perlPackages) PerlMagick; + }; + + docbook2x = callPackage ../tools/typesetting/docbook2x { + inherit (perlPackages) XMLSAX XMLParser XMLNamespaceSupport; + }; + + dosfstools = callPackage ../tools/filesystems/dosfstools { }; + + dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { }; + + dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { }; + + dolphinEmu = callPackage ../misc/emulators/dolphin-emu { }; + dolphinEmuMaster = callPackage ../misc/emulators/dolphin-emu/master.nix { }; + + dropbear = callPackage ../tools/networking/dropbear { }; + + dtach = callPackage ../tools/misc/dtach { }; + + duo-unix = callPackage ../tools/security/duo-unix { }; + + duplicity = callPackage ../tools/backup/duplicity { + inherit (pythonPackages) boto lockfile; + gnupg = gnupg1; + }; + + duply = callPackage ../tools/backup/duply { }; + + dvdplusrwtools = callPackage ../tools/cd-dvd/dvd+rw-tools { }; + + dvgrab = callPackage ../tools/video/dvgrab { }; + + dvtm = callPackage ../tools/misc/dvtm { }; + + e2fsprogs = callPackage ../tools/filesystems/e2fsprogs { }; + + easyrsa = callPackage ../tools/networking/easyrsa { }; + + ebook_tools = callPackage ../tools/text/ebook-tools { }; + + ecryptfs = callPackage ../tools/security/ecryptfs { }; + + editres = callPackage ../tools/graphics/editres { + inherit (xlibs) libXt libXaw; + inherit (xorg) utilmacros; + }; + + edk2 = callPackage ../development/compilers/edk2 { }; + + emscripten = callPackage ../development/compilers/emscripten { }; + + emscriptenfastcomp = callPackage ../development/compilers/emscripten-fastcomp { }; + + efibootmgr = callPackage ../tools/system/efibootmgr { }; + + efivar = callPackage ../tools/system/efivar { }; + + evemu = callPackage ../tools/system/evemu { }; + + elasticsearch = callPackage ../servers/search/elasticsearch { }; + + elasticsearchPlugins = recurseIntoAttrs ( + callPackage ../servers/search/elasticsearch/plugins.nix { } + ); + + emv = callPackage ../tools/misc/emv { }; + + enblendenfuse = callPackage ../tools/graphics/enblend-enfuse { }; + + encfs = callPackage ../tools/filesystems/encfs { }; + + enscript = callPackage ../tools/text/enscript { }; + + ethtool = callPackage ../tools/misc/ethtool { }; + + ettercap = callPackage ../applications/networking/sniffers/ettercap { }; + + euca2ools = callPackage ../tools/virtualization/euca2ools { pythonPackages = python26Packages; }; + + evtest = callPackage ../applications/misc/evtest { }; + + exempi = callPackage ../development/libraries/exempi { }; + + execline = callPackage ../tools/misc/execline { }; + + exercism = callPackage ../development/tools/exercism { }; + + exif = callPackage ../tools/graphics/exif { }; + + exiftags = callPackage ../tools/graphics/exiftags { }; + + extundelete = callPackage ../tools/filesystems/extundelete { }; + + expect = callPackage ../tools/misc/expect { }; + + f2fs-tools = callPackage ../tools/filesystems/f2fs-tools { }; + + fabric = pythonPackages.fabric; + + fail2ban = callPackage ../tools/security/fail2ban { + systemd = systemd.override { + pythonSupport = true; + }; + }; + + fakeroot = callPackage ../tools/system/fakeroot { }; + + fakechroot = callPackage ../tools/system/fakechroot { }; + + fcitx = callPackage ../tools/inputmethods/fcitx { }; + + fcron = callPackage ../tools/system/fcron { }; + + fdm = callPackage ../tools/networking/fdm {}; + + figlet = callPackage ../tools/misc/figlet { }; + + file = callPackage ../tools/misc/file { }; + + filegive = callPackage ../tools/networking/filegive { }; + + fileschanged = callPackage ../tools/misc/fileschanged { }; + + findutils = callPackage ../tools/misc/findutils { }; + + finger_bsd = callPackage ../tools/networking/bsd-finger { }; + + fio = callPackage ../tools/system/fio { }; + + flashtool = callPackage_i686 ../development/mobile/flashtool { + platformTools = androidenv.platformTools; + }; + + flashrom = callPackage ../tools/misc/flashrom { }; + + flpsed = callPackage ../applications/editors/flpsed { }; + + flvstreamer = callPackage ../tools/networking/flvstreamer { }; + + libbsd = callPackage ../development/libraries/libbsd { }; + + lprof = callPackage ../tools/graphics/lprof { }; + + fdk_aac = callPackage ../development/libraries/fdk-aac { }; + + flvtool2 = callPackage ../tools/video/flvtool2 { }; + + fontforge = lowPrio (callPackage ../tools/misc/fontforge { }); + + fontforgeX = callPackage ../tools/misc/fontforge { + withX11 = true; + }; + + forktty = callPackage ../os-specific/linux/forktty {}; + + fortune = callPackage ../tools/misc/fortune { }; + + fox = callPackage ../development/libraries/fox/default.nix { + libpng = libpng12; + }; + + fox_1_6 = callPackage ../development/libraries/fox/fox-1.6.nix { }; + + fping = callPackage ../tools/networking/fping {}; + + fprot = callPackage ../tools/security/fprot { }; + + freeipmi = callPackage ../tools/system/freeipmi {}; + + freetalk = callPackage ../applications/networking/instant-messengers/freetalk { + guile = guile_1_8; + }; + + freetds = callPackage ../development/libraries/freetds { }; + + ftgl = callPackage ../development/libraries/ftgl { }; + + ftgl212 = callPackage ../development/libraries/ftgl/2.1.2.nix { }; + + fuppes = callPackage ../tools/networking/fuppes { + ffmpeg = ffmpeg_0_6_90; + }; + + fsfs = callPackage ../tools/filesystems/fsfs { }; + + fuse_zip = callPackage ../tools/filesystems/fuse-zip { }; + + fuse_exfat = callPackage ../tools/filesystems/fuse-exfat { }; + + dos2unix = callPackage ../tools/text/dos2unix { }; + + uni2ascii = callPackage ../tools/text/uni2ascii { }; + + g500-control = callPackage ../tools/misc/g500-control { }; + + galculator = callPackage ../applications/misc/galculator { + gtk = gtk3; + }; + + gawk = callPackage ../tools/text/gawk { }; + + gawkInteractive = appendToName "interactive" + (gawk.override { readlineSupport = true; }); + + gbdfed = callPackage ../tools/misc/gbdfed { + gtk = gtk2; + }; + + gdmap = callPackage ../tools/system/gdmap { }; + + genext2fs = callPackage ../tools/filesystems/genext2fs { }; + + gengetopt = callPackage ../development/tools/misc/gengetopt { }; + + getmail = callPackage ../tools/networking/getmail { }; + + getopt = callPackage ../tools/misc/getopt { }; + + gftp = callPackage ../tools/networking/gftp { }; + + gifsicle = callPackage ../tools/graphics/gifsicle { }; + + glusterfs = callPackage ../tools/filesystems/glusterfs { }; + + glmark2 = callPackage ../tools/graphics/glmark2 { }; + + glxinfo = callPackage ../tools/graphics/glxinfo { }; + + gmvault = callPackage ../tools/networking/gmvault { }; + + gnokii = builderDefsPackage (import ../tools/misc/gnokii) { + inherit intltool perl gettext libusb pkgconfig bluez readline pcsclite + libical gtk glib; + inherit (xorg) libXpm; + }; + + gnufdisk = callPackage ../tools/system/fdisk { + guile = guile_1_8; + }; + + gnugrep = callPackage ../tools/text/gnugrep { + libiconv = libiconvOrNull; + }; + + gnulib = callPackage ../development/tools/gnulib { }; + + gnupatch = callPackage ../tools/text/gnupatch { }; + + gnupg1orig = callPackage ../tools/security/gnupg1 { }; + + gnupg1compat = callPackage ../tools/security/gnupg1compat { }; + + # use config.packageOverrides if you prefer original gnupg1 + gnupg1 = gnupg1compat; + + gnupg = callPackage ../tools/security/gnupg { libusb = libusb1; }; + + gnupg2_1 = lowPrio (callPackage ../tools/security/gnupg/git.nix { + libassuan = libassuan2_1; + }); + + gnuplot = callPackage ../tools/graphics/gnuplot { }; + + gnuplot_qt = gnuplot.override { withQt = true; }; + + # must have AquaTerm installed separately + gnuplot_aquaterm = gnuplot.override { aquaterm = true; }; + + gnused = callPackage ../tools/text/gnused { }; + + gnutar = callPackage ../tools/archivers/gnutar { }; + + gnuvd = callPackage ../tools/misc/gnuvd { }; + + goaccess = callPackage ../tools/misc/goaccess { }; + + googleAuthenticator = callPackage ../os-specific/linux/google-authenticator { }; + + gource = callPackage ../applications/version-management/gource {}; + + gpodder = callPackage ../applications/audio/gpodder { }; + + gptfdisk = callPackage ../tools/system/gptfdisk { }; + + grafana = callPackage ../development/tools/misc/grafana { }; + + grafx2 = callPackage ../applications/graphics/grafx2 {}; + + graphviz = callPackage ../tools/graphics/graphviz { }; + + /* Readded by Michael Raskin. There are programs in the wild + * that do want 2.0 but not 2.22. Please give a day's notice for + * objections before removal. The feature is integer coordinates + */ + graphviz_2_0 = callPackage ../tools/graphics/graphviz/2.0.nix { }; + + /* Readded by Michael Raskin. There are programs in the wild + * that do want 2.32 but not 2.0 or 2.36. Please give a day's notice for + * objections before removal. The feature is libgraph. + */ + graphviz_2_32 = callPackage ../tools/graphics/graphviz/2.32.nix { }; + + grive = callPackage ../tools/filesystems/grive { + json_c = json-c-0-11; # won't configure with 0.12; others are vulnerable + }; + + groff = callPackage ../tools/text/groff { + ghostscript = null; + }; + + grub = callPackage_i686 ../tools/misc/grub { + buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true; + }; + + grub2 = callPackage ../tools/misc/grub/2.0x.nix { }; + + grub2_efi = grub2.override { efiSupport = true; }; + + grub2_zfs = grub2.override { zfsSupport = true; }; + + gssdp = callPackage ../development/libraries/gssdp { + inherit (gnome) libsoup; + }; + + gt5 = callPackage ../tools/system/gt5 { }; + + gtest = callPackage ../development/libraries/gtest {}; + gmock = callPackage ../development/libraries/gmock {}; + + gtkdatabox = callPackage ../development/libraries/gtkdatabox {}; + + gtkgnutella = callPackage ../tools/networking/p2p/gtk-gnutella { }; + + gtkvnc = callPackage ../tools/admin/gtk-vnc {}; + + gtmess = callPackage ../applications/networking/instant-messengers/gtmess { }; + + gummiboot = callPackage ../tools/misc/gummiboot { }; + + gupnp = callPackage ../development/libraries/gupnp { + inherit (gnome) libsoup; + }; + + gupnp_av = callPackage ../development/libraries/gupnp-av {}; + + gupnp_igd = callPackage ../development/libraries/gupnp-igd {}; + + gupnptools = callPackage ../tools/networking/gupnp-tools {}; + + gvpe = builderDefsPackage ../tools/networking/gvpe { + inherit openssl gmp nettools iproute; + }; + + gvolicon = callPackage ../tools/audio/gvolicon {}; + + gzip = callPackage ../tools/compression/gzip { }; + + gzrt = callPackage ../tools/compression/gzrt { }; + + partclone = callPackage ../tools/backup/partclone { }; + + partimage = callPackage ../tools/backup/partimage { }; + + pigz = callPackage ../tools/compression/pigz { }; + + haproxy = callPackage ../tools/networking/haproxy { }; + + haveged = callPackage ../tools/security/haveged { }; + + hawkthorne = callPackage ../games/hawkthorne { love = love_0_9; }; + + hardlink = callPackage ../tools/system/hardlink { }; + + hashcat = callPackage ../tools/security/hashcat { }; + + halibut = callPackage ../tools/typesetting/halibut { }; + + hddtemp = callPackage ../tools/misc/hddtemp { }; + + hdf5 = callPackage ../tools/misc/hdf5 { + szip = null; + mpi = null; + }; + + hdf5-mpi = hdf5.override { + szip = null; + mpi = pkgs.openmpi; + }; + + heimdall = callPackage ../tools/misc/heimdall { }; + + hevea = callPackage ../tools/typesetting/hevea { }; + + highlight = callPackage ../tools/text/highlight { + lua = lua5; + }; + + host = callPackage ../tools/networking/host { }; + + hping = callPackage ../tools/networking/hping { }; + + httpie = callPackage ../tools/networking/httpie { }; + + httpfs2 = callPackage ../tools/filesystems/httpfs { }; + + # FIXME: This Hydra snapshot is outdated and depends on the `nixPerl', + # which no longer exists. + # + # hydra = callPackage ../development/tools/misc/hydra { + # nix = nixUnstable; + # }; + + iasl = callPackage ../development/compilers/iasl { }; + + icecast = callPackage ../servers/icecast { }; + + icoutils = callPackage ../tools/graphics/icoutils { }; + + idutils = callPackage ../tools/misc/idutils { }; + + idle3tools = callPackage ../tools/system/idle3tools { }; + + iftop = callPackage ../tools/networking/iftop { }; + + imapproxy = callPackage ../tools/networking/imapproxy { }; + + imapsync = callPackage ../tools/networking/imapsync { + inherit (perlPackages) MailIMAPClient; + }; + + inadyn = callPackage ../tools/networking/inadyn { }; + + inetutils = callPackage ../tools/networking/inetutils { }; + + ioping = callPackage ../tools/system/ioping {}; + + iodine = callPackage ../tools/networking/iodine { }; + + iperf = callPackage ../tools/networking/iperf { }; + + ipmitool = callPackage ../tools/system/ipmitool { + static = false; + }; + + ipmiutil = callPackage ../tools/system/ipmiutil {}; + + ised = callPackage ../tools/misc/ised {}; + + isl = callPackage ../development/libraries/isl { }; + isl_0_12 = callPackage ../development/libraries/isl/0.12.2.nix { }; + + isync = callPackage ../tools/networking/isync { }; + + jd-gui = callPackage_i686 ../tools/security/jd-gui { }; + + jdiskreport = callPackage ../tools/misc/jdiskreport { }; + + jfsrec = callPackage ../tools/filesystems/jfsrec { + boost = boost144; + }; + + jfsutils = callPackage ../tools/filesystems/jfsutils { }; + + jhead = callPackage ../tools/graphics/jhead { }; + + jing = callPackage ../tools/text/xml/jing { }; + + jmtpfs = callPackage ../tools/filesystems/jmtpfs { }; + + jnettop = callPackage ../tools/networking/jnettop { }; + + jq = callPackage ../development/tools/jq {}; + + jscoverage = callPackage ../development/tools/misc/jscoverage { }; + + jwhois = callPackage ../tools/networking/jwhois { }; + + kazam = callPackage ../applications/video/kazam { }; + + kalibrate-rtl = callPackage ../tools/misc/kalibrate-rtl { }; + + kexectools = callPackage ../os-specific/linux/kexectools { }; + + keychain = callPackage ../tools/misc/keychain { }; + + kismet = callPackage ../applications/networking/sniffers/kismet { }; + + less = callPackage ../tools/misc/less { }; + + lockfileProgs = callPackage ../tools/misc/lockfile-progs { }; + + logstash = callPackage ../tools/misc/logstash { }; + + logstash-forwarder = callPackage ../tools/misc/logstash-forwarder { }; + + kippo = callPackage ../servers/kippo { }; + + klavaro = callPackage ../games/klavaro {}; + + kzipmix = callPackage_i686 ../tools/compression/kzipmix { }; + + minidlna = callPackage ../tools/networking/minidlna { + ffmpeg = ffmpeg_0_10; + }; + + mmv = callPackage ../tools/misc/mmv { }; + + most = callPackage ../tools/misc/most { }; + + multitail = callPackage ../tools/misc/multitail { }; + + netperf = callPackage ../applications/networking/netperf { }; + + ninka = callPackage ../development/tools/misc/ninka { }; + + nodejs = callPackage ../development/web/nodejs {}; + + nodePackages = recurseIntoAttrs (import ./node-packages.nix { + inherit pkgs stdenv nodejs fetchurl fetchgit; + neededNatives = [python] ++ lib.optional (lib.elem system lib.platforms.linux) utillinux; + self = pkgs.nodePackages; + }); + + ldapvi = callPackage ../tools/misc/ldapvi { }; + + ldns = callPackage ../development/libraries/ldns { }; + + lftp = callPackage ../tools/networking/lftp { }; + + libconfig = callPackage ../development/libraries/libconfig { }; + + libee = callPackage ../development/libraries/libee { }; + + libestr = callPackage ../development/libraries/libestr { }; + + libevdev = callPackage ../development/libraries/libevdev { }; + + liboauth = callPackage ../development/libraries/liboauth { }; + + libtirpc = callPackage ../development/libraries/ti-rpc { }; + + libshout = callPackage ../development/libraries/libshout { }; + + libqmi = callPackage ../development/libraries/libqmi { }; + + libmbim = callPackage ../development/libraries/libmbim { }; + + libtorrent = callPackage ../tools/networking/p2p/libtorrent { }; + + logcheck = callPackage ../tools/system/logcheck { + inherit (perlPackages) mimeConstruct; + }; + + logrotate = callPackage ../tools/system/logrotate { }; + + logstalgia = callPackage ../tools/graphics/logstalgia {}; + + lout = callPackage ../tools/typesetting/lout { }; + + lrzip = callPackage ../tools/compression/lrzip { }; + + # lsh installs `bin/nettle-lfib-stream' and so does Nettle. Give the + # former a lower priority than Nettle. + lsh = lowPrio (callPackage ../tools/networking/lsh { }); + + lshw = callPackage ../tools/system/lshw { }; + + lxc = callPackage ../os-specific/linux/lxc { }; + + lzip = callPackage ../tools/compression/lzip { }; + + lzma = xz; + + xz = callPackage ../tools/compression/xz { }; + + lzop = callPackage ../tools/compression/lzop { }; + + maildrop = callPackage ../tools/networking/maildrop { }; + + mailpile = callPackage ../applications/networking/mailreaders/mailpile { }; + + mailutils = callPackage ../tools/networking/mailutils { + guile = guile_1_8; + }; + + mairix = callPackage ../tools/text/mairix { }; + + makemkv = callPackage ../applications/video/makemkv { }; + + man = callPackage ../tools/misc/man { }; + + man_db = callPackage ../tools/misc/man-db { }; + + memtest86 = callPackage ../tools/misc/memtest86 { }; + + memtest86plus = callPackage ../tools/misc/memtest86+ { }; + + meo = callPackage ../tools/security/meo { }; + + mc = callPackage ../tools/misc/mc { }; + + mcabber = callPackage ../applications/networking/instant-messengers/mcabber { }; + + mcron = callPackage ../tools/system/mcron { + guile = guile_1_8; + }; + + mdbtools = callPackage ../tools/misc/mdbtools { }; + + mdbtools_git = callPackage ../tools/misc/mdbtools/git.nix { + inherit (gnome) scrollkeeper; + }; + + mednafen = callPackage ../misc/emulators/mednafen { }; + + mednafen-server = callPackage ../misc/emulators/mednafen/server.nix { }; + + megacli = callPackage ../tools/misc/megacli { }; + + megatools = callPackage ../tools/networking/megatools { }; + + mfcuk = callPackage ../tools/security/mfcuk { }; + + minecraft = callPackage ../games/minecraft { }; + + minecraft-server = callPackage ../games/minecraft-server { }; + + minetest = callPackage ../games/minetest { + libpng = libpng12; + }; + + miniupnpc = callPackage ../tools/networking/miniupnpc { }; + + miniupnpd = callPackage ../tools/networking/miniupnpd { }; + + minixml = callPackage ../development/libraries/minixml { }; + + mjpegtools = callPackage ../tools/video/mjpegtools { }; + + mkcue = callPackage ../tools/cd-dvd/mkcue { }; + + mkpasswd = callPackage ../tools/security/mkpasswd { }; + + mktemp = callPackage ../tools/security/mktemp { }; + + mktorrent = callPackage ../tools/misc/mktorrent { }; + + modemmanager = callPackage ../tools/networking/modemmanager {}; + + monit = callPackage ../tools/system/monit { }; + + mosh = callPackage ../tools/networking/mosh { + boost = boostHeaders; + inherit (perlPackages) IOTty; + }; + + mpage = callPackage ../tools/text/mpage { }; + + mr = callPackage ../applications/version-management/mr { }; + + mscgen = callPackage ../tools/graphics/mscgen { }; + + msf = builderDefsPackage (import ../tools/security/metasploit/3.1.nix) { + inherit ruby makeWrapper; + }; + + mssys = callPackage ../tools/misc/mssys { }; + + mtdutils = callPackage ../tools/filesystems/mtdutils { }; + + mtools = callPackage ../tools/filesystems/mtools { }; + + mtr = callPackage ../tools/networking/mtr {}; + + multitran = recurseIntoAttrs (let callPackage = newScope pkgs.multitran; in rec { + multitrandata = callPackage ../tools/text/multitran/data { }; + + libbtree = callPackage ../tools/text/multitran/libbtree { }; + + libmtsupport = callPackage ../tools/text/multitran/libmtsupport { }; + + libfacet = callPackage ../tools/text/multitran/libfacet { }; + + libmtquery = callPackage ../tools/text/multitran/libmtquery { }; + + mtutils = callPackage ../tools/text/multitran/mtutils { }; + }); + + munge = callPackage ../tools/security/munge { }; + + muscleframework = callPackage ../tools/security/muscleframework { }; + + muscletool = callPackage ../tools/security/muscletool { }; + + mysql2pgsql = callPackage ../tools/misc/mysql2pgsql { }; + + namazu = callPackage ../tools/text/namazu { }; + + nbd = callPackage ../tools/networking/nbd { }; + + ndjbdns = callPackage ../tools/networking/ndjbdns { }; + + netatalk = callPackage ../tools/filesystems/netatalk { }; + + netcdf = callPackage ../development/libraries/netcdf { }; + + nc6 = callPackage ../tools/networking/nc6 { }; + + ncat = callPackage ../tools/networking/ncat { }; + + ncftp = callPackage ../tools/networking/ncftp { }; + + ncompress = callPackage ../tools/compression/ncompress { }; + + ndisc6 = callPackage ../tools/networking/ndisc6 { }; + + netboot = callPackage ../tools/networking/netboot {}; + + netcat = callPackage ../tools/networking/netcat { }; + + netcat-openbsd = callPackage ../tools/networking/netcat-openbsd { }; + + nethogs = callPackage ../tools/networking/nethogs { }; + + netkittftp = callPackage ../tools/networking/netkit/tftp { }; + + netpbm = callPackage ../tools/graphics/netpbm { }; + + netrw = callPackage ../tools/networking/netrw { }; + + netselect = callPackage ../tools/networking/netselect { }; + + networkmanager = callPackage ../tools/networking/network-manager { }; + + networkmanager_openvpn = callPackage ../tools/networking/network-manager/openvpn.nix { }; + + networkmanager_pptp = callPackage ../tools/networking/network-manager/pptp.nix { }; + + networkmanager_vpnc = callPackage ../tools/networking/network-manager/vpnc.nix { }; + + networkmanager_openconnect = callPackage ../tools/networking/network-manager/openconnect.nix { }; + + networkmanagerapplet = newScope gnome ../tools/networking/network-manager-applet { dconf = gnome3.dconf; }; + + newsbeuter = callPackage ../applications/networking/feedreaders/newsbeuter { }; + + newsbeuter-dev = callPackage ../applications/networking/feedreaders/newsbeuter/dev.nix { }; + + ngrep = callPackage ../tools/networking/ngrep { }; + + ngrok = callPackage ../tools/misc/ngrok { }; + + mpack = callPackage ../tools/networking/mpack { }; + + pa_applet = callPackage ../tools/audio/pa-applet { }; + + pnmixer = callPackage ../tools/audio/pnmixer { }; + + nifskope = callPackage ../tools/graphics/nifskope { }; + + nilfs_utils = callPackage ../tools/filesystems/nilfs-utils {}; + + nitrogen = callPackage ../tools/X11/nitrogen {}; + + nlopt = callPackage ../development/libraries/nlopt {}; + + npapi_sdk = callPackage ../development/libraries/npapi-sdk {}; + + npth = callPackage ../development/libraries/npth {}; + + nmap = callPackage ../tools/security/nmap { }; + + nmap_graphical = callPackage ../tools/security/nmap { + inherit (pythonPackages) pysqlite; + graphicalSupport = true; + }; + + notbit = callPackage ../applications/networking/notbit { }; + + nox = callPackage ../tools/package-management/nox { + pythonPackages = python3Packages; + nix = nixUnstable; + }; + + nss_pam_ldapd = callPackage ../tools/networking/nss-pam-ldapd {}; + + ntfs3g = callPackage ../tools/filesystems/ntfs-3g { }; + + # ntfsprogs are merged into ntfs-3g + ntfsprogs = pkgs.ntfs3g; + + ntop = callPackage ../tools/networking/ntop { }; + + ntopng = callPackage ../tools/networking/ntopng { }; + + ntp = callPackage ../tools/networking/ntp { }; + + numdiff = callPackage ../tools/text/numdiff { }; + + nssmdns = callPackage ../tools/networking/nss-mdns { }; + + nwdiag = pythonPackages.nwdiag; + + nylon = callPackage ../tools/networking/nylon { }; + + nzbget = callPackage ../tools/networking/nzbget { }; + + oathToolkit = callPackage ../tools/security/oath-toolkit { }; + + obex_data_server = callPackage ../tools/bluetooth/obex-data-server { }; + + obexd = callPackage ../tools/bluetooth/obexd { }; + + obexfs = callPackage ../tools/bluetooth/obexfs { }; + + obexftp = callPackage ../tools/bluetooth/obexftp { }; + + obnam = callPackage ../tools/backup/obnam { }; + + odt2txt = callPackage ../tools/text/odt2txt { }; + + offlineimap = callPackage ../tools/networking/offlineimap { + inherit (pythonPackages) sqlite3; + }; + + opendbx = callPackage ../development/libraries/opendbx { }; + + opendkim = callPackage ../development/libraries/opendkim { }; + + opendylan = callPackage ../development/compilers/opendylan { + opendylan-bootstrap = opendylan_bin; + }; + + opendylan_bin = callPackage ../development/compilers/opendylan/bin.nix { }; + + openjade = callPackage ../tools/text/sgml/openjade { }; + + openntpd = callPackage ../tools/networking/openntpd { }; + + openobex = callPackage ../tools/bluetooth/openobex { }; + + openopc = callPackage ../tools/misc/openopc { + pythonFull = python27Full.override { + extraLibs = [ python27Packages.pyro3 ]; + }; + }; + + openresolv = callPackage ../tools/networking/openresolv { }; + + opensc = callPackage ../tools/security/opensc { }; + + opensc_dnie_wrapper = callPackage ../tools/security/opensc-dnie-wrapper { }; + + openssh = + callPackage ../tools/networking/openssh { + hpnSupport = false; + withKerberos = false; + etcDir = "/etc/ssh"; + pam = if stdenv.isLinux then pam else null; + }; + + openssh_hpn = pkgs.appendToName "with-hpn" (openssh.override { hpnSupport = true; }); + + openssh_with_kerberos = pkgs.appendToName "with-kerberos" (openssh.override { withKerberos = true; }); + + opensp = callPackage ../tools/text/sgml/opensp { }; + + spCompat = callPackage ../tools/text/sgml/opensp/compat.nix { }; + + openvpn = callPackage ../tools/networking/openvpn { }; + + openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { }; + + openvswitch = callPackage ../os-specific/linux/openvswitch { }; + + optipng = callPackage ../tools/graphics/optipng { + libpng = libpng12; + }; + + oslrd = callPackage ../tools/networking/oslrd { }; + + ossec = callPackage ../tools/security/ossec {}; + + otpw = callPackage ../os-specific/linux/otpw { }; + + p7zip = callPackage ../tools/archivers/p7zip { }; + + pal = callPackage ../tools/misc/pal { }; + + panomatic = callPackage ../tools/graphics/panomatic { }; + + par2cmdline = callPackage ../tools/networking/par2cmdline { }; + + parallel = callPackage ../tools/misc/parallel { }; + + parcellite = callPackage ../tools/misc/parcellite { }; + + patchutils = callPackage ../tools/text/patchutils { }; + + parted = callPackage ../tools/misc/parted { hurd = null; }; + + pitivi = callPackage ../applications/video/pitivi { + gst = gst_all_1; + clutter-gtk = clutter_gtk; + inherit (gnome3) gnome_icon_theme gnome_icon_theme_symbolic; + }; + + p0f = callPackage ../tools/security/p0f { }; + + pngout = callPackage ../tools/graphics/pngout { }; + + hurdPartedCross = + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then (makeOverridable + ({ hurd }: + (parted.override { + # Needs the Hurd's libstore. + inherit hurd; + + # The Hurd wants a libparted.a. + enableStatic = true; + + gettext = null; + readline = null; + devicemapper = null; + }).crossDrv) + { hurd = gnu.hurdCrossIntermediate; }) + else null; + + ipsecTools = callPackage ../os-specific/linux/ipsec-tools { flex = flex_2_5_35; }; + + patch = gnupatch; + + pbzip2 = callPackage ../tools/compression/pbzip2 { }; + + pciutils = callPackage ../tools/system/pciutils { }; + + pcsclite = callPackage ../tools/security/pcsclite { }; + + pdf2djvu = callPackage ../tools/typesetting/pdf2djvu { }; + + pdfjam = callPackage ../tools/typesetting/pdfjam { }; + + jbig2enc = callPackage ../tools/graphics/jbig2enc { }; + + pdfread = callPackage ../tools/graphics/pdfread { }; + + briss = callPackage ../tools/graphics/briss { }; + + bully = callPackage ../tools/networking/bully { }; + + pdnsd = callPackage ../tools/networking/pdnsd { }; + + peco = callPackage ../tools/text/peco { }; + + pg_top = callPackage ../tools/misc/pg_top { }; + + pdsh = callPackage ../tools/networking/pdsh { + rsh = true; # enable internal rsh implementation + ssh = openssh; + }; + + pfstools = callPackage ../tools/graphics/pfstools { }; + + philter = callPackage ../tools/networking/philter { }; + + pinentry = callPackage ../tools/security/pinentry { }; + + pius = callPackage ../tools/security/pius { }; + + pk2cmd = callPackage ../tools/misc/pk2cmd { }; + + plantuml = callPackage ../tools/misc/plantuml { }; + + plan9port = callPackage ../tools/system/plan9port { }; + + ploticus = callPackage ../tools/graphics/ploticus { + libpng = libpng12; + }; + + plotutils = callPackage ../tools/graphics/plotutils { }; + + plowshare = callPackage ../tools/misc/plowshare { }; + + pngcrush = callPackage ../tools/graphics/pngcrush { }; + + pngnq = callPackage ../tools/graphics/pngnq { }; + + pngtoico = callPackage ../tools/graphics/pngtoico { + libpng = libpng12; + }; + + pngquant = callPackage ../tools/graphics/pngquant { }; + + podiff = callPackage ../tools/text/podiff { }; + + poedit = callPackage ../tools/text/poedit { }; + + polipo = callPackage ../servers/polipo { }; + + polkit_gnome = callPackage ../tools/security/polkit-gnome { }; + + ponysay = callPackage ../tools/misc/ponysay { }; + + povray = callPackage ../tools/graphics/povray { }; + + ppl = callPackage ../development/libraries/ppl { }; + + ppp = callPackage ../tools/networking/ppp { }; + + pptp = callPackage ../tools/networking/pptp {}; + + prey-bash-client = callPackage ../tools/security/prey { }; + + projectm = callPackage ../applications/audio/projectm { }; + + proxychains = callPackage ../tools/networking/proxychains { }; + + proxytunnel = callPackage ../tools/misc/proxytunnel { }; + + cntlm = callPackage ../tools/networking/cntlm { }; + + pastebinit = callPackage ../tools/misc/pastebinit { }; + + psmisc = callPackage ../os-specific/linux/psmisc { }; + + pstoedit = callPackage ../tools/graphics/pstoedit { }; + + pv = callPackage ../tools/misc/pv { }; + + pwgen = callPackage ../tools/security/pwgen { }; + + pwnat = callPackage ../tools/networking/pwnat { }; + + pycangjie = callPackage ../development/python-modules/pycangjie { }; + + pydb = callPackage ../development/tools/pydb { }; + + pystringtemplate = callPackage ../development/python-modules/stringtemplate { }; + + pythonDBus = dbus_python; + + pythonIRClib = builderDefsPackage (import ../development/python-modules/irclib) { + inherit python; + }; + + pythonSexy = builderDefsPackage (import ../development/python-modules/libsexy) { + inherit python libsexy pkgconfig libxml2 pygtk pango gtk glib; + }; + + openmpi = callPackage ../development/libraries/openmpi { }; + + qhull = callPackage ../development/libraries/qhull { }; + + qjoypad = callPackage ../tools/misc/qjoypad { }; + + qshowdiff = callPackage ../tools/text/qshowdiff { }; + + quilt = callPackage ../development/tools/quilt { }; + + radvd = callPackage ../tools/networking/radvd { }; + + ranger = callPackage ../applications/misc/ranger { }; + + privateer = callPackage ../games/privateer { }; + + rtmpdump = callPackage ../tools/video/rtmpdump { }; + + reaverwps = callPackage ../tools/networking/reaver-wps {}; + + recutils = callPackage ../tools/misc/recutils { }; + + recoll = callPackage ../applications/search/recoll { }; + + reiser4progs = callPackage ../tools/filesystems/reiser4progs { }; + + reiserfsprogs = callPackage ../tools/filesystems/reiserfsprogs { }; + + relfs = callPackage ../tools/filesystems/relfs { + inherit (gnome) gnome_vfs GConf; + }; + + remarkjs = callPackage ../development/web/remarkjs { }; + + remind = callPackage ../tools/misc/remind { }; + + remmina = callPackage ../applications/networking/remote/remmina {}; + + renameutils = callPackage ../tools/misc/renameutils { }; + + replace = callPackage ../tools/text/replace { }; + + reptyr = callPackage ../os-specific/linux/reptyr {}; + + rdiff_backup = callPackage ../tools/backup/rdiff-backup { }; + + rdmd = callPackage ../development/compilers/rdmd { }; + + rhash = callPackage ../tools/security/rhash { }; + + riemann_c_client = callPackage ../tools/misc/riemann-c-client { }; + + ripmime = callPackage ../tools/networking/ripmime {}; + + rkflashtool = callPackage ../tools/misc/rkflashtool { }; + + rmlint = callPackage ../tools/misc/rmlint {}; + + rng_tools = callPackage ../tools/security/rng-tools { }; + + rsnapshot = callPackage ../tools/backup/rsnapshot { + # For the `logger' command, we can use either `utillinux' or + # GNU Inetutils. The latter is more portable. + logger = inetutils; + }; + + rlwrap = callPackage ../tools/misc/rlwrap { }; + + rockbox_utility = callPackage ../tools/misc/rockbox-utility { }; + + rpPPPoE = builderDefsPackage (import ../tools/networking/rp-pppoe) { + inherit ppp; + }; + + rpm = callPackage ../tools/package-management/rpm { }; + + rrdtool = callPackage ../tools/misc/rrdtool { }; + + rtorrent = callPackage ../tools/networking/p2p/rtorrent { }; + + rubber = callPackage ../tools/typesetting/rubber { }; + + rxp = callPackage ../tools/text/xml/rxp { }; + + rzip = callPackage ../tools/compression/rzip { }; + + s3backer = callPackage ../tools/filesystems/s3backer { }; + + s3cmd = callPackage ../tools/networking/s3cmd { }; + + s3cmd_15_pre_81e3842f7a = lowPrio (callPackage ../tools/networking/s3cmd/git.nix { }); + + s3sync = callPackage ../tools/networking/s3sync { + ruby = ruby18; + }; + + s6Dns = callPackage ../tools/networking/s6-dns { }; + + s6LinuxUtils = callPackage ../os-specific/linux/s6-linux-utils { }; + + s6Networking = callPackage ../tools/networking/s6-networking { }; + + s6PortableUtils = callPackage ../tools/misc/s6-portable-utils { }; + + sablotron = callPackage ../tools/text/xml/sablotron { }; + + safecopy = callPackage ../tools/system/safecopy { }; + + salut_a_toi = callPackage ../applications/networking/instant-messengers/salut-a-toi {}; + + samplicator = callPackage ../tools/networking/samplicator { }; + + screen = callPackage ../tools/misc/screen { }; + + scrot = callPackage ../tools/graphics/scrot { }; + + scrypt = callPackage ../tools/security/scrypt { }; + + sdcv = callPackage ../applications/misc/sdcv { }; + + sec = callPackage ../tools/admin/sec { }; + + seccure = callPackage ../tools/security/seccure { }; + + setserial = builderDefsPackage (import ../tools/system/setserial) { + inherit groff; + }; + + seqdiag = pythonPackages.seqdiag; + + screenfetch = callPackage ../tools/misc/screenfetch { }; + + sg3_utils = callPackage ../tools/system/sg3_utils { }; + + sharutils = callPackage ../tools/archivers/sharutils { }; + + shotwell = callPackage ../applications/graphics/shotwell { }; + + shebangfix = callPackage ../tools/misc/shebangfix { }; + + shellinabox = callPackage ../servers/shellinabox { }; + + siege = callPackage ../tools/networking/siege {}; + + silc_client = callPackage ../applications/networking/instant-messengers/silc-client { }; + + silc_server = callPackage ../servers/silc-server { }; + + silver-searcher = callPackage ../tools/text/silver-searcher { }; + + simplescreenrecorder = callPackage ../applications/video/simplescreenrecorder { }; + + sleuthkit = callPackage ../tools/system/sleuthkit {}; + + slimrat = callPackage ../tools/networking/slimrat { + inherit (perlPackages) WWWMechanize LWP; + }; + + slsnif = callPackage ../tools/misc/slsnif { }; + + smartmontools = callPackage ../tools/system/smartmontools { }; + + smbldaptools = callPackage ../tools/networking/smbldaptools { + inherit (perlPackages) NetLDAP CryptSmbHash DigestSHA1; + }; + + smbnetfs = callPackage ../tools/filesystems/smbnetfs {}; + + snort = callPackage ../applications/networking/ids/snort { }; + + snx = callPackage_i686 ../tools/networking/snx { + inherit (pkgsi686Linux) pam gcc33; + inherit (pkgsi686Linux.xlibs) libX11; + }; + + solr = callPackage ../servers/search/solr { }; + + sparsehash = callPackage ../development/libraries/sparsehash { }; + + spiped = callPackage ../tools/networking/spiped { }; + + sproxy = haskellPackages.callPackage ../tools/networking/sproxy { }; + + sproxy-web = haskellPackages.callPackage ../tools/networking/sproxy-web { }; + + stardict = callPackage ../applications/misc/stardict/stardict.nix { + inherit (gnome) libgnomeui scrollkeeper; + }; + + storebrowse = callPackage ../tools/system/storebrowse { }; + + fusesmb = callPackage ../tools/filesystems/fusesmb { }; + + sl = callPackage ../tools/misc/sl { }; + + socat = callPackage ../tools/networking/socat { }; + + socat2pre = lowPrio (callPackage ../tools/networking/socat/2.x.nix { }); + + sourceHighlight = callPackage ../tools/text/source-highlight { + # Boost 1.54 causes the "test_regexranges" test to fail + boost = boost149; + }; + + spaceFM = callPackage ../applications/misc/spacefm { }; + + squashfsTools = callPackage ../tools/filesystems/squashfs { }; + + sshfsFuse = callPackage ../tools/filesystems/sshfs-fuse { }; + + sshuttle = callPackage ../tools/security/sshuttle { }; + + sudo = callPackage ../tools/security/sudo { }; + + suidChroot = builderDefsPackage (import ../tools/system/suid-chroot) { }; + + super = callPackage ../tools/security/super { }; + + ssdeep = callPackage ../tools/security/ssdeep { }; + + ssmtp = callPackage ../tools/networking/ssmtp { + tlsSupport = true; + }; + + ssss = callPackage ../tools/security/ssss { }; + + storeBackup = callPackage ../tools/backup/store-backup { }; + + stow = callPackage ../tools/misc/stow { }; + + stun = callPackage ../tools/networking/stun { }; + + stunnel = callPackage ../tools/networking/stunnel { }; + + su = shadow.su; + + surfraw = callPackage ../tools/networking/surfraw { }; + + swec = callPackage ../tools/networking/swec { + inherit (perlPackages) LWP URI HTMLParser HTTPServerSimple Parent; + }; + + svnfs = callPackage ../tools/filesystems/svnfs { }; + + sysbench = callPackage ../development/tools/misc/sysbench {}; + + system_config_printer = callPackage ../tools/misc/system-config-printer { + libxml2 = libxml2Python; + }; + + sitecopy = callPackage ../tools/networking/sitecopy { }; + + stricat = callPackage ../tools/security/stricat { }; + + privoxy = callPackage ../tools/networking/privoxy { }; + + t1utils = callPackage ../tools/misc/t1utils { }; + + tarsnap = callPackage ../tools/backup/tarsnap { }; + + tcpcrypt = callPackage ../tools/security/tcpcrypt { }; + + tboot = callPackage ../tools/security/tboot { }; + + tcl2048 = callPackage ../games/tcl2048 { }; + + tcpdump = callPackage ../tools/networking/tcpdump { }; + + tcpflow = callPackage ../tools/networking/tcpflow { }; + + teamviewer = callPackage_i686 ../applications/networking/remote/teamviewer { }; + + # Work In Progress: it doesn't start unless running a daemon as root + teamviewer8 = lowPrio (callPackage_i686 ../applications/networking/remote/teamviewer/8.nix { }); + + telnet = callPackage ../tools/networking/telnet { }; + + texmacs = callPackage ../applications/editors/texmacs { + tex = texLive; /* tetex is also an option */ + extraFonts = true; + guile = guile_1_8; + }; + + texmaker = callPackage ../applications/editors/texmaker { }; + + texstudio = callPackage ../applications/editors/texstudio { }; + + tiled-qt = callPackage ../applications/editors/tiled-qt { qt = qt4; }; + + tinc = callPackage ../tools/networking/tinc { }; + + tiny8086 = callPackage ../applications/virtualization/8086tiny { }; + + tmpwatch = callPackage ../tools/misc/tmpwatch { }; + + tmux = callPackage ../tools/misc/tmux { }; + + tor = callPackage ../tools/security/tor { }; + + torbutton = callPackage ../tools/security/torbutton { }; + + torbrowser = callPackage ../tools/security/tor/torbrowser.nix { }; + + torsocks = callPackage ../tools/security/tor/torsocks.nix { }; + + tpm-quote-tools = callPackage ../tools/security/tpm-quote-tools { }; + + tpm-tools = callPackage ../tools/security/tpm-tools { }; + + trickle = callPackage ../tools/networking/trickle {}; + + trousers = callPackage ../tools/security/trousers { }; + + ttf2pt1 = callPackage ../tools/misc/ttf2pt1 { }; + + ttysnoop = callPackage ../os-specific/linux/ttysnoop {}; + + twitterBootstrap = callPackage ../development/web/twitter-bootstrap {}; + + txt2man = callPackage ../tools/misc/txt2man { }; + + ucl = callPackage ../development/libraries/ucl { }; + + ucspi-tcp = callPackage ../tools/networking/ucspi-tcp { }; + + udftools = callPackage ../tools/filesystems/udftools {}; + + udptunnel = callPackage ../tools/networking/udptunnel { }; + + ufraw = callPackage ../applications/graphics/ufraw { }; + + unetbootin = callPackage ../tools/cd-dvd/unetbootin { }; + + unfs3 = callPackage ../servers/unfs3 { }; + + unoconv = callPackage ../tools/text/unoconv { }; + + upx = callPackage ../tools/compression/upx { }; + + urlview = callPackage ../applications/misc/urlview {}; + + usbmuxd = callPackage ../tools/misc/usbmuxd {}; + + vacuum = callPackage ../applications/networking/instant-messengers/vacuum {}; + + volatility = callPackage ../tools/security/volatility { }; + + vidalia = callPackage ../tools/security/vidalia { }; + + vbetool = builderDefsPackage ../tools/system/vbetool { + inherit pciutils libx86 zlib; + }; + + vde2 = callPackage ../tools/networking/vde2 { }; + + vboot_reference = callPackage ../tools/system/vboot_reference { }; + + vcsh = callPackage ../applications/version-management/vcsh { }; + + verilog = callPackage ../applications/science/electronics/verilog {}; + + vfdecrypt = callPackage ../tools/misc/vfdecrypt { }; + + vifm = callPackage ../applications/misc/vifm { }; + + viking = callPackage ../applications/misc/viking { + inherit (gnome) scrollkeeper; + }; + + vnc2flv = callPackage ../tools/video/vnc2flv {}; + + vncrec = builderDefsPackage ../tools/video/vncrec { + inherit (xlibs) imake libX11 xproto gccmakedep libXt + libXmu libXaw libXext xextproto libSM libICE libXpm + libXp; + }; + + vobcopy = callPackage ../tools/cd-dvd/vobcopy { }; + + vobsub2srt = callPackage ../tools/cd-dvd/vobsub2srt { }; + + vorbisgain = callPackage ../tools/misc/vorbisgain { }; + + vpnc = callPackage ../tools/networking/vpnc { }; + + openconnect = callPackage ../tools/networking/openconnect.nix { }; + + vtun = callPackage ../tools/networking/vtun { }; + + wal_e = callPackage ../tools/backup/wal-e { }; + + watchman = callPackage ../development/tools/watchman { }; + + wbox = callPackage ../tools/networking/wbox {}; + + welkin = callPackage ../tools/graphics/welkin {}; + + testdisk = callPackage ../tools/misc/testdisk { }; + + htmlTidy = callPackage ../tools/text/html-tidy { }; + + html-xml-utils = callPackage ../tools/text/xml/html-xml-utils { }; + + tftp_hpa = callPackage ../tools/networking/tftp-hpa {}; + + tigervnc = callPackage ../tools/admin/tigervnc { + fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc + xorg.fontbhlucidatypewriter75dpi ]; + inherit (xorg) xorgserver; + fltk = fltk13; + }; + + tightvnc = callPackage ../tools/admin/tightvnc { + fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc + xorg.fontbhlucidatypewriter75dpi ]; + }; + + time = callPackage ../tools/misc/time { }; + + tkabber = callPackage ../applications/networking/instant-messengers/tkabber { }; + + qfsm = callPackage ../applications/science/electronics/qfsm { }; + + tkgate = callPackage ../applications/science/electronics/tkgate/1.x.nix { + inherit (xlibs) libX11 imake xproto gccmakedep; + }; + + # The newer package is low-priority because it segfaults at startup. + tkgate2 = lowPrio (callPackage ../applications/science/electronics/tkgate/2.x.nix { + inherit (xlibs) libX11; + }); + + tm = callPackage ../tools/system/tm { }; + + trang = callPackage ../tools/text/xml/trang { }; + + tre = callPackage ../development/libraries/tre { }; + + ts = callPackage ../tools/system/ts { }; + + transfig = callPackage ../tools/graphics/transfig { + libpng = libpng12; + }; + + truecrypt = callPackage ../applications/misc/truecrypt { + wxGUI = config.truecrypt.wxGUI or true; + }; + + ttmkfdir = callPackage ../tools/misc/ttmkfdir { }; + + uim = callPackage ../tools/inputmethods/uim { + inherit (pkgs.kde4) kdelibs; + }; + + uhub = callPackage ../servers/uhub { }; + + unclutter = callPackage ../tools/misc/unclutter { }; + + unbound = callPackage ../tools/networking/unbound { }; + + units = callPackage ../tools/misc/units { }; + + unrar = callPackage ../tools/archivers/unrar { }; + + xar = callPackage ../tools/compression/xar { }; + + xarchive = callPackage ../tools/archivers/xarchive { }; + + xarchiver = callPackage ../tools/archivers/xarchiver { }; + + xcruiser = callPackage ../applications/misc/xcruiser { }; + + unarj = callPackage ../tools/archivers/unarj { }; + + unshield = callPackage ../tools/archivers/unshield { }; + + unzip = callPackage ../tools/archivers/unzip { }; + + unzipNLS = lowPrio (unzip.override { enableNLS = true; }); + + uptimed = callPackage ../tools/system/uptimed { }; + + urlwatch = callPackage ../tools/networking/urlwatch { }; + + varnish = callPackage ../servers/varnish { }; + + varnish2 = callPackage ../servers/varnish/2.1.nix { }; + + venus = callPackage ../tools/misc/venus { + python = python27; + }; + + vlan = callPackage ../tools/networking/vlan { }; + + wakelan = callPackage ../tools/networking/wakelan { }; + + wavemon = callPackage ../tools/networking/wavemon { }; + + w3cCSSValidator = callPackage ../tools/misc/w3c-css-validator { + tomcat = tomcat6; + }; + + wdfs = callPackage ../tools/filesystems/wdfs { }; + + wdiff = callPackage ../tools/text/wdiff { }; + + webalizer = callPackage ../tools/networking/webalizer { }; + + webdruid = builderDefsPackage ../tools/admin/webdruid { + inherit zlib libpng freetype gd which + libxml2 geoip; + }; + + weighttp = callPackage ../tools/networking/weighttp { }; + + wget = callPackage ../tools/networking/wget { + inherit (perlPackages) LWP; + }; + + which = callPackage ../tools/system/which { }; + + wicd = callPackage ../tools/networking/wicd { }; + + wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { }; + + wv = callPackage ../tools/misc/wv { }; + + wv2 = callPackage ../tools/misc/wv2 { }; + + x86info = callPackage ../os-specific/linux/x86info { }; + + x11_ssh_askpass = callPackage ../tools/networking/x11-ssh-askpass { }; + + xbursttools = assert stdenv ? glibc; import ../tools/misc/xburst-tools { + inherit stdenv fetchgit autoconf automake confuse pkgconfig libusb libusb1; + # It needs a cross compiler for mipsel to build the firmware it will + # load into the Ben Nanonote + gccCross = + let + pkgsCross = (import ./all-packages.nix) { + inherit system; + inherit bootStdenv noSysDirs gccWithCC gccWithProfiling config; + # Ben Nanonote system + crossSystem = { + config = "mipsel-unknown-linux"; + bigEndian = true; + arch = "mips"; + float = "soft"; + withTLS = true; + libc = "uclibc"; + platform = { + name = "ben_nanonote"; + kernelMajor = "2.6"; + # It's not a bcm47xx processor, but for the headers this should work + kernelHeadersBaseConfig = "bcm47xx_defconfig"; + kernelArch = "mips"; + }; + gcc = { + arch = "mips32"; + }; + }; + }; + in + pkgsCross.gccCrossStageStatic; + }; + + xclip = callPackage ../tools/misc/xclip { }; + + xtitle = callPackage ../tools/misc/xtitle { }; + + xdelta = callPackage ../tools/compression/xdelta { }; + + xdummy = callPackage ../tools/misc/xdummy { }; + + xfsprogs = callPackage ../tools/filesystems/xfsprogs { }; + + xmlroff = callPackage ../tools/typesetting/xmlroff { + inherit (gnome) libgnomeprint; + }; + + xmlstarlet = callPackage ../tools/text/xml/xmlstarlet { }; + + xmlto = callPackage ../tools/typesetting/xmlto { }; + + xmltv = callPackage ../tools/misc/xmltv { }; + + xmpppy = builderDefsPackage (import ../development/python-modules/xmpppy) { + inherit python setuptools; + }; + + xorriso = callPackage ../tools/cd-dvd/xorriso { }; + + xpf = callPackage ../tools/text/xml/xpf { + libxml2 = libxml2Python; + }; + + xsel = callPackage ../tools/misc/xsel { }; + + xtreemfs = callPackage ../tools/filesystems/xtreemfs {}; + + xvfb_run = callPackage ../tools/misc/xvfb-run { inherit (texFunctions) fontsConf; }; + + youtubeDL = callPackage ../tools/misc/youtube-dl { }; + + zbar = callPackage ../tools/graphics/zbar { + pygtk = lib.overrideDerivation pygtk (x: { + gtk = gtk2; + }); + }; + + zdelta = callPackage ../tools/compression/zdelta { }; + + zfstools = callPackage ../tools/filesystems/zfstools { + zfs = linuxPackages.zfs; + }; + + zile = callPackage ../applications/editors/zile { }; + + zip = callPackage ../tools/archivers/zip { }; + + zpaq = callPackage ../tools/archivers/zpaq { }; + zpaqd = callPackage ../tools/archivers/zpaq/zpaqd.nix { }; + + zsync = callPackage ../tools/compression/zsync { }; + + + ### SHELLS + + bash = lowPrio (callPackage ../shells/bash { + texinfo = null; + }); + + bashInteractive = appendToName "interactive" (callPackage ../shells/bash { + interactive = true; + readline = readline63; # Includes many vi mode fixes + }); + + bashCompletion = callPackage ../shells/bash-completion { }; + + dash = callPackage ../shells/dash { }; + + fish = callPackage ../shells/fish { + python = python27Full; + }; + + tcsh = callPackage ../shells/tcsh { }; + + rush = callPackage ../shells/rush { }; + + zsh = callPackage ../shells/zsh { }; + + + ### DEVELOPMENT / COMPILERS + + abc = + abcPatchable []; + + abcPatchable = patches : + import ../development/compilers/abc/default.nix { + inherit stdenv fetchurl patches jre apacheAnt; + javaCup = callPackage ../development/libraries/java/cup { }; + }; + + aldor = callPackage ../development/compilers/aldor { }; + + aliceml = callPackage ../development/compilers/aliceml { }; + + aspectj = callPackage ../development/compilers/aspectj { }; + + ats = callPackage ../development/compilers/ats { }; + ats2 = callPackage ../development/compilers/ats2 { }; + + avra = callPackage ../development/compilers/avra { }; + + bigloo = callPackage ../development/compilers/bigloo { }; + + chicken = callPackage ../development/compilers/chicken { }; + + ccl = builderDefsPackage ../development/compilers/ccl {}; + + clang = wrapClang llvmPackages.clang; + + clang_34 = wrapClang llvmPackages_34.clang; + clang_33 = wrapClang (clangUnwrapped llvm_33 ../development/compilers/llvm/3.3/clang.nix); + + clangAnalyzer = callPackage ../development/tools/analysis/clang-analyzer { + clang = clang_34; + llvmPackages = llvmPackages_34; + }; + + clangUnwrapped = llvm: pkg: callPackage pkg { + stdenv = if stdenv.isDarwin then stdenvApple else stdenv; + inherit llvm; + }; + + clangSelf = clangWrapSelf llvmPackagesSelf.clang; + + clangWrapSelf = build: (import ../build-support/clang-wrapper) { + clang = build; + stdenv = clangStdenv; + libc = glibc; + binutils = binutils; + shell = bash; + inherit libcxx coreutils zlib; + nativeTools = false; + nativeLibc = false; + }; + + #Use this instead of stdenv to build with clang + clangStdenv = lowPrio (stdenvAdapters.overrideGCC stdenv clang); + libcxxStdenv = stdenvAdapters.overrideGCC stdenv (clangWrapSelf llvmPackages.clang); + + clean = callPackage ../development/compilers/clean { }; + + closurecompiler = callPackage ../development/compilers/closure { }; + + cmucl_binary = callPackage ../development/compilers/cmucl/binary.nix { }; + + compcert = callPackage ../development/compilers/compcert {}; + + cryptol1 = lowPrio (callPackage ../development/compilers/cryptol/1.8.x.nix {}); + cryptol2 = with haskellPackages_ghc763; callPackage ../development/compilers/cryptol/2.0.x.nix { + Cabal = Cabal_1_18_1_3; + cabalInstall = cabalInstall_1_18_0_3; + process = process_1_2_0_0; + }; + + cython = pythonPackages.cython; + cython3 = python3Packages.cython; + + dylan = callPackage ../development/compilers/gwydion-dylan { + dylan = callPackage ../development/compilers/gwydion-dylan/binary.nix { }; + }; + + ecl = callPackage ../development/compilers/ecl { }; + + eql = callPackage ../development/compilers/eql {}; + + adobe_flex_sdk = callPackage ../development/compilers/adobe-flex-sdk { }; + + fpc = callPackage ../development/compilers/fpc { }; + + gambit = callPackage ../development/compilers/gambit { }; + + gcc = gcc48; + + gcc33 = wrapGCC (import ../development/compilers/gcc/3.3 { + inherit fetchurl stdenv noSysDirs; + }); + + gcc34 = wrapGCC (import ../development/compilers/gcc/3.4 { + inherit fetchurl stdenv noSysDirs; + }); + + gcc48_realCross = lib.addMetaAttrs { hydraPlatforms = []; } + (callPackage ../development/compilers/gcc/4.8 { + inherit noSysDirs; + binutilsCross = binutilsCross; + libcCross = libcCross; + profiledCompiler = false; + enableMultilib = false; + crossStageStatic = false; + cross = assert crossSystem != null; crossSystem; + }); + + gcc_realCross = gcc48_realCross; + + gccCrossStageStatic = let + libcCross1 = + if stdenv.cross.libc == "msvcrt" then windows.mingw_w64_headers + else if stdenv.cross.libc == "libSystem" then darwin.xcode + else null; + in + wrapGCCCross { + gcc = forceNativeDrv (lib.addMetaAttrs { hydraPlatforms = []; } ( + gcc_realCross.override { + crossStageStatic = true; + langCC = false; + libcCross = libcCross1; + enableShared = false; + })); + libc = libcCross1; + binutils = binutilsCross; + cross = assert crossSystem != null; crossSystem; + }; + + # Only needed for mingw builds + gccCrossMingw2 = wrapGCCCross { + gcc = gccCrossStageStatic.gcc; + libc = windows.mingw_headers2; + binutils = binutilsCross; + cross = assert crossSystem != null; crossSystem; + }; + + gccCrossStageFinal = wrapGCCCross { + gcc = forceNativeDrv (gcc_realCross.override { + libpthreadCross = + # FIXME: Don't explicitly refer to `i586-pc-gnu'. + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then gnu.libpthreadCross + else null; + + # XXX: We have troubles cross-compiling libstdc++ on MinGW (see + # ), so don't even try. + langCC = (crossSystem == null + || crossSystem.config != "i686-pc-mingw32"); + }); + libc = libcCross; + binutils = binutilsCross; + cross = assert crossSystem != null; crossSystem; + }; + + gcc44 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.4) { + inherit fetchurl stdenv gmp mpfr /* ppl cloogppl */ + gettext which noSysDirs; + texinfo = texinfo4; + profiledCompiler = true; + })); + + gcc45 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.5 { + inherit fetchurl stdenv gmp mpfr mpc libelf zlib perl + gettext which noSysDirs; + texinfo = texinfo4; + + ppl = null; + cloogppl = null; + + # bootstrapping a profiled compiler does not work in the sheevaplug: + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 + profiledCompiler = !stdenv.isArm; + + # When building `gcc.crossDrv' (a "Canadian cross", with host == target + # and host != build), `cross' must be null but the cross-libc must still + # be passed. + cross = null; + libcCross = if crossSystem != null then libcCross else null; + libpthreadCross = + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then gnu.libpthreadCross + else null; + })); + + gcc46 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.6 { + inherit noSysDirs; + + ppl = null; + cloog = null; + + # bootstrapping a profiled compiler does not work in the sheevaplug: + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 + profiledCompiler = false; + + # When building `gcc.crossDrv' (a "Canadian cross", with host == target + # and host != build), `cross' must be null but the cross-libc must still + # be passed. + cross = null; + libcCross = if crossSystem != null then libcCross else null; + libpthreadCross = + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then gnu.libpthreadCross + else null; + texinfo = texinfo413; + })); + + gcc48 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { + inherit noSysDirs; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + # When building `gcc.crossDrv' (a "Canadian cross", with host == target + # and host != build), `cross' must be null but the cross-libc must still + # be passed. + cross = null; + libcCross = if crossSystem != null then libcCross else null; + libpthreadCross = + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then gnu.libpthreadCross + else null; + })); + + gcc48_multi = + if system == "x86_64-linux" then lowPrio ( + wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi (gcc48.gcc.override { + stdenv = overrideGCC stdenv (wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi gcc.gcc); + profiledCompiler = false; + enableMultilib = true; + })) + else throw "Multilib gcc not supported on ‘${system}’"; + + gcc48_debug = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { + stripped = false; + + inherit noSysDirs; + cross = null; + libcCross = null; + binutilsCross = null; + })); + + gcc49 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.9 { + inherit noSysDirs; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + # When building `gcc.crossDrv' (a "Canadian cross", with host == target + # and host != build), `cross' must be null but the cross-libc must still + # be passed. + cross = null; + libcCross = if crossSystem != null then libcCross else null; + libpthreadCross = + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then gnu.libpthreadCross + else null; + })); + + gccApple = + assert stdenv.isDarwin; + wrapGCC (makeOverridable (import ../development/compilers/gcc/4.2-apple64) { + inherit fetchurl noSysDirs; + profiledCompiler = true; + # Since it fails to build with GCC 4.6, build it with the "native" + # Apple-GCC. + stdenv = allStdenvs.stdenvNative; + }); + + gfortran = gfortran48; + + gfortran48 = wrapGCC (gcc48.gcc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gcj = gcj48; + + gcj48 = wrapGCC (gcc48.gcc.override { + name = "gcj"; + langJava = true; + langFortran = false; + langCC = false; + langC = false; + profiledCompiler = false; + inherit zip unzip zlib boehmgc gettext pkgconfig perl; + inherit gtk; + inherit (gnome) libart_lgpl; + inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender + libXrandr xproto renderproto xextproto inputproto randrproto; + }); + + gnat = gnat45; + + gnat45 = wrapGCC (gcc45.gcc.override { + name = "gnat"; + langCC = false; + langC = true; + langAda = true; + profiledCompiler = false; + inherit gnatboot; + # We can't use the ppl stuff, because we would have + # libstdc++ problems. + cloogppl = null; + ppl = null; + }); + + gnat46 = wrapGCC (gcc46.gcc.override { + name = "gnat"; + langCC = false; + langC = true; + langAda = true; + profiledCompiler = false; + gnatboot = gnat45; + # We can't use the ppl stuff, because we would have + # libstdc++ problems. + ppl = null; + cloog = null; + }); + + gnatboot = wrapGCC (import ../development/compilers/gnatboot { + inherit fetchurl stdenv; + }); + + gccgo = gccgo48; + + gccgo48 = wrapGCC (gcc48.gcc.override { + name = "gccgo"; + langCC = true; #required for go. + langC = true; + langGo = true; + }); + + ghdl = wrapGCC (import ../development/compilers/gcc/4.3 { + inherit stdenv fetchurl gmp mpfr noSysDirs gnat; + texinfo = texinfo4; + name = "ghdl"; + langVhdl = true; + langCC = false; + langC = false; + profiledCompiler = false; + enableMultilib = false; + }); + + ghdl_mcode = callPackage ../development/compilers/ghdl { }; + + gcl = builderDefsPackage ../development/compilers/gcl { + inherit mpfr m4 binutils fetchcvs emacs zlib which + texinfo; + gmp = gmp4; + inherit (xlibs) libX11 xproto inputproto libXi + libXext xextproto libXt libXaw libXmu; + inherit stdenv; + texLive = texLiveAggregationFun { + paths = [ + texLive texLiveExtra + ]; + }; + }; + + jhc = callPackage ../development/compilers/jhc { + inherit (haskellPackages_ghc763) ghc binary zlib utf8String readline fgl + regexCompat HsSyck random; + }; + + gcc-arm-embedded-4_7 = callPackage_i686 ../development/compilers/gcc-arm-embedded { + version = "4.7-2013q3-20130916"; + releaseType = "update"; + sha256 = "1bd9bi9q80xn2rpy0rn1vvj70rh15kb7dmah0qs4q2rv78fqj40d"; + }; + gcc-arm-embedded-4_8 = callPackage_i686 ../development/compilers/gcc-arm-embedded { + version = "4.8-2014q1-20140314"; + releaseType = "update"; + sha256 = "ce92859550819d4a3d1a6e2672ea64882b30afa2c08cf67fa8e1d93788c2c577"; + }; + gcc-arm-embedded = gcc-arm-embedded-4_8; + + # Haskell and GHC + + # Import Haskell infrastructure. + + haskell = let pkgs_ = pkgs // { gmp = gmp.override { withStatic = true; }; }; + callPackage = newScope pkgs_; + newScope = extra: lib.callPackageWith (pkgs_ // pkgs_.xorg // extra); + in callPackage ./haskell-defaults.nix { pkgs = pkgs_; inherit callPackage newScope; }; + + # Available GHC versions. + + # For several compiler versions, we export a large set of Haskell-related + # packages. + + # NOTE (recurseIntoAttrs): After discussion, we originally decided to + # enable it for all GHC versions. However, this is getting too much, + # particularly in connection with Hydra builds for all these packages. + # So we enable it for selected versions only. We build all ghcs, though + + ghc = recurseIntoAttrs (lib.mapAttrs' (name: value: + lib.nameValuePair (builtins.substring (builtins.stringLength "packages_") (builtins.stringLength name) name) value.ghc + ) (lib.filterAttrs (name: value: + builtins.substring 0 (builtins.stringLength "packages_") name == "packages_" + ) haskell)); + + haskellPackages = haskellPackages_ghc783; + haskellPlatform = haskellPlatformPackages."2013_2_0_0"; + + haskellPackages_ghc6104 = haskell.packages_ghc6104; + haskellPackages_ghc6123 = haskell.packages_ghc6123; + haskellPackages_ghc704 = haskell.packages_ghc704; + haskellPackages_ghc722 = haskell.packages_ghc722; + haskellPackages_ghc742 = haskell.packages_ghc742; + haskellPackages_ghc763 = haskell.packages_ghc763; + haskellPackages_ghc783_no_profiling = recurseIntoAttrs haskell.packages_ghc783.noProfiling; + haskellPackages_ghc783_profiling = recurseIntoAttrs haskell.packages_ghc783.profiling; + haskellPackages_ghc783 = recurseIntoAttrs haskell.packages_ghc783.highPrio; + haskellPackages_ghcHEAD = haskell.packages_ghcHEAD; + + haskellPlatformPackages = recurseIntoAttrs (import ../development/libraries/haskell/haskell-platform { inherit pkgs; }); + + haxe = callPackage ../development/compilers/haxe { }; + + hhvm = callPackage ../development/compilers/hhvm { }; + hiphopvm = hhvm; /* Compatibility alias */ + + falcon = builderDefsPackage (import ../development/interpreters/falcon) { + inherit cmake; + }; + + fsharp = callPackage ../development/compilers/fsharp {}; + + go_1_0 = callPackage ../development/compilers/go { }; + + go_1_1 = + if stdenv.isDarwin then + callPackage ../development/compilers/go/1.1-darwin.nix { } + else + callPackage ../development/compilers/go/1.1.nix { }; + + go_1_2 = callPackage ../development/compilers/go/1.2.nix { }; + + go_1_3 = callPackage ../development/compilers/go/1.3.nix { }; + + go = go_1_3; + + gox = callPackage ../development/compilers/go/gox.nix { }; + + gprolog = callPackage ../development/compilers/gprolog { }; + + gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { }; + + icedtea7_jdk = callPackage ../development/compilers/icedtea rec { + jdk = openjdk; + jdkPath = "${openjdk}/lib/openjdk"; + } // { outputs = [ "out" ]; }; + + icedtea7_jre = (lib.setName "icedtea7-${lib.getVersion pkgs.icedtea7_jdk.jre}" (lib.addMetaAttrs + { description = "Free Java runtime environment based on OpenJDK 7.0 and the IcedTea project"; } + pkgs.icedtea7_jdk.jre)) // { outputs = [ "jre" ]; }; + + icedtea7_web = callPackage ../development/compilers/icedtea-web { + jdk = "${icedtea7_jdk}/lib/icedtea"; + }; + + ikarus = callPackage ../development/compilers/ikarus { }; + + hugs = callPackage ../development/compilers/hugs { }; + + path64 = callPackage ../development/compilers/path64 { }; + + openjdk = + if stdenv.isDarwin then + callPackage ../development/compilers/openjdk-darwin { } + else + let + openjdkBootstrap = callPackage ../development/compilers/openjdk/bootstrap.nix { }; + in (callPackage ../development/compilers/openjdk { + jdk = openjdkBootstrap; + }) // { outputs = [ "out" ]; }; + + # FIXME: Need a way to set per-output meta attributes. + openjre = (lib.setName "openjre-${lib.getVersion pkgs.openjdk.jre}" (lib.addMetaAttrs + { description = "The open-source Java Runtime Environment"; } + pkgs.openjdk.jre)) // { outputs = [ "jre" ]; }; + + jdk = if stdenv.isDarwin || stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" + then pkgs.openjdk + else pkgs.oraclejdk; + jre = if stdenv.isDarwin || stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" + then pkgs.openjre + else pkgs.oraclejre; + + oraclejdk = pkgs.jdkdistro true false; + + oraclejdk7 = pkgs.oraclejdk7distro true false; + + oraclejdk8 = pkgs.oraclejdk8distro true false; + + oraclejre = lowPrio (pkgs.jdkdistro false false); + + oraclejre7 = lowPrio (pkgs.oraclejdk7distro false false); + + oraclejre8 = lowPrio (pkgs.oraclejdk8distro false false); + + jrePlugin = lowPrio (pkgs.jdkdistro false true); + + supportsJDK = + system == "i686-linux" || + system == "x86_64-linux"; + + jdkdistro = installjdk: pluginSupport: + assert supportsJDK; + (if pluginSupport then appendToName "with-plugin" else x: x) + (callPackage ../development/compilers/oraclejdk/jdk6-linux.nix { }); + + oraclejdk7distro = installjdk: pluginSupport: + assert supportsJDK; + (if pluginSupport then appendToName "with-plugin" else x: x) + (callPackage ../development/compilers/oraclejdk/jdk7-linux.nix { inherit installjdk; }); + + oraclejdk8distro = installjdk: pluginSupport: + assert supportsJDK; + (if pluginSupport then appendToName "with-plugin" else x: x) + (callPackage ../development/compilers/oraclejdk/jdk8-linux.nix { inherit installjdk; }); + + jikes = callPackage ../development/compilers/jikes { }; + + juliaGit = callPackage ../development/compilers/julia/git-20131013.nix { + liblapack = liblapack.override {shared = true;}; + llvm = llvm_33; + openblas = openblas_0_2_2; + }; + julia021 = callPackage ../development/compilers/julia/0.2.1.nix { + liblapack = liblapack.override {shared = true;}; + llvm = llvm_33; + openblas = openblas_0_2_2; + }; + julia030 = let + liblapack = liblapack_3_5_0.override {shared = true;}; + in callPackage ../development/compilers/julia/0.3.0.nix { + inherit liblapack; + suitesparse = suitesparse.override { + inherit liblapack; + }; + llvm = llvm_34; + openblas = openblas_0_2_10; + }; + julia = julia030; + + lazarus = builderDefsPackage (import ../development/compilers/fpc/lazarus.nix) { + inherit makeWrapper gtk glib pango atk gdk_pixbuf; + inherit (xlibs) libXi inputproto libX11 xproto libXext xextproto; + fpc = fpc; + }; + + lessc = callPackage ../development/compilers/lessc { }; + + llvm = llvmPackages.llvm; + + llvm_34 = llvmPackages_34.llvm; + llvm_33 = llvm_v ../development/compilers/llvm/3.3/llvm.nix; + + llvm_v = path: callPackage path { + stdenv = if stdenv.isDarwin then stdenvApple else stdenv; + }; + + llvmPackages = if !stdenv.isDarwin then llvmPackages_34 else llvmPackages_34 // { + # until someone solves build problems with _34 + llvm = llvm_33; + clang = clang_33; + }; + + llvmPackages_34 = recurseIntoAttrs (import ../development/compilers/llvm/3.4 { + inherit stdenv newScope fetchurl; + isl = isl_0_12; + }); + llvmPackagesSelf = import ../development/compilers/llvm/3.4 { inherit newScope fetchurl; isl = isl_0_12; stdenv = libcxxStdenv; }; + + manticore = callPackage ../development/compilers/manticore { }; + + mentorToolchains = recurseIntoAttrs ( + callPackage_i686 ../development/compilers/mentor {} + ); + + mercury = callPackage ../development/compilers/mercury { }; + + mitscheme = callPackage ../development/compilers/mit-scheme { }; + + mlton = callPackage ../development/compilers/mlton { }; + + mono = callPackage ../development/compilers/mono { + inherit (xlibs) libX11; + }; + + monoDLLFixer = callPackage ../build-support/mono-dll-fixer { }; + + mozart = callPackage ../development/compilers/mozart { }; + + neko = callPackage ../development/compilers/neko { }; + + nasm = callPackage ../development/compilers/nasm { }; + + nvidia_cg_toolkit = callPackage ../development/compilers/nvidia-cg-toolkit { }; + + ocaml = ocamlPackages.ocaml; + + ocaml_3_08_0 = callPackage ../development/compilers/ocaml/3.08.0.nix { }; + + ocaml_3_10_0 = callPackage ../development/compilers/ocaml/3.10.0.nix { }; + + ocaml_3_11_2 = callPackage ../development/compilers/ocaml/3.11.2.nix { }; + + ocaml_3_12_1 = callPackage ../development/compilers/ocaml/3.12.1.nix { }; + + ocaml_4_00_1 = callPackage ../development/compilers/ocaml/4.00.1.nix { }; + + ocaml_4_01_0 = callPackage ../development/compilers/ocaml/4.01.0.nix { }; + + orc = callPackage ../development/compilers/orc { }; + + metaocaml_3_09 = callPackage ../development/compilers/ocaml/metaocaml-3.09.nix { }; + + ber_metaocaml_003 = callPackage ../development/compilers/ocaml/ber-metaocaml-003.nix { }; + + mkOcamlPackages = ocaml: self: let callPackage = newScope self; in rec { + inherit ocaml; + + camlidl = callPackage ../development/tools/ocaml/camlidl { }; + + camlp5_5_strict = callPackage ../development/tools/ocaml/camlp5/5.15.nix { }; + + camlp5_5_transitional = callPackage ../development/tools/ocaml/camlp5/5.15.nix { + transitional = true; + }; + + camlp5_6_strict = callPackage ../development/tools/ocaml/camlp5 { }; + + camlp5_6_transitional = callPackage ../development/tools/ocaml/camlp5 { + transitional = true; + }; + + camlp5_strict = camlp5_6_strict; + + camlp5_transitional = camlp5_6_transitional; + + camlzip = callPackage ../development/ocaml-modules/camlzip { }; + + camomile_0_8_2 = callPackage ../development/ocaml-modules/camomile/0.8.2.nix { }; + camomile = callPackage ../development/ocaml-modules/camomile { }; + + camlimages = callPackage ../development/ocaml-modules/camlimages { + libpng = libpng12; + giflib = giflib_4_1; + }; + + biniou = callPackage ../development/ocaml-modules/biniou { }; + + ocaml_cairo = callPackage ../development/ocaml-modules/ocaml-cairo { }; + + cmdliner = callPackage ../development/ocaml-modules/cmdliner { }; + + cppo = callPackage ../development/tools/ocaml/cppo { }; + + cryptokit = callPackage ../development/ocaml-modules/cryptokit { }; + + csv = callPackage ../development/ocaml-modules/csv { }; + + deriving = callPackage ../development/tools/ocaml/deriving { }; + + easy-format = callPackage ../development/ocaml-modules/easy-format { }; + + findlib = callPackage ../development/tools/ocaml/findlib { }; + + javalib = callPackage ../development/ocaml-modules/javalib { + extlib = ocaml_extlib_maximal; + }; + + dypgen = callPackage ../development/ocaml-modules/dypgen { }; + + patoline = callPackage ../tools/typesetting/patoline { }; + + gmetadom = callPackage ../development/ocaml-modules/gmetadom { }; + + lablgl = callPackage ../development/ocaml-modules/lablgl { }; + + lablgtk = callPackage ../development/ocaml-modules/lablgtk { + inherit (gnome) libgnomecanvas libglade gtksourceview; + }; + + lablgtkmathview = callPackage ../development/ocaml-modules/lablgtkmathview { + gtkmathview = callPackage ../development/libraries/gtkmathview { }; + }; + + lambdaTerm = callPackage ../development/ocaml-modules/lambda-term { }; + + menhir = callPackage ../development/ocaml-modules/menhir { }; + + merlin = callPackage ../development/tools/ocaml/merlin { }; + + mldonkey = callPackage ../applications/networking/p2p/mldonkey { }; + + mlgmp = callPackage ../development/ocaml-modules/mlgmp { }; + + ocaml_batteries = callPackage ../development/ocaml-modules/batteries { }; + + ocaml_cryptgps = callPackage ../development/ocaml-modules/cryptgps { }; + + ocaml_data_notation = callPackage ../development/ocaml-modules/odn { }; + + ocaml_expat = callPackage ../development/ocaml-modules/expat { }; + + ocamlgraph = callPackage ../development/ocaml-modules/ocamlgraph { }; + + ocaml_http = callPackage ../development/ocaml-modules/http { }; + + ocamlify = callPackage ../development/tools/ocaml/ocamlify { }; + + ocaml_lwt = callPackage ../development/ocaml-modules/lwt { }; + + ocamlmod = callPackage ../development/tools/ocaml/ocamlmod { }; + + ocaml_mysql = callPackage ../development/ocaml-modules/mysql { }; + + ocamlnet = callPackage ../development/ocaml-modules/ocamlnet { }; + + ocaml_oasis = callPackage ../development/tools/ocaml/oasis { }; + + ocaml_pcre = callPackage ../development/ocaml-modules/pcre { + inherit pcre; + }; + + ocaml_react = callPackage ../development/ocaml-modules/react { }; + + ocamlsdl= callPackage ../development/ocaml-modules/ocamlsdl { }; + + ocaml_sqlite3 = callPackage ../development/ocaml-modules/sqlite3 { }; + + ocaml_ssl = callPackage ../development/ocaml-modules/ssl { }; + + ocaml_text = callPackage ../development/ocaml-modules/ocaml-text { }; + + ounit = callPackage ../development/ocaml-modules/ounit { }; + + ulex = callPackage ../development/ocaml-modules/ulex { }; + + ulex08 = callPackage ../development/ocaml-modules/ulex/0.8 { + camlp5 = camlp5_transitional; + }; + + ocaml_typeconv = callPackage ../development/ocaml-modules/typeconv { }; + + ocaml_typeconv_3_0_5 = callPackage ../development/ocaml-modules/typeconv/3.0.5.nix { }; + + ocaml_sexplib = callPackage ../development/ocaml-modules/sexplib { }; + + ocaml_extlib = callPackage ../development/ocaml-modules/extlib { }; + ocaml_extlib_maximal = callPackage ../development/ocaml-modules/extlib { + minimal = false; + }; + + pycaml = callPackage ../development/ocaml-modules/pycaml { }; + + opam_1_0_0 = callPackage ../development/tools/ocaml/opam/1.0.0.nix { }; + opam_1_1 = callPackage ../development/tools/ocaml/opam/1.1.nix { }; + opam = opam_1_1; + + utop = callPackage ../development/tools/ocaml/utop { }; + + sawja = callPackage ../development/ocaml-modules/sawja { }; + + uucd = callPackage ../development/ocaml-modules/uucd { }; + uunf = callPackage ../development/ocaml-modules/uunf { }; + uutf = callPackage ../development/ocaml-modules/uutf { }; + xmlm = callPackage ../development/ocaml-modules/xmlm { }; + + yojson = callPackage ../development/ocaml-modules/yojson { }; + + zarith = callPackage ../development/ocaml-modules/zarith { }; + + zed = callPackage ../development/ocaml-modules/zed { }; + + }; + + ocamlPackages = recurseIntoAttrs ocamlPackages_4_01_0; + ocamlPackages_3_10_0 = mkOcamlPackages ocaml_3_10_0 pkgs.ocamlPackages_3_10_0; + ocamlPackages_3_11_2 = mkOcamlPackages ocaml_3_11_2 pkgs.ocamlPackages_3_11_2; + ocamlPackages_3_12_1 = mkOcamlPackages ocaml_3_12_1 pkgs.ocamlPackages_3_12_1; + ocamlPackages_4_00_1 = mkOcamlPackages ocaml_4_00_1 pkgs.ocamlPackages_4_00_1; + ocamlPackages_4_01_0 = mkOcamlPackages ocaml_4_01_0 pkgs.ocamlPackages_4_01_0; + ocamlPackages_latest = ocamlPackages_4_01_0; + + ocaml_make = callPackage ../development/ocaml-modules/ocamlmake { }; + + opa = let callPackage = newScope pkgs.ocamlPackages_4_00_1; in callPackage ../development/compilers/opa { }; + + ocamlnat = let callPackage = newScope pkgs.ocamlPackages_3_12_1; in callPackage ../development/ocaml-modules/ocamlnat { }; + + qcmm = callPackage ../development/compilers/qcmm { + lua = lua4; + ocaml = ocaml_3_08_0; + }; + + roadsend = callPackage ../development/compilers/roadsend { }; + + rustc = callPackage ../development/compilers/rustc/0.11.nix {}; + rustcMaster = callPackage ../development/compilers/rustc/head.nix {}; + + rust = rustc; + + + sbclBootstrap = callPackage ../development/compilers/sbcl/bootstrap.nix {}; + sbcl = callPackage ../development/compilers/sbcl { + clisp = clisp; + }; + + scala_2_9 = callPackage ../development/compilers/scala/2.9.nix { }; + scala_2_10 = callPackage ../development/compilers/scala/2.10.nix { }; + scala_2_11 = callPackage ../development/compilers/scala { }; + scala = scala_2_11; + + sdcc = callPackage ../development/compilers/sdcc { }; + + smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { }; + smlnj = callPackage_i686 ../development/compilers/smlnj { }; + + stalin = callPackage ../development/compilers/stalin { }; + + strategoPackages = recurseIntoAttrs strategoPackages018; + + strategoPackages016 = callPackage ../development/compilers/strategoxt/0.16.nix { + stdenv = overrideInStdenv stdenv [gnumake380]; + }; + + strategoPackages017 = callPackage ../development/compilers/strategoxt/0.17.nix { + readline = readline5; + }; + + strategoPackages018 = callPackage ../development/compilers/strategoxt/0.18.nix { + readline = readline5; + }; + + metaBuildEnv = callPackage ../development/compilers/meta-environment/meta-build-env { }; + + swiProlog = callPackage ../development/compilers/swi-prolog { }; + + tbb = callPackage ../development/libraries/tbb { }; + + tinycc = callPackage ../development/compilers/tinycc { }; + + urweb = callPackage ../development/compilers/urweb { }; + + vala = callPackage ../development/compilers/vala/default.nix { }; + + visualcpp = callPackage ../development/compilers/visual-c++ { }; + + vs90wrapper = callPackage ../development/compilers/vs90wrapper { }; + + webdsl = callPackage ../development/compilers/webdsl { }; + + win32hello = callPackage ../development/compilers/visual-c++/test { }; + + wrapGCCWith = gccWrapper: glibc: baseGCC: gccWrapper { + nativeTools = stdenv ? gcc && stdenv.gcc.nativeTools; + nativeLibc = stdenv ? gcc && stdenv.gcc.nativeLibc; + nativePrefix = if stdenv ? gcc then stdenv.gcc.nativePrefix else ""; + gcc = baseGCC; + libc = glibc; + shell = bash; + inherit stdenv binutils coreutils zlib; + }; + + wrapClangWith = clangWrapper: glibc: baseClang: clangWrapper { + nativeTools = stdenv.gcc.nativeTools or false; + nativeLibc = stdenv.gcc.nativeLibc or false; + nativePrefix = stdenv.gcc.nativePrefix or ""; + clang = baseClang; + libc = glibc; + shell = bash; + binutils = stdenv.gcc.binutils; + inherit stdenv coreutils zlib; + }; + + wrapClang = wrapClangWith (makeOverridable (import ../build-support/clang-wrapper)) glibc; + + wrapGCC = wrapGCCWith (makeOverridable (import ../build-support/gcc-wrapper)) glibc; + + wrapGCCCross = + {gcc, libc, binutils, cross, shell ? "", name ? "gcc-cross-wrapper"}: + + forceNativeDrv (import ../build-support/gcc-cross-wrapper { + nativeTools = false; + nativeLibc = false; + noLibc = (libc == null); + inherit stdenv gcc binutils libc shell name cross; + }); + + # prolog + yap = callPackage ../development/compilers/yap { }; + + yasm = callPackage ../development/compilers/yasm { }; + + + ### DEVELOPMENT / INTERPRETERS + + acl2 = builderDefsPackage ../development/interpreters/acl2 { + inherit sbcl; + }; + + angelscript = callPackage ../development/interpreters/angelscript {}; + + clisp = callPackage ../development/interpreters/clisp { }; + + # compatibility issues in 2.47 - at list 2.44.1 is known good + # for sbcl bootstrap + clisp_2_44_1 = callPackage ../development/interpreters/clisp/2.44.1.nix { + libsigsegv = libsigsegv_25; + }; + + clojure = callPackage ../development/interpreters/clojure { }; + + clooj = callPackage ../development/interpreters/clojure/clooj.nix { }; + + erlangR14 = callPackage ../development/interpreters/erlang/R14.nix { }; + erlangR15 = callPackage ../development/interpreters/erlang/R15.nix { }; + erlangR16 = callPackage ../development/interpreters/erlang/R16.nix { }; + erlangR16_odbc = callPackage ../development/interpreters/erlang/R16.nix { odbcSupport = true; }; + erlangR17 = callPackage ../development/interpreters/erlang/R17.nix { }; + erlangR17_odbc = callPackage ../development/interpreters/erlang/R17.nix { odbcSupport = true; }; + erlang = erlangR17; + erlang_odbc = erlangR17_odbc; + + rebar = callPackage ../development/tools/build-managers/rebar { }; + + elixir = callPackage ../development/interpreters/elixir { }; + + groovy = callPackage ../development/interpreters/groovy { }; + + guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { }; + + guile_2_0 = callPackage ../development/interpreters/guile { }; + + guile = guile_2_0; + + hadoop = callPackage ../applications/networking/cluster/hadoop { }; + + io = callPackage ../development/interpreters/io { }; + + j = callPackage ../development/interpreters/j {}; + + jmeter = callPackage ../applications/networking/jmeter {}; + + davmail = callPackage ../applications/networking/davmail {}; + + lxappearance = callPackage ../applications/misc/lxappearance {}; + + kona = callPackage ../development/interpreters/kona {}; + + love = callPackage ../development/interpreters/love {lua=lua5;}; + love_luajit = callPackage ../development/interpreters/love {lua=luajit;}; + love_0_9 = callPackage ../development/interpreters/love/0.9.nix { }; + + lua4 = callPackage ../development/interpreters/lua-4 { }; + lua5_0 = callPackage ../development/interpreters/lua-5/5.0.3.nix { }; + lua5_1 = callPackage ../development/interpreters/lua-5/5.1.nix { }; + lua5_2 = callPackage ../development/interpreters/lua-5/5.2.nix { }; + lua5_2_compat = callPackage ../development/interpreters/lua-5/5.2.nix { + compat = true; + }; + lua5 = lua5_1; + lua = lua5; + + lua5_sockets = callPackage ../development/interpreters/lua-5/sockets.nix {}; + lua5_expat = callPackage ../development/interpreters/lua-5/expat.nix {}; + lua5_filesystem = callPackage ../development/interpreters/lua-5/filesystem.nix {}; + lua5_sec = callPackage ../development/interpreters/lua-5/sec.nix {}; + + luarocks = callPackage ../development/tools/misc/luarocks { + lua = lua5; + }; + + luajit = callPackage ../development/interpreters/luajit {}; + + lush2 = callPackage ../development/interpreters/lush {}; + + maude = callPackage ../development/interpreters/maude { + bison = bison2; + flex = flex_2_5_35; + }; + + mesos = callPackage ../applications/networking/cluster/mesos { + sasl = cyrus_sasl; + automake = automake114x; + inherit (pythonPackages) python boto setuptools distutils-cfg wrapPython; + pythonProtobuf = pythonPackages.protobuf; + }; + + octave = callPackage ../development/interpreters/octave { + fltk = fltk13; + qt = null; + ghostscript = null; + llvm = null; + hdf5 = null; + glpk = null; + suitesparse = null; + openjdk = null; + gnuplot = null; + readline = readline63; + }; + octaveFull = (lowPrio (callPackage ../development/interpreters/octave { + fltk = fltk13; + qt = qt4; + })); + + # mercurial (hg) bleeding edge version + octaveHG = callPackage ../development/interpreters/octave/hg.nix { }; + + ocropus = callPackage ../applications/misc/ocropus { }; + + perl514 = callPackage ../development/interpreters/perl/5.14 { }; + + perl516 = callPackage ../development/interpreters/perl/5.16 { + fetchurl = fetchurlBoot; + }; + + perl520 = callPackage ../development/interpreters/perl/5.20 { }; + + perl = if system != "i686-cygwin" then perl516 else sysPerl; + + php = php54; + + phpPackages = recurseIntoAttrs (import ./php-packages.nix { + inherit php pkgs; + }); + + php53 = callPackage ../development/interpreters/php/5.3.nix { }; + + php_fpm53 = callPackage ../development/interpreters/php/5.3.nix { + config = config // { + php = (config.php or {}) // { + fpm = true; + apxs2 = false; + }; + }; + }; + + php54 = callPackage ../development/interpreters/php/5.4.nix { }; + + picolisp = callPackage ../development/interpreters/picolisp {}; + + pltScheme = racket; # just to be sure + + polyml = callPackage ../development/compilers/polyml { }; + + pure = callPackage ../development/interpreters/pure { + llvm = llvm_33 ; + }; + + python = python2; + python2 = python27; + python3 = python34; + + # pythonPackages further below, but assigned here because they need to be in sync + pythonPackages = python2Packages; + python2Packages = python27Packages; + python3Packages = python34Packages; + + pythonFull = python2Full; + python2Full = python27Full; + + python26 = callPackage ../development/interpreters/python/2.6 { db = db47; }; + python27 = callPackage ../development/interpreters/python/2.7 { }; + python32 = callPackage ../development/interpreters/python/3.2 { }; + python33 = callPackage ../development/interpreters/python/3.3 { }; + python34 = hiPrio (callPackage ../development/interpreters/python/3.4 { }); + + pypy = callPackage ../development/interpreters/pypy/2.3 { }; + + python26Full = callPackage ../development/interpreters/python/wrapper.nix { + extraLibs = []; + postBuild = ""; + python = python26; + inherit (python26Packages) recursivePthLoader; + }; + python27Full = callPackage ../development/interpreters/python/wrapper.nix { + extraLibs = []; + postBuild = ""; + python = python27; + inherit (python27Packages) recursivePthLoader; + }; + + pythonDocs = recurseIntoAttrs (import ../development/interpreters/python/docs { + inherit stdenv fetchurl lib; + }); + + pythonLinkmeWrapper = callPackage ../development/interpreters/python/python-linkme-wrapper.nix { }; + + pypi2nix = python27Packages.pypi2nix; + + pyrex = pyrex095; + + pyrex095 = callPackage ../development/interpreters/pyrex/0.9.5.nix { }; + + pyrex096 = callPackage ../development/interpreters/pyrex/0.9.6.nix { }; + + qi = callPackage ../development/compilers/qi { }; + + racket = callPackage ../development/interpreters/racket { }; + + rakudo = callPackage ../development/interpreters/rakudo { }; + + rascal = callPackage ../development/interpreters/rascal { }; + + regina = callPackage ../development/interpreters/regina { }; + + renpy = callPackage ../development/interpreters/renpy { + wrapPython = pythonPackages.wrapPython; + }; + + ruby18 = callPackage ../development/interpreters/ruby/ruby-18.nix { }; + ruby19 = callPackage ../development/interpreters/ruby/ruby-19.nix { }; + ruby2 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.0.nix { }); + ruby21 = callPackage ../development/interpreters/ruby/ruby-2.1.2.nix { }; + + ruby = ruby19; + + rubyLibs = recurseIntoAttrs (callPackage ../development/interpreters/ruby/libs.nix { }); + + rake = rubyLibs.rake; + + rubySqlite3 = callPackage ../development/ruby-modules/sqlite3 { }; + + rubygemsFun = ruby: builderDefsPackage (import ../development/interpreters/ruby/rubygems.nix) { + inherit ruby makeWrapper; + }; + rubygems = hiPrio (rubygemsFun ruby); + + rq = callPackage ../applications/networking/cluster/rq { }; + + scsh = callPackage ../development/interpreters/scsh { }; + + scheme48 = callPackage ../development/interpreters/scheme48 { }; + + self = callPackage_i686 ../development/interpreters/self { }; + + spark = callPackage ../applications/networking/cluster/spark { }; + + spidermonkey = callPackage ../development/interpreters/spidermonkey { }; + spidermonkey_1_8_0rc1 = callPackage ../development/interpreters/spidermonkey/1.8.0-rc1.nix { }; + spidermonkey_185 = callPackage ../development/interpreters/spidermonkey/185-1.0.0.nix { }; + spidermonkey_17 = callPackage ../development/interpreters/spidermonkey/17.0.nix { }; + spidermonkey_24 = callPackage ../development/interpreters/spidermonkey/24.2.nix { }; + + supercollider = callPackage ../development/interpreters/supercollider { + qt = qt4; + fftw = fftwSinglePrec; + }; + + supercollider_scel = supercollider.override { useSCEL = true; }; + + sysPerl = callPackage ../development/interpreters/perl/sys-perl { }; + + tcl = callPackage ../development/interpreters/tcl { }; + + xulrunner = callPackage ../development/interpreters/xulrunner { + inherit (gnome) libIDL; + inherit (pythonPackages) pysqlite; + }; + + xulrunner_30 = firefox30Pkgs.xulrunner; + + + ### DEVELOPMENT / MISC + + amdadlsdk = callPackage ../development/misc/amdadl-sdk { }; + + amdappsdk26 = callPackage ../development/misc/amdapp-sdk { + version = "2.6"; + }; + + amdappsdk27 = callPackage ../development/misc/amdapp-sdk { + version = "2.7"; + }; + + amdappsdk28 = callPackage ../development/misc/amdapp-sdk { + version = "2.8"; + }; + + amdappsdk = amdappsdk28; + + amdappsdkFull = callPackage ../development/misc/amdapp-sdk { + version = "2.8"; + samples = true; + }; + + avrgcclibc = callPackage ../development/misc/avr-gcc-with-avr-libc { + gcc = gcc46; + stdenv = overrideGCC stdenv gcc46; + }; + + avr8burnomat = callPackage ../development/misc/avr8-burn-omat { }; + + sourceFromHead = import ../build-support/source-from-head-fun.nix { + inherit config; + }; + + ecj = callPackage ../development/eclipse/ecj { }; + + jdtsdk = callPackage ../development/eclipse/jdt-sdk { }; + + jruby165 = callPackage ../development/interpreters/jruby { }; + + guileCairo = callPackage ../development/guile-modules/guile-cairo { }; + + guileGnome = callPackage ../development/guile-modules/guile-gnome { + gconf = gnome.GConf; + inherit (gnome) gnome_vfs libglade libgnome libgnomecanvas libgnomeui; + }; + + guile_lib = callPackage ../development/guile-modules/guile-lib { }; + + guile_ncurses = callPackage ../development/guile-modules/guile-ncurses { }; + + guile-xcb = callPackage ../development/guile-modules/guile-xcb { }; + + pharo-vm = callPackage_i686 ../development/pharo/vm { }; + + srecord = callPackage ../development/tools/misc/srecord { }; + + windowssdk = ( + import ../development/misc/windows-sdk { + inherit fetchurl stdenv cabextract; + }); + + + ### DEVELOPMENT / TOOLS + + ansible = callPackage ../tools/system/ansible { }; + + antlr = callPackage ../development/tools/parsing/antlr/2.7.7.nix { }; + + antlr3 = callPackage ../development/tools/parsing/antlr { }; + + ant = apacheAnt; + + apacheAnt = callPackage ../development/tools/build-managers/apache-ant { }; + + astyle = callPackage ../development/tools/misc/astyle { }; + + autobuild = callPackage ../development/tools/misc/autobuild { }; + + autoconf = callPackage ../development/tools/misc/autoconf { }; + + autoconf213 = callPackage ../development/tools/misc/autoconf/2.13.nix { }; + + autocutsel = callPackage ../tools/X11/autocutsel{ }; + + automake = automake112x; + + automake111x = callPackage ../development/tools/misc/automake/automake-1.11.x.nix { }; + + automake112x = callPackage ../development/tools/misc/automake/automake-1.12.x.nix { }; + + automake113x = callPackage ../development/tools/misc/automake/automake-1.13.x.nix { }; + + automake114x = callPackage ../development/tools/misc/automake/automake-1.14.x.nix { }; + + automoc4 = callPackage ../development/tools/misc/automoc4 { }; + + avrdude = callPackage ../development/tools/misc/avrdude { }; + + avarice = callPackage ../development/tools/misc/avarice { }; + + babeltrace = callPackage ../development/tools/misc/babeltrace { }; + + bam = callPackage ../development/tools/build-managers/bam {}; + + binutils = callPackage ../development/tools/misc/binutils { + inherit noSysDirs; + }; + + binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { + inherit noSysDirs; + gold = false; + }); + + binutilsCross = + if crossSystem != null && crossSystem.libc == "libSystem" then darwin.cctools + else lowPrio (forceNativeDrv (import ../development/tools/misc/binutils { + inherit stdenv fetchurl zlib bison; + noSysDirs = true; + cross = assert crossSystem != null; crossSystem; + })); + + bison2 = callPackage ../development/tools/parsing/bison/2.x.nix { }; + bison3 = callPackage ../development/tools/parsing/bison/3.x.nix { }; + bison = bison3; + + bossa = callPackage ../development/tools/misc/bossa { + wxGTK = wxGTK30; + }; + + buildbot = callPackage ../development/tools/build-managers/buildbot { + inherit (pythonPackages) twisted jinja2 sqlalchemy sqlalchemy_migrate; + dateutil = pythonPackages.dateutil_1_5; + }; + + buildbotSlave = callPackage ../development/tools/build-managers/buildbot-slave { + inherit (pythonPackages) twisted; + }; + + byacc = callPackage ../development/tools/parsing/byacc { }; + + casperjs = callPackage ../development/tools/casperjs { }; + + cbrowser = callPackage ../development/tools/misc/cbrowser { }; + + ccache = callPackage ../development/tools/misc/ccache { }; + + # Wrapper that works as gcc or g++ + # It can be used by setting in nixpkgs config like this, for example: + # replaceStdenv = { pkgs }: pkgs.ccacheStdenv; + # But if you build in chroot, you should have that path in chroot + # If instantiated directly, it will use the HOME/.ccache as cache directory. + # You can use an override in packageOverrides to set extraConfig: + # packageOverrides = pkgs: { + # ccacheWrapper = pkgs.ccacheWrapper.override { + # extraConfig = '' + # CCACHE_COMPRESS=1 + # CCACHE_DIR=/bin/.ccache + # ''; + # }; + # + ccacheWrapper = makeOverridable ({ extraConfig ? "" }: + wrapGCC (ccache.links extraConfig)) {}; + ccacheStdenv = lowPrio (overrideGCC stdenv ccacheWrapper); + + cccc = callPackage ../development/tools/analysis/cccc { }; + + cgdb = callPackage ../development/tools/misc/cgdb { }; + + chromedriver = callPackage ../development/tools/selenium/chromedriver { gconf = gnome.GConf; }; + + chrpath = callPackage ../development/tools/misc/chrpath { }; + + "cl-launch" = callPackage ../development/tools/misc/cl-launch {}; + + complexity = callPackage ../development/tools/misc/complexity { }; + + ctags = callPackage ../development/tools/misc/ctags { }; + + ctagsWrapped = import ../development/tools/misc/ctags/wrapped.nix { + inherit pkgs ctags writeScriptBin; + }; + + cmake = callPackage ../development/tools/build-managers/cmake { }; + + cmake264 = callPackage ../development/tools/build-managers/cmake/264.nix { }; + + cmakeCurses = cmake.override { useNcurses = true; }; + + cmakeWithGui = cmakeCurses.override { useQt4 = true; }; + + coccinelle = callPackage ../development/tools/misc/coccinelle { }; + + framac = callPackage ../development/tools/analysis/frama-c { }; + + cppi = callPackage ../development/tools/misc/cppi { }; + + cproto = callPackage ../development/tools/misc/cproto { }; + + cflow = callPackage ../development/tools/misc/cflow { }; + + cov-build = callPackage ../development/tools/analysis/cov-build {}; + + cppcheck = callPackage ../development/tools/analysis/cppcheck { }; + + cscope = callPackage ../development/tools/misc/cscope { }; + + csslint = callPackage ../development/web/csslint { }; + + libcxx = callPackage ../development/libraries/libc++ { stdenv = pkgs.clangStdenv; }; + libcxxabi = callPackage ../development/libraries/libc++abi { stdenv = pkgs.clangStdenv; }; + + libsigrok = callPackage ../development/tools/libsigrok { }; + + libsigrokdecode = callPackage ../development/tools/libsigrokdecode { }; + + dejagnu = callPackage ../development/tools/misc/dejagnu { }; + + dfeet = callPackage ../development/tools/misc/d-feet { + inherit (pythonPackages) pep8; + }; + + dfu-programmer = callPackage ../development/tools/misc/dfu-programmer { }; + + ddd = callPackage ../development/tools/misc/ddd { }; + + distcc = callPackage ../development/tools/misc/distcc { }; + + # distccWrapper: wrapper that works as gcc or g++ + # It can be used by setting in nixpkgs config like this, for example: + # replaceStdenv = { pkgs }: pkgs.distccStdenv; + # But if you build in chroot, a default 'nix' will create + # a new net namespace, and won't have network access. + # You can use an override in packageOverrides to set extraConfig: + # packageOverrides = pkgs: { + # distccWrapper = pkgs.distccWrapper.override { + # extraConfig = '' + # DISTCC_HOSTS="myhost1 myhost2" + # ''; + # }; + # + distccWrapper = makeOverridable ({ extraConfig ? "" }: + wrapGCC (distcc.links extraConfig)) {}; + distccStdenv = lowPrio (overrideGCC stdenv distccWrapper); + + distccMasquerade = callPackage ../development/tools/misc/distcc/masq.nix { + gccRaw = gcc.gcc; + binutils = binutils; + }; + + docutils = builderDefsPackage (import ../development/tools/documentation/docutils) { + inherit python pil makeWrapper; + }; + + doxygen = callPackage ../development/tools/documentation/doxygen { + qt4 = null; + }; + + doxygen_gui = lowPrio (doxygen.override { inherit qt4; }); + + drush = callPackage ../development/tools/misc/drush { }; + + eggdbus = callPackage ../development/tools/misc/eggdbus { }; + + elfutils = callPackage ../development/tools/misc/elfutils { }; + + epm = callPackage ../development/tools/misc/epm { }; + + emma = callPackage ../development/tools/analysis/emma { }; + + findbugs = callPackage ../development/tools/analysis/findbugs { }; + + pmd = callPackage ../development/tools/analysis/pmd { }; + + jdepend = callPackage ../development/tools/analysis/jdepend { }; + + checkstyle = callPackage ../development/tools/analysis/checkstyle { }; + + flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { }; + flex_2_5_39 = callPackage ../development/tools/parsing/flex/2.5.39.nix { }; + flex = flex_2_5_39; + + m4 = gnum4; + + global = callPackage ../development/tools/misc/global { }; + + gnome_doc_utils = callPackage ../development/tools/documentation/gnome-doc-utils {}; + + gnum4 = callPackage ../development/tools/misc/gnum4 { }; + + gnumake380 = callPackage ../development/tools/build-managers/gnumake/3.80 { }; + gnumake381 = callPackage ../development/tools/build-managers/gnumake/3.81 { }; + gnumake382 = callPackage ../development/tools/build-managers/gnumake/3.82 { }; + gnumake40 = callPackage ../development/tools/build-managers/gnumake/4.0 { }; + gnumake = gnumake382; + + gob2 = callPackage ../development/tools/misc/gob2 { }; + + gradle = callPackage ../development/tools/build-managers/gradle { }; + + gperf = callPackage ../development/tools/misc/gperf { }; + + gtk_doc = callPackage ../development/tools/documentation/gtk-doc { }; + + gtkdialog = callPackage ../development/tools/misc/gtkdialog { }; + + guileLint = callPackage ../development/tools/guile/guile-lint { }; + + gwrap = callPackage ../development/tools/guile/g-wrap { }; + + help2man = callPackage ../development/tools/misc/help2man { + inherit (perlPackages) LocaleGettext; + }; + + hyenae = callPackage ../tools/networking/hyenae { }; + + ibus = callPackage ../development/libraries/ibus { }; + + iconnamingutils = callPackage ../development/tools/misc/icon-naming-utils { + inherit (perlPackages) XMLSimple; + }; + + indent = callPackage ../development/tools/misc/indent { }; + + ino = callPackage ../development/arduino/ino { }; + + inotifyTools = callPackage ../development/tools/misc/inotify-tools { }; + + intel-gpu-tools = callPackage ../development/tools/misc/intel-gpu-tools { + inherit (xorg) libpciaccess dri2proto libX11 libXext libXv libXrandr; + }; + + ired = callPackage ../development/tools/analysis/radare/ired.nix { }; + + itstool = callPackage ../development/tools/misc/itstool { }; + + jam = callPackage ../development/tools/build-managers/jam { }; + + jikespg = callPackage ../development/tools/parsing/jikespg { }; + + jenkins = callPackage ../development/tools/continuous-integration/jenkins { }; + + lcov = callPackage ../development/tools/analysis/lcov { }; + + leiningen = callPackage ../development/tools/build-managers/leiningen { }; + + libtool = libtool_2; + + libtool_1_5 = callPackage ../development/tools/misc/libtool { }; + + libtool_2 = callPackage ../development/tools/misc/libtool/libtool2.nix { }; + + lsof = callPackage ../development/tools/misc/lsof { }; + + ltrace = callPackage ../development/tools/misc/ltrace { }; + + lttng-tools = callPackage ../development/tools/misc/lttng-tools { }; + + lttng-ust = callPackage ../development/tools/misc/lttng-ust { }; + + lttv = callPackage ../development/tools/misc/lttv { }; + + mk = callPackage ../development/tools/build-managers/mk { }; + + neoload = callPackage ../development/tools/neoload { + licenseAccepted = (config.neoload.accept_license or false); + }; + + ninja = callPackage ../development/tools/build-managers/ninja { }; + + nixbang = callPackage ../development/tools/misc/nixbang { + pythonPackages = python3Packages; + }; + + node_webkit = callPackage ../development/tools/node-webkit { + gconf = pkgs.gnome.GConf; + }; + + noweb = callPackage ../development/tools/literate-programming/noweb { }; + + omake = callPackage ../development/tools/ocaml/omake { }; + omake_rc1 = callPackage ../development/tools/ocaml/omake/0.9.8.6-rc1.nix { }; + + opengrok = callPackage ../development/tools/misc/opengrok { }; + + openocd = callPackage ../development/tools/misc/openocd { }; + + oprofile = callPackage ../development/tools/profiling/oprofile { }; + + patchelf = callPackage ../development/tools/misc/patchelf { }; + + peg = callPackage ../development/tools/parsing/peg { }; + + phantomjs = callPackage ../development/tools/phantomjs { + stdenv = if stdenv.isDarwin + then overrideGCC stdenv gccApple + else stdenv; + }; + + pmccabe = callPackage ../development/tools/misc/pmccabe { }; + + /* Make pkgconfig always return a nativeDrv, never a proper crossDrv, + because most usage of pkgconfig as buildInput (inheritance of + pre-cross nixpkgs) means using it using as nativeBuildInput + cross_renaming: we should make all programs use pkgconfig as + nativeBuildInput after the renaming. + */ + pkgconfig = forceNativeDrv (callPackage ../development/tools/misc/pkgconfig { }); + pkgconfigUpstream = lowPrio (pkgconfig.override { vanilla = true; }); + + prelink = callPackage ../development/tools/misc/prelink { }; + + premake3 = callPackage ../development/tools/misc/premake/3.nix { }; + + premake4 = callPackage ../development/tools/misc/premake { }; + + premake = premake4; + + pstack = callPackage ../development/tools/misc/gdb/pstack.nix { }; + + radare = callPackage ../development/tools/analysis/radare { + inherit (gnome) vte; + lua = lua5; + useX11 = config.radare.useX11 or false; + pythonBindings = config.radare.pythonBindings or false; + rubyBindings = config.radare.rubyBindings or false; + luaBindings = config.radare.luaBindings or false; + }; + + ragel = callPackage ../development/tools/parsing/ragel { }; + + re2c = callPackage ../development/tools/parsing/re2c { }; + + remake = callPackage ../development/tools/build-managers/remake { }; + + saleae-logic = callPackage ../development/tools/misc/saleae-logic { }; + + # couldn't find the source yet + seleniumRCBin = callPackage ../development/tools/selenium/remote-control { + jre = jdk; + }; + + selenium-server-standalone = callPackage ../development/tools/selenium/server { }; + + scons = callPackage ../development/tools/build-managers/scons { }; + + simpleBuildTool = callPackage ../development/tools/build-managers/simple-build-tool { }; + + sigrok-cli = callPackage ../development/tools/sigrok-cli { }; + + slimerjs = callPackage ../development/tools/slimerjs {}; + + sloccount = callPackage ../development/tools/misc/sloccount { }; + + smatch = callPackage ../development/tools/analysis/smatch { + buildllvmsparse = false; + buildc2xml = false; + }; + + smc = callPackage ../tools/misc/smc { }; + + sparse = callPackage ../development/tools/analysis/sparse { }; + + speedtest_cli = callPackage ../tools/networking/speedtest-cli { }; + + spin = callPackage ../development/tools/analysis/spin { }; + + splint = callPackage ../development/tools/analysis/splint { + flex = flex_2_5_35; + }; + + stm32flash = callPackage ../development/tools/misc/stm32flash { }; + + strace = callPackage ../development/tools/misc/strace { }; + + swig = callPackage ../development/tools/misc/swig { }; + + swig2 = callPackage ../development/tools/misc/swig/2.x.nix { }; + + swig3 = callPackage ../development/tools/misc/swig/3.x.nix { }; + + swigWithJava = swig; + + swfmill = callPackage ../tools/video/swfmill { }; + + swftools = callPackage ../tools/video/swftools { }; + + tcptrack = callPackage ../development/tools/misc/tcptrack { }; + + teensy-loader = callPackage ../development/tools/misc/teensy { }; + + texinfo413 = callPackage ../development/tools/misc/texinfo/4.13a.nix { }; + texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { }; + texinfo4 = texinfo413; + texinfo = texinfo5; + texinfoInteractive = appendToName "interactive" ( + texinfo.override { interactive = true; } + ); + + texi2html = callPackage ../development/tools/misc/texi2html { }; + + uhd = callPackage ../development/tools/misc/uhd { }; + + uisp = callPackage ../development/tools/misc/uisp { }; + + uncrustify = callPackage ../development/tools/misc/uncrustify { }; + + vagrant = callPackage ../development/tools/vagrant { + ruby = ruby2; + }; + + gdb = callPackage ../development/tools/misc/gdb { + hurd = gnu.hurdCross; + readline = readline63; + inherit (gnu) mig; + }; + + gdbCross = lowPrio (callPackage ../development/tools/misc/gdb { + target = crossSystem; + }); + + valgrind = callPackage ../development/tools/analysis/valgrind { + stdenv = + # On Darwin, Valgrind 3.7.0 expects Apple's GCC (for + # `__private_extern'.) + if stdenv.isDarwin + then overrideGCC stdenv gccApple + else stdenv; + }; + + valkyrie = callPackage ../development/tools/analysis/valkyrie { }; + + xc3sprog = callPackage ../development/tools/misc/xc3sprog { }; + + xmlindent = callPackage ../development/web/xmlindent {}; + + xpwn = callPackage ../development/mobile/xpwn {}; + + xxdiff = callPackage ../development/tools/misc/xxdiff { + bison = bison2; + }; + + yacc = bison; + + yodl = callPackage ../development/tools/misc/yodl { }; + + + ### DEVELOPMENT / LIBRARIES + + a52dec = callPackage ../development/libraries/a52dec { }; + + aacskeys = callPackage ../development/libraries/aacskeys { }; + + aalib = callPackage ../development/libraries/aalib { }; + + accountsservice = callPackage ../development/libraries/accountsservice { }; + + acl = callPackage ../development/libraries/acl { }; + + activemq = callPackage ../development/libraries/apache-activemq { }; + + adns = callPackage ../development/libraries/adns { }; + + afflib = callPackage ../development/libraries/afflib {}; + + agg = callPackage ../development/libraries/agg { }; + + allegro = callPackage ../development/libraries/allegro {}; + allegro5 = callPackage ../development/libraries/allegro/5.nix {}; + allegro5unstable = callPackage + ../development/libraries/allegro/5-unstable.nix {}; + + amrnb = callPackage ../development/libraries/amrnb { }; + + amrwb = callPackage ../development/libraries/amrwb { }; + + apr = callPackage ../development/libraries/apr { }; + + aprutil = callPackage ../development/libraries/apr-util { + bdbSupport = true; + }; + + asio = callPackage ../development/libraries/asio { }; + + aspell = callPackage ../development/libraries/aspell { }; + + aspellDicts = recurseIntoAttrs (import ../development/libraries/aspell/dictionaries.nix { + inherit fetchurl stdenv aspell which; + }); + + aterm = aterm25; + + aterm25 = callPackage ../development/libraries/aterm/2.5.nix { }; + + aterm28 = lowPrio (callPackage ../development/libraries/aterm/2.8.nix { }); + + attica = callPackage ../development/libraries/attica { }; + + attr = callPackage ../development/libraries/attr { }; + + at_spi2_core = callPackage ../development/libraries/at-spi2-core { }; + + at_spi2_atk = callPackage ../development/libraries/at-spi2-atk { }; + + aqbanking = callPackage ../development/libraries/aqbanking { }; + + aubio = callPackage ../development/libraries/aubio { }; + + audiofile = callPackage ../development/libraries/audiofile { }; + + babl_0_0_22 = callPackage ../development/libraries/babl/0_0_22.nix { }; + + babl = callPackage ../development/libraries/babl { }; + + beecrypt = callPackage ../development/libraries/beecrypt { }; + + boehmgc = callPackage ../development/libraries/boehm-gc { }; + + boolstuff = callPackage ../development/libraries/boolstuff { }; + + boost144 = callPackage ../development/libraries/boost/1.44.nix { }; + boost149 = callPackage ../development/libraries/boost/1.49.nix { }; + boost155 = callPackage ../development/libraries/boost/1.55.nix { }; + boost = boost155; + + boostHeaders = callPackage ../development/libraries/boost/header-only-wrapper.nix { }; + + botan = callPackage ../development/libraries/botan { }; + botanUnstable = callPackage ../development/libraries/botan/unstable.nix { }; + + box2d = callPackage ../development/libraries/box2d { }; + box2d_2_0_1 = callPackage ../development/libraries/box2d/2.0.1.nix { }; + + buddy = callPackage ../development/libraries/buddy { }; + + bwidget = callPackage ../development/libraries/bwidget { }; + + c-ares = callPackage ../development/libraries/c-ares { + fetchurl = fetchurlBoot; + }; + + caelum = callPackage ../development/libraries/caelum { }; + + capnproto = callPackage ../development/libraries/capnproto { }; + + scmccid = callPackage ../development/libraries/scmccid { }; + + ccrtp = callPackage ../development/libraries/ccrtp { }; + ccrtp_1_8 = callPackage ../development/libraries/ccrtp/1.8.nix { }; + + celt = callPackage ../development/libraries/celt {}; + celt_0_7 = callPackage ../development/libraries/celt/0.7.nix {}; + celt_0_5_1 = callPackage ../development/libraries/celt/0.5.1.nix {}; + + cgal = callPackage ../development/libraries/CGAL {}; + + cgui = callPackage ../development/libraries/cgui {}; + + check = callPackage ../development/libraries/check { }; + + chipmunk = builderDefsPackage (import ../development/libraries/chipmunk) { + inherit cmake freeglut mesa; + inherit (xlibs) libX11 xproto inputproto libXi libXmu; + }; + + chmlib = callPackage ../development/libraries/chmlib { }; + + chromaprint = callPackage ../development/libraries/chromaprint { }; + + cil = callPackage ../development/libraries/cil { }; + + cilaterm = callPackage ../development/libraries/cil-aterm { + stdenv = overrideInStdenv stdenv [gnumake380]; + }; + + clanlib = callPackage ../development/libraries/clanlib { }; + + classads = callPackage ../development/libraries/classads { }; + + classpath = callPackage ../development/libraries/java/classpath { + javac = gcj; + jvm = gcj; + gconf = gnome.GConf; + }; + + clearsilver = callPackage ../development/libraries/clearsilver { }; + + cln = callPackage ../development/libraries/cln { }; + + clppcre = builderDefsPackage (import ../development/libraries/cl-ppcre) { }; + + clucene_core_2 = callPackage ../development/libraries/clucene-core/2.x.nix { }; + + clucene_core_1 = callPackage ../development/libraries/clucene-core { }; + + clucene_core = clucene_core_1; + + clutter = callPackage ../development/libraries/clutter { }; + + clutter_1_18 = callPackage ../development/libraries/clutter/1.18.nix { + cogl = cogl_1_18; + }; + + clutter-gst = callPackage ../development/libraries/clutter-gst { }; + + clutter_gtk = callPackage ../development/libraries/clutter-gtk { }; + clutter_gtk_0_10 = callPackage ../development/libraries/clutter-gtk/0.10.8.nix { }; + + cminpack = callPackage ../development/libraries/cminpack { }; + + cogl = callPackage ../development/libraries/cogl { }; + + cogl_1_18 = callPackage ../development/libraries/cogl/1.18.nix { }; + + coin3d = callPackage ../development/libraries/coin3d { }; + + commoncpp2 = callPackage ../development/libraries/commoncpp2 { }; + + confuse = callPackage ../development/libraries/confuse { }; + + coredumper = callPackage ../development/libraries/coredumper { }; + + ctl = callPackage ../development/libraries/ctl { }; + + cpp-netlib = callPackage ../development/libraries/cpp-netlib { }; + + cppunit = callPackage ../development/libraries/cppunit { }; + + cppnetlib = callPackage ../development/libraries/cppnetlib { + boost = boostHeaders; + }; + + cracklib = callPackage ../development/libraries/cracklib { }; + + cryptopp = callPackage ../development/libraries/crypto++ { }; + + cyrus_sasl = callPackage ../development/libraries/cyrus-sasl { }; + + # Make bdb5 the default as it is the last release under the custom + # bsd-like license + db = db5; + db4 = db48; + db44 = callPackage ../development/libraries/db/db-4.4.nix { }; + db45 = callPackage ../development/libraries/db/db-4.5.nix { }; + db47 = callPackage ../development/libraries/db/db-4.7.nix { }; + db48 = callPackage ../development/libraries/db/db-4.8.nix { }; + db5 = db53; + db53 = callPackage ../development/libraries/db/db-5.3.nix { }; + db6 = db60; + db60 = callPackage ../development/libraries/db/db-6.0.nix { }; + + dbus = callPackage ../development/libraries/dbus { }; + dbus_cplusplus = callPackage ../development/libraries/dbus-cplusplus { }; + dbus_glib = callPackage ../development/libraries/dbus-glib { }; + dbus_java = callPackage ../development/libraries/java/dbus-java { }; + dbus_python = callPackage ../development/python-modules/dbus { }; + + # Should we deprecate these? Currently there are many references. + dbus_tools = pkgs.dbus.tools; + dbus_libs = pkgs.dbus.libs; + dbus_daemon = pkgs.dbus.daemon; + + dhex = callPackage ../applications/editors/dhex { }; + + dclib = callPackage ../development/libraries/dclib { }; + + dillo = callPackage ../applications/networking/browsers/dillo { + fltk = fltk13; + }; + + directfb = callPackage ../development/libraries/directfb { }; + + dotconf = callPackage ../development/libraries/dotconf { }; + + dssi = callPackage ../development/libraries/dssi {}; + + dragonegg = llvmPackages.dragonegg; + + dxflib = callPackage ../development/libraries/dxflib {}; + + eigen = callPackage ../development/libraries/eigen {}; + + eigen2 = callPackage ../development/libraries/eigen/2.0.nix {}; + + enchant = callPackage ../development/libraries/enchant { }; + + enet = callPackage ../development/libraries/enet { }; + + enginepkcs11 = callPackage ../development/libraries/enginepkcs11 { }; + + epoxy = callPackage ../development/libraries/epoxy { + inherit (xorg) utilmacros libX11; + }; + + esdl = callPackage ../development/libraries/esdl { }; + + exiv2 = callPackage ../development/libraries/exiv2 { }; + + expat = callPackage ../development/libraries/expat { }; + + extremetuxracer = callPackage ../games/extremetuxracer { + libpng = libpng12; + }; + + eventlog = callPackage ../development/libraries/eventlog { }; + + facile = callPackage ../development/libraries/facile { }; + + faac = callPackage ../development/libraries/faac { }; + + faad2 = callPackage ../development/libraries/faad2 { }; + + farsight2 = callPackage ../development/libraries/farsight2 { }; + + farstream = callPackage ../development/libraries/farstream { + inherit (gst_all_1) + gstreamer gst-plugins-base gst-python gst-plugins-good gst-plugins-bad + gst-libav; + }; + + fcgi = callPackage ../development/libraries/fcgi { }; + + ffmpeg_0_6 = callPackage ../development/libraries/ffmpeg/0.6.nix { + vpxSupport = !stdenv.isMips; + }; + + ffmpeg_0_6_90 = callPackage ../development/libraries/ffmpeg/0.6.90.nix { + vpxSupport = !stdenv.isMips; + }; + + ffmpeg_0_10 = callPackage ../development/libraries/ffmpeg/0.10.nix { + vpxSupport = !stdenv.isMips; + + stdenv = if stdenv.isDarwin + then overrideGCC stdenv gccApple + else stdenv; + }; + + ffmpeg_1 = callPackage ../development/libraries/ffmpeg/1.x.nix { + vpxSupport = !stdenv.isMips; + }; + + ffmpeg_2 = callPackage ../development/libraries/ffmpeg/2.x.nix { }; + + ffmpeg = ffmpeg_2; + + ffms = callPackage ../development/libraries/ffms { }; + + fftw = callPackage ../development/libraries/fftw { }; + fftwSinglePrec = fftw.override { precision = "single"; }; + fftwFloat = fftwSinglePrec; # the configure option is just an alias + + flann = callPackage ../development/libraries/flann { }; + + flite = callPackage ../development/libraries/flite { }; + + fltk13 = callPackage ../development/libraries/fltk/fltk13.nix { }; + + fltk20 = callPackage ../development/libraries/fltk { }; + + fmod = callPackage ../development/libraries/fmod { }; + + freeimage = callPackage ../development/libraries/freeimage { }; + + freetts = callPackage ../development/libraries/freetts { }; + + cfitsio = callPackage ../development/libraries/cfitsio { }; + + fontconfig = callPackage ../development/libraries/fontconfig { }; + + makeFontsConf = let fontconfig_ = fontconfig; in {fontconfig ? fontconfig_, fontDirectories}: + import ../development/libraries/fontconfig/make-fonts-conf.nix { + inherit runCommand libxslt fontconfig fontDirectories; + }; + + freealut = callPackage ../development/libraries/freealut { }; + + freeglut = callPackage ../development/libraries/freeglut { }; + + freetype = callPackage ../development/libraries/freetype { }; + + frei0r = callPackage ../development/libraries/frei0r { }; + + fribidi = callPackage ../development/libraries/fribidi { }; + + funambol = callPackage ../development/libraries/funambol { }; + + fam = gamin; + + gamin = callPackage ../development/libraries/gamin { }; + + ganv = callPackage ../development/libraries/ganv { }; + + gav = callPackage ../games/gav { }; + + gsb = callPackage ../games/gsb { }; + + gdome2 = callPackage ../development/libraries/gdome2 { + inherit (gnome) gtkdoc; + }; + + gdbm = callPackage ../development/libraries/gdbm { }; + + gegl = callPackage ../development/libraries/gegl { + # avocodec avformat librsvg + }; + + gegl_0_0_22 = callPackage ../development/libraries/gegl/0_0_22.nix { + # avocodec avformat librsvg + libpng = libpng12; + }; + + geoclue = callPackage ../development/libraries/geoclue {}; + + geoclue2 = callPackage ../development/libraries/geoclue/2.0.nix {}; + + geoip = callPackage ../development/libraries/geoip { }; + + geoipjava = callPackage ../development/libraries/java/geoipjava { }; + + geos = callPackage ../development/libraries/geos { }; + + gettext = gettext_0_18; + + gettext_0_17 = callPackage ../development/libraries/gettext/0.17.nix { }; + gettext_0_18 = callPackage ../development/libraries/gettext { }; + + gd = callPackage ../development/libraries/gd { }; + + gdal = callPackage ../development/libraries/gdal { }; + + ggz_base_libs = callPackage ../development/libraries/ggz_base_libs {}; + + giblib = callPackage ../development/libraries/giblib { }; + + libgit2 = callPackage ../development/libraries/git2 { }; + + glew = callPackage ../development/libraries/glew { }; + + glfw = glfw3; + glfw2 = callPackage ../development/libraries/glfw/2.x.nix { }; + glfw3 = callPackage ../development/libraries/glfw/3.x.nix { }; + + glibc = callPackage ../development/libraries/glibc/2.19 { + kernelHeaders = linuxHeaders; + installLocales = config.glibc.locales or false; + machHeaders = null; + hurdHeaders = null; + gccCross = null; + }; + + glibc_memusage = callPackage ../development/libraries/glibc/2.19 { + kernelHeaders = linuxHeaders; + installLocales = false; + withGd = true; + }; + + glibcCross = forceNativeDrv (makeOverridable (import ../development/libraries/glibc/2.19) + (let crossGNU = crossSystem != null && crossSystem.config == "i586-pc-gnu"; + in { + inherit stdenv fetchurl; + gccCross = gccCrossStageStatic; + kernelHeaders = if crossGNU then gnu.hurdHeaders else linuxHeadersCross; + installLocales = config.glibc.locales or false; + } + // lib.optionalAttrs crossGNU { + inherit (gnu) machHeaders hurdHeaders libpthreadHeaders mig; + inherit fetchgit; + })); + + + # We can choose: + libcCrossChooser = name : if name == "glibc" then glibcCross + else if name == "uclibc" then uclibcCross + else if name == "msvcrt" then windows.mingw_w64 + else if name == "libSystem" then darwin.xcode + else throw "Unknown libc"; + + libcCross = assert crossSystem != null; libcCrossChooser crossSystem.libc; + + eglibc = callPackage ../development/libraries/eglibc { + kernelHeaders = linuxHeaders; + installLocales = config.glibc.locales or false; + }; + + glibcLocales = callPackage ../development/libraries/glibc/2.19/locales.nix { }; + + glibcInfo = callPackage ../development/libraries/glibc/2.19/info.nix { }; + + glibc_multi = callPackage ../development/libraries/glibc/2.19/multi.nix { + inherit glibc; + glibc32 = (import ./all-packages.nix {system = "i686-linux";}).glibc; + }; + + glm = callPackage ../development/libraries/glm { }; + + glog = callPackage ../development/libraries/glog { }; + + gloox = callPackage ../development/libraries/gloox { }; + + glpk = callPackage ../development/libraries/glpk { }; + + glsurf = callPackage ../applications/science/math/glsurf { + inherit (ocamlPackages) lablgl findlib camlimages ocaml_mysql mlgmp; + libpng = libpng12; + giflib = giflib_4_1; + }; + + gmime = callPackage ../development/libraries/gmime { }; + + gmm = callPackage ../development/libraries/gmm { }; + + gmp = gmp5; + gmp5 = gmp51; + + gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); + + # The GHC bootstrap binaries link against libgmp.so.3, which is in GMP 4.x. + gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; + + gmp51 = callPackage ../development/libraries/gmp/5.1.x.nix { }; + + #GMP ex-satellite, so better keep it near gmp + mpfr = callPackage ../development/libraries/mpfr/default.nix { }; + + gobjectIntrospection = callPackage ../development/libraries/gobject-introspection { }; + + goocanvas = callPackage ../development/libraries/goocanvas { }; + + google-gflags = callPackage ../development/libraries/google-gflags { }; + + gperftools = callPackage ../development/libraries/gperftools { }; + + gst_all_1 = recurseIntoAttrs(callPackage ../development/libraries/gstreamer { + callPackage = pkgs.newScope (pkgs // { libav = pkgs.libav_10; }); + }); + + gst_all = { + inherit (pkgs) gstreamer gnonlin gst_python qt_gstreamer; + gstPluginsBase = pkgs.gst_plugins_base; + gstPluginsBad = pkgs.gst_plugins_bad; + gstPluginsGood = pkgs.gst_plugins_good; + gstPluginsUgly = pkgs.gst_plugins_ugly; + gstFfmpeg = pkgs.gst_ffmpeg; + }; + + gstreamer = callPackage ../development/libraries/gstreamer/legacy/gstreamer { + bison = bison2; + }; + + gst_plugins_base = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-base {}; + + gst_plugins_good = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-good {}; + + gst_plugins_bad = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-bad {}; + + gst_plugins_ugly = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-ugly {}; + + gst_ffmpeg = callPackage ../development/libraries/gstreamer/legacy/gst-ffmpeg { + ffmpeg = ffmpeg_0_10; + }; + + gst_python = callPackage ../development/libraries/gstreamer/legacy/gst-python {}; + + gstreamermm = callPackage ../development/libraries/gstreamer/legacy/gstreamermm { }; + + gnonlin = callPackage ../development/libraries/gstreamer/legacy/gnonlin {}; + + gusb = callPackage ../development/libraries/gusb { + inherit (gnome) gtkdoc; + }; + + qt_gstreamer = callPackage ../development/libraries/gstreamer/legacy/qt-gstreamer {}; + + gnet = callPackage ../development/libraries/gnet { }; + + gnu-efi = callPackage ../development/libraries/gnu-efi { }; + + gnutls = gnutls32; + + gnutls31 = callPackage ../development/libraries/gnutls/3.1.nix { + guileBindings = config.gnutls.guile or false; + }; + + gnutls32 = callPackage ../development/libraries/gnutls/3.2.nix { + guileBindings = config.gnutls.guile or false; + }; + + gnutls_with_guile = lowPrio (gnutls.override { guileBindings = true; }); + + gpac = callPackage ../applications/video/gpac { }; + + gpgme = callPackage ../development/libraries/gpgme { + gnupg1 = gnupg1orig; + }; + + grantlee = callPackage ../development/libraries/grantlee { }; + + gsasl = callPackage ../development/libraries/gsasl { }; + + gsl = callPackage ../development/libraries/gsl { }; + + gsm = callPackage ../development/libraries/gsm {}; + + gsoap = callPackage ../development/libraries/gsoap { }; + + gss = callPackage ../development/libraries/gss { }; + + gtkimageview = callPackage ../development/libraries/gtkimageview { }; + + gtkmathview = callPackage ../development/libraries/gtkmathview { }; + + gtkLibs = { + inherit (pkgs) glib glibmm atk atkmm cairo pango pangomm gdk_pixbuf gtk + gtkmm; + }; + + glib = callPackage ../development/libraries/glib { }; + glib-tested = glib.override { doCheck = true; }; # checked version separate to break cycles + glibmm = callPackage ../development/libraries/glibmm { }; + + glib_networking = callPackage ../development/libraries/glib-networking {}; + + atk = callPackage ../development/libraries/atk { }; + atkmm = callPackage ../development/libraries/atkmm { }; + + pixman = callPackage ../development/libraries/pixman { }; + + cairo = callPackage ../development/libraries/cairo { + glSupport = config.cairo.gl or (stdenv.isLinux && + !stdenv.isArm && !stdenv.isMips); + }; + cairomm = callPackage ../development/libraries/cairomm { }; + + pango = callPackage ../development/libraries/pango { }; + pangomm = callPackage ../development/libraries/pangomm { }; + + pangox_compat = callPackage ../development/libraries/pangox-compat { }; + + gdk_pixbuf = callPackage ../development/libraries/gdk-pixbuf { + # workaround signal 10 in gdk_pixbuf tests + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + gtk2 = callPackage ../development/libraries/gtk+/2.x.nix { + cupsSupport = config.gtk2.cups or stdenv.isLinux; + }; + + gtk3 = callPackage ../development/libraries/gtk+/3.x.nix { }; + + gtk = pkgs.gtk2; + + gtkmm = callPackage ../development/libraries/gtkmm/2.x.nix { }; + gtkmm3 = callPackage ../development/libraries/gtkmm/3.x.nix { }; + + gtkmozembedsharp = callPackage ../development/libraries/gtkmozembed-sharp { + gtksharp = gtksharp2; + }; + + gtksharp1 = callPackage ../development/libraries/gtk-sharp-1 { + inherit (gnome) libglade libgtkhtml gtkhtml + libgnomecanvas libgnomeui libgnomeprint + libgnomeprintui GConf; + }; + + gtksharp2 = callPackage ../development/libraries/gtk-sharp-2 { + inherit (gnome) libglade libgtkhtml gtkhtml + libgnomecanvas libgnomeui libgnomeprint + libgnomeprintui GConf gnomepanel; + }; + + gtksourceviewsharp = callPackage ../development/libraries/gtksourceview-sharp { + inherit (gnome) gtksourceview; + gtksharp = gtksharp2; + }; + + gtkspell = callPackage ../development/libraries/gtkspell { }; + + gtkspell3 = callPackage ../development/libraries/gtkspell/3.nix { }; + + gts = callPackage ../development/libraries/gts { }; + + gvfs = callPackage ../development/libraries/gvfs { gconf = gnome.GConf; }; + + gwenhywfar = callPackage ../development/libraries/gwenhywfar { }; + + hamlib = callPackage ../development/libraries/hamlib { }; + + # TODO : Add MIT Kerberos and let admin choose. + kerberos = heimdal; + + heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; + + harfbuzz = callPackage ../development/libraries/harfbuzz { }; + + hawknl = callPackage ../development/libraries/hawknl { }; + + herqq = callPackage ../development/libraries/herqq { }; + + hspell = callPackage ../development/libraries/hspell { }; + + hspellDicts = callPackage ../development/libraries/hspell/dicts.nix { }; + + hsqldb = callPackage ../development/libraries/java/hsqldb { }; + + http-parser = callPackage ../development/libraries/http-parser { inherit (pythonPackages) gyp; }; + + hunspell = callPackage ../development/libraries/hunspell { }; + + hwloc = callPackage ../development/libraries/hwloc { + inherit (xlibs) libX11; + }; + + hydraAntLogger = callPackage ../development/libraries/java/hydra-ant-logger { }; + + icu = callPackage ../development/libraries/icu { }; + + id3lib = callPackage ../development/libraries/id3lib { }; + + iksemel = callPackage ../development/libraries/iksemel { }; + + ilbc = callPackage ../development/libraries/ilbc { }; + + ilixi = callPackage ../development/libraries/ilixi { }; + + ilmbase = callPackage ../development/libraries/ilmbase { }; + + imlib = callPackage ../development/libraries/imlib { + libpng = libpng12; + }; + + imlib2 = callPackage ../development/libraries/imlib2 { }; + + incrtcl = callPackage ../development/libraries/incrtcl { }; + + indilib = callPackage ../development/libraries/indilib { }; + + iniparser = callPackage ../development/libraries/iniparser { }; + + intltool = callPackage ../development/tools/misc/intltool { }; + + irrlicht3843 = callPackage ../development/libraries/irrlicht { }; + + isocodes = callPackage ../development/libraries/iso-codes { }; + + itk = callPackage ../development/libraries/itk { }; + + jamp = builderDefsPackage ../games/jamp { + inherit mesa SDL SDL_image SDL_mixer; + }; + + jasper = callPackage ../development/libraries/jasper { }; + + jama = callPackage ../development/libraries/jama { }; + + jansson = callPackage ../development/libraries/jansson { }; + + jbig2dec = callPackage ../development/libraries/jbig2dec { }; + + jetty_gwt = callPackage ../development/libraries/java/jetty-gwt { }; + + jetty_util = callPackage ../development/libraries/java/jetty-util { }; + + json_glib = callPackage ../development/libraries/json-glib { }; + + json-c-0-11 = callPackage ../development/libraries/json-c/0.11.nix { }; # vulnerable + json_c = callPackage ../development/libraries/json-c { }; + + jsoncpp = callPackage ../development/libraries/jsoncpp { }; + + libjson = callPackage ../development/libraries/libjson { }; + + judy = callPackage ../development/libraries/judy { }; + + keybinder = callPackage ../development/libraries/keybinder { + automake = automake111x; + lua = lua5_1; + }; + + keybinder3 = callPackage ../development/libraries/keybinder3 { + automake = automake111x; + lua = lua5_1; + }; + + krb5 = callPackage ../development/libraries/kerberos/krb5.nix { }; + + lcms = lcms1; + + lcms1 = callPackage ../development/libraries/lcms { }; + + lcms2 = callPackage ../development/libraries/lcms2 { }; + + lensfun = callPackage ../development/libraries/lensfun { }; + + lesstif = callPackage ../development/libraries/lesstif { }; + + lesstif93 = callPackage ../development/libraries/lesstif-0.93 { }; + + leveldb = callPackage ../development/libraries/leveldb { }; + + levmar = callPackage ../development/libraries/levmar { }; + + leptonica = callPackage ../development/libraries/leptonica { + libpng = libpng12; + }; + + lgi = callPackage ../development/libraries/lgi { + lua = lua5_1; + }; + + lib3ds = callPackage ../development/libraries/lib3ds { }; + + libaacs = callPackage ../development/libraries/libaacs { }; + + libaal = callPackage ../development/libraries/libaal { }; + + libao = callPackage ../development/libraries/libao { + usePulseAudio = config.pulseaudio or true; + }; + + libarchive = callPackage ../development/libraries/libarchive { }; + + libass = callPackage ../development/libraries/libass { }; + + libassuan1 = callPackage ../development/libraries/libassuan1 { }; + + libassuan = callPackage ../development/libraries/libassuan { }; + + libassuan2_1 = callPackage ../development/libraries/libassuan/git.nix { }; + + libatomic_ops = callPackage ../development/libraries/libatomic_ops {}; + + libav = libav_10; + libav_all = callPackage ../development/libraries/libav { }; + inherit (libav_all) libav_0_8 libav_9 libav_10; + + libavc1394 = callPackage ../development/libraries/libavc1394 { }; + + libbluedevil = callPackage ../development/libraries/libbluedevil { }; + + libbluray = callPackage ../development/libraries/libbluray { }; + + libbs2b = callPackage ../development/libraries/audio/libbs2b { }; + + libcaca = callPackage ../development/libraries/libcaca { }; + + libcanberra = callPackage ../development/libraries/libcanberra { }; + libcanberra_gtk3 = libcanberra.override { gtk = gtk3; }; + libcanberra_kde = if (config.kde_runtime.libcanberraWithoutGTK or true) + then libcanberra.override { gtk = null; } + else libcanberra; + + libcello = callPackage ../development/libraries/libcello {}; + + libcdaudio = callPackage ../development/libraries/libcdaudio { }; + + libcddb = callPackage ../development/libraries/libcddb { }; + + libcdio = callPackage ../development/libraries/libcdio { }; + libcdio082 = callPackage ../development/libraries/libcdio/0.82.nix { }; + + libcdr = callPackage ../development/libraries/libcdr { lcms = lcms2; }; + + libchamplain = callPackage ../development/libraries/libchamplain { + inherit (gnome) libsoup; + }; + + libchamplain_0_6 = callPackage ../development/libraries/libchamplain/0.6.nix {}; + + libchop = callPackage ../development/libraries/libchop { }; + + libcm = callPackage ../development/libraries/libcm { }; + + inherit (gnome3) libcroco; + + libcangjie = callPackage ../development/libraries/libcangjie { }; + + libcredis = callPackage ../development/libraries/libcredis { }; + + libctemplate = callPackage ../development/libraries/libctemplate { }; + + libcue = callPackage ../development/libraries/libcue { }; + + libdaemon = callPackage ../development/libraries/libdaemon { }; + + libdbi = callPackage ../development/libraries/libdbi { }; + + libdbiDriversBase = callPackage ../development/libraries/libdbi-drivers { + mysql = null; + sqlite = null; + }; + + libdbiDrivers = libdbiDriversBase.override { + inherit sqlite mysql; + }; + + libdbusmenu_qt = callPackage ../development/libraries/libdbusmenu-qt { }; + + libdc1394 = callPackage ../development/libraries/libdc1394 { }; + + libdc1394avt = callPackage ../development/libraries/libdc1394avt { }; + + libdevil = callPackage ../development/libraries/libdevil { }; + + libdiscid = callPackage ../development/libraries/libdiscid { }; + + libdivsufsort = callPackage ../development/libraries/libdivsufsort { }; + + libdmtx = callPackage ../development/libraries/libdmtx { }; + + libdnet = callPackage ../development/libraries/libdnet { }; + + libdrm = callPackage ../development/libraries/libdrm { + inherit fetchurl stdenv pkgconfig; + inherit (xorg) libpthreadstubs; + }; + + libdv = callPackage ../development/libraries/libdv { }; + + libdvbpsi = callPackage ../development/libraries/libdvbpsi { }; + + libdwg = callPackage ../development/libraries/libdwg { }; + + libdvdcss = callPackage ../development/libraries/libdvdcss { }; + + libdvdnav = callPackage ../development/libraries/libdvdnav { }; + + libdvdread = callPackage ../development/libraries/libdvdread { }; + + libdwarf = callPackage ../development/libraries/libdwarf { }; + + libeatmydata = callPackage ../development/libraries/libeatmydata { }; + + libebml = callPackage ../development/libraries/libebml { }; + + libedit = callPackage ../development/libraries/libedit { }; + + libelf = callPackage ../development/libraries/libelf { }; + + libfm = callPackage ../development/libraries/libfm { }; + + libgadu = callPackage ../development/libraries/libgadu { }; + + libgdata = gnome3.libgdata; + + libgig = callPackage ../development/libraries/libgig { }; + + libgnome_keyring = callPackage ../development/libraries/libgnome-keyring { }; + libgnome_keyring3 = gnome3.libgnome_keyring; + + libgnurl = callPackage ../development/libraries/libgnurl { }; + + libseccomp = callPackage ../development/libraries/libseccomp { }; + + libsecret = callPackage ../development/libraries/libsecret { }; + + libserialport = callPackage ../development/libraries/libserialport { }; + + libgtop = callPackage ../development/libraries/libgtop {}; + + liblo = callPackage ../development/libraries/liblo { }; + + liblrdf = librdf; + + liblscp = callPackage ../development/libraries/liblscp { }; + + libe-book = callPackage ../development/libraries/libe-book {}; + + libev = builderDefsPackage ../development/libraries/libev { }; + + libevent14 = callPackage ../development/libraries/libevent/1.4.nix { }; + libevent = callPackage ../development/libraries/libevent { }; + + libewf = callPackage ../development/libraries/libewf { }; + + libexif = callPackage ../development/libraries/libexif { }; + + libexosip = callPackage ../development/libraries/exosip {}; + + libexosip_3 = callPackage ../development/libraries/exosip/3.x.nix { + libosip = libosip_3; + }; + + libextractor = callPackage ../development/libraries/libextractor { + libmpeg2 = mpeg2dec; + }; + + libexttextcat = callPackage ../development/libraries/libexttextcat {}; + + libf2c = callPackage ../development/libraries/libf2c {}; + + libfixposix = callPackage ../development/libraries/libfixposix {}; + + libffcall = builderDefsPackage (import ../development/libraries/libffcall) { + inherit fetchcvs; + }; + + libffi = callPackage ../development/libraries/libffi { }; + + libftdi = callPackage ../development/libraries/libftdi { }; + + libftdi1 = callPackage ../development/libraries/libftdi/1.x.nix { }; + + libgcrypt = callPackage ../development/libraries/libgcrypt { }; + + libgcrypt_1_6 = lowPrio (callPackage ../development/libraries/libgcrypt/1.6.nix { }); + + libgdiplus = callPackage ../development/libraries/libgdiplus { }; + + libgksu = callPackage ../development/libraries/libgksu { }; + + libgpgerror = callPackage ../development/libraries/libgpg-error { }; + + libgphoto2 = callPackage ../development/libraries/libgphoto2 { }; + + libgphoto2_4 = callPackage ../development/libraries/libgphoto2/2.4.nix { }; + + libgpod = callPackage ../development/libraries/libgpod { + inherit (pkgs.pythonPackages) mutagen; + }; + + libharu = callPackage ../development/libraries/libharu { }; + + libical = callPackage ../development/libraries/libical { }; + + libicns = callPackage ../development/libraries/libicns { }; + + libimobiledevice = callPackage ../development/libraries/libimobiledevice { }; + + libiodbc = callPackage ../development/libraries/libiodbc { + useGTK = config.libiodbc.gtk or false; + }; + + libivykis = callPackage ../development/libraries/libivykis { }; + + liblastfmSF = callPackage ../development/libraries/liblastfmSF { }; + + liblastfm = callPackage ../development/libraries/liblastfm { }; + + liblqr1 = callPackage ../development/libraries/liblqr-1 { }; + + liblockfile = callPackage ../development/libraries/liblockfile { }; + + liblogging = callPackage ../development/libraries/liblogging { }; + + libmcrypt = callPackage ../development/libraries/libmcrypt {}; + + libmhash = callPackage ../development/libraries/libmhash {}; + + libmodbus = callPackage ../development/libraries/libmodbus {}; + + libmtp = callPackage ../development/libraries/libmtp { }; + + libmsgpack = callPackage ../development/libraries/libmsgpack { }; + + libnatspec = callPackage ../development/libraries/libnatspec { }; + + libnfc = callPackage ../development/libraries/libnfc { }; + + libnfsidmap = callPackage ../development/libraries/libnfsidmap { }; + + libnice = callPackage ../development/libraries/libnice { }; + + liboping = callPackage ../development/libraries/liboping { }; + + libplist = callPackage ../development/libraries/libplist { }; + + libQGLViewer = callPackage ../development/libraries/libqglviewer { }; + + libre = callPackage ../development/libraries/libre {}; + librem = callPackage ../development/libraries/librem {}; + + libresample = callPackage ../development/libraries/libresample {}; + + librevenge = callPackage ../development/libraries/librevenge {}; + + librevisa = callPackage ../development/libraries/librevisa { }; + + libsamplerate = callPackage ../development/libraries/libsamplerate { }; + + libspectre = callPackage ../development/libraries/libspectre { }; + + libgsf = callPackage ../development/libraries/libgsf { }; + + libiconv = callPackage ../development/libraries/libiconv { }; + + libiconvOrEmpty = if libiconvOrNull == null then [] else [libiconv]; + + libiconvOrNull = + if gcc.libc or null != null || stdenv.isGlibc + then null + else libiconv; + + # The logic behind this attribute is broken: libiconvOrNull==null does + # NOT imply libiconv=glibc! On Darwin, for example, we have a native + # libiconv library which is not glibc. + libiconvOrLibc = if libiconvOrNull == null then gcc.libc else libiconv; + + # On non-GNU systems we need GNU Gettext for libintl. + libintlOrEmpty = stdenv.lib.optional (!stdenv.isLinux) gettext; + + libid3tag = callPackage ../development/libraries/libid3tag { }; + + libidn = callPackage ../development/libraries/libidn { }; + + libiec61883 = callPackage ../development/libraries/libiec61883 { }; + + libinfinity = callPackage ../development/libraries/libinfinity { + inherit (gnome) gtkdoc; + }; + + libiptcdata = callPackage ../development/libraries/libiptcdata { }; + + libjpeg_original = callPackage ../development/libraries/libjpeg { }; + libjpeg_turbo = callPackage ../development/libraries/libjpeg-turbo { }; + libjpeg = if (stdenv.isLinux) then libjpeg_turbo else libjpeg_original; # some problems, both on FreeBSD and Darwin + + libjpeg62 = callPackage ../development/libraries/libjpeg/62.nix { + libtool = libtool_1_5; + }; + + libjson_rpc_cpp = callPackage ../development/libraries/libjson-rpc-cpp { }; + + libkate = callPackage ../development/libraries/libkate { }; + + libksba = callPackage ../development/libraries/libksba { }; + + libmad = callPackage ../development/libraries/libmad { }; + + libmatchbox = callPackage ../development/libraries/libmatchbox { }; + + libmatthew_java = callPackage ../development/libraries/java/libmatthew-java { }; + + libmatroska = callPackage ../development/libraries/libmatroska { }; + + libmcs = callPackage ../development/libraries/libmcs { }; + + libmemcached = callPackage ../development/libraries/libmemcached { }; + + libmicrohttpd = callPackage ../development/libraries/libmicrohttpd { }; + + libmikmod = callPackage ../development/libraries/libmikmod { + # resolve the "stray '@' in program" errors + stdenv = if stdenv.isDarwin + then overrideGCC stdenv gccApple + else stdenv; + }; + + libmilter = callPackage ../development/libraries/libmilter { }; + + libmkv = callPackage ../development/libraries/libmkv { }; + + libmms = callPackage ../development/libraries/libmms { }; + + libmowgli = callPackage ../development/libraries/libmowgli { }; + + libmng = callPackage ../development/libraries/libmng { }; + + libmnl = callPackage ../development/libraries/libmnl { }; + + libmodplug = callPackage ../development/libraries/libmodplug {}; + + libmpcdec = callPackage ../development/libraries/libmpcdec { }; + + libmp3splt = callPackage ../development/libraries/libmp3splt { }; + + libmrss = callPackage ../development/libraries/libmrss { }; + + libmsn = callPackage ../development/libraries/libmsn { }; + + libmspack = callPackage ../development/libraries/libmspack { }; + + libmusclecard = callPackage ../development/libraries/libmusclecard { }; + + libmusicbrainz2 = callPackage ../development/libraries/libmusicbrainz/2.x.nix { }; + + libmusicbrainz3 = callPackage ../development/libraries/libmusicbrainz { }; + + libmusicbrainz5 = callPackage ../development/libraries/libmusicbrainz/5.x.nix { }; + + libmusicbrainz = libmusicbrainz3; + + libmwaw = callPackage ../development/libraries/libmwaw { }; + + libmx = callPackage ../development/libraries/libmx { }; + + libnet = callPackage ../development/libraries/libnet { }; + + libnetfilter_conntrack = callPackage ../development/libraries/libnetfilter_conntrack { }; + + libnetfilter_queue = callPackage ../development/libraries/libnetfilter_queue { }; + + libnfnetlink = callPackage ../development/libraries/libnfnetlink { }; + + libnftnl = callPackage ../development/libraries/libnftnl { }; + + libnih = callPackage ../development/libraries/libnih { }; + + libnova = callPackage ../development/libraries/libnova { }; + + libnxml = callPackage ../development/libraries/libnxml { }; + + libodfgen = callPackage ../development/libraries/libodfgen { }; + + libofa = callPackage ../development/libraries/libofa { }; + + libofx = callPackage ../development/libraries/libofx { }; + + libogg = callPackage ../development/libraries/libogg { }; + + liboggz = callPackage ../development/libraries/liboggz { }; + + liboil = callPackage ../development/libraries/liboil { }; + + liboop = callPackage ../development/libraries/liboop { }; + + libopus = callPackage ../development/libraries/libopus { }; + + libosinfo = callPackage ../development/libraries/libosinfo {}; + + libosip = callPackage ../development/libraries/osip {}; + + libosip_3 = callPackage ../development/libraries/osip/3.nix {}; + + libotr = callPackage ../development/libraries/libotr { + libgcrypt = libgcrypt_1_6; + }; + + libotr_3_2 = callPackage ../development/libraries/libotr/3.2.nix { }; + + libp11 = callPackage ../development/libraries/libp11 { }; + + libpar2 = callPackage ../development/libraries/libpar2 { }; + + libpcap = callPackage ../development/libraries/libpcap { }; + + libpipeline = callPackage ../development/libraries/libpipeline { }; + + libpng = callPackage ../development/libraries/libpng { }; + libpng_apng = libpng.override { apngSupport = true; }; + libpng12 = callPackage ../development/libraries/libpng/12.nix { }; + libpng15 = callPackage ../development/libraries/libpng/15.nix { }; + + libpaper = callPackage ../development/libraries/libpaper { }; + + libproxy = callPackage ../development/libraries/libproxy { + stdenv = if stdenv.isDarwin + then overrideGCC stdenv gcc + else stdenv; + }; + + libpseudo = callPackage ../development/libraries/libpseudo { }; + + libpwquality = callPackage ../development/libraries/libpwquality { }; + + libqalculate = callPackage ../development/libraries/libqalculate { }; + + librsvg = callPackage ../development/libraries/librsvg { + gtk2 = null; gtk3 = null; # neither gtk version by default + }; + + librsync = callPackage ../development/libraries/librsync { }; + + libsearpc = callPackage ../development/libraries/libsearpc { }; + + libsigcxx = callPackage ../development/libraries/libsigcxx { }; + + libsigcxx12 = callPackage ../development/libraries/libsigcxx/1.2.nix { }; + + libsigsegv = callPackage ../development/libraries/libsigsegv { }; + + # To bootstrap SBCL, I need CLisp 2.44.1; it needs libsigsegv 2.5 + libsigsegv_25 = callPackage ../development/libraries/libsigsegv/2.5.nix { }; + + libsndfile = callPackage ../development/libraries/libsndfile { }; + + libsodium = callPackage ../development/libraries/libsodium { }; + + libsoup = callPackage ../development/libraries/libsoup { }; + + libssh = callPackage ../development/libraries/libssh { }; + + libssh2 = callPackage ../development/libraries/libssh2 { }; + + libstartup_notification = callPackage ../development/libraries/startup-notification { }; + + libspatialindex = callPackage ../development/libraries/libspatialindex { }; + + libspatialite = callPackage ../development/libraries/libspatialite { }; + + libtar = callPackage ../development/libraries/libtar { }; + + libtasn1 = callPackage ../development/libraries/libtasn1 { }; + + libtheora = callPackage ../development/libraries/libtheora { }; + + libtiff = callPackage ../development/libraries/libtiff { }; + + libtiger = callPackage ../development/libraries/libtiger { }; + + libtommath = callPackage ../development/libraries/libtommath { }; + + libtorrentRasterbar = callPackage ../development/libraries/libtorrent-rasterbar { + # fix "unrecognized option -arch" error + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + libtoxcore = callPackage ../development/libraries/libtoxcore { }; + + libtsm = callPackage ../development/libraries/libtsm { }; + + libtunepimp = callPackage ../development/libraries/libtunepimp { }; + + libtxc_dxtn = callPackage ../development/libraries/libtxc_dxtn { }; + + libtxc_dxtn_s2tc = callPackage ../development/libraries/libtxc_dxtn_s2tc { }; + + libgeotiff = callPackage ../development/libraries/libgeotiff { }; + + libunistring = callPackage ../development/libraries/libunistring { }; + + libupnp = callPackage ../development/libraries/pupnp { }; + + giflib = callPackage ../development/libraries/giflib { }; + giflib_4_1 = callPackage ../development/libraries/giflib/4.1.nix { }; + + libungif = callPackage ../development/libraries/giflib/libungif.nix { }; + + libunibreak = callPackage ../development/libraries/libunibreak { }; + + libunique = callPackage ../development/libraries/libunique/default.nix { }; + + liburcu = callPackage ../development/libraries/liburcu { }; + + libusb = callPackage ../development/libraries/libusb {}; + + libusb1 = callPackage ../development/libraries/libusb1 { + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + libunwind = callPackage ../development/libraries/libunwind { }; + + libuvVersions = callPackage ../development/libraries/libuv { }; + + libv4l = lowPrio (v4l_utils.override { + withQt4 = false; + }); + + libva = callPackage ../development/libraries/libva { }; + + libvdpau = callPackage ../development/libraries/libvdpau { }; + + libvirt = callPackage ../development/libraries/libvirt { }; + + libvirt-glib = callPackage ../development/libraries/libvirt-glib { }; + + libvisio = callPackage ../development/libraries/libvisio { }; + + libvisual = callPackage ../development/libraries/libvisual { }; + + libvncserver = callPackage ../development/libraries/libvncserver {}; + + libviper = callPackage ../development/libraries/libviper { }; + + libvpx = callPackage ../development/libraries/libvpx { }; + + libvterm = callPackage ../development/libraries/libvterm { }; + + libvorbis = callPackage ../development/libraries/libvorbis { }; + + libwebp = callPackage ../development/libraries/libwebp { }; + + libwmf = callPackage ../development/libraries/libwmf { }; + + libwnck = libwnck2; + libwnck2 = callPackage ../development/libraries/libwnck { }; + libwnck3 = callPackage ../development/libraries/libwnck/3.x.nix { }; + + libwpd = callPackage ../development/libraries/libwpd { }; + + libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix { }; + + libwpg = callPackage ../development/libraries/libwpg { }; + + libx86 = builderDefsPackage ../development/libraries/libx86 {}; + + libxdg_basedir = callPackage ../development/libraries/libxdg-basedir { }; + + libxkbcommon = callPackage ../development/libraries/libxkbcommon { }; + + libxklavier = callPackage ../development/libraries/libxklavier { }; + + libxmi = callPackage ../development/libraries/libxmi { }; + + libxml2 = callPackage ../development/libraries/libxml2 { + pythonSupport = false; + }; + + libxml2Python = lowPrio (libxml2.override { + pythonSupport = true; + }); + + libxmlxx = callPackage ../development/libraries/libxmlxx { }; + + libxmp = callPackage ../development/libraries/libxmp { }; + + libxslt = callPackage ../development/libraries/libxslt { }; + + libixp_for_wmii = lowPrio (import ../development/libraries/libixp_for_wmii { + inherit fetchurl stdenv; + }); + + libyaml = callPackage ../development/libraries/libyaml { }; + + libyamlcpp = callPackage ../development/libraries/libyaml-cpp { }; + libyamlcpp03 = callPackage ../development/libraries/libyaml-cpp/0.3.x.nix { }; + + libyubikey = callPackage ../development/libraries/libyubikey {}; + + libzip = callPackage ../development/libraries/libzip { }; + + libzdb = callPackage ../development/libraries/libzdb { }; + + libzrtpcpp = callPackage ../development/libraries/libzrtpcpp { }; + libzrtpcpp_1_6 = callPackage ../development/libraries/libzrtpcpp/1.6.nix { + ccrtp = ccrtp_1_8; + }; + + libwacom = callPackage ../development/libraries/libwacom { }; + + lightning = callPackage ../development/libraries/lightning { }; + + lirc = callPackage ../development/libraries/lirc { }; + + liquidfun = callPackage ../development/libraries/liquidfun { }; + + liquidwar = builderDefsPackage ../games/liquidwar { + inherit (xlibs) xproto libX11 libXrender; + inherit gmp mesa libjpeg + expat gettext perl + SDL SDL_image SDL_mixer SDL_ttf + curl sqlite + libogg libvorbis libcaca csound cunit + ; + guile = guile_1_8; + libpng = libpng15; # 0.0.13 needs libpng 1.2--1.5 + }; + + log4cpp = callPackage ../development/libraries/log4cpp { }; + + log4cxx = callPackage ../development/libraries/log4cxx { }; + + log4cplus = callPackage ../development/libraries/log4cplus { }; + + loudmouth = callPackage ../development/libraries/loudmouth { }; + + lzo = callPackage ../development/libraries/lzo { }; + + mdds_0_7_1 = callPackage ../development/libraries/mdds/0.7.1.nix { }; + mdds = callPackage ../development/libraries/mdds { }; + + # failed to build + mediastreamer = callPackage ../development/libraries/mediastreamer { }; + + menu-cache = callPackage ../development/libraries/menu-cache { }; + + mesaSupported = lib.elem system lib.platforms.mesaPlatforms; + + mesaDarwinOr = alternative: if stdenv.isDarwin + then callPackage ../development/libraries/mesa-darwin { } + else alternative; + mesa_noglu = mesaDarwinOr (callPackage ../development/libraries/mesa { + # makes it slower, but during runtime we link against just mesa_drivers + # through /run/opengl-driver*, which is overriden according to config.grsecurity + grsecEnabled = true; + }); + mesa_glu = mesaDarwinOr (callPackage ../development/libraries/mesa-glu { }); + mesa_drivers = mesaDarwinOr ( + let mo = mesa_noglu.override { + grsecEnabled = config.grsecurity or false; + }; + in mo.drivers + ); + mesa = mesaDarwinOr (buildEnv { + name = "mesa-${mesa_noglu.version}"; + paths = [ mesa_noglu mesa_glu ]; + }); + + metaEnvironment = recurseIntoAttrs (let callPackage = newScope pkgs.metaEnvironment; in rec { + sdfLibrary = callPackage ../development/libraries/sdf-library { aterm = aterm28; }; + toolbuslib = callPackage ../development/libraries/toolbuslib { aterm = aterm28; inherit (windows) w32api; }; + cLibrary = callPackage ../development/libraries/c-library { aterm = aterm28; }; + errorSupport = callPackage ../development/libraries/error-support { aterm = aterm28; }; + ptSupport = callPackage ../development/libraries/pt-support { aterm = aterm28; }; + ptableSupport = callPackage ../development/libraries/ptable-support { aterm = aterm28; }; + configSupport = callPackage ../development/libraries/config-support { aterm = aterm28; }; + asfSupport = callPackage ../development/libraries/asf-support { aterm = aterm28; }; + tideSupport = callPackage ../development/libraries/tide-support { aterm = aterm28; }; + rstoreSupport = callPackage ../development/libraries/rstore-support { aterm = aterm28; }; + sdfSupport = callPackage ../development/libraries/sdf-support { aterm = aterm28; }; + sglr = callPackage ../development/libraries/sglr { aterm = aterm28; }; + ascSupport = callPackage ../development/libraries/asc-support { aterm = aterm28; }; + pgen = callPackage ../development/libraries/pgen { aterm = aterm28; }; + }); + + ming = callPackage ../development/libraries/ming { }; + + minizip = callPackage ../development/libraries/minizip { }; + + minmay = callPackage ../development/libraries/minmay { }; + + miro = callPackage ../applications/video/miro { + inherit (pythonPackages) pywebkitgtk pysqlite pycurl mutagen; + }; + + mkvtoolnix = callPackage ../applications/video/mkvtoolnix { }; + + mlt-qt4 = callPackage ../development/libraries/mlt { + qt = qt4; + SDL = SDL_pulseaudio; + }; + + mlt-qt5 = callPackage ../development/libraries/mlt { + qt = qt5; + SDL = SDL_pulseaudio; + }; + + movit = callPackage ../development/libraries/movit { }; + + mps = callPackage ../development/libraries/mps { }; + + libmpeg2 = callPackage ../development/libraries/libmpeg2 { }; + + mpeg2dec = libmpeg2; + + msilbc = callPackage ../development/libraries/msilbc { }; + + mp4v2 = callPackage ../development/libraries/mp4v2 { }; + + mpc = callPackage ../development/libraries/mpc { }; + + mpich2 = callPackage ../development/libraries/mpich2 { }; + + mtdev = callPackage ../development/libraries/mtdev { }; + + mtpfs = callPackage ../tools/filesystems/mtpfs { }; + + mu = callPackage ../tools/networking/mu { + texinfo = texinfo4; + }; + + muparser = callPackage ../development/libraries/muparser { }; + + mygpoclient = callPackage ../development/python-modules/mygpoclient { }; + + mygui = callPackage ../development/libraries/mygui {}; + + myguiSvn = callPackage ../development/libraries/mygui/svn.nix {}; + + mysocketw = callPackage ../development/libraries/mysocketw { }; + + mythes = callPackage ../development/libraries/mythes { }; + + nanomsg = callPackage ../development/libraries/nanomsg { }; + + ncurses = callPackage ../development/libraries/ncurses { + unicode = system != "i686-cygwin"; + }; + + neon = callPackage ../development/libraries/neon { + compressionSupport = true; + sslSupport = true; + }; + + nethack = builderDefsPackage (import ../games/nethack) { + inherit ncurses flex bison; + }; + + nettle = callPackage ../development/libraries/nettle { }; + + newt = callPackage ../development/libraries/newt { }; + + nix-plugins = callPackage ../development/libraries/nix-plugins { + nix = pkgs.nixUnstable; + }; + + nspr = callPackage ../development/libraries/nspr { }; + + nss = lowPrio (callPackage ../development/libraries/nss { }); + + nssTools = callPackage ../development/libraries/nss { + includeTools = true; + }; + + ntrack = callPackage ../development/libraries/ntrack { }; + + nvidia-texture-tools = callPackage ../development/libraries/nvidia-texture-tools { }; + + ode = builderDefsPackage (import ../development/libraries/ode) { }; + + ogre = callPackage ../development/libraries/ogre {}; + + ogrepaged = callPackage ../development/libraries/ogrepaged { }; + + oniguruma = callPackage ../development/libraries/oniguruma { }; + + openal = callPackage ../development/libraries/openal { }; + + # added because I hope that it has been easier to compile on x86 (for blender) + openalSoft = callPackage ../development/libraries/openal-soft { }; + + openbabel = callPackage ../development/libraries/openbabel { }; + + opencascade = callPackage ../development/libraries/opencascade { }; + + opencascade_6_5 = callPackage ../development/libraries/opencascade/6.5.nix { + automake = automake111x; + ftgl = ftgl212; + }; + + opencascade_oce = callPackage ../development/libraries/opencascade/oce.nix { }; + + opencsg = callPackage ../development/libraries/opencsg { }; + + openct = callPackage ../development/libraries/openct { }; + + opencv = callPackage ../development/libraries/opencv { }; + + opencv_2_1 = callPackage ../development/libraries/opencv/2.1.nix { + libpng = libpng12; + }; + + # this ctl version is needed by openexr_viewers + openexr_ctl = callPackage ../development/libraries/openexr_ctl { }; + + openexr = callPackage ../development/libraries/openexr { }; + + openldap = callPackage ../development/libraries/openldap { + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + openlierox = callPackage ../games/openlierox { }; + + libopensc_dnie = callPackage ../development/libraries/libopensc-dnie { }; + + opencolorio = callPackage ../development/libraries/opencolorio { }; + + ois = callPackage ../development/libraries/ois {}; + + opal = callPackage ../development/libraries/opal {}; + + openjpeg = callPackage ../development/libraries/openjpeg { lcms = lcms2; }; + + openscenegraph = callPackage ../development/libraries/openscenegraph { + giflib = giflib_4_1; + ffmpeg = ffmpeg_0_10; + }; + + openspades = callPackage ../games/openspades {}; + + libressl = callPackage ../development/libraries/libressl { }; + + boringssl = callPackage ../development/libraries/boringssl { }; + + openssl = callPackage ../development/libraries/openssl { + fetchurl = fetchurlBoot; + cryptodevHeaders = linuxPackages.cryptodev.override { + fetchurl = fetchurlBoot; + onlyHeaders = true; + }; + }; + + ortp = callPackage ../development/libraries/ortp { + srtp = srtp_linphone; + }; + + p11_kit = callPackage ../development/libraries/p11-kit { }; + + paperkey = callPackage ../tools/security/paperkey { }; + + pangoxsl = callPackage ../development/libraries/pangoxsl { }; + + pcl = callPackage ../development/libraries/pcl { + vtk = vtkWithQt4; + }; + + pcre = callPackage ../development/libraries/pcre { + unicodeSupport = config.pcre.unicode or true; + }; + + pdf2xml = callPackage ../development/libraries/pdf2xml {} ; + + phonon = callPackage ../development/libraries/phonon { }; + + phonon_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer { }; + + phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc { }; + + physfs = callPackage ../development/libraries/physfs { }; + + pkcs11helper = callPackage ../development/libraries/pkcs11helper { }; + + plib = callPackage ../development/libraries/plib { }; + + pocketsphinx = callPackage ../development/libraries/pocketsphinx { }; + + podofo = callPackage ../development/libraries/podofo { }; + + polkit = callPackage ../development/libraries/polkit { + spidermonkey = spidermonkey_185; + }; + + polkit_qt_1 = callPackage ../development/libraries/polkit-qt-1 { }; + + policykit = callPackage ../development/libraries/policykit { }; + + poppler = callPackage ../development/libraries/poppler { lcms = lcms2; }; + popplerQt4 = poppler.poppler_qt4; + + popt = callPackage ../development/libraries/popt { }; + + portaudio = callPackage ../development/libraries/portaudio { + # resolves a variety of compile-time errors + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + portaudioSVN = callPackage ../development/libraries/portaudio/svn-head.nix { }; + + portmidi = callPackage ../development/libraries/portmidi {}; + + prison = callPackage ../development/libraries/prison { }; + + proj = callPackage ../development/libraries/proj { }; + + postgis = callPackage ../development/libraries/postgis { }; + + protobuf = callPackage ../development/libraries/protobuf { }; + + protobufc = callPackage ../development/libraries/protobufc { }; + + pth = callPackage ../development/libraries/pth { }; + + ptlib = callPackage ../development/libraries/ptlib {}; + + re2 = callPackage ../development/libraries/re2 { }; + + qca2 = callPackage ../development/libraries/qca2 {}; + + qca2_ossl = callPackage ../development/libraries/qca2/ossl.nix {}; + + qimageblitz = callPackage ../development/libraries/qimageblitz {}; + + qjson = callPackage ../development/libraries/qjson { }; + + qoauth = callPackage ../development/libraries/qoauth { }; + + qt3 = callPackage ../development/libraries/qt-3 { + openglSupport = mesaSupported; + libpng = libpng12; + }; + + qt4 = pkgs.kde4.qt4; + + qt48 = callPackage ../development/libraries/qt-4.x/4.8 { + # GNOME dependencies are not used unless gtkStyle == true + mesa = mesa_noglu; + inherit (pkgs.gnome) libgnomeui GConf gnome_vfs; + cups = if stdenv.isLinux then cups else null; + + # resolve unrecognised flag '-fconstant-cfstrings' errors + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + qt48Full = qt48.override { + docs = true; + demos = true; + examples = true; + developerBuild = true; + }; + + qt4SDK = qtcreator.override { + sdkBuild = true; + qtLib = qt48Full; + }; + + qt53Full = qt53.override { + buildDocs = true; + buildExamples = true; + buildTests = true; + developerBuild = true; + }; + + qt53 = callPackage ../development/libraries/qt-5/qt-5.3.nix { + mesa = mesa_noglu; + cups = if stdenv.isLinux then cups else null; + # GNOME dependencies are not used unless gtkStyle == true + inherit (gnome) libgnomeui GConf gnome_vfs; + bison = bison2; # error: too few arguments to function 'int yylex(... + }; + + qt5 = callPackage ../development/libraries/qt-5 { + mesa = mesa_noglu; + cups = if stdenv.isLinux then cups else null; + # GNOME dependencies are not used unless gtkStyle == true + inherit (gnome) libgnomeui GConf gnome_vfs; + bison = bison2; # error: too few arguments to function 'int yylex(... + }; + + qt5Full = qt5.override { + buildDocs = true; + buildExamples = true; + buildTests = true; + developerBuild = true; + }; + + qt5SDK = qtcreator.override { + sdkBuild = true; + qtLib = qt5Full; + }; + + qtcreator = callPackage ../development/qtcreator { + qtLib = qt48.override { developerBuild = true; }; + }; + + qtscriptgenerator = callPackage ../development/libraries/qtscriptgenerator { }; + + quesoglc = callPackage ../development/libraries/quesoglc { }; + + qwt = callPackage ../development/libraries/qwt {}; + + qwt6 = callPackage ../development/libraries/qwt/6.nix { }; + + rabbitmq-c = callPackage ../development/libraries/rabbitmq-c {}; + + rabbitmq-java-client = callPackage ../development/libraries/rabbitmq-java-client {}; + + raul = callPackage ../development/libraries/audio/raul { }; + + readline = readline6; # 6.2 works, 6.3 breaks python, parted + + readline4 = callPackage ../development/libraries/readline/readline4.nix { }; + + readline5 = callPackage ../development/libraries/readline/readline5.nix { }; + + readline6 = callPackage ../development/libraries/readline/readline6.nix { }; + + readline63 = callPackage ../development/libraries/readline/readline6.3.nix { }; + + librdf_raptor = callPackage ../development/libraries/librdf/raptor.nix { }; + + librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { }; + + librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { }; + + librdf_redland = callPackage ../development/libraries/librdf/redland.nix { }; + + librdf = callPackage ../development/libraries/librdf { }; + + lilv = callPackage ../development/libraries/audio/lilv { }; + + lv2 = callPackage ../development/libraries/audio/lv2 { }; + + lvtk = callPackage ../development/libraries/audio/lvtk { }; + + qrupdate = callPackage ../development/libraries/qrupdate { }; + + redland = pkgs.librdf_redland; + + rhino = callPackage ../development/libraries/java/rhino { + javac = gcj; + jvm = gcj; + }; + + rlog = callPackage ../development/libraries/rlog { }; + + rubberband = callPackage ../development/libraries/rubberband { + fftw = fftwSinglePrec; + inherit (vamp) vampSDK; + }; + + sbc = callPackage ../development/libraries/sbc { }; + + schroedinger = callPackage ../development/libraries/schroedinger { }; + + SDL = callPackage ../development/libraries/SDL { + openglSupport = mesaSupported; + alsaSupport = (!stdenv.isDarwin); + x11Support = true; + pulseaudioSupport = stdenv.isDarwin; # better go through ALSA + + # resolve the unrecognized -fpascal-strings option error + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + # Fixes major problems with choppy sound in MLT / Kdenlive / Shotcut + SDL_pulseaudio = SDL.override { pulseaudioSupport = true; }; + + SDL_gfx = callPackage ../development/libraries/SDL_gfx { }; + + SDL_image = callPackage ../development/libraries/SDL_image { + # provide an Objective-C compiler + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + SDL_mixer = callPackage ../development/libraries/SDL_mixer { }; + + SDL_net = callPackage ../development/libraries/SDL_net { }; + + SDL_sound = callPackage ../development/libraries/SDL_sound { }; + + SDL_ttf = callPackage ../development/libraries/SDL_ttf { }; + + SDL2 = callPackage ../development/libraries/SDL2 { + openglSupport = mesaSupported; + alsaSupport = true; + x11Support = true; + pulseaudioSupport = false; # better go through ALSA + }; + + SDL2_image = callPackage ../development/libraries/SDL2_image { }; + + SDL2_mixer = callPackage ../development/libraries/SDL2_mixer { }; + + SDL2_net = callPackage ../development/libraries/SDL2_net { }; + + SDL2_gfx = callPackage ../development/libraries/SDL2_gfx { }; + + serd = callPackage ../development/libraries/serd {}; + + serf = callPackage ../development/libraries/serf {}; + + silgraphite = callPackage ../development/libraries/silgraphite {}; + graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix {}; + + simgear = callPackage ../development/libraries/simgear { }; + + sfml_git = callPackage ../development/libraries/sfml { }; + + skalibs = callPackage ../development/libraries/skalibs { }; + + slang = callPackage ../development/libraries/slang { }; + + slibGuile = callPackage ../development/libraries/slib { + scheme = guile_1_8; + texinfo = texinfo4; # otherwise erros: must be after `@defun' to use `@defunx' + }; + + smpeg = callPackage ../development/libraries/smpeg { }; + + snack = callPackage ../development/libraries/snack { + # optional + }; + + snappy = callPackage ../development/libraries/snappy { }; + + sodium = callPackage ../development/libraries/sodium {}; + + sofia_sip = callPackage ../development/libraries/sofia-sip { }; + + soprano = callPackage ../development/libraries/soprano { }; + + soqt = callPackage ../development/libraries/soqt { }; + + sord = callPackage ../development/libraries/sord {}; + + spandsp = callPackage ../development/libraries/spandsp {}; + + speechd = callPackage ../development/libraries/speechd { }; + + speech_tools = callPackage ../development/libraries/speech-tools {}; + + speex = callPackage ../development/libraries/speex { }; + + sphinxbase = callPackage ../development/libraries/sphinxbase { }; + + spice = callPackage ../development/libraries/spice { + celt = celt_0_5_1; + inherit (xlibs) libXrandr libXfixes libXext libXrender libXinerama; + inherit (pythonPackages) pyparsing; + }; + + spice_gtk = callPackage ../development/libraries/spice-gtk { }; + + spice_protocol = callPackage ../development/libraries/spice-protocol { }; + + sratom = callPackage ../development/libraries/audio/sratom { }; + + srtp = callPackage ../development/libraries/srtp {}; + + srtp_linphone = callPackage ../development/libraries/srtp/linphone.nix { }; + + sqlite = lowPrio (callPackage ../development/libraries/sqlite { + readline = null; + ncurses = null; + }); + + sqliteInteractive = appendToName "interactive" (sqlite.override { + inherit readline ncurses; + }); + + sqlcipher = lowPrio (callPackage ../development/libraries/sqlcipher { + readline = null; + ncurses = null; + }); + + stfl = callPackage ../development/libraries/stfl { + stdenv = if stdenv.isDarwin + then overrideGCC stdenv gccApple + else stdenv; + }; + + stlink = callPackage ../development/tools/misc/stlink { }; + + steghide = callPackage ../tools/security/steghide {}; + + stepmania = callPackage ../games/stepmania {}; + + stlport = callPackage ../development/libraries/stlport { }; + + strigi = callPackage ../development/libraries/strigi { clucene_core = clucene_core_2; }; + + subtitleeditor = callPackage ../applications/video/subtitleeditor { }; + + suil = callPackage ../development/libraries/audio/suil { }; + + suitesparse = callPackage ../development/libraries/suitesparse { }; + + sutils = callPackage ../tools/misc/sutils { }; + + sword = callPackage ../development/libraries/sword { }; + + szip = callPackage ../development/libraries/szip { }; + + t1lib = callPackage ../development/libraries/t1lib { }; + + taglib = callPackage ../development/libraries/taglib { }; + + taglib_extras = callPackage ../development/libraries/taglib-extras { }; + + talloc = callPackage ../development/libraries/talloc { }; + + tclap = callPackage ../development/libraries/tclap {}; + + tclgpg = callPackage ../development/libraries/tclgpg { }; + + tcllib = callPackage ../development/libraries/tcllib { }; + + tcltls = callPackage ../development/libraries/tcltls { }; + + tdb = callPackage ../development/libraries/tdb { }; + + tecla = callPackage ../development/libraries/tecla { }; + + telepathy_glib = callPackage ../development/libraries/telepathy/glib { }; + + telepathy_farstream = callPackage ../development/libraries/telepathy/farstream {}; + + telepathy_qt = callPackage ../development/libraries/telepathy/qt { }; + + thrift = callPackage ../development/libraries/thrift { }; + + tinyxml = tinyxml2; + + tinyxml2 = callPackage ../development/libraries/tinyxml/2.6.2.nix { }; + + tk = callPackage ../development/libraries/tk { }; + + tnt = callPackage ../development/libraries/tnt { }; + + tokyocabinet = callPackage ../development/libraries/tokyo-cabinet { }; + tokyotyrant = callPackage ../development/libraries/tokyo-tyrant { }; + + tremor = callPackage ../development/libraries/tremor { }; + + unicap = callPackage ../development/libraries/unicap {}; + + tsocks = callPackage ../development/libraries/tsocks { }; + + unixODBC = callPackage ../development/libraries/unixODBC { }; + + unixODBCDrivers = recurseIntoAttrs (import ../development/libraries/unixODBCDrivers { + inherit fetchurl stdenv unixODBC glibc libtool openssl zlib; + inherit postgresql mysql sqlite; + }); + + urt = callPackage ../development/libraries/urt { }; + + ustr = callPackage ../development/libraries/ustr { }; + + usbredir = callPackage ../development/libraries/usbredir { + libusb = libusb1; + }; + + ucommon = callPackage ../development/libraries/ucommon { }; + + v8 = callPackage ../development/libraries/v8 { + inherit (pythonPackages) gyp; + }; + + vaapiIntel = callPackage ../development/libraries/vaapi-intel { }; + + vaapiVdpau = callPackage ../development/libraries/vaapi-vdpau { }; + + vamp = callPackage ../development/libraries/audio/vamp { }; + + vcdimager = callPackage ../development/libraries/vcdimager { }; + + vigra = callPackage ../development/libraries/vigra { + inherit (pkgs.pythonPackages) numpy; + }; + + vlock = callPackage ../misc/screensavers/vlock { }; + + vmime = callPackage ../development/libraries/vmime { }; + + vrpn = callPackage ../development/libraries/vrpn { }; + + vtk = callPackage ../development/libraries/vtk { }; + + vtkWithQt4 = vtk.override { qtLib = qt4; }; + + vxl = callPackage ../development/libraries/vxl { + libpng = libpng12; + }; + + wayland = callPackage ../development/libraries/wayland { }; + + webkit = webkitgtk; + + webkitgtk = callPackage ../development/libraries/webkitgtk { + harfbuzz = harfbuzz.override { + withIcu = true; + }; + gst-plugins-base = gst_all_1.gst-plugins-base; + }; + + webkitgtk2 = webkitgtk.override { + withGtk2 = true; + enableIntrospection = false; + }; + + wildmidi = callPackage ../development/libraries/wildmidi { }; + + wvstreams = callPackage ../development/libraries/wvstreams { }; + + wxGTK = wxGTK28; + + wxGTK28 = callPackage ../development/libraries/wxGTK-2.8 { + inherit (gnome) GConf; + withMesa = lib.elem system lib.platforms.mesaPlatforms; + }; + + wxGTK29 = callPackage ../development/libraries/wxGTK-2.9/default.nix { + inherit (gnome) GConf; + withMesa = lib.elem system lib.platforms.mesaPlatforms; + + # use for Objective-C++ compiler + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + wxGTK30 = callPackage ../development/libraries/wxGTK-3.0/default.nix { + inherit (gnome) GConf; + withMesa = lib.elem system lib.platforms.mesaPlatforms; + + # use for Objective-C++ compiler + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + wtk = callPackage ../development/libraries/wtk { }; + + x264 = callPackage ../development/libraries/x264 { }; + + xapian = callPackage ../development/libraries/xapian { }; + + xapianBindings = callPackage ../development/libraries/xapian/bindings { # TODO perl php Java, tcl, C#, python + }; + + xapian10 = callPackage ../development/libraries/xapian/1.0.x.nix { }; + + xapianBindings10 = callPackage ../development/libraries/xapian/bindings/1.0.x.nix { # TODO perl php Java, tcl, C#, python + }; + + Xaw3d = callPackage ../development/libraries/Xaw3d { }; + + xbase = callPackage ../development/libraries/xbase { }; + + xcb-util-cursor = callPackage ../development/libraries/xcb-util-cursor { }; + + xdo = callPackage ../tools/misc/xdo { }; + + xineLib = callPackage ../development/libraries/xine-lib { + ffmpeg = ffmpeg_1; + }; + + xautolock = callPackage ../misc/screensavers/xautolock { }; + + xercesc = callPackage ../development/libraries/xercesc {}; + + xlibsWrapper = callPackage ../development/libraries/xlibs-wrapper { + packages = [ + freetype fontconfig xlibs.xproto xlibs.libX11 xlibs.libXt + xlibs.libXft xlibs.libXext xlibs.libSM xlibs.libICE + xlibs.xextproto + ]; + }; + + xmlrpc_c = callPackage ../development/libraries/xmlrpc-c { }; + + xmlsec = callPackage ../development/libraries/xmlsec { }; + + xvidcore = callPackage ../development/libraries/xvidcore { }; + + xylib = callPackage ../development/libraries/xylib { }; + + yajl = callPackage ../development/libraries/yajl { }; + + zangband = builderDefsPackage (import ../games/zangband) { + inherit ncurses flex bison autoconf automake m4 coreutils; + }; + + zeitgeist = callPackage ../development/libraries/zeitgeist { }; + + zlib = callPackage ../development/libraries/zlib { + fetchurl = fetchurlBoot; + }; + + zlibStatic = lowPrio (appendToName "static" (callPackage ../development/libraries/zlib { + static = true; + })); + + zeromq2 = callPackage ../development/libraries/zeromq/2.x.nix {}; + zeromq3 = callPackage ../development/libraries/zeromq/3.x.nix {}; + zeromq4 = callPackage ../development/libraries/zeromq/4.x.nix {}; + + zziplib = callPackage ../development/libraries/zziplib { }; + + + ### DEVELOPMENT / LIBRARIES / JAVA + + atermjava = callPackage ../development/libraries/java/aterm { + stdenv = overrideInStdenv stdenv [gnumake380]; + }; + + commonsFileUpload = callPackage ../development/libraries/java/jakarta-commons/file-upload { }; + + fastjar = callPackage ../development/tools/java/fastjar { }; + + httpunit = callPackage ../development/libraries/java/httpunit { }; + + gwtdragdrop = callPackage ../development/libraries/java/gwt-dragdrop { }; + + gwtwidgets = callPackage ../development/libraries/java/gwt-widgets { }; + + jakartabcel = callPackage ../development/libraries/java/jakarta-bcel { + regexp = jakartaregexp; + }; + + jakartaregexp = callPackage ../development/libraries/java/jakarta-regexp { }; + + javaCup = callPackage ../development/libraries/java/cup { }; + + javasvn = callPackage ../development/libraries/java/javasvn { }; + + jclasslib = callPackage ../development/tools/java/jclasslib { }; + + jdom = callPackage ../development/libraries/java/jdom { }; + + jflex = callPackage ../development/libraries/java/jflex { }; + + jjtraveler = callPackage ../development/libraries/java/jjtraveler { + stdenv = overrideInStdenv stdenv [gnumake380]; + }; + + junit = callPackage ../development/libraries/java/junit { antBuild = releaseTools.antBuild; }; + + junixsocket = callPackage ../development/libraries/java/junixsocket { }; + + jzmq = callPackage ../development/libraries/java/jzmq { }; + + lucene = callPackage ../development/libraries/java/lucene { }; + + mockobjects = callPackage ../development/libraries/java/mockobjects { }; + + saxon = callPackage ../development/libraries/java/saxon { }; + + saxonb = callPackage ../development/libraries/java/saxon/default8.nix { }; + + sharedobjects = callPackage ../development/libraries/java/shared-objects { + stdenv = overrideInStdenv stdenv [gnumake380]; + }; + + smack = callPackage ../development/libraries/java/smack { }; + + swt = callPackage ../development/libraries/java/swt { + inherit (gnome) libsoup; + }; + + + ### DEVELOPMENT / LIBRARIES / JAVASCRIPT + + jquery_ui = callPackage ../development/libraries/javascript/jquery-ui { }; + + yuicompressor = callPackage ../development/tools/yuicompressor { }; + + ### DEVELOPMENT / LISP MODULES + + asdf = callPackage ../development/lisp-modules/asdf { + texLive = null; + }; + + clwrapperFunction = callPackage ../development/lisp-modules/clwrapper; + + wrapLisp = lisp: clwrapperFunction { inherit lisp; }; + + lispPackagesFor = clwrapper: callPackage ../development/lisp-modules/lisp-packages.nix { + inherit clwrapper; + }; + + lispPackagesClisp = lispPackagesFor (wrapLisp clisp); + lispPackagesSBCL = lispPackagesFor (wrapLisp sbcl); + lispPackages = recurseIntoAttrs lispPackagesSBCL; + + + ### DEVELOPMENT / PERL MODULES + + buildPerlPackage = import ../development/perl-modules/generic perl; + + perlPackages = recurseIntoAttrs (import ./perl-packages.nix { + inherit pkgs; + overrides = (config.perlPackageOverrides or (p: {})) pkgs; + }); + + perl514Packages = import ./perl-packages.nix { + pkgs = pkgs // { + perl = perl514; + buildPerlPackage = import ../development/perl-modules/generic perl514; + }; + overrides = (config.perl514PackageOverrides or (p: {})) pkgs; + }; + + perlXMLParser = perlPackages.XMLParser; + + ack = perlPackages.ack; + + perlArchiveCpio = perlPackages.ArchiveCpio; + + perlcritic = perlPackages.PerlCritic; + + planetary_annihilation = callPackage ../games/planetaryannihilation { }; + + + ### DEVELOPMENT / PYTHON MODULES + + # python function with default python interpreter + buildPythonPackage = pythonPackages.buildPythonPackage; + + # `nix-env -i python-nose` installs for 2.7, the default python. + # Therefore we do not recurse into attributes here, in contrast to + # python27Packages. `nix-env -iA python26Packages.nose` works + # regardless. + python26Packages = import ./python-packages.nix { + inherit pkgs; + python = python26; + }; + + python27Packages = lib.hiPrioSet (recurseIntoAttrs (import ./python-packages.nix { + inherit pkgs; + python = python27; + })); + + python32Packages = import ./python-packages.nix { + inherit pkgs; + python = python32; + }; + + python33Packages = recurseIntoAttrs (import ./python-packages.nix { + inherit pkgs; + python = python33; + }); + + python34Packages = recurseIntoAttrs (import ./python-packages.nix { + inherit pkgs; + python = python34; + }); + + pypyPackages = recurseIntoAttrs (import ./python-packages.nix { + inherit pkgs; + python = pypy; + }); + + foursuite = callPackage ../development/python-modules/4suite { }; + + bsddb3 = callPackage ../development/python-modules/bsddb3 { }; + + ecdsa = callPackage ../development/python-modules/ecdsa { }; + + numeric = callPackage ../development/python-modules/numeric { }; + + pil = pythonPackages.pil; + + psyco = callPackage ../development/python-modules/psyco { }; + + pycairo = pythonPackages.pycairo; + + pycapnp = pythonPackages.pycapnp; + + pycrypto = pythonPackages.pycrypto; + + pycups = callPackage ../development/python-modules/pycups { }; + + pyexiv2 = callPackage ../development/python-modules/pyexiv2 { }; + + pygame = callPackage ../development/python-modules/pygame { }; + + pygobject = pythonPackages.pygobject; + + pygobject3 = pythonPackages.pygobject3; + + pygtk = pythonPackages.pygtk; + + pyGtkGlade = pythonPackages.pyGtkGlade; + + pylint = callPackage ../development/python-modules/pylint { }; + + pyopenssl = builderDefsPackage (import ../development/python-modules/pyopenssl) { + inherit python openssl; + }; + + rhpl = callPackage ../development/python-modules/rhpl { }; + + sip = callPackage ../development/python-modules/sip { }; + + pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix { + stdenv = if stdenv.isDarwin + then clangStdenv + else stdenv; + }; + + pysideApiextractor = callPackage ../development/python-modules/pyside/apiextractor.nix { }; + + pysideGeneratorrunner = callPackage ../development/python-modules/pyside/generatorrunner.nix { }; + + pyside = callPackage ../development/python-modules/pyside { }; + + pysideTools = callPackage ../development/python-modules/pyside/tools.nix { }; + + pysideShiboken = callPackage ../development/python-modules/pyside/shiboken.nix { }; + + pyx = callPackage ../development/python-modules/pyx { }; + + pyxml = callPackage ../development/python-modules/pyxml { }; + + rbtools = callPackage ../development/python-modules/rbtools { }; + + setuptools = pythonPackages.setuptools; + + slowaes = callPackage ../development/python-modules/slowaes { }; + + wxPython = pythonPackages.wxPython; + wxPython28 = pythonPackages.wxPython28; + + twisted = pythonPackages.twisted; + + ZopeInterface = pythonPackages.zope_interface; + + ### DEVELOPMENT / R MODULES + + R = callPackage ../applications/science/math/R { + inherit (xlibs) libX11 libXt; + texLive = texLiveAggregationFun { paths = [ texLive texLiveExtra ]; }; + withRecommendedPackages = false; + }; + + rWrapper = callPackage ../development/r-modules/wrapper.nix { + # Those packages are usually installed as part of the R build. + recommendedPackages = with rPackages; [ MASS lattice Matrix nlme + survival boot cluster codetools foreign KernSmooth rpart class + nnet spatial mgcv ]; + # Override this attribute to register additional libraries. + packages = []; + }; + + rPackages = import ../development/r-modules/cran-packages.nix { + inherit pkgs; + overrides = (config.rPackageOverrides or (p: {})) pkgs; + }; + + ### SERVERS + + rdf4store = callPackage ../servers/http/4store { }; + + apacheHttpd = pkgs.apacheHttpd_2_2; + + apacheHttpd_2_2 = callPackage ../servers/http/apache-httpd/2.2.nix { + sslSupport = true; + }; + + apacheHttpd_2_4 = lowPrio (callPackage ../servers/http/apache-httpd/2.4.nix { + sslSupport = true; + }); + + apcupsd = callPackage ../servers/apcupsd { }; + + sabnzbd = callPackage ../servers/sabnzbd { }; + + bind = callPackage ../servers/dns/bind { }; + + bird = callPackage ../servers/bird { }; + + couchdb = callPackage ../servers/http/couchdb { + spidermonkey = spidermonkey_185; + python = python27; + sphinx = python27Packages.sphinx; + erlang = erlangR16; + }; + + dico = callPackage ../servers/dico { }; + + dict = callPackage ../servers/dict { + libmaa = callPackage ../servers/dict/libmaa.nix {}; + }; + + dictdDBs = recurseIntoAttrs (import ../servers/dict/dictd-db.nix { + inherit builderDefs; + }); + + dictDBCollector = import ../servers/dict/dictd-db-collector.nix { + inherit stdenv lib dict; + }; + + dictdWiktionary = callPackage ../servers/dict/dictd-wiktionary.nix {}; + + dictdWordnet = callPackage ../servers/dict/dictd-wordnet.nix {}; + + diod = callPackage ../servers/diod { }; + + dovecot = dovecot21; + + dovecot21 = callPackage ../servers/mail/dovecot { }; + + dovecot22 = callPackage ../servers/mail/dovecot/2.2.x.nix { }; + + dovecot_pigeonhole = callPackage ../servers/mail/dovecot-pigeonhole { }; + + etcd = callPackage ../servers/etcd { }; + + ejabberd = callPackage ../servers/xmpp/ejabberd { + erlang = erlangR16; + }; + + elasticmq = callPackage ../servers/elasticmq { }; + + etcdctl = callPackage ../development/tools/etcdctl { }; + + fcgiwrap = callPackage ../servers/fcgiwrap { }; + + felix = callPackage ../servers/felix { }; + + felix_remoteshell = callPackage ../servers/felix/remoteshell.nix { }; + + fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { }; + + firebird = callPackage ../servers/firebird { icu = null; }; + firebirdSuper = callPackage ../servers/firebird { superServer = true; }; + + fleet = callPackage ../servers/fleet { }; + + freepops = callPackage ../servers/mail/freepops { }; + + freeswitch = callPackage ../servers/sip/freeswitch { }; + + ghostOne = callPackage ../servers/games/ghost-one { + boost = boost144.override { taggedLayout = true; }; + }; + + ircdHybrid = callPackage ../servers/irc/ircd-hybrid { }; + + jboss = callPackage ../servers/http/jboss { }; + + jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { }; + + jetty = callPackage ../servers/http/jetty { }; + + jetty61 = callPackage ../servers/http/jetty/6.1 { }; + + joseki = callPackage ../servers/http/joseki {}; + + leafnode = callPackage ../servers/news/leafnode { }; + + lighttpd = callPackage ../servers/http/lighttpd { }; + + mailman = callPackage ../servers/mail/mailman { }; + + mediatomb = callPackage ../servers/mediatomb { }; + + memcached = callPackage ../servers/memcached {}; + + mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd/default.nix { }; + + mod_evasive = callPackage ../servers/http/apache-modules/mod_evasive { }; + + mod_python = callPackage ../servers/http/apache-modules/mod_python { }; + + mod_fastcgi = callPackage ../servers/http/apache-modules/mod_fastcgi { }; + + mod_wsgi = callPackage ../servers/http/apache-modules/mod_wsgi { }; + + mpd = callPackage ../servers/mpd { + aacSupport = config.mpd.aacSupport or true; + ffmpegSupport = config.mpd.ffmpegSupport or true; + }; + + mpd_clientlib = callPackage ../servers/mpd/clientlib.nix { }; + + miniHttpd = callPackage ../servers/http/mini-httpd {}; + + mlmmj = callPackage ../servers/mail/mlmmj { }; + + myserver = callPackage ../servers/http/myserver { }; + + nginx = callPackage ../servers/http/nginx { + rtmp = true; + fullWebDAV = true; + syslog = true; + moreheaders = true; + }; + + ngircd = callPackage ../servers/irc/ngircd { }; + + nix-binary-cache = callPackage ../servers/http/nix-binary-cache {}; + + nsd = callPackage ../servers/dns/nsd { }; + + nsq = callPackage ../servers/nsq { }; + + openresty = callPackage ../servers/http/openresty { }; + + opensmtpd = callPackage ../servers/mail/opensmtpd { }; + + petidomo = callPackage ../servers/mail/petidomo { }; + + popa3d = callPackage ../servers/mail/popa3d { }; + + postfix = callPackage ../servers/mail/postfix { }; + + postfix211 = callPackage ../servers/mail/postfix/2.11.nix { }; + + pulseaudio = callPackage ../servers/pulseaudio { + gconf = gnome.GConf; + # The following are disabled in the default build, because if this + # functionality is desired, they are only needed in the PulseAudio + # server. + bluez = null; + avahi = null; + }; + pulseaudioFull = pulseaudio.override { + bluez = bluez5; + avahi = avahi; + jackaudioSupport = true; + x11Support = true; + }; + + tomcat_connectors = callPackage ../servers/http/apache-modules/tomcat-connectors { }; + + pies = callPackage ../servers/pies { }; + + portmap = callPackage ../servers/portmap { }; + + rpcbind = callPackage ../servers/rpcbind { }; + + #monetdb = callPackage ../servers/sql/monetdb { }; + + mariadb = callPackage ../servers/sql/mariadb {}; + + mongodb = callPackage ../servers/nosql/mongodb { }; + + riak = callPackage ../servers/nosql/riak/1.3.1.nix { }; + + influxdb = callPackage ../servers/nosql/influxdb { }; + + mysql51 = import ../servers/sql/mysql/5.1.x.nix { + inherit fetchurl ncurses zlib perl openssl stdenv; + ps = procps; /* !!! Linux only */ + }; + + mysql55 = callPackage ../servers/sql/mysql/5.5.x.nix { }; + + mysql = mysql51; + + mysql_jdbc = callPackage ../servers/sql/mysql/jdbc { }; + + nagios = callPackage ../servers/monitoring/nagios { }; + + munin = callPackage ../servers/monitoring/munin { }; + + nagiosPluginsOfficial = callPackage ../servers/monitoring/nagios/plugins/official-2.x.nix { }; + + neo4j = callPackage ../servers/nosql/neo4j { }; + + net_snmp = callPackage ../servers/monitoring/net-snmp { }; + + riemann = callPackage ../servers/monitoring/riemann { }; + + oidentd = callPackage ../servers/identd/oidentd { }; + + openfire = callPackage ../servers/xmpp/openfire { }; + + oracleXE = callPackage ../servers/sql/oracle-xe { }; + + OVMF = callPackage ../applications/virtualization/OVMF { }; + + postgresql = postgresql92; + + postgresql84 = callPackage ../servers/sql/postgresql/8.4.x.nix { }; + + postgresql90 = callPackage ../servers/sql/postgresql/9.0.x.nix { }; + + postgresql91 = callPackage ../servers/sql/postgresql/9.1.x.nix { }; + + postgresql92 = callPackage ../servers/sql/postgresql/9.2.x.nix { }; + + postgresql93 = callPackage ../servers/sql/postgresql/9.3.x.nix { }; + + postgresql_jdbc = callPackage ../servers/sql/postgresql/jdbc { }; + + psqlodbc = callPackage ../servers/sql/postgresql/psqlodbc { }; + + pyIRCt = builderDefsPackage (import ../servers/xmpp/pyIRCt) { + inherit xmpppy pythonIRClib python makeWrapper; + }; + + pyMAILt = builderDefsPackage (import ../servers/xmpp/pyMAILt) { + inherit xmpppy python makeWrapper fetchcvs; + }; + + qpid-cpp = callPackage ../servers/amqp/qpid-cpp { }; + + rabbitmq_server = callPackage ../servers/amqp/rabbitmq-server { }; + + radius = callPackage ../servers/radius { }; + + redis = callPackage ../servers/nosql/redis { }; + + redstore = callPackage ../servers/http/redstore { }; + + restund = callPackage ../servers/restund {}; + + rethinkdb = callPackage ../servers/nosql/rethinkdb { }; + + rippled = callPackage ../servers/rippled { }; + + s6 = callPackage ../servers/s6 { }; + + spamassassin = callPackage ../servers/mail/spamassassin { + inherit (perlPackages) HTMLParser NetDNS NetAddrIP DBFile + HTTPDate MailDKIM LWP IOSocketSSL; + }; + + samba = callPackage ../servers/samba { }; + + # A lightweight Samba, useful for non-Linux-based OSes. + samba_light = lowPrio (callPackage ../servers/samba { + pam = null; + fam = null; + cups = null; + acl = null; + openldap = null; + # libunwind 1.0.1 is not ported to GNU/Hurd. + libunwind = null; + }); + + serfdom = callPackage ../servers/serfdom { }; + + seyren = callPackage ../servers/monitoring/seyren { }; + + shishi = callPackage ../servers/shishi { }; + + sipwitch = callPackage ../servers/sip/sipwitch { }; + + spawn_fcgi = callPackage ../servers/http/spawn-fcgi { }; + + squids = recurseIntoAttrs( import ../servers/squid/squids.nix { + inherit fetchurl stdenv perl lib composableDerivation + openldap pam db cyrus_sasl kerberos libcap expat libxml2 libtool + openssl; + }); + squid = squids.squid31; # has ipv6 support + + thttpd = callPackage ../servers/http/thttpd { }; + + storm = callPackage ../servers/computing/storm { }; + + tomcat5 = callPackage ../servers/http/tomcat/5.0.nix { }; + + tomcat6 = callPackage ../servers/http/tomcat/6.0.nix { }; + + tomcat7 = callPackage ../servers/http/tomcat/7.0.nix { }; + + tomcat8 = callPackage ../servers/http/tomcat/8.0.nix { }; + + tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; + + axis2 = callPackage ../servers/http/tomcat/axis2 { }; + + unifi = callPackage ../servers/unifi { }; + + virtuoso6 = callPackage ../servers/sql/virtuoso/6.x.nix { }; + + virtuoso7 = callPackage ../servers/sql/virtuoso/7.x.nix { }; + + virtuoso = virtuoso6; + + vsftpd = callPackage ../servers/ftp/vsftpd { }; + + winstone = callPackage ../servers/http/winstone { }; + + xinetd = callPackage ../servers/xinetd { }; + + zookeeper = callPackage ../servers/zookeeper { }; + + xquartz = callPackage ../servers/x11/xquartz { }; + quartz-wm = callPackage ../servers/x11/quartz-wm { stdenv = clangStdenv; }; + + xorg = recurseIntoAttrs (import ../servers/x11/xorg/default.nix { + inherit clangStdenv fetchurl fetchgit fetchpatch stdenv pkgconfig intltool freetype fontconfig + libxslt expat libpng zlib perl mesa_drivers spice_protocol + dbus libuuid openssl gperf m4 + autoconf automake libtool xmlto asciidoc flex bison python mtdev pixman; + mesa = mesa_noglu; + udev = if stdenv.isLinux then udev else null; + libdrm = if stdenv.isLinux then libdrm else null; + } // { + xf86videointel-testing = callPackage ../servers/x11/xorg/xf86-video-intel-testing.nix { }; + }); + + xorgReplacements = callPackage ../servers/x11/xorg/replacements.nix { }; + + xorgVideoUnichrome = callPackage ../servers/x11/xorg/unichrome/default.nix { }; + + yaws = callPackage ../servers/http/yaws { }; + + zabbix = recurseIntoAttrs (import ../servers/monitoring/zabbix { + inherit fetchurl stdenv pkgconfig postgresql curl openssl zlib; + }); + + zabbix20 = callPackage ../servers/monitoring/zabbix/2.0.nix { }; + zabbix22 = callPackage ../servers/monitoring/zabbix/2.2.nix { }; + + + ### OS-SPECIFIC + + afuse = callPackage ../os-specific/linux/afuse { }; + + amdUcode = callPackage ../os-specific/linux/microcode/amd.nix { }; + + autofs5 = callPackage ../os-specific/linux/autofs/autofs-v5.nix { }; + + _915resolution = callPackage ../os-specific/linux/915resolution { }; + + nfsUtils = callPackage ../os-specific/linux/nfs-utils { }; + + acpi = callPackage ../os-specific/linux/acpi { }; + + acpid = callPackage ../os-specific/linux/acpid { }; + + acpitool = callPackage ../os-specific/linux/acpitool { }; + + alienfx = callPackage ../os-specific/linux/alienfx { }; + + alsaLib = callPackage ../os-specific/linux/alsa-lib { }; + + alsaPlugins = callPackage ../os-specific/linux/alsa-plugins { + jack2 = null; + }; + + alsaPluginWrapper = callPackage ../os-specific/linux/alsa-plugins/wrapper.nix { }; + + alsaUtils = callPackage ../os-specific/linux/alsa-utils { }; + alsaOss = callPackage ../os-specific/linux/alsa-oss { }; + + microcode2ucode = callPackage ../os-specific/linux/microcode/converter.nix { }; + + microcodeIntel = callPackage ../os-specific/linux/microcode/intel.nix { }; + + apparmor = callPackage ../os-specific/linux/apparmor { + inherit (perlPackages) LocaleGettext TermReadKey RpcXML; + bison = bison2; + }; + + atop = callPackage ../os-specific/linux/atop { }; + + audit = callPackage ../os-specific/linux/audit { }; + + b43Firmware_5_1_138 = callPackage ../os-specific/linux/firmware/b43-firmware/5.1.138.nix { }; + + b43FirmwareCutter = callPackage ../os-specific/linux/firmware/b43-firmware-cutter { }; + + batctl = callPackage ../os-specific/linux/batman-adv/batctl.nix { }; + + bluez4 = callPackage ../os-specific/linux/bluez { + pygobject = pygobject3; + }; + + bluez5 = lowPrio (callPackage ../os-specific/linux/bluez/bluez5.nix { }); + + bluez = bluez4; + + inherit (pythonPackages) bedup; + + beret = callPackage ../games/beret { }; + + bridge_utils = callPackage ../os-specific/linux/bridge-utils { }; + + busybox = callPackage ../os-specific/linux/busybox { }; + + checkpolicy = callPackage ../os-specific/linux/checkpolicy { }; + + checksec = callPackage ../os-specific/linux/checksec { }; + + cifs_utils = callPackage ../os-specific/linux/cifs-utils { }; + + conky = callPackage ../os-specific/linux/conky { + mpdSupport = config.conky.mpdSupport or true; + x11Support = config.conky.x11Support or false; + xdamage = config.conky.xdamage or false; + wireless = config.conky.wireless or false; + luaSupport = config.conky.luaSupport or false; + rss = config.conky.rss or false; + weatherMetar = config.conky.weatherMetar or false; + weatherXoap = config.conky.weatherXoap or false; + }; + + cpufrequtils = callPackage ../os-specific/linux/cpufrequtils { }; + + cryopid = callPackage ../os-specific/linux/cryopid { }; + + criu = callPackage ../os-specific/linux/criu { }; + + cryptsetup = callPackage ../os-specific/linux/cryptsetup { }; + + cramfsswap = callPackage ../os-specific/linux/cramfsswap { }; + + darwin = rec { + cctools = forceNativeDrv (callPackage ../os-specific/darwin/cctools-port { + cross = assert crossSystem != null; crossSystem; + inherit maloader; + xctoolchain = xcode.toolchain; + }); + + maloader = callPackage ../os-specific/darwin/maloader { + inherit opencflite; + }; + + opencflite = callPackage ../os-specific/darwin/opencflite {}; + + xcode = callPackage ../os-specific/darwin/xcode {}; + }; + + devicemapper = lvm2; + + disk_indicator = callPackage ../os-specific/linux/disk-indicator { }; + + dmidecode = callPackage ../os-specific/linux/dmidecode { }; + + dmtcp = callPackage ../os-specific/linux/dmtcp { }; + + dietlibc = callPackage ../os-specific/linux/dietlibc { }; + + directvnc = builderDefsPackage ../os-specific/linux/directvnc { + inherit libjpeg pkgconfig zlib directfb; + inherit (xlibs) xproto; + }; + + dmraid = callPackage ../os-specific/linux/dmraid { + devicemapper = devicemapper.override {enable_dmeventd = true;}; + }; + + drbd = callPackage ../os-specific/linux/drbd { }; + + dstat = callPackage ../os-specific/linux/dstat { + # pythonFull includes the "curses" standard library module, for pretty + # dstat color output + python = pythonFull; + }; + + libossp_uuid = callPackage ../development/libraries/libossp-uuid { }; + + libuuid = + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then (utillinux // { + crossDrv = lib.overrideDerivation utillinux.crossDrv (args: { + # `libblkid' fails to build on GNU/Hurd. + configureFlags = args.configureFlags + + " --disable-libblkid --disable-mount --disable-libmount" + + " --disable-fsck --enable-static --disable-partx"; + doCheck = false; + CPPFLAGS = # ugly hack for ugly software! + lib.concatStringsSep " " + (map (v: "-D${v}=4096") + [ "PATH_MAX" "MAXPATHLEN" "MAXHOSTNAMELEN" ]); + }); + }) + else if stdenv.isLinux + then utillinux + else null; + + e3cfsprogs = callPackage ../os-specific/linux/e3cfsprogs { }; + + ebtables = callPackage ../os-specific/linux/ebtables { }; + + eject = utillinux; + + ffado = callPackage ../os-specific/linux/ffado { }; + + fbterm = callPackage ../os-specific/linux/fbterm { }; + + firejail = callPackage ../os-specific/linux/firejail {}; + + fuse = callPackage ../os-specific/linux/fuse { }; + + fxload = callPackage ../os-specific/linux/fxload { }; + + gfxtablet = callPackage ../os-specific/linux/gfxtablet {}; + + gpm = callPackage ../servers/gpm { }; + + gradm = callPackage ../os-specific/linux/gradm { + flex = flex_2_5_35; + }; + + hdparm = callPackage ../os-specific/linux/hdparm { }; + + hibernate = callPackage ../os-specific/linux/hibernate { }; + + hostapd = callPackage ../os-specific/linux/hostapd { }; + + htop = + if stdenv.isLinux then + callPackage ../os-specific/linux/htop { } + else if stdenv.isDarwin then + callPackage ../os-specific/darwin/htop { } + else null; + + # GNU/Hurd core packages. + gnu = recurseIntoAttrs (callPackage ../os-specific/gnu { + inherit platform crossSystem; + }); + + hwdata = callPackage ../os-specific/linux/hwdata { }; + + i7z = callPackage ../os-specific/linux/i7z { }; + + ifplugd = callPackage ../os-specific/linux/ifplugd { }; + + iomelt = callPackage ../os-specific/linux/iomelt { }; + + iotop = callPackage ../os-specific/linux/iotop { }; + + iproute = callPackage ../os-specific/linux/iproute { }; + + iputils = callPackage ../os-specific/linux/iputils { + sp = spCompat; + inherit (perlPackages) SGMLSpm; + }; + + iptables = callPackage ../os-specific/linux/iptables { }; + + iw = callPackage ../os-specific/linux/iw { }; + + jujuutils = callPackage ../os-specific/linux/jujuutils { }; + + kbd = callPackage ../os-specific/linux/kbd { }; + + kmscon = callPackage ../os-specific/linux/kmscon { }; + + latencytop = callPackage ../os-specific/linux/latencytop { }; + + ldm = callPackage ../os-specific/linux/ldm { }; + + libaio = callPackage ../os-specific/linux/libaio { }; + + libatasmart = callPackage ../os-specific/linux/libatasmart { }; + + libcgroup = callPackage ../os-specific/linux/libcgroup { }; + + libnl = callPackage ../os-specific/linux/libnl { }; + libnl_3_2_19 = callPackage ../os-specific/linux/libnl/3.2.19.nix { }; + + linuxConsoleTools = callPackage ../os-specific/linux/consoletools { }; + + # -- Linux kernel expressions ------------------------------------------------ + + linuxHeaders = linuxHeaders_3_7; + + linuxHeaders24Cross = forceNativeDrv (import ../os-specific/linux/kernel-headers/2.4.nix { + inherit stdenv fetchurl perl; + cross = assert crossSystem != null; crossSystem; + }); + + linuxHeaders26Cross = forceNativeDrv (import ../os-specific/linux/kernel-headers/2.6.32.nix { + inherit stdenv fetchurl perl; + cross = assert crossSystem != null; crossSystem; + }); + + linuxHeaders_3_7 = callPackage ../os-specific/linux/kernel-headers/3.7.nix { }; + + linuxHeaders_3_14 = callPackage ../os-specific/linux/kernel-headers/3.14.nix { }; + + # We can choose: + linuxHeadersCrossChooser = ver : if ver == "2.4" then linuxHeaders24Cross + else if ver == "2.6" then linuxHeaders26Cross + else throw "Unknown linux kernel version"; + + linuxHeadersCross = assert crossSystem != null; + linuxHeadersCrossChooser crossSystem.platform.kernelMajor; + + kernelPatches = callPackage ../os-specific/linux/kernel/patches.nix { }; + + linux_3_2 = makeOverridable (import ../os-specific/linux/kernel/linux-3.2.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = []; + }; + + linux_3_4 = makeOverridable (import ../os-specific/linux/kernel/linux-3.4.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + ]; + }; + + linux_3_6_rpi = makeOverridable (import ../os-specific/linux/kernel/linux-rpi-3.6.nix) { + inherit fetchurl stdenv perl buildLinux; + }; + + linux_3_10 = makeOverridable (import ../os-specific/linux/kernel/linux-3.10.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; + }; + + linux_3_12 = makeOverridable (import ../os-specific/linux/kernel/linux-3.12.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; + }; + + linux_3_14 = makeOverridable (import ../os-specific/linux/kernel/linux-3.14.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; + }; + + linux_3_15 = makeOverridable (import ../os-specific/linux/kernel/linux-3.15.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; + }; + + linux_3_16 = makeOverridable (import ../os-specific/linux/kernel/linux-3.16.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; + }; + + linux_testing = makeOverridable (import ../os-specific/linux/kernel/linux-testing.nix) { + inherit fetchurl stdenv perl buildLinux; + kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; + }; + + /* grsec configuration + + We build several flavors of 'default' grsec kernels. These are + built by default with Hydra. If the user selects a matching + 'default' flavor, then the pre-canned package set can be + chosen. Typically, users will make very basic choices like + 'security' + 'server' or 'performance' + 'desktop' with + virtualisation support. These will then be picked. + + Note: Xen guest kernels are included for e.g. NixOps deployments + to EC2, where Xen is the Hypervisor. + */ + + grFlavors = import ../build-support/grsecurity/flavors.nix; + + mkGrsecurity = opts: + (import ../build-support/grsecurity { + grsecOptions = opts; + inherit pkgs lib; + }); + + grKernel = opts: (mkGrsecurity opts).grsecKernel; + grPackage = opts: recurseIntoAttrs (mkGrsecurity opts).grsecPackage; + + # Stable kernels + linux_grsec_stable_desktop = grKernel grFlavors.linux_grsec_stable_desktop; + linux_grsec_stable_server = grKernel grFlavors.linux_grsec_stable_server; + linux_grsec_stable_server_xen = grKernel grFlavors.linux_grsec_stable_server_xen; + + # Testing kernels + linux_grsec_testing_desktop = grKernel grFlavors.linux_grsec_testing_desktop; + linux_grsec_testing_server = grKernel grFlavors.linux_grsec_testing_server; + linux_grsec_testing_server_xen = grKernel grFlavors.linux_grsec_testing_server_xen; + + /* Linux kernel modules are inherently tied to a specific kernel. So + rather than provide specific instances of those packages for a + specific kernel, we have a function that builds those packages + for a specific kernel. This function can then be called for + whatever kernel you're using. */ + + linuxPackagesFor = kernel: self: let callPackage = newScope self; in { + inherit kernel; + + acpi_call = callPackage ../os-specific/linux/acpi-call {}; + + batman_adv = callPackage ../os-specific/linux/batman-adv {}; + + bbswitch = callPackage ../os-specific/linux/bbswitch {}; + + ati_drivers_x11 = callPackage ../os-specific/linux/ati-drivers { }; + + blcr = callPackage ../os-specific/linux/blcr { }; + + cryptodev = callPackage ../os-specific/linux/cryptodev { }; + + cpupower = callPackage ../os-specific/linux/cpupower { }; + + e1000e = callPackage ../os-specific/linux/e1000e {}; + + v4l2loopback = callPackage ../os-specific/linux/v4l2loopback { }; + + frandom = callPackage ../os-specific/linux/frandom { }; + + ktap = callPackage ../os-specific/linux/ktap { }; + + lttng-modules = callPackage ../os-specific/linux/lttng-modules { }; + + broadcom_sta = callPackage ../os-specific/linux/broadcom-sta/default.nix { }; + + nvidiabl = callPackage ../os-specific/linux/nvidiabl { }; + + nvidia_x11 = callPackage ../os-specific/linux/nvidia-x11 { }; + + nvidia_x11_legacy173 = callPackage ../os-specific/linux/nvidia-x11/legacy173.nix { }; + nvidia_x11_legacy304 = callPackage ../os-specific/linux/nvidia-x11/legacy304.nix { }; + + openafsClient = callPackage ../servers/openafs-client { }; + + openiscsi = callPackage ../os-specific/linux/open-iscsi { }; + + wis_go7007 = callPackage ../os-specific/linux/wis-go7007 { }; + + kernelHeaders = callPackage ../os-specific/linux/kernel-headers { }; + + klibc = callPackage ../os-specific/linux/klibc { }; + + klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { }); + + + /* compiles but has to be integrated into the kernel somehow + Let's have it uncommented and finish it.. + */ + ndiswrapper = callPackage ../os-specific/linux/ndiswrapper { }; + + netatop = callPackage ../os-specific/linux/netatop { }; + + perf = callPackage ../os-specific/linux/kernel/perf.nix { }; + + psmouse_alps = callPackage ../os-specific/linux/psmouse-alps { }; + + spl = callPackage ../os-specific/linux/spl { }; + spl_git = callPackage ../os-specific/linux/spl/git.nix { }; + + sysdig = callPackage ../os-specific/linux/sysdig {}; + + tp_smapi = callPackage ../os-specific/linux/tp_smapi { }; + + v86d = callPackage ../os-specific/linux/v86d { }; + + virtualbox = callPackage ../applications/virtualization/virtualbox { + stdenv = stdenv_32bit; + inherit (gnome) libIDL; + enableExtensionPack = config.virtualbox.enableExtensionPack or false; + }; + + virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { }; + + zfs = callPackage ../os-specific/linux/zfs { }; + zfs_git = callPackage ../os-specific/linux/zfs/git.nix { }; + }; + + # The current default kernel / kernel modules. + linux = linuxPackages.kernel; + linuxPackages = linuxPackages_3_12; + + # Update this when adding the newest kernel major version! + linux_latest = pkgs.linux_3_16; + linuxPackages_latest = pkgs.linuxPackages_3_16; + + # Build the kernel modules for the some of the kernels. + linuxPackages_3_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_2 linuxPackages_3_2); + linuxPackages_3_4 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_4 linuxPackages_3_4); + linuxPackages_3_6_rpi = linuxPackagesFor pkgs.linux_3_6_rpi linuxPackages_3_6_rpi; + linuxPackages_3_10 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_10 linuxPackages_3_10); + linuxPackages_3_10_tuxonice = linuxPackagesFor pkgs.linux_3_10_tuxonice linuxPackages_3_10_tuxonice; + linuxPackages_3_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_12 linuxPackages_3_12); + linuxPackages_3_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_14 linuxPackages_3_14); + linuxPackages_3_15 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_15 linuxPackages_3_15); + linuxPackages_3_16 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_16 linuxPackages_3_16); + linuxPackages_testing = recurseIntoAttrs (linuxPackagesFor pkgs.linux_testing linuxPackages_testing); + + # grsecurity flavors + # Stable kernels + linuxPackages_grsec_stable_desktop = grPackage grFlavors.linux_grsec_stable_desktop; + linuxPackages_grsec_stable_server = grPackage grFlavors.linux_grsec_stable_server; + linuxPackages_grsec_stable_server_xen = grPackage grFlavors.linux_grsec_stable_server_xen; + + # Testing kernels + linuxPackages_grsec_testing_desktop = grPackage grFlavors.linux_grsec_testing_desktop; + linuxPackages_grsec_testing_server = grPackage grFlavors.linux_grsec_testing_server; + linuxPackages_grsec_testing_server_xen = grPackage grFlavors.linux_grsec_testing_server_xen; + + # A function to build a manually-configured kernel + linuxManualConfig = pkgs.buildLinux; + buildLinux = import ../os-specific/linux/kernel/manual-config.nix { + inherit (pkgs) stdenv runCommand nettools bc perl kmod writeTextFile ubootChooser; + }; + + keyutils = callPackage ../os-specific/linux/keyutils { }; + + libselinux = callPackage ../os-specific/linux/libselinux { }; + + libsemanage = callPackage ../os-specific/linux/libsemanage { }; + + libraw = callPackage ../development/libraries/libraw { }; + + libraw1394 = callPackage ../development/libraries/libraw1394 { }; + + libsexy = callPackage ../development/libraries/libsexy { }; + + libsepol = callPackage ../os-specific/linux/libsepol { }; + + libsmbios = callPackage ../os-specific/linux/libsmbios { }; + + lm_sensors = callPackage ../os-specific/linux/lm-sensors { }; + + lockdep = callPackage ../os-specific/linux/lockdep { }; + + lsiutil = callPackage ../os-specific/linux/lsiutil { }; + + kmod = callPackage ../os-specific/linux/kmod { }; + + kmod-blacklist-ubuntu = callPackage ../os-specific/linux/kmod-blacklist-ubuntu { }; + + kvm = qemu_kvm; + + libcap = callPackage ../os-specific/linux/libcap { }; + + libcap_progs = callPackage ../os-specific/linux/libcap/progs.nix { }; + + libcap_pam = callPackage ../os-specific/linux/libcap/pam.nix { }; + + libcap_manpages = callPackage ../os-specific/linux/libcap/man.nix { }; + + libcap_ng = callPackage ../os-specific/linux/libcap-ng { }; + + libnscd = callPackage ../os-specific/linux/libnscd { }; + + libnotify = callPackage ../development/libraries/libnotify { }; + + libvolume_id = callPackage ../os-specific/linux/libvolume_id { }; + + lsscsi = callPackage ../os-specific/linux/lsscsi { }; + + lvm2 = callPackage ../os-specific/linux/lvm2 { }; + + mdadm = callPackage ../os-specific/linux/mdadm { }; + + mingetty = callPackage ../os-specific/linux/mingetty { }; + + module_init_tools = callPackage ../os-specific/linux/module-init-tools { }; + + aggregateModules = modules: + callPackage ../os-specific/linux/kmod/aggregator.nix { + inherit modules; + }; + + multipath_tools = callPackage ../os-specific/linux/multipath-tools { }; + + musl = callPackage ../os-specific/linux/musl { }; + + nettools = callPackage ../os-specific/linux/net-tools { }; + + neverball = callPackage ../games/neverball { + libpng = libpng15; + }; + + nftables = callPackage ../os-specific/linux/nftables { }; + + numactl = callPackage ../os-specific/linux/numactl { }; + + gocode = callPackage ../development/tools/gocode { }; + + gogoclient = callPackage ../os-specific/linux/gogoclient { }; + + nss_ldap = callPackage ../os-specific/linux/nss_ldap { }; + + pam = callPackage ../os-specific/linux/pam { }; + + # pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader ) + + pam_ccreds = callPackage ../os-specific/linux/pam_ccreds { }; + + pam_console = callPackage ../os-specific/linux/pam_console { + libtool = libtool_1_5; + }; + + pam_devperm = callPackage ../os-specific/linux/pam_devperm { }; + + pam_krb5 = callPackage ../os-specific/linux/pam_krb5 { }; + + pam_ldap = callPackage ../os-specific/linux/pam_ldap { }; + + pam_login = callPackage ../os-specific/linux/pam_login { }; + + pam_ssh_agent_auth = callPackage ../os-specific/linux/pam_ssh_agent_auth { }; + + pam_usb = callPackage ../os-specific/linux/pam_usb { }; + + paxctl = callPackage ../os-specific/linux/paxctl { }; + + pax-utils = callPackage ../os-specific/linux/pax-utils { }; + + pcmciaUtils = callPackage ../os-specific/linux/pcmciautils { + firmware = config.pcmciaUtils.firmware or []; + config = config.pcmciaUtils.config or null; + }; + + plymouth = callPackage ../os-specific/linux/plymouth { + automake = automake113x; + }; + + pmount = callPackage ../os-specific/linux/pmount { }; + + pmutils = callPackage ../os-specific/linux/pm-utils { }; + + pmtools = callPackage ../os-specific/linux/pmtools { }; + + policycoreutils = callPackage ../os-specific/linux/policycoreutils { }; + + powertop = callPackage ../os-specific/linux/powertop { }; + + prayer = callPackage ../servers/prayer { }; + + procps = procps-ng; + + procps-old = lowPrio (callPackage ../os-specific/linux/procps { }); + + procps-ng = callPackage ../os-specific/linux/procps-ng { }; + + watch = callPackage ../os-specific/linux/procps/watch.nix { }; + + qemu_kvm = lowPrio (qemu.override { x86Only = true; }); + + firmwareLinuxNonfree = callPackage ../os-specific/linux/firmware/firmware-linux-nonfree { }; + + radeontools = callPackage ../os-specific/linux/radeontools { }; + + raspberrypifw = callPackage ../os-specific/linux/firmware/raspberrypi {}; + + regionset = callPackage ../os-specific/linux/regionset { }; + + rfkill = callPackage ../os-specific/linux/rfkill { }; + + rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { }; + + rtkit = callPackage ../os-specific/linux/rtkit { }; + + sdparm = callPackage ../os-specific/linux/sdparm { }; + + sepolgen = callPackage ../os-specific/linux/sepolgen { }; + + setools = callPackage ../os-specific/linux/setools { }; + + shadow = callPackage ../os-specific/linux/shadow { }; + + statifier = builderDefsPackage (import ../os-specific/linux/statifier) { }; + + sysdig = callPackage ../os-specific/linux/sysdig { + kernel = null; + }; # pkgs.sysdig is a client, for a driver look at linuxPackagesFor + + sysfsutils = callPackage ../os-specific/linux/sysfsutils { }; + + sysprof = callPackage ../development/tools/profiling/sysprof { + inherit (gnome) libglade; + }; + + # Provided with sysfsutils. + libsysfs = sysfsutils; + systool = sysfsutils; + + sysklogd = callPackage ../os-specific/linux/sysklogd { }; + + syslinux = callPackage ../os-specific/linux/syslinux { }; + + sysstat = callPackage ../os-specific/linux/sysstat { }; + + systemd = callPackage ../os-specific/linux/systemd { + linuxHeaders = linuxHeaders_3_14; + }; + + systemtap = callPackage ../development/tools/profiling/systemtap { + inherit (gnome) libglademm; + }; + + # In nixos, you can set systemd.package = pkgs.systemd_with_lvm2 to get + # LVM2 working in systemd. + systemd_with_lvm2 = pkgs.lib.overrideDerivation pkgs.systemd (p: { + name = p.name + "-with-lvm2"; + postInstall = p.postInstall + '' + cp "${pkgs.lvm2}/lib/systemd/system-generators/"* $out/lib/systemd/system-generators + ''; + }); + + sysvinit = callPackage ../os-specific/linux/sysvinit { }; + + sysvtools = callPackage ../os-specific/linux/sysvinit { + withoutInitTools = true; + }; + + # FIXME: `tcp-wrapper' is actually not OS-specific. + tcp_wrappers = callPackage ../os-specific/linux/tcp-wrappers { }; + + trackballs = callPackage ../games/trackballs { + debug = false; + guile = guile_1_8; + }; + + tunctl = callPackage ../os-specific/linux/tunctl { }; + + ubootChooser = name : if name == "upstream" then ubootUpstream + else if name == "sheevaplug" then ubootSheevaplug + else if name == "guruplug" then ubootGuruplug + else if name == "nanonote" then ubootNanonote + else throw "Unknown uboot"; + + ubootUpstream = callPackage ../misc/uboot { }; + + ubootSheevaplug = callPackage ../misc/uboot/sheevaplug.nix { }; + + ubootNanonote = callPackage ../misc/uboot/nanonote.nix { }; + + ubootGuruplug = callPackage ../misc/uboot/guruplug.nix { }; + + uclibc = callPackage ../os-specific/linux/uclibc { }; + + uclibcCross = lowPrio (callPackage ../os-specific/linux/uclibc { + inherit fetchurl stdenv libiconv; + linuxHeaders = linuxHeadersCross; + gccCross = gccCrossStageStatic; + cross = assert crossSystem != null; crossSystem; + }); + + udev145 = callPackage ../os-specific/linux/udev/145.nix { }; + udev = pkgs.systemd; + + udisks1 = callPackage ../os-specific/linux/udisks/1-default.nix { }; + udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { }; + udisks = udisks1; + + udisks_glue = callPackage ../os-specific/linux/udisks-glue { }; + + untie = callPackage ../os-specific/linux/untie { }; + + upower = callPackage ../os-specific/linux/upower { }; + + upower_99 = callPackage ../os-specific/linux/upower/0.99.nix { }; + + upstart = callPackage ../os-specific/linux/upstart { }; + + usbutils = callPackage ../os-specific/linux/usbutils { }; + + usermount = callPackage ../os-specific/linux/usermount { }; + + utillinux = lowPrio (callPackage ../os-specific/linux/util-linux { + ncurses = null; + perl = null; + }); + + utillinuxCurses = utillinux.override { + inherit ncurses perl; + }; + + v4l_utils = callPackage ../os-specific/linux/v4l-utils { + withQt4 = true; + }; + + windows = rec { + cygwinSetup = callPackage ../os-specific/windows/cygwin-setup { }; + + jom = callPackage ../os-specific/windows/jom { }; + + w32api = callPackage ../os-specific/windows/w32api { + gccCross = gccCrossStageStatic; + binutilsCross = binutilsCross; + }; + + w32api_headers = w32api.override { + onlyHeaders = true; + }; + + mingw_runtime = callPackage ../os-specific/windows/mingwrt { + gccCross = gccCrossMingw2; + binutilsCross = binutilsCross; + }; + + mingw_runtime_headers = mingw_runtime.override { + onlyHeaders = true; + }; + + mingw_headers1 = buildEnv { + name = "mingw-headers-1"; + paths = [ w32api_headers mingw_runtime_headers ]; + }; + + mingw_headers2 = buildEnv { + name = "mingw-headers-2"; + paths = [ w32api mingw_runtime_headers ]; + }; + + mingw_headers3 = buildEnv { + name = "mingw-headers-3"; + paths = [ w32api mingw_runtime ]; + }; + + mingw_w64 = callPackage ../os-specific/windows/mingw-w64 { + gccCross = gccCrossStageStatic; + binutilsCross = binutilsCross; + }; + + mingw_w64_headers = callPackage ../os-specific/windows/mingw-w64 { + onlyHeaders = true; + }; + + mingw_w64_pthreads = callPackage ../os-specific/windows/mingw-w64 { + onlyPthreads = true; + }; + + pthreads = callPackage ../os-specific/windows/pthread-w32 { + mingw_headers = mingw_headers3; + }; + + wxMSW = callPackage ../os-specific/windows/wxMSW-2.8 { }; + }; + + wesnoth = callPackage ../games/wesnoth { + lua = lua5; + }; + + wirelesstools = callPackage ../os-specific/linux/wireless-tools { }; + + wpa_supplicant = callPackage ../os-specific/linux/wpa_supplicant { }; + + wpa_supplicant_gui = callPackage ../os-specific/linux/wpa_supplicant/gui.nix { }; + + xf86_input_mtrack = callPackage ../os-specific/linux/xf86-input-mtrack { + inherit (xorg) utilmacros xproto inputproto xorgserver; + }; + + xf86_input_multitouch = + callPackage ../os-specific/linux/xf86-input-multitouch { }; + + xf86_input_wacom = callPackage ../os-specific/linux/xf86-input-wacom { }; + + xf86_video_nested = callPackage ../os-specific/linux/xf86-video-nested { + inherit (xorg) fontsproto renderproto utilmacros xorgserver; + }; + + xf86_video_nouveau = xorg.xf86videonouveau; + + xmoto = builderDefsPackage (import ../games/xmoto) { + inherit chipmunk sqlite curl zlib bzip2 libjpeg libpng + freeglut mesa SDL SDL_mixer SDL_image SDL_net SDL_ttf + lua5 ode libxdg_basedir libxml2; + }; + + xorg_sys_opengl = callPackage ../os-specific/linux/opengl/xorg-sys { }; + + zd1211fw = callPackage ../os-specific/linux/firmware/zd1211 { }; + + + ### DATA + + andagii = callPackage ../data/fonts/andagii {}; + + anonymousPro = callPackage ../data/fonts/anonymous-pro {}; + + arkpandora_ttf = builderDefsPackage (import ../data/fonts/arkpandora) { }; + + aurulent-sans = callPackage ../data/fonts/aurulent-sans { }; + + bakoma_ttf = callPackage ../data/fonts/bakoma-ttf { }; + + cacert = callPackage ../data/misc/cacert { }; + + cantarell_fonts = callPackage ../data/fonts/cantarell-fonts { }; + + comic-neue = callPackage ../data/fonts/comic-neue { }; + + corefonts = callPackage ../data/fonts/corefonts { }; + + wrapFonts = paths : ((import ../data/fonts/fontWrap) { + inherit fetchurl stdenv builderDefs paths; + inherit (xorg) mkfontdir mkfontscale; + }); + + clearlyU = callPackage ../data/fonts/clearlyU { }; + + cm_unicode = callPackage ../data/fonts/cm-unicode {}; + + dejavu_fonts = callPackage ../data/fonts/dejavu-fonts { + inherit (perlPackages) FontTTF; + }; + + docbook5 = callPackage ../data/sgml+xml/schemas/docbook-5.0 { }; + + docbook_sgml_dtd_31 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix { }; + + docbook_sgml_dtd_41 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix { }; + + docbook_xml_dtd_412 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix { }; + + docbook_xml_dtd_42 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix { }; + + docbook_xml_dtd_43 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix { }; + + docbook_xml_dtd_45 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix { }; + + docbook_xml_ebnf_dtd = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook-ebnf { }; + + docbook_xml_xslt = docbook_xsl; + + docbook_xsl = callPackage ../data/sgml+xml/stylesheets/xslt/docbook-xsl { }; + + docbook5_xsl = docbook_xsl_ns; + + docbook_xsl_ns = callPackage ../data/sgml+xml/stylesheets/xslt/docbook-xsl-ns { }; + + dosemu_fonts = callPackage ../data/fonts/dosemu-fonts { }; + + eb-garamond = callPackage ../data/fonts/eb-garamond { }; + + fira = callPackage ../data/fonts/fira { }; + + freefont_ttf = callPackage ../data/fonts/freefont-ttf { }; + + freepats = callPackage ../data/misc/freepats { }; + + gentium = callPackage ../data/fonts/gentium {}; + + gnome_user_docs = callPackage ../data/documentation/gnome-user-docs { }; + + inherit (gnome3) gsettings_desktop_schemas; + + hicolor_icon_theme = callPackage ../data/icons/hicolor-icon-theme { }; + + inconsolata = callPackage ../data/fonts/inconsolata {}; + + ipafont = callPackage ../data/fonts/ipafont {}; + + junicode = callPackage ../data/fonts/junicode { }; + + kochi-substitute = callPackage ../data/fonts/kochi-substitute {}; + + kochi-substitute-naga10 = callPackage ../data/fonts/kochi-substitute-naga10 {}; + + liberation_ttf = callPackage ../data/fonts/redhat-liberation-fonts { }; + + libertine = builderDefsPackage (import ../data/fonts/libertine) { + inherit fetchurl fontforge lib; + }; + + lmmath = callPackage ../data/fonts/lmodern/lmmath.nix {}; + + lmodern = callPackage ../data/fonts/lmodern { }; + + lohit-fonts = callPackage ../data/fonts/lohit-fonts { }; + + manpages = callPackage ../data/documentation/man-pages { }; + + miscfiles = callPackage ../data/misc/miscfiles { }; + + mobile_broadband_provider_info = callPackage ../data/misc/mobile-broadband-provider-info { }; + + mph_2b_damase = callPackage ../data/fonts/mph-2b-damase { }; + + nafees = callPackage ../data/fonts/nafees { }; + + oldstandard = callPackage ../data/fonts/oldstandard { }; + + opensans-ttf = callPackage ../data/fonts/opensans-ttf { }; + + poly = callPackage ../data/fonts/poly { }; + + posix_man_pages = callPackage ../data/documentation/man-pages-posix { }; + + pthreadmanpages = callPackage ../data/documentation/pthread-man-pages { }; + + shared_mime_info = callPackage ../data/misc/shared-mime-info { }; + + shared_desktop_ontologies = callPackage ../data/misc/shared-desktop-ontologies { }; + + stdmanpages = callPackage ../data/documentation/std-man-pages { }; + + symbola = callPackage ../data/fonts/symbola { }; + + iana_etc = callPackage ../data/misc/iana-etc { }; + + poppler_data = callPackage ../data/misc/poppler-data { }; + + r3rs = callPackage ../data/documentation/rnrs/r3rs.nix { }; + + r4rs = callPackage ../data/documentation/rnrs/r4rs.nix { }; + + r5rs = callPackage ../data/documentation/rnrs/r5rs.nix { }; + + source-code-pro = callPackage ../data/fonts/source-code-pro {}; + + source-sans-pro = callPackage ../data/fonts/source-sans-pro { }; + + source-serif-pro = callPackage ../data/fonts/source-serif-pro { }; + + source-han-sans-japanese = callPackage ../data/fonts/source-han-sans/japanese.nix {}; + source-han-sans-korean = callPackage ../data/fonts/source-han-sans/korean.nix {}; + source-han-sans-simplified-chinese = callPackage ../data/fonts/source-han-sans/simplified-chinese.nix {}; + source-han-sans-traditional-chinese = callPackage ../data/fonts/source-han-sans/traditional-chinese.nix {}; + + tango-icon-theme = callPackage ../data/icons/tango-icon-theme { }; + + themes = name: import (../data/misc/themes + ("/" + name + ".nix")) { + inherit fetchurl; + }; + + theano = callPackage ../data/fonts/theano { }; + + tempora_lgc = callPackage ../data/fonts/tempora-lgc { }; + + terminus_font = callPackage ../data/fonts/terminus-font { }; + + tipa = callPackage ../data/fonts/tipa { }; + + ttf_bitstream_vera = callPackage ../data/fonts/ttf-bitstream-vera { }; + + tzdata = callPackage ../data/misc/tzdata { }; + + ubuntu_font_family = callPackage ../data/fonts/ubuntu-font-family { }; + + ucsFonts = callPackage ../data/fonts/ucs-fonts { }; + + unifont = callPackage ../data/fonts/unifont { }; + + vistafonts = callPackage ../data/fonts/vista-fonts { }; + + wqy_microhei = callPackage ../data/fonts/wqy-microhei { }; + + wqy_zenhei = callPackage ../data/fonts/wqy-zenhei { }; + + xhtml1 = callPackage ../data/sgml+xml/schemas/xml-dtd/xhtml1 { }; + + xkeyboard_config = xorg.xkeyboardconfig; + + + ### APPLICATIONS + + a2jmidid = callPackage ../applications/audio/a2jmidid { }; + + aangifte2006 = callPackage_i686 ../applications/taxes/aangifte-2006 { }; + + aangifte2007 = callPackage_i686 ../applications/taxes/aangifte-2007 { }; + + aangifte2008 = callPackage_i686 ../applications/taxes/aangifte-2008 { }; + + aangifte2009 = callPackage_i686 ../applications/taxes/aangifte-2009 { }; + + aangifte2010 = callPackage_i686 ../applications/taxes/aangifte-2010 { }; + + aangifte2011 = callPackage_i686 ../applications/taxes/aangifte-2011 { }; + + aangifte2012 = callPackage_i686 ../applications/taxes/aangifte-2012 { }; + + aangifte2013 = callPackage_i686 ../applications/taxes/aangifte-2013 { }; + + abcde = callPackage ../applications/audio/abcde { + inherit (perlPackages) DigestSHA MusicBrainz MusicBrainzDiscID; + libcdio = libcdio082; + }; + + abiword = callPackage ../applications/office/abiword { + inherit (gnome) libglade libgnomecanvas; + }; + + abook = callPackage ../applications/misc/abook { }; + + adobe-reader = callPackage_i686 ../applications/misc/adobe-reader { }; + + aewan = callPackage ../applications/editors/aewan { }; + + alchemy = callPackage ../applications/graphics/alchemy { }; + + ams-lv2 = callPackage ../applications/audio/ams-lv2 { }; + + amsn = callPackage ../applications/networking/instant-messengers/amsn { }; + + antiword = callPackage ../applications/office/antiword {}; + + ardour = ardour3; + + ardour3 = lowPrio (callPackage ../applications/audio/ardour { + inherit (gnome) libgnomecanvas libgnomecanvasmm; + }); + + arora = callPackage ../applications/networking/browsers/arora { }; + + atom = callPackage ../applications/editors/atom { + gconf = gnome.GConf; + }; + + aseprite = callPackage ../applications/editors/aseprite { + giflib = giflib_4_1; + }; + + audacious = callPackage ../applications/audio/audacious { }; + + audacity = callPackage ../applications/audio/audacity { + ffmpeg = ffmpeg_0_10; + }; + + milkytracker = callPackage ../applications/audio/milkytracker { }; + + aumix = callPackage ../applications/audio/aumix { + gtkGUI = false; + }; + + autopanosiftc = callPackage ../applications/graphics/autopanosiftc { }; + + avidemux = callPackage ../applications/video/avidemux { }; + + avogadro = callPackage ../applications/science/chemistry/avogadro { + eigen = eigen2; + }; + + avrdudess = callPackage ../applications/misc/avrdudess { }; + + avxsynth = callPackage ../applications/video/avxsynth { }; + + awesome-3-4 = callPackage ../applications/window-managers/awesome/3.4.nix { + lua = lua5; + cairo = cairo.override { xcbSupport = true; }; + }; + awesome-3-5 = callPackage ../applications/window-managers/awesome { + lua = lua5_1; + cairo = cairo.override { xcbSupport = true; }; + }; + awesome = awesome-3-5; + + inherit (gnome3) baobab; + + backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { }; + + backintime-gnome = callPackage ../applications/networking/sync/backintime/gnome.nix { }; + + backintime = backintime-gnome; + + bar = callPackage ../applications/window-managers/bar { }; + + baresip = callPackage ../applications/networking/instant-messengers/baresip { + ffmpeg = ffmpeg_1; + }; + + batik = callPackage ../applications/graphics/batik { }; + + bazaar = callPackage ../applications/version-management/bazaar { }; + + bazaarTools = builderDefsPackage (import ../applications/version-management/bazaar/tools.nix) { + inherit bazaar; + }; + + beast = callPackage ../applications/audio/beast { + inherit (gnome) libgnomecanvas libart_lgpl; + guile = guile_1_8; + }; + + bibletime = callPackage ../applications/misc/bibletime { }; + + bitcoin = callPackage ../applications/misc/bitcoin {}; + bitcoind = callPackage ../applications/misc/bitcoin { gui = false; }; + + altcoins = recurseIntoAttrs ( + callPackage ../applications/misc/bitcoin/altcoins.nix {} + ); + + bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { + gnutls = gnutls; + libotr = libotr_3_2; + }; + + blender = callPackage ../applications/misc/blender { + python = python34; + }; + + bristol = callPackage ../applications/audio/bristol { }; + + bspwm = callPackage ../applications/window-managers/bspwm { }; + + bvi = callPackage ../applications/editors/bvi { }; + + calf = callPackage ../applications/audio/calf { + inherit (gnome) libglade; + }; + + calibre = callPackage ../applications/misc/calibre { + inherit (pythonPackages) pyqt5 sip_4_16; + }; + + camlistore = callPackage ../applications/misc/camlistore { }; + + carrier = builderDefsPackage (import ../applications/networking/instant-messengers/carrier/2.5.0.nix) { + inherit fetchurl stdenv pkgconfig perl perlXMLParser libxml2 openssl nss + gtkspell aspell gettext ncurses avahi dbus dbus_glib python + libtool automake autoconf gstreamer; + inherit gtk glib; + inherit (gnome) startupnotification GConf ; + inherit (xlibs) libXScrnSaver scrnsaverproto libX11 xproto kbproto; + }; + funpidgin = carrier; + + cc1394 = callPackage ../applications/video/cc1394 { }; + + cddiscid = callPackage ../applications/audio/cd-discid { }; + + cdparanoia = cdparanoiaIII; + + cdparanoiaIII = callPackage ../applications/audio/cdparanoia { }; + + cdrtools = callPackage ../applications/misc/cdrtools { }; + + centerim = callPackage ../applications/networking/instant-messengers/centerim { }; + + cgit = callPackage ../applications/version-management/git-and-tools/cgit { }; + + cgminer = callPackage ../applications/misc/cgminer { + amdappsdk = amdappsdk28; + }; + + chatzilla = callPackage ../applications/networking/irc/chatzilla { }; + + chromium = callPackage ../applications/networking/browsers/chromium { + channel = "stable"; + pulseSupport = config.pulseaudio or true; + enablePepperFlash = config.chromium.enablePepperFlash or false; + enablePepperPDF = config.chromium.enablePepperPDF or false; + }; + + chromiumBeta = lowPrio (chromium.override { channel = "beta"; }); + + chromiumDev = lowPrio (chromium.override { channel = "dev"; }); + + cinelerra = callPackage ../applications/video/cinelerra { }; + + clipit = callPackage ../applications/misc/clipit { }; + + cmus = callPackage ../applications/audio/cmus { }; + + compiz = callPackage ../applications/window-managers/compiz { + inherit (gnome) GConf ORBit2 metacity; + boost = boost149; # https://bugs.launchpad.net/compiz/+bug/1131864 + }; + + coriander = callPackage ../applications/video/coriander { + inherit (gnome) libgnomeui GConf; + }; + + csound = callPackage ../applications/audio/csound { }; + + cinepaint = callPackage ../applications/graphics/cinepaint { + fltk = fltk13; + libpng = libpng12; + }; + + codeblocks = callPackage ../applications/editors/codeblocks { }; + codeblocksFull = callPackage ../applications/editors/codeblocks { contribPlugins = true; }; + + codeville = builderDefsPackage (import ../applications/version-management/codeville/0.8.0.nix) { + inherit makeWrapper; + python = pythonFull; + }; + + comical = callPackage ../applications/graphics/comical { }; + + conkeror = callPackage ../applications/networking/browsers/conkeror { }; + + conkerorWrapper = wrapFirefox { + browser = conkeror; + browserName = "conkeror"; + desktopName = "Conkeror"; + }; + + cuneiform = builderDefsPackage (import ../tools/graphics/cuneiform) { + inherit cmake patchelf; + imagemagick = imagemagick; + }; + + cvs = callPackage ../applications/version-management/cvs { }; + + cvsps = callPackage ../applications/version-management/cvsps { }; + + cvs2svn = callPackage ../applications/version-management/cvs2svn { }; + + d4x = callPackage ../applications/misc/d4x { }; + + darcs = with haskellPackages_ghc783; callPackage ../applications/version-management/darcs { + cabal = cabal.override { + extension = self : super : { + isLibrary = false; + configureFlags = "-f-library " + super.configureFlags or ""; + }; + }; + }; + + darktable = callPackage ../applications/graphics/darktable { + inherit (gnome) GConf libglade; + }; + + dd-agent = callPackage ../tools/networking/dd-agent { inherit (pythonPackages) tornado; }; + + dia = callPackage ../applications/graphics/dia { + inherit (pkgs.gnome) libart_lgpl libgnomeui; + }; + + diffuse = callPackage ../applications/version-management/diffuse { }; + + distrho = callPackage ../applications/audio/distrho {}; + + djvulibre = callPackage ../applications/misc/djvulibre { }; + + djvu2pdf = callPackage ../tools/typesetting/djvu2pdf { }; + + djview = callPackage ../applications/graphics/djview { }; + djview4 = pkgs.djview; + + dmenu = callPackage ../applications/misc/dmenu { + enableXft = config.dmenu.enableXft or false; + }; + + dmtx = builderDefsPackage (import ../tools/graphics/dmtx) { + inherit libpng libtiff libjpeg imagemagick librsvg + pkgconfig bzip2 zlib libtool freetype fontconfig + ghostscript jasper xz; + inherit (xlibs) libX11; + }; + + docker = callPackage ../applications/virtualization/docker { }; + + doodle = callPackage ../applications/search/doodle { }; + + dunst = callPackage ../applications/misc/dunst { }; + + dvb_apps = callPackage ../applications/video/dvb-apps { }; + + dvdauthor = callPackage ../applications/video/dvdauthor { }; + + dwb = callPackage ../applications/networking/browsers/dwb { dconf = gnome3.dconf; }; + + dwbWrapper = wrapFirefox + { browser = dwb; browserName = "dwb"; desktopName = "dwb"; + }; + + dwm = callPackage ../applications/window-managers/dwm { + patches = config.dwm.patches or []; + }; + + dzen2 = callPackage ../applications/window-managers/dzen2 { }; + + eaglemode = callPackage ../applications/misc/eaglemode { }; + + eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { }); + + ed = callPackage ../applications/editors/ed { }; + + ekho = callPackage ../applications/audio/ekho { }; + + electrum = callPackage ../applications/misc/electrum { }; + + elinks = callPackage ../applications/networking/browsers/elinks { }; + + elvis = callPackage ../applications/editors/elvis { }; + + emacs = emacs24; + + emacs24 = callPackage ../applications/editors/emacs-24 { + # use override to enable additional features + libXaw = xlibs.libXaw; + Xaw3d = null; + gconf = null; + librsvg = null; + alsaLib = null; + imagemagick = null; + }; + + emacs24-nox = lowPrio (appendToName "nox" (emacs24.override { + withX = false; + })); + + emacs24Macport = lowPrio (callPackage ../applications/editors/emacs-24/macport.nix { + stdenv = pkgs.clangStdenv; + }); + + emacsPackages = emacs: self: let callPackage = newScope self; in rec { + inherit emacs; + + autoComplete = callPackage ../applications/editors/emacs-modes/auto-complete { }; + + bbdb = callPackage ../applications/editors/emacs-modes/bbdb { }; + + bbdb3 = callPackage ../applications/editors/emacs-modes/bbdb/3.nix {}; + + cedet = callPackage ../applications/editors/emacs-modes/cedet { }; + + calfw = callPackage ../applications/editors/emacs-modes/calfw { }; + + coffee = callPackage ../applications/editors/emacs-modes/coffee { }; + + colorTheme = callPackage ../applications/editors/emacs-modes/color-theme { }; + + colorThemeSolarized = callPackage ../applications/editors/emacs-modes/color-theme-solarized { }; + + cryptol = callPackage ../applications/editors/emacs-modes/cryptol { }; + + cua = callPackage ../applications/editors/emacs-modes/cua { }; + + darcsum = callPackage ../applications/editors/emacs-modes/darcsum { }; + + # ecb = callPackage ../applications/editors/emacs-modes/ecb { }; + + jabber = callPackage ../applications/editors/emacs-modes/jabber { }; + + emacsClangCompleteAsync = callPackage ../applications/editors/emacs-modes/emacs-clang-complete-async { }; + + emacsSessionManagement = callPackage ../applications/editors/emacs-modes/session-management-for-emacs { }; + + emacsw3m = callPackage ../applications/editors/emacs-modes/emacs-w3m { }; + + emms = callPackage ../applications/editors/emacs-modes/emms { }; + + ess = callPackage ../applications/editors/emacs-modes/ess { }; + + flymakeCursor = callPackage ../applications/editors/emacs-modes/flymake-cursor { }; + + gh = callPackage ../applications/editors/emacs-modes/gh { }; + + graphvizDot = callPackage ../applications/editors/emacs-modes/graphviz-dot { }; + + gist = callPackage ../applications/editors/emacs-modes/gist { }; + + idris = callPackage ../applications/editors/emacs-modes/idris { }; + + jade = callPackage ../applications/editors/emacs-modes/jade { }; + + jdee = callPackage ../applications/editors/emacs-modes/jdee { + # Requires Emacs 23, for `avl-tree'. + }; + + js2 = callPackage ../applications/editors/emacs-modes/js2 { }; + + stratego = callPackage ../applications/editors/emacs-modes/stratego { }; + + haskellMode = callPackage ../applications/editors/emacs-modes/haskell { }; + + ocamlMode = callPackage ../applications/editors/emacs-modes/ocaml { }; + + structuredHaskellMode = callPackage ../applications/editors/emacs-modes/structured-haskell-mode { + inherit (haskellPackages) cabal haskellSrcExts; + }; + + tuaregMode = callPackage ../applications/editors/emacs-modes/tuareg { }; + + hol_light_mode = callPackage ../applications/editors/emacs-modes/hol_light { }; + + htmlize = callPackage ../applications/editors/emacs-modes/htmlize { }; + + logito = callPackage ../applications/editors/emacs-modes/logito { }; + + loremIpsum = callPackage ../applications/editors/emacs-modes/lorem-ipsum { }; + + magit = callPackage ../applications/editors/emacs-modes/magit { }; + + maudeMode = callPackage ../applications/editors/emacs-modes/maude { }; + + metaweblog = callPackage ../applications/editors/emacs-modes/metaweblog { }; + + notmuch = lowPrio (callPackage ../applications/networking/mailreaders/notmuch { }); + + offlineimap = callPackage ../applications/editors/emacs-modes/offlineimap {}; + + # This is usually a newer version of Org-Mode than that found in GNU Emacs, so + # we want it to have higher precedence. + org = hiPrio (callPackage ../applications/editors/emacs-modes/org { }); + + org2blog = callPackage ../applications/editors/emacs-modes/org2blog { }; + + pcache = callPackage ../applications/editors/emacs-modes/pcache { }; + + phpMode = callPackage ../applications/editors/emacs-modes/php { }; + + prologMode = callPackage ../applications/editors/emacs-modes/prolog { }; + + proofgeneral_4_2 = callPackage ../applications/editors/emacs-modes/proofgeneral/4.2.nix { + texinfo = texinfo4 ; + texLive = pkgs.texLiveAggregationFun { + paths = [ pkgs.texLive pkgs.texLiveCMSuper ]; + }; + }; + proofgeneral_4_3_pre = callPackage ../applications/editors/emacs-modes/proofgeneral/4.3pre.nix { + texinfo = texinfo4 ; + texLive = pkgs.texLiveAggregationFun { + paths = [ pkgs.texLive pkgs.texLiveCMSuper ]; + }; + }; + proofgeneral = self.proofgeneral_4_2; + + quack = callPackage ../applications/editors/emacs-modes/quack { }; + + rectMark = callPackage ../applications/editors/emacs-modes/rect-mark { }; + + remember = callPackage ../applications/editors/emacs-modes/remember { }; + + rudel = callPackage ../applications/editors/emacs-modes/rudel { }; + + sbtMode = callPackage ../applications/editors/emacs-modes/sbt-mode { }; + + scalaMode1 = callPackage ../applications/editors/emacs-modes/scala-mode/v1.nix { }; + scalaMode2 = callPackage ../applications/editors/emacs-modes/scala-mode/v2.nix { }; + + sunriseCommander = callPackage ../applications/editors/emacs-modes/sunrise-commander { }; + + writeGood = callPackage ../applications/editors/emacs-modes/writegood { }; + + xmlRpc = callPackage ../applications/editors/emacs-modes/xml-rpc { }; + }; + + emacs24Packages = recurseIntoAttrs (emacsPackages emacs24 pkgs.emacs24Packages); + + inherit (gnome3) empathy; + + epdfview = callPackage ../applications/misc/epdfview { }; + + inherit (gnome3) epiphany; + + espeak = callPackage ../applications/audio/espeak { }; + + espeakedit = callPackage ../applications/audio/espeak/edit.nix { }; + + esniper = callPackage ../applications/networking/esniper { }; + + etherape = callPackage ../applications/networking/sniffers/etherape { + inherit (gnome) gnomedocutils libgnome libglade libgnomeui scrollkeeper; + }; + + evilvte = callPackage ../applications/misc/evilvte { + configH = config.evilvte.config or ""; + }; + + evopedia = callPackage ../applications/misc/evopedia { }; + + keepassx = callPackage ../applications/misc/keepassx { }; + keepassx2 = callPackage ../applications/misc/keepassx/2.0.nix { }; + + inherit (gnome3) evince; + evolution_data_server = gnome3.evolution_data_server; + + keepass = callPackage ../applications/misc/keepass { }; + + exrdisplay = callPackage ../applications/graphics/exrdisplay { + fltk = fltk20; + }; + + fbpanel = callPackage ../applications/window-managers/fbpanel { }; + + fbreader = callPackage ../applications/misc/fbreader { }; + + fetchmail = import ../applications/misc/fetchmail { + inherit stdenv fetchurl openssl; + }; + + fldigi = callPackage ../applications/audio/fldigi { }; + + fluidsynth = callPackage ../applications/audio/fluidsynth { }; + + fossil = callPackage ../applications/version-management/fossil { }; + + fribid = callPackage ../applications/networking/browsers/mozilla-plugins/fribid { }; + + fvwm = callPackage ../applications/window-managers/fvwm { }; + + geany = callPackage ../applications/editors/geany { }; + + gksu = callPackage ../applications/misc/gksu { }; + + gnuradio = callPackage ../applications/misc/gnuradio { + inherit (pythonPackages) lxml numpy scipy matplotlib pyopengl; + fftw = fftwFloat; + }; + + gnuradio-osmosdr = callPackage ../applications/misc/gnuradio-osmosdr { }; + + goldendict = callPackage ../applications/misc/goldendict { }; + + google-musicmanager = callPackage ../applications/audio/google-musicmanager { }; + + gpicview = callPackage ../applications/graphics/gpicview { }; + + gqrx = callPackage ../applications/misc/gqrx { }; + + grass = import ../applications/misc/grass { + inherit (xlibs) libXmu libXext libXp libX11 libXt libSM libICE libXpm + libXaw libXrender; + inherit config composableDerivation stdenv fetchurl + lib flex bison cairo fontconfig + gdal zlib ncurses gdbm proj pkgconfig swig + blas liblapack libjpeg libpng mysql unixODBC mesa postgresql python + readline sqlite tcl tk libtiff freetype makeWrapper wxGTK; + fftw = fftwSinglePrec; + ffmpeg = ffmpeg_0_10; + motif = lesstif; + opendwg = libdwg; + wxPython = wxPython28; + }; + + grip = callPackage ../applications/misc/grip { + inherit (gnome) libgnome libgnomeui vte; + }; + + gtimelog = pythonPackages.gtimelog; + + inherit (gnome3) gucharmap; + + guitarix = callPackage ../applications/audio/guitarix { + fftw = fftwSinglePrec; + }; + + photivo = callPackage ../applications/graphics/photivo { }; + + wavesurfer = callPackage ../applications/misc/audio/wavesurfer { }; + + wireshark = callPackage ../applications/networking/sniffers/wireshark { }; + + wvdial = callPackage ../os-specific/linux/wvdial { }; + + fbida = callPackage ../applications/graphics/fbida { }; + + fdupes = callPackage ../tools/misc/fdupes { }; + + feh = callPackage ../applications/graphics/feh { }; + + filezilla = callPackage ../applications/networking/ftp/filezilla { }; + + firefox13Pkgs = callPackage ../applications/networking/browsers/firefox/13.0.nix { + inherit (gnome) libIDL; + }; + + firefox13Wrapper = wrapFirefox { browser = firefox13Pkgs.firefox; }; + + firefox30Pkgs = callPackage ../applications/networking/browsers/firefox/30.nix { + inherit (gnome) libIDL; + inherit (pythonPackages) pysqlite; + libpng = libpng_apng; + }; + + firefox = callPackage ../applications/networking/browsers/firefox { + inherit (gnome) libIDL; + inherit (pythonPackages) pysqlite; + }; + + firefoxWrapper = wrapFirefox { browser = pkgs.firefox; }; + + firefox-bin = callPackage ../applications/networking/browsers/firefox-bin { + gconf = pkgs.gnome.GConf; + inherit (pkgs.gnome) libgnome libgnomeui; + inherit (pkgs.xlibs) libX11 libXScrnSaver libXext + libXinerama libXrender libXt; + }; + + flac = callPackage ../applications/audio/flac { }; + + flashplayer = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-11 { + debug = config.flashplayer.debug or false; + }; + + fluxbox = callPackage ../applications/window-managers/fluxbox { }; + + freecad = callPackage ../applications/graphics/freecad { + opencascade = opencascade_6_5; + inherit (pythonPackages) matplotlib pycollada; + }; + + freemind = callPackage ../applications/misc/freemind { + jdk = jdk; + jre = jdk; + }; + + freenet = callPackage ../applications/networking/p2p/freenet { }; + + freepv = callPackage ../applications/graphics/freepv { }; + + xfontsel = callPackage ../applications/misc/xfontsel { }; + xlsfonts = callPackage ../applications/misc/xlsfonts { }; + + freerdp = callPackage ../applications/networking/remote/freerdp { + ffmpeg = ffmpeg_1; + }; + + freerdpUnstable = callPackage ../applications/networking/remote/freerdp/unstable.nix { }; + + freicoin = callPackage ../applications/misc/freicoin { }; + + fspot = callPackage ../applications/graphics/f-spot { + inherit (gnome) libgnome libgnomeui; + gtksharp = gtksharp1; + }; + + fuze = callPackage ../applications/networking/instant-messengers/fuze {}; + + gcolor2 = callPackage ../applications/graphics/gcolor2 { }; + + get_iplayer = callPackage ../applications/misc/get_iplayer {}; + + gimp_2_8 = callPackage ../applications/graphics/gimp/2.8.nix { + inherit (gnome) libart_lgpl; + webkit = null; + lcms = lcms2; + wrapPython = pythonPackages.wrapPython; + }; + + gimp = gimp_2_8; + + gimpPlugins = recurseIntoAttrs (import ../applications/graphics/gimp/plugins { + inherit pkgs gimp; + }); + + gitAndTools = recurseIntoAttrs (import ../applications/version-management/git-and-tools { + inherit pkgs; + }); + git = gitAndTools.git; + gitFull = gitAndTools.gitFull; + gitSVN = gitAndTools.gitSVN; + + gitRepo = callPackage ../applications/version-management/git-repo { + python = python27; + }; + + gitolite = callPackage ../applications/version-management/gitolite { }; + + inherit (gnome3) gitg; + + giv = callPackage ../applications/graphics/giv { + pcre = pcre.override { unicodeSupport = true; }; + }; + + gmrun = callPackage ../applications/misc/gmrun {}; + + gnucash = callPackage ../applications/office/gnucash { + inherit (gnome2) libgnomeui libgtkhtml gtkhtml libbonoboui libgnomeprint libglade libart_lgpl; + gconf = gnome2.GConf; + guile = guile_1_8; + slibGuile = slibGuile.override { scheme = guile_1_8; }; + goffice = goffice_0_8; + }; + + goffice_0_8 = callPackage ../desktops/gnome-3/3.10/misc/goffice/0.8.nix { + inherit (gnome2) libglade libgnomeui; + gconf = gnome2.GConf; + libart = gnome2.libart_lgpl; + }; # latest version: gnome3.goffice + + ideas = recurseIntoAttrs ( (callPackage ../applications/editors/idea { }) + // (callPackage ../applications/editors/idea/pycharm.nix { })); + + libquvi = callPackage ../applications/video/quvi/library.nix { }; + + mi2ly = callPackage ../applications/audio/mi2ly {}; + + praat = callPackage ../applications/audio/praat { }; + + quvi = callPackage ../applications/video/quvi/tool.nix { }; + + quvi_scripts = callPackage ../applications/video/quvi/scripts.nix { }; + + qjackctl = callPackage ../applications/audio/qjackctl { }; + + gkrellm = callPackage ../applications/misc/gkrellm { }; + + gmu = callPackage ../applications/audio/gmu { }; + + gnash = callPackage ../applications/video/gnash { + inherit (gnome) gtkglext; + }; + + gnome_mplayer = callPackage ../applications/video/gnome-mplayer { + inherit (gnome) GConf; + }; + + gnumeric = callPackage ../applications/office/gnumeric { + inherit (gnome3) goffice gnome_icon_theme; + }; + + gnunet = callPackage ../applications/networking/p2p/gnunet { + libgcrypt = libgcrypt_1_6; + }; + + gnunet_svn = lowPrio (callPackage ../applications/networking/p2p/gnunet/svn.nix { + libgcrypt = libgcrypt_1_6; + }); + + gocr = callPackage ../applications/graphics/gocr { }; + + gobby5 = callPackage ../applications/editors/gobby { + inherit (gnome) gtksourceview; + }; + + gphoto2 = callPackage ../applications/misc/gphoto2 { }; + + gphoto2fs = builderDefsPackage ../applications/misc/gphoto2/gphotofs.nix { + inherit libgphoto2 fuse pkgconfig glib libtool; + }; + + graphicsmagick = callPackage ../applications/graphics/graphicsmagick { }; + graphicsmagick_q16 = callPackage ../applications/graphics/graphicsmagick { quantumdepth = 16; }; + + graphicsmagick137 = callPackage ../applications/graphics/graphicsmagick/1.3.7.nix { + libpng = libpng12; + }; + + gtkpod = callPackage ../applications/audio/gtkpod { + inherit (gnome) libglade; + }; + + jbidwatcher = callPackage ../applications/misc/jbidwatcher { + java = if stdenv.isLinux then jre else jdk; + }; + + qrdecode = builderDefsPackage (import ../tools/graphics/qrdecode) { + libpng = libpng12; + opencv = opencv_2_1; + }; + + qrencode = callPackage ../tools/graphics/qrencode { }; + + gecko_mediaplayer = callPackage ../applications/networking/browsers/mozilla-plugins/gecko-mediaplayer { + inherit (gnome) GConf; + browser = firefox; + }; + + geeqie = callPackage ../applications/graphics/geeqie { }; + + gigedit = callPackage ../applications/audio/gigedit { }; + + gqview = callPackage ../applications/graphics/gqview { }; + + gmpc = callPackage ../applications/audio/gmpc { }; + + gmtk = callPackage ../applications/networking/browsers/mozilla-plugins/gmtk { + inherit (gnome) GConf; + }; + + googleearth = callPackage_i686 ../applications/misc/googleearth { }; + + google_talk_plugin = callPackage ../applications/networking/browsers/mozilla-plugins/google-talk-plugin { + libpng = libpng12; + }; + + gosmore = builderDefsPackage ../applications/misc/gosmore { + inherit fetchsvn curl pkgconfig libxml2 gtk; + }; + + gpsbabel = callPackage ../applications/misc/gpsbabel { }; + + gpscorrelate = callPackage ../applications/misc/gpscorrelate { }; + + gpsd = callPackage ../servers/gpsd { }; + + guitone = callPackage ../applications/version-management/guitone { + graphviz = graphviz_2_32; + }; + + gv = callPackage ../applications/misc/gv { }; + + guvcview = callPackage ../os-specific/linux/guvcview { }; + + hello = callPackage ../applications/misc/hello/ex-2 { }; + + herbstluftwm = callPackage ../applications/window-managers/herbstluftwm { }; + + hexchat = callPackage ../applications/networking/irc/hexchat { }; + + hexedit = callPackage ../applications/editors/hexedit { }; + + hipchat = callPackage ../applications/networking/instant-messengers/hipchat { }; + + homebank = callPackage ../applications/office/homebank { }; + + htmldoc = callPackage ../applications/misc/htmldoc { + fltk = fltk13; + }; + + hugin = callPackage ../applications/graphics/hugin { }; + + hydrogen = callPackage ../applications/audio/hydrogen { }; + + i3 = callPackage ../applications/window-managers/i3 { }; + + i3lock = callPackage ../applications/window-managers/i3/lock.nix { + inherit (xorg) libxkbfile; + cairo = cairo.override { xcbSupport = true; }; + }; + + i3minator = callPackage ../tools/misc/i3minator { }; + + i3status = callPackage ../applications/window-managers/i3/status.nix { }; + + i810switch = callPackage ../os-specific/linux/i810switch { }; + + icewm = callPackage ../applications/window-managers/icewm { }; + + id3v2 = callPackage ../applications/audio/id3v2 { }; + + ifenslave = callPackage ../os-specific/linux/ifenslave { }; + + ii = callPackage ../applications/networking/irc/ii { }; + + ike = callPackage ../applications/ike { }; + + ikiwiki = callPackage ../applications/misc/ikiwiki { + inherit (perlPackages) TextMarkdown URI HTMLParser HTMLScrubber + HTMLTemplate TimeDate CGISession DBFile CGIFormBuilder LocaleGettext + RpcXML XMLSimple PerlMagick YAML YAMLLibYAML HTMLTree Filechdir + AuthenPassphrase NetOpenIDConsumer LWPxParanoidAgent CryptSSLeay; + }; + + imagemagick = callPackage ../applications/graphics/ImageMagick { + tetex = null; + librsvg = null; + }; + + imagemagickBig = lowPrio (callPackage ../applications/graphics/ImageMagick { }); + + # Impressive, formerly known as "KeyJNote". + impressive = callPackage ../applications/office/impressive { + # XXX These are the PyOpenGL dependencies, which we need here. + inherit (pythonPackages) pyopengl; + }; + + inferno = callPackage_i686 ../applications/inferno { }; + + inkscape = callPackage ../applications/graphics/inkscape { + inherit (pythonPackages) lxml; + lcms = lcms2; + }; + + ion3 = callPackage ../applications/window-managers/ion-3 { + lua = lua5; + }; + + ipe = callPackage ../applications/graphics/ipe { }; + + iptraf = callPackage ../applications/networking/iptraf { }; + + irssi = callPackage ../applications/networking/irc/irssi { + # compile with gccApple on darwin to support the -no-cpp-precompile flag + stdenv = if stdenv.isDarwin + then stdenvAdapters.overrideGCC stdenv gccApple + else stdenv; + }; + + irssi_fish = callPackage ../applications/networking/irc/irssi/fish { }; + + irssi_otr = callPackage ../applications/networking/irc/irssi/otr { }; + + bip = callPackage ../applications/networking/irc/bip { }; + + jack_capture = callPackage ../applications/audio/jack-capture { }; + + jack_oscrolloscope = callPackage ../applications/audio/jack-oscrolloscope { }; + + jack_rack = callPackage ../applications/audio/jack-rack { }; + + jackmeter = callPackage ../applications/audio/jackmeter { }; + + jalv = callPackage ../applications/audio/jalv { }; + + jedit = callPackage ../applications/editors/jedit { }; + + jigdo = callPackage ../applications/misc/jigdo { }; + + jitsi = callPackage ../applications/networking/instant-messengers/jitsi { }; + + joe = callPackage ../applications/editors/joe { }; + + jbrout = callPackage ../applications/graphics/jbrout { + inherit (pythonPackages) lxml; + }; + + jwm = callPackage ../applications/window-managers/jwm { }; + + k3d = callPackage ../applications/graphics/k3d { + inherit (pkgs.gnome2) gtkglext; + }; + + keepnote = callPackage ../applications/office/keepnote { + pygtk = pyGtkGlade; + }; + + kermit = callPackage ../tools/misc/kermit { }; + + keymon = callPackage ../applications/video/key-mon { }; + + kino = callPackage ../applications/video/kino { + inherit (gnome) libglade; + }; + + koji = callPackage ../tools/package-management/koji { }; + + lame = callPackage ../applications/audio/lame { }; + + larswm = callPackage ../applications/window-managers/larswm { }; + + lash = callPackage ../applications/audio/lash { }; + + ladspaH = callPackage ../applications/audio/ladspa-plugins/ladspah.nix { }; + + ladspaPlugins = callPackage ../applications/audio/ladspa-plugins { + fftw = fftwSinglePrec; + }; + + caps = callPackage ../applications/audio/caps { }; + + lastwatch = callPackage ../applications/audio/lastwatch { }; + + lastfmsubmitd = callPackage ../applications/audio/lastfmsubmitd { }; + + lbdb = callPackage ../tools/misc/lbdb { }; + + lci = callPackage ../applications/science/logic/lci {}; + + ldcpp = callPackage ../applications/networking/p2p/ldcpp { + inherit (gnome) libglade; + }; + + librecad = callPackage ../applications/misc/librecad { }; + + librecad2 = callPackage ../applications/misc/librecad/2.0.nix { }; + + libreoffice = callPackage ../applications/office/libreoffice { + inherit (perlPackages) ArchiveZip CompressZlib; + inherit (gnome) GConf ORBit2 gnome_vfs; + zip = zip.override { enableNLS = false; }; + boost = boost155; + jdk = openjdk; + fontsConf = makeFontsConf { + fontDirectories = [ + freefont_ttf xorg.fontmiscmisc xorg.fontbhttf + ]; + }; + clucene_core = clucene_core_2; + lcms = lcms2; + harfbuzz = harfbuzz.override { + withIcu = true; withGraphite2 = true; + }; + }; + + liferea = callPackage ../applications/networking/newsreaders/liferea { }; + + lingot = callPackage ../applications/audio/lingot { + inherit (gnome) libglade; + }; + + links = callPackage ../applications/networking/browsers/links { }; + + ledger = callPackage ../applications/office/ledger/2.6.3.nix { }; + ledger3 = callPackage ../applications/office/ledger/3.0.nix { }; + + lighttable = callPackage ../applications/editors/lighttable {}; + + links2 = callPackage ../applications/networking/browsers/links2 { }; + + linphone = callPackage ../applications/networking/instant-messengers/linphone rec { + inherit (gnome) libglade; + libexosip = libexosip_3; + libosip = libosip_3; + }; + + linuxsampler = callPackage ../applications/audio/linuxsampler { + bison = bison2; + }; + + llpp = callPackage ../applications/misc/llpp { inherit (ocamlPackages) lablgl; }; + + lmms = callPackage ../applications/audio/lmms { }; + + lrzsz = callPackage ../tools/misc/lrzsz { }; + + luminanceHDR = callPackage ../applications/graphics/luminance-hdr { }; + + lxdvdrip = callPackage ../applications/video/lxdvdrip { }; + + handbrake = callPackage ../applications/video/handbrake { }; + + lilyterm = callPackage ../applications/misc/lilyterm { + inherit (gnome) vte; + gtk = gtk2; + }; + + lynx = callPackage ../applications/networking/browsers/lynx { }; + + lyx = callPackage ../applications/misc/lyx { }; + + makeself = callPackage ../applications/misc/makeself { }; + + matchbox = callPackage ../applications/window-managers/matchbox { }; + + mcpp = callPackage ../development/compilers/mcpp { }; + + mda_lv2 = callPackage ../applications/audio/mda-lv2 { }; + + meld = callPackage ../applications/version-management/meld { + inherit (gnome) scrollkeeper; + pygtk = pyGtkGlade; + }; + + mcomix = callPackage ../applications/graphics/mcomix { }; + + mercurial = callPackage ../applications/version-management/mercurial { + inherit (pythonPackages) curses docutils; + guiSupport = false; # use mercurialFull to get hgk GUI + }; + + mercurialFull = appendToName "full" (pkgs.mercurial.override { guiSupport = true; }); + + merkaartor = callPackage ../applications/misc/merkaartor { }; + + meshlab = callPackage ../applications/graphics/meshlab { }; + + mhwaveedit = callPackage ../applications/audio/mhwaveedit {}; + + mid2key = callPackage ../applications/audio/mid2key { }; + + midori = callPackage ../applications/networking/browsers/midori { }; + + midoriWrapper = wrapFirefox + { browser = midori; browserName = "midori"; desktopName = "Midori"; + icon = "${midori}/share/icons/hicolor/22x22/apps/midori.png"; + }; + + mikmod = callPackage ../applications/audio/mikmod { }; + + minicom = callPackage ../tools/misc/minicom { }; + + minimodem = callPackage ../applications/audio/minimodem { }; + + minidjvu = callPackage ../applications/graphics/minidjvu { }; + + mirage = callPackage ../applications/graphics/mirage {}; + + mixxx = callPackage ../applications/audio/mixxx { + inherit (vamp) vampSDK; + }; + + mmex = callPackage ../applications/office/mmex { }; + + moc = callPackage ../applications/audio/moc { }; + + monkeysAudio = callPackage ../applications/audio/monkeys-audio { }; + + monodevelop = callPackage ../applications/editors/monodevelop { + inherit (gnome) gnome_vfs libbonobo libglade libgnome GConf; + mozilla = firefox; + gtksharp = gtksharp2; + }; + + monodoc = callPackage ../applications/editors/monodoc { + gtksharp = gtksharp1; + }; + + monotone = callPackage ../applications/version-management/monotone { + lua = lua5; + boost = boost149; + }; + + monotoneViz = builderDefsPackage (import ../applications/version-management/monotone-viz/mtn-head.nix) { + inherit ocaml graphviz pkgconfig autoconf automake libtool glib gtk; + inherit (ocamlPackages) lablgtk; + inherit (gnome) libgnomecanvas; + }; + + mopidy = callPackage ../applications/audio/mopidy { }; + + mopidy-spotify = callPackage ../applications/audio/mopidy-spotify { }; + + mopidy-moped = callPackage ../applications/audio/mopidy-moped { }; + + mozilla = callPackage ../applications/networking/browsers/mozilla { + inherit (gnome) libIDL; + }; + + mozplugger = builderDefsPackage (import ../applications/networking/browsers/mozilla-plugins/mozplugger) { + inherit firefox; + inherit (xlibs) libX11 xproto; + }; + + easytag = callPackage ../applications/audio/easytag { }; + + mp3info = callPackage ../applications/audio/mp3info { }; + + mp3splt = callPackage ../applications/audio/mp3splt { }; + + mpc123 = callPackage ../applications/audio/mpc123 { }; + + mpg123 = callPackage ../applications/audio/mpg123 { }; + + mpg321 = callPackage ../applications/audio/mpg321 { }; + + mpc_cli = callPackage ../applications/audio/mpc { }; + + ncmpc = callPackage ../applications/audio/ncmpc { }; + + ncmpcpp = callPackage ../applications/audio/ncmpcpp { }; + + normalize = callPackage ../applications/audio/normalize { }; + + mplayer = callPackage ../applications/video/mplayer { + pulseSupport = config.pulseaudio or false; + vdpauSupport = config.mplayer.vdpauSupport or false; + }; + + mplayer2 = callPackage ../applications/video/mplayer2 { + ffmpeg = libav_9; # see https://trac.macports.org/ticket/44386 + }; + + MPlayerPlugin = browser: + import ../applications/networking/browsers/mozilla-plugins/mplayerplug-in { + inherit browser; + inherit fetchurl stdenv pkgconfig gettext; + inherit (xlibs) libXpm; + # !!! should depend on MPlayer + }; + + mpv = callPackage ../applications/video/mpv { + lua = lua5_1; + bs2bSupport = config.mpv.bs2bSupport or true; + quviSupport = config.mpv.quviSupport or false; + cacaSupport = config.mpv.cacaSupport or true; + vaapiSupport = config.mpv.vaapiSupport or false; + }; + + mrxvt = callPackage ../applications/misc/mrxvt { }; + + multisync = callPackage ../applications/misc/multisync { + inherit (gnome) ORBit2 libbonobo libgnomeui GConf; + }; + + mumble = callPackage ../applications/networking/mumble { + avahi = avahi.override { + withLibdnssdCompat = true; + }; + jackSupport = config.mumble.jackSupport or false; + speechdSupport = config.mumble.speechdSupport or false; + }; + + murmur = callPackage ../applications/networking/mumble/murmur.nix { + avahi = avahi.override { + withLibdnssdCompat = true; + }; + iceSupport = config.murmur.iceSupport or true; + }; + + mutt = callPackage ../applications/networking/mailreaders/mutt { }; + + namecoin = callPackage ../applications/misc/namecoin { }; + namecoinqt = callPackage ../applications/misc/namecoin/qt.nix { }; + + pcmanfm = callPackage ../applications/misc/pcmanfm { }; + + ruby_gpgme = callPackage ../development/libraries/ruby_gpgme { + ruby = ruby19; + hoe = rubyLibs.hoe; + }; + + ruby_ncursesw_sup = callPackage ../development/libraries/ruby_ncursesw_sup { }; + + shotcut = callPackage ../applications/video/shotcut { mlt = mlt-qt5; }; + + smplayer = callPackage ../applications/video/smplayer { }; + + sup = with rubyLibs; callPackage ../applications/networking/mailreaders/sup { + ruby = ruby19.override { + cursesSupport = true; + }; + + inherit gettext highline iconv locale lockfile + text trollop xapian_ruby which; + + rmail_sup = ""; # missing + unicode = ""; + + # See https://github.com/NixOS/nixpkgs/issues/1804 and + # https://github.com/NixOS/nixpkgs/issues/2146 + bundler = pkgs.lib.overrideDerivation pkgs.rubyLibs.bundler ( + oldAttrs: { + dontPatchShebangs = 1; + } + ); + chronic = chronic; + gpgme = ruby_gpgme; + mime_types = mime_types; + ncursesw_sup = ruby_ncursesw_sup; + rake = rake; + }; + + synfigstudio = callPackage ../applications/graphics/synfigstudio { + fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; + }; + + sxhkd = callPackage ../applications/window-managers/sxhkd { }; + + msmtp = callPackage ../applications/networking/msmtp { }; + + imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix { + lua = lua5; + }; + + mupdf = callPackage ../applications/misc/mupdf { }; + + mypaint = callPackage ../applications/graphics/mypaint { }; + + mythtv = callPackage ../applications/video/mythtv { }; + + tvtime = callPackage ../applications/video/tvtime { + kernel = linux; + }; + + nano = callPackage ../applications/editors/nano { }; + + nanoblogger = callPackage ../applications/misc/nanoblogger { }; + + navipowm = callPackage ../applications/misc/navipowm { }; + + navit = callPackage ../applications/misc/navit { }; + + netbeans = callPackage ../applications/editors/netbeans { }; + + ncdu = callPackage ../tools/misc/ncdu { }; + + ncdc = callPackage ../applications/networking/p2p/ncdc { }; + + nedit = callPackage ../applications/editors/nedit { + motif = lesstif; + }; + + netsurfBrowser = netsurf.browser; + netsurf = recurseIntoAttrs (import ../applications/networking/browsers/netsurf { inherit pkgs; }); + + notmuch = callPackage ../applications/networking/mailreaders/notmuch { + # use emacsPackages.notmuch if you want emacs support + emacs = null; + }; + + nova = callPackage ../applications/virtualization/nova { }; + + novaclient = callPackage ../applications/virtualization/nova/client.nix { }; + + nspluginwrapper = callPackage ../applications/networking/browsers/mozilla-plugins/nspluginwrapper {}; + + nvi = callPackage ../applications/editors/nvi { }; + + nvpy = callPackage ../applications/editors/nvpy { }; + + obconf = callPackage ../tools/X11/obconf { + inherit (gnome) libglade; + }; + + ocrad = callPackage ../applications/graphics/ocrad { }; + + offrss = callPackage ../applications/networking/offrss { }; + + ogmtools = callPackage ../applications/video/ogmtools { }; + + omxplayer = callPackage ../applications/video/omxplayer { }; + + oneteam = callPackage ../applications/networking/instant-messengers/oneteam {}; + + openbox = callPackage ../applications/window-managers/openbox { }; + + openimageio = callPackage ../applications/graphics/openimageio { }; + + openjump = callPackage ../applications/misc/openjump { }; + + openscad = callPackage ../applications/graphics/openscad {}; + + opera = callPackage ../applications/networking/browsers/opera { + inherit (pkgs.kde4) kdelibs; + }; + + opusfile = callPackage ../applications/audio/opusfile { }; + + opusTools = callPackage ../applications/audio/opus-tools { }; + + pamixer = callPackage ../applications/audio/pamixer { }; + + pan = callPackage ../applications/networking/newsreaders/pan { + spellChecking = false; + }; + + panotools = callPackage ../applications/graphics/panotools { }; + + pavucontrol = callPackage ../applications/audio/pavucontrol { }; + + paraview = callPackage ../applications/graphics/paraview { }; + + pencil = callPackage ../applications/graphics/pencil { }; + + petrifoo = callPackage ../applications/audio/petrifoo { + inherit (gnome) libgnomecanvas; + }; + + pdftk = callPackage ../tools/typesetting/pdftk { }; + pdfgrep = callPackage ../tools/typesetting/pdfgrep { }; + + pianobar = callPackage ../applications/audio/pianobar { }; + + pianobooster = callPackage ../applications/audio/pianobooster { }; + + picard = callPackage ../applications/audio/picard { }; + + picocom = callPackage ../tools/misc/picocom { }; + + pidgin = callPackage ../applications/networking/instant-messengers/pidgin { + openssl = if config.pidgin.openssl or true then openssl else null; + gnutls = if config.pidgin.gnutls or false then gnutls else null; + libgcrypt = if config.pidgin.gnutls or false then libgcrypt else null; + startupnotification = libstartup_notification; + }; + + pidginlatex = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-latex { + imagemagick = imagemagickBig; + }; + + pidginlatexSF = builderDefsPackage + (import ../applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/pidgin-latex-sf.nix) + { + inherit pkgconfig pidgin texLive imagemagick which glib gtk; + }; + + pidginmsnpecan = callPackage ../applications/networking/instant-messengers/pidgin-plugins/msn-pecan { }; + + pidginotr = callPackage ../applications/networking/instant-messengers/pidgin-plugins/otr { }; + + pidginsipe = callPackage ../applications/networking/instant-messengers/pidgin-plugins/sipe { }; + + toxprpl = callPackage ../applications/networking/instant-messengers/pidgin-plugins/tox-prpl { }; + + pinfo = callPackage ../applications/misc/pinfo { }; + + pinta = callPackage ../applications/graphics/pinta { + gtksharp = gtksharp2; + }; + + pommed = callPackage ../os-specific/linux/pommed { + inherit (xorg) libXpm; + }; + + potrace = callPackage ../applications/graphics/potrace {}; + + posterazor = callPackage ../applications/misc/posterazor { }; + + pqiv = callPackage ../applications/graphics/pqiv { }; + + qiv = callPackage ../applications/graphics/qiv { }; + + processing = callPackage ../applications/graphics/processing { inherit (xorg) libXxf86vm; }; + + # perhaps there are better apps for this task? It's how I had configured my preivous system. + # And I don't want to rewrite all rules + procmail = callPackage ../applications/misc/procmail { }; + + pstree = callPackage ../applications/misc/pstree { }; + + pulseview = callPackage ../applications/science/electronics/pulseview { }; + + puredata = callPackage ../applications/audio/puredata { }; + + pythonmagick = callPackage ../applications/graphics/PythonMagick { }; + + qbittorrent = callPackage ../applications/networking/p2p/qbittorrent { }; + + eiskaltdcpp = callPackage ../applications/networking/p2p/eiskaltdcpp { }; + + qemu = callPackage ../applications/virtualization/qemu { }; + + qmmp = callPackage ../applications/audio/qmmp { }; + + qsampler = callPackage ../applications/audio/qsampler { }; + + qsynth = callPackage ../applications/audio/qsynth { }; + + qtpfsgui = callPackage ../applications/graphics/qtpfsgui { }; + + qtractor = callPackage ../applications/audio/qtractor { }; + + quodlibet = callPackage ../applications/audio/quodlibet { + inherit (pythonPackages) mutagen; + }; + + quodlibet-with-gst-plugins = callPackage ../applications/audio/quodlibet { + inherit (pythonPackages) mutagen; + withGstPlugins = true; + gst_plugins_bad = null; + }; + + rakarrack = callPackage ../applications/audio/rakarrack { + inherit (xorg) libXpm libXft; + fltk = fltk13; + }; + + rapcad = callPackage ../applications/graphics/rapcad {}; + + rapidsvn = callPackage ../applications/version-management/rapidsvn { }; + + ratpoison = callPackage ../applications/window-managers/ratpoison { }; + + rawtherapee = callPackage ../applications/graphics/rawtherapee { + fftw = fftwSinglePrec; + }; + + rcs = callPackage ../applications/version-management/rcs { }; + + rdesktop = callPackage ../applications/networking/remote/rdesktop { }; + + recode = callPackage ../tools/text/recode { }; + + retroshare = callPackage ../applications/networking/p2p/retroshare { + qt = qt4; + }; + + retroshare06 = lowPrio (callPackage ../applications/networking/p2p/retroshare/0.6.nix { + qt = qt4; + }); + + rsync = callPackage ../applications/networking/sync/rsync { + enableACLs = !(stdenv.isDarwin || stdenv.isSunOS || stdenv.isFreeBSD); + enableCopyDevicesPatch = (config.rsync.enableCopyDevicesPatch or false); + }; + + rtl-sdr = callPackage ../applications/misc/rtl-sdr { }; + + rubyripper = callPackage ../applications/audio/rubyripper {}; + + rxvt = callPackage ../applications/misc/rxvt { }; + + # = urxvt + rxvt_unicode = callPackage ../applications/misc/rxvt_unicode { + perlSupport = true; + gdkPixbufSupport = true; + unicode3Support = true; + }; + + sakura = callPackage ../applications/misc/sakura { + inherit (gnome) vte; + }; + + sbagen = callPackage ../applications/misc/sbagen { }; + + scite = callPackage ../applications/editors/scite { }; + + scribus = callPackage ../applications/office/scribus { + inherit (gnome) libart_lgpl; + }; + + seafile-client = callPackage ../applications/networking/seafile-client { }; + + seeks = callPackage ../tools/networking/p2p/seeks { + opencv = opencv_2_1; + }; + + seg3d = callPackage ../applications/graphics/seg3d { + wxGTK = wxGTK28.override { unicode = false; }; + }; + + seq24 = callPackage ../applications/audio/seq24 { }; + + setbfree = callPackage ../applications/audio/setbfree { }; + + sflphone = callPackage ../applications/networking/instant-messengers/sflphone { + gtk = gtk3; + }; + + siproxd = callPackage ../applications/networking/siproxd { }; + + skype = callPackage_i686 ../applications/networking/instant-messengers/skype { }; + + skype4pidgin = callPackage ../applications/networking/instant-messengers/pidgin-plugins/skype4pidgin { }; + + skype_call_recorder = callPackage ../applications/networking/instant-messengers/skype-call-recorder { }; + + slrn = callPackage ../applications/networking/newsreaders/slrn { }; + + spideroak = callPackage ../applications/networking/spideroak { }; + + ssvnc = callPackage ../applications/networking/remote/ssvnc { }; + + st = callPackage ../applications/misc/st { + conf = config.st.conf or null; + }; + + stella = callPackage ../misc/emulators/stella { }; + + linuxstopmotion = callPackage ../applications/video/linuxstopmotion { }; + + sweethome3d = recurseIntoAttrs ( (callPackage ../applications/misc/sweethome3d { }) + // (callPackage ../applications/misc/sweethome3d/editors.nix { + sweethome3dApp = sweethome3d.application; + }) + ); + + sxiv = callPackage ../applications/graphics/sxiv { }; + + bittorrentSync = callPackage ../applications/networking/bittorrentsync { }; + + dropbox = callPackage ../applications/networking/dropbox { }; + + dropbox-cli = callPackage ../applications/networking/dropbox-cli { }; + + lightdm = callPackage ../applications/display-managers/lightdm { }; + + lightdm_gtk_greeter = callPackage ../applications/display-managers/lightdm-gtk-greeter { }; + + # slic3r 0.9.10b says: "Running Slic3r under Perl >= 5.16 is not supported nor recommended" + slic3r = callPackage ../applications/misc/slic3r { + perlPackages = perl514Packages; + perl = perl514; + }; + + curaengine = callPackage ../applications/misc/curaengine { }; + + cura = callPackage ../applications/misc/cura { }; + + printrun = callPackage ../applications/misc/printrun { }; + + slim = callPackage ../applications/display-managers/slim { + libpng = libpng12; + }; + + smartdeblur = callPackage ../applications/graphics/smartdeblur { }; + + snd = callPackage ../applications/audio/snd { }; + + shntool = callPackage ../applications/audio/shntool { }; + + sonic_visualiser = callPackage ../applications/audio/sonic-visualiser { + inherit (pkgs.vamp) vampSDK; + inherit (pkgs.xlibs) libX11; + fftw = pkgs.fftwSinglePrec; + }; + + sox = callPackage ../applications/misc/audio/sox { }; + + soxr = callPackage ../applications/misc/audio/soxr { }; + + spotify = callPackage ../applications/audio/spotify { + inherit (gnome) GConf; + libpng = libpng12; + }; + + libspotify = callPackage ../development/libraries/libspotify { + apiKey = config.libspotify.apiKey or null; + }; + + stalonetray = callPackage ../applications/window-managers/stalonetray {}; + + stp = callPackage ../applications/science/logic/stp {}; + + stumpwm = lispPackages.stumpwm; + + sublime = callPackage ../applications/editors/sublime { }; + + sublime3 = lowPrio (callPackage ../applications/editors/sublime3 { }); + + subversion = callPackage ../applications/version-management/subversion/default.nix { + bdbSupport = true; + httpServer = false; + httpSupport = true; + pythonBindings = false; + perlBindings = false; + javahlBindings = false; + saslSupport = false; + httpd = apacheHttpd; + sasl = cyrus_sasl; + }; + + subversionClient = appendToName "client" (subversion.override { + bdbSupport = false; + perlBindings = true; + pythonBindings = true; + }); + + surf = callPackage ../applications/misc/surf { + webkit = webkitgtk2; + }; + + svk = perlPackages.SVK; + + swh_lv2 = callPackage ../applications/audio/swh-lv2 { }; + + sylpheed = callPackage ../applications/networking/mailreaders/sylpheed { + sslSupport = true; + gpgSupport = true; + }; + + symlinks = callPackage ../tools/system/symlinks { }; + + syncthing = callPackage ../applications/networking/syncthing { }; + + # linux only by now + synergy = callPackage ../applications/misc/synergy { }; + + tabbed = callPackage ../applications/window-managers/tabbed { }; + + tahoelafs = callPackage ../tools/networking/p2p/tahoe-lafs { + inherit (pythonPackages) twisted foolscap simplejson nevow zfec + pycryptopp sqlite3 darcsver setuptoolsTrial setuptoolsDarcs + numpy pyasn1 mock; + }; + + tailor = builderDefsPackage (import ../applications/version-management/tailor) { + inherit makeWrapper python; + }; + + tangogps = callPackage ../applications/misc/tangogps { + gconf = gnome.GConf; + }; + + teamspeak_client = callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { }; + teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { }; + + taskjuggler = callPackage ../applications/misc/taskjuggler { }; + + taskwarrior = callPackage ../applications/misc/taskwarrior { }; + + taskserver = callPackage ../servers/misc/taskserver { }; + + telegram-cli = callPackage ../applications/networking/instant-messengers/telegram-cli/default.nix { }; + + telepathy_gabble = callPackage ../applications/networking/instant-messengers/telepathy/gabble { }; + + telepathy_haze = callPackage ../applications/networking/instant-messengers/telepathy/haze {}; + + telepathy_logger = callPackage ../applications/networking/instant-messengers/telepathy/logger {}; + + telepathy_mission_control = callPackage ../applications/networking/instant-messengers/telepathy/mission-control { }; + + telepathy_rakia = callPackage ../applications/networking/instant-messengers/telepathy/rakia { }; + + telepathy_salut = callPackage ../applications/networking/instant-messengers/telepathy/salut {}; + + terminator = callPackage ../applications/misc/terminator { + vte = gnome.vte.override { pythonSupport = true; }; + inherit (pythonPackages) notify; + }; + + tesseract = callPackage ../applications/graphics/tesseract { }; + + thinkingRock = callPackage ../applications/misc/thinking-rock { }; + + thunderbird = callPackage ../applications/networking/mailreaders/thunderbird { + inherit (gnome) libIDL; + inherit (pythonPackages) pysqlite; + libpng = libpng_apng; + }; + + thunderbird-bin = callPackage ../applications/networking/mailreaders/thunderbird-bin { + gconf = pkgs.gnome.GConf; + inherit (pkgs.gnome) libgnome libgnomeui; + inherit (pkgs.xlibs) libX11 libXScrnSaver libXext + libXinerama libXrender libXt; + }; + + tig = gitAndTools.tig; + + tilda = callPackage ../applications/misc/tilda { + vte = gnome3.vte; + gtk = gtk3; + }; + + timidity = callPackage ../tools/misc/timidity { }; + + tint2 = callPackage ../applications/misc/tint2 { }; + + tkcvs = callPackage ../applications/version-management/tkcvs { }; + + tla = callPackage ../applications/version-management/arch { }; + + todo-txt-cli = callPackage ../applications/office/todo.txt-cli { }; + + torchat = callPackage ../applications/networking/instant-messengers/torchat { + wrapPython = pythonPackages.wrapPython; + }; + + toxic = callPackage ../applications/networking/instant-messengers/toxic { }; + + transcode = callPackage ../applications/audio/transcode { }; + + transmission = callPackage ../applications/networking/p2p/transmission { }; + transmission_gtk = transmission.override { enableGTK3 = true; }; + + transmission_remote_gtk = callPackage ../applications/networking/p2p/transmission-remote-gtk {}; + + trayer = callPackage ../applications/window-managers/trayer { }; + + tree = callPackage ../tools/system/tree {}; + + tribler = callPackage ../applications/networking/p2p/tribler { }; + + twister = callPackage ../applications/networking/p2p/twister { }; + + twmn = callPackage ../applications/misc/twmn { }; + + twinkle = callPackage ../applications/networking/instant-messengers/twinkle { }; + + umurmur = callPackage ../applications/networking/umurmur { }; + + unison = callPackage ../applications/networking/sync/unison { + inherit (ocamlPackages) lablgtk; + enableX11 = config.unison.enableX11 or true; + }; + + uucp = callPackage ../tools/misc/uucp { }; + + uvccapture = callPackage ../applications/video/uvccapture { }; + + uwimap = callPackage ../tools/networking/uwimap { }; + + uzbl = callPackage ../applications/networking/browsers/uzbl { + webkit = webkitgtk2; + }; + + uTox = callPackage ../applications/networking/instant-messengers/utox { }; + + vanitygen = callPackage ../applications/misc/vanitygen { }; + + vbindiff = callPackage ../applications/editors/vbindiff { }; + + vcprompt = callPackage ../applications/version-management/vcprompt { }; + + vdpauinfo = callPackage ../tools/X11/vdpauinfo { }; + + veracity = callPackage ../applications/version-management/veracity {}; + + viewMtn = builderDefsPackage (import ../applications/version-management/viewmtn/0.10.nix) + { + inherit monotone cheetahTemplate highlight ctags + makeWrapper graphviz which python; + flup = pythonPackages.flup; + }; + + vim = callPackage ../applications/editors/vim { }; + + macvim = callPackage ../applications/editors/vim/macvim.nix { }; + + vimHugeX = vim_configurable; + + vim_configurable = callPackage ../applications/editors/vim/configurable.nix { + inherit (pkgs) fetchurl fetchhg stdenv ncurses pkgconfig gettext + composableDerivation lib config glib gtk python perl tcl ruby; + inherit (pkgs.xlibs) libX11 libXext libSM libXpm libXt libXaw libXau libXmu + libICE; + + features = "huge"; # one of tiny, small, normal, big or huge + lua = pkgs.lua5; + gui = config.vim.gui or "auto"; + + # optional features by flags + flags = [ "python" "X11" ]; # only flag "X11" by now + + # so that we can use gccApple if we're building on darwin + inherit stdenvAdapters gccApple; + }; + + vimNox = lowPrio (vim_configurable.override { source = "vim-nox"; }); + + qvim = lowPrio (callPackage ../applications/editors/vim/qvim.nix { + inherit (pkgs) fetchgit stdenv ncurses pkgconfig gettext + composableDerivation lib config python perl tcl ruby qt4; + inherit (pkgs.xlibs) libX11 libXext libSM libXpm libXt libXaw libXau libXmu + libICE; + + inherit (pkgs) stdenvAdapters gccApple; + + features = "huge"; # one of tiny, small, normal, big or huge + lua = pkgs.lua5; + flags = [ "python" "X11" ]; # only flag "X11" by now + }); + + vimpc = callPackage ../applications/audio/vimpc { }; + + virtviewer = callPackage ../applications/virtualization/virt-viewer { + gtkvnc = gtkvnc.override { enableGTK3 = true; }; + spice_gtk = spice_gtk.override { enableGTK3 = true; }; + }; + virtmanager = callPackage ../applications/virtualization/virt-manager { + inherit (gnome) gnome_python; + vte = gnome3.vte; + dconf = gnome3.dconf; + gtkvnc = gtkvnc.override { enableGTK3 = true; }; + spice_gtk = spice_gtk.override { enableGTK3 = true; }; + }; + + virtinst = callPackage ../applications/virtualization/virtinst {}; + + virtualgl = callPackage ../tools/X11/virtualgl { }; + + bumblebee = callPackage ../tools/X11/bumblebee { }; + + vkeybd = callPackage ../applications/audio/vkeybd { + inherit (xlibs) libX11; + }; + + vlc = callPackage ../applications/video/vlc { }; + + vmpk = callPackage ../applications/audio/vmpk { }; + + vnstat = callPackage ../applications/networking/vnstat { }; + + vorbisTools = callPackage ../applications/audio/vorbis-tools { }; + + vue = callPackage ../applications/misc/vue { + jre = icedtea7_jre; + }; + + vwm = callPackage ../applications/window-managers/vwm { }; + + vym = callPackage ../applications/misc/vym { }; + + w3m = callPackage ../applications/networking/browsers/w3m { + graphicsSupport = false; + }; + + weechat = callPackage ../applications/networking/irc/weechat { }; + + weechatDevel = lowPrio (callPackage ../applications/networking/irc/weechat/devel.nix { }); + + weston = callPackage ../applications/window-managers/weston { }; + + windowmaker = callPackage ../applications/window-managers/windowmaker { }; + + winswitch = callPackage ../tools/X11/winswitch { }; + + wings = callPackage ../applications/graphics/wings { + erlang = erlangR14; + esdl = esdl.override { erlang = erlangR14; }; + }; + + wmname = callPackage ../applications/misc/wmname { }; + + wmctrl = callPackage ../tools/X11/wmctrl { }; + + # I'm keen on wmiimenu only >wmii-3.5 no longer has it... + wmiimenu = import ../applications/window-managers/wmii31 { + libixp = libixp_for_wmii; + inherit fetchurl /* fetchhg */ stdenv gawk; + inherit (xlibs) libX11; + }; + + wmiiSnap = import ../applications/window-managers/wmii { + libixp = libixp_for_wmii; + inherit fetchurl /* fetchhg */ stdenv gawk; + inherit (xlibs) libX11 xextproto libXt libXext; + includeUnpack = config.stdenv.includeUnpack or false; + }; + + wordnet = callPackage ../applications/misc/wordnet { }; + + wrapFirefox = + { browser, browserName ? "firefox", desktopName ? "Firefox", nameSuffix ? "" + , icon ? "${browser}/lib/${browser.name}/browser/icons/mozicon128.png" }: + let + cfg = stdenv.lib.attrByPath [ browserName ] {} config; + enableAdobeFlash = cfg.enableAdobeFlash or false; + enableGnash = cfg.enableGnash or false; + in + import ../applications/networking/browsers/firefox/wrapper.nix { + inherit stdenv lib makeWrapper makeDesktopItem browser browserName desktopName nameSuffix icon; + plugins = + assert !(enableGnash && enableAdobeFlash); + ([ ] + ++ lib.optional enableGnash gnash + ++ lib.optional enableAdobeFlash flashplayer + ++ lib.optional (cfg.enableDjvu or false) (djview4) + ++ lib.optional (cfg.enableMPlayer or false) (MPlayerPlugin browser) + ++ lib.optional (cfg.enableGeckoMediaPlayer or false) gecko_mediaplayer + ++ lib.optional (supportsJDK && cfg.jre or false && jrePlugin ? mozillaPlugin) jrePlugin + ++ lib.optional (cfg.enableGoogleTalkPlugin or false) google_talk_plugin + ++ lib.optional (cfg.enableFriBIDPlugin or false) fribid + ++ lib.optional (cfg.enableGnomeExtensions or false) gnome3.gnome_shell + ); + libs = [ gstreamer gst_plugins_base ] ++ lib.optionals (cfg.enableQuakeLive or false) + (with xlibs; [ stdenv.gcc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib ]); + gtk_modules = [ libcanberra ]; + }; + + wxhexeditor = callPackage ../applications/editors/wxhexeditor { }; + + x11vnc = callPackage ../tools/X11/x11vnc { }; + + x2vnc = callPackage ../tools/X11/x2vnc { }; + + xaos = builderDefsPackage (import ../applications/graphics/xaos) { + inherit (xlibs) libXt libX11 libXext xextproto xproto; + inherit gsl aalib zlib intltool gettext perl; + libpng = libpng12; + }; + + xara = callPackage ../applications/graphics/xara { }; + + xawtv = callPackage ../applications/video/xawtv { }; + + xbindkeys = callPackage ../tools/X11/xbindkeys { }; + + xbmc = callPackage ../applications/video/xbmc { + ffmpeg = ffmpeg_1; + }; + + xca = callPackage ../applications/misc/xca { }; + + xcalib = callPackage ../tools/X11/xcalib { }; + + xcape = callPackage ../tools/X11/xcape { }; + + xchainkeys = callPackage ../tools/X11/xchainkeys { }; + + xchat = callPackage ../applications/networking/irc/xchat { }; + + xchm = callPackage ../applications/misc/xchm { }; + + xcompmgr = callPackage ../applications/window-managers/xcompmgr { }; + + compton = callPackage ../applications/window-managers/compton { }; + + xdaliclock = callPackage ../tools/misc/xdaliclock {}; + + xdg-user-dirs = callPackage ../tools/X11/xdg-user-dirs { }; + + xdg_utils = callPackage ../tools/X11/xdg-utils { }; + + xdotool = callPackage ../tools/X11/xdotool { }; + + xen = callPackage ../applications/virtualization/xen { + stdenv = overrideGCC stdenv gcc45; + }; + + xfe = callPackage ../applications/misc/xfe { + fox = fox_1_6; + }; + + xfig = callPackage ../applications/graphics/xfig { }; + + xineUI = callPackage ../applications/video/xine-ui { }; + + xneur_0_13 = callPackage ../applications/misc/xneur { }; + + xneur_0_8 = callPackage ../applications/misc/xneur/0.8.nix { }; + + xneur = xneur_0_13; + + gxneur = callPackage ../applications/misc/gxneur { + inherit (gnome) libglade GConf; + }; + + xournal = callPackage ../applications/graphics/xournal { + inherit (gnome) libgnomeprint libgnomeprintui libgnomecanvas; + }; + + xpdf = callPackage ../applications/misc/xpdf { + motif = lesstif; + base14Fonts = "${ghostscript}/share/ghostscript/fonts"; + }; + + xkb_switch = callPackage ../tools/X11/xkb-switch { }; + + libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { }; + + xpra = callPackage ../tools/X11/xpra { }; + + xrestop = callPackage ../tools/X11/xrestop { }; + + xscreensaver = callPackage ../misc/screensavers/xscreensaver { + inherit (gnome) libglade; + }; + + xsynth_dssi = callPackage ../applications/audio/xsynth-dssi { }; + + xterm = callPackage ../applications/misc/xterm { }; + + finalterm = callPackage ../applications/misc/finalterm { }; + + xtrace = callPackage ../tools/X11/xtrace { }; + + xlaunch = callPackage ../tools/X11/xlaunch { }; + + xmacro = callPackage ../tools/X11/xmacro { }; + + xmove = callPackage ../applications/misc/xmove { }; + + xmp = callPackage ../applications/audio/xmp { }; + + xnee = callPackage ../tools/X11/xnee { }; + + xvidcap = callPackage ../applications/video/xvidcap { + inherit (gnome) scrollkeeper libglade; + }; + + yate = callPackage ../applications/misc/yate { }; + + inherit (gnome3) yelp; + + qgis = callPackage ../applications/misc/qgis {}; + + qtbitcointrader = callPackage ../applications/misc/qtbitcointrader { }; + + ykpers = callPackage ../applications/misc/ykpers {}; + + yoshimi = callPackage ../applications/audio/yoshimi { + fltk = fltk13; + }; + + zathuraCollection = recurseIntoAttrs + (let callPackage = newScope pkgs.zathuraCollection; in + import ../applications/misc/zathura { + inherit callPackage pkgs fetchurl; + useMupdf = config.zathura.useMupdf or false; + }); + + zathura = zathuraCollection.zathuraWrapper; + + zed = callPackage ../applications/editors/zed { }; + + zeroc_ice = callPackage ../development/libraries/zeroc-ice { }; + + girara = callPackage ../applications/misc/girara { + gtk = gtk3; + }; + + zgrviewer = callPackage ../applications/graphics/zgrviewer {}; + + zim = callPackage ../applications/office/zim { + pygtk = pyGtkGlade; + }; + + zotero = callPackage ../applications/office/zotero { + xulrunner = xulrunner_30; + }; + + zynaddsubfx = callPackage ../applications/audio/zynaddsubfx { }; + + + ### GAMES + + alienarena = callPackage ../games/alienarena { }; + + andyetitmoves = if stdenv.isLinux then callPackage ../games/andyetitmoves {} else null; + + anki = callPackage ../games/anki { }; + + asc = callPackage ../games/asc { + lua = lua5; + libsigcxx = libsigcxx12; + }; + + astromenace = callPackage ../games/astromenace { }; + + atanks = callPackage ../games/atanks {}; + + ballAndPaddle = callPackage ../games/ball-and-paddle { + guile = guile_1_8; + }; + + bitsnbots = callPackage ../games/bitsnbots { + lua = lua5; + }; + + blackshades = callPackage ../games/blackshades { }; + + blackshadeselite = callPackage ../games/blackshadeselite { }; + + blobby = callPackage ../games/blobby { }; + + bsdgames = callPackage ../games/bsdgames { }; + + btanks = callPackage ../games/btanks { }; + + bzflag = callPackage ../games/bzflag { }; + + castle_combat = callPackage ../games/castle-combat { }; + + chessdb = callPackage ../games/chessdb { }; + + construoBase = lowPrio (callPackage ../games/construo { + mesa = null; + freeglut = null; + }); + + construo = construoBase.override { + inherit mesa freeglut; + }; + + crack_attack = callPackage ../games/crack-attack { }; + + crafty = callPackage ../games/crafty { }; + craftyFull = appendToName "full" (crafty.override { fullVariant = true; }); + + crrcsim = callPackage ../games/crrcsim {}; + + dhewm3 = callPackage ../games/dhewm3 {}; + + drumkv1 = callPackage ../applications/audio/drumkv1 { }; + + dwarf_fortress = callPackage_i686 ../games/dwarf-fortress { + SDL_image = pkgsi686Linux.SDL_image.override { + libpng = pkgsi686Linux.libpng12; + }; + }; + + dwarf_fortress_2014 = callPackage_i686 ../games/dwarf-fortress/df2014.nix { + SDL_image = pkgsi686Linux.SDL_image.override { + libpng = pkgsi686Linux.libpng12; + }; + }; + + dwarf_fortress_modable = appendToName "moddable" (dwarf_fortress.override { + copyDataDirectory = true; + }); + + dwarf_fortress_2014_modable = appendToName "moddable" (dwarf_fortress_2014.override { + copyDataDirectory = true; + }); + + dwarf-therapist = callPackage ../games/dwarf-therapist { }; + + d1x_rebirth = callPackage ../games/d1x-rebirth { }; + + d2x_rebirth = callPackage ../games/d2x-rebirth { }; + + eboard = callPackage ../games/eboard { }; + + eduke32 = callPackage ../games/eduke32 { }; + + egoboo = callPackage ../games/egoboo { }; + + exult = callPackage ../games/exult { }; + + flightgear = callPackage ../games/flightgear { }; + + freeciv = callPackage ../games/freeciv { }; + + freeciv_gtk = callPackage ../games/freeciv { + gtkClient = true; + sdlClient = false; + }; + + freedink = callPackage ../games/freedink { }; + + fsg = callPackage ../games/fsg { + wxGTK = wxGTK28.override { unicode = false; }; + }; + + gemrb = callPackage ../games/gemrb { }; + + gl117 = callPackage ../games/gl-117 {}; + + glestae = callPackage ../games/glestae {}; + + globulation2 = callPackage ../games/globulation {}; + + gltron = callPackage ../games/gltron { }; + + gnuchess = callPackage ../games/gnuchess { }; + + gnugo = callPackage ../games/gnugo { }; + + gparted = callPackage ../tools/misc/gparted { }; + + gsmartcontrol = callPackage ../tools/misc/gsmartcontrol { + inherit (gnome) libglademm; + }; + + gtypist = callPackage ../games/gtypist { }; + + hexen = callPackage ../games/hexen { }; + + icbm3d = callPackage ../games/icbm3d { }; + + ingen = callPackage ../applications/audio/ingen { }; + + instead = callPackage ../games/instead { + lua = lua5; + }; + + kobodeluxe = callPackage ../games/kobodeluxe { }; + + lincity = builderDefsPackage (import ../games/lincity) { + inherit (xlibs) libX11 libXext xextproto + libICE libSM xproto; + inherit libpng zlib; + }; + + lincity_ng = callPackage ../games/lincity/ng.nix {}; + + mars = callPackage ../games/mars { }; + + micropolis = callPackage ../games/micropolis { }; + + mnemosyne = callPackage ../games/mnemosyne { + inherit (pythonPackages) matplotlib cherrypy sqlite3; + }; + + naev = callPackage ../games/naev { }; + + nexuiz = callPackage ../games/nexuiz { }; + + njam = callPackage ../games/njam { }; + + oilrush = callPackage ../games/oilrush { }; + + openra = callPackage ../games/openra { }; + + openttd = callPackage ../games/openttd { + zlib = zlibStatic; + }; + + opentyrian = callPackage ../games/opentyrian { }; + + openxcom = callPackage ../games/openxcom { }; + + pingus = callPackage ../games/pingus {}; + + pioneers = callPackage ../games/pioneers { }; + + pong3d = callPackage ../games/pong3d { }; + + prboom = callPackage ../games/prboom { }; + + quake3demo = callPackage ../games/quake3/wrapper { + name = "quake3-demo-${quake3game.name}"; + description = "Demo of Quake 3 Arena, a classic first-person shooter"; + game = quake3game; + paks = [quake3demodata]; + }; + + quake3demodata = callPackage ../games/quake3/demo { }; + + quake3game = callPackage ../games/quake3/game { }; + + quantumminigolf = callPackage ../games/quantumminigolf {}; + + racer = callPackage ../games/racer { }; + + residualvm = callPackage ../games/residualvm { + openglSupport = mesaSupported; + }; + + rigsofrods = callPackage ../games/rigsofrods { + mygui = myguiSvn; + }; + + rili = callPackage ../games/rili { }; + + rogue = callPackage ../games/rogue { }; + + samplv1 = callPackage ../applications/audio/samplv1 { }; + + sauerbraten = callPackage ../games/sauerbraten {}; + + scid = callPackage ../games/scid { }; + + scummvm = callPackage ../games/scummvm { }; + + scorched3d = callPackage ../games/scorched3d { }; + + sdlmame = callPackage ../games/sdlmame { }; + + sgtpuzzles = builderDefsPackage (import ../games/sgt-puzzles) { + inherit pkgconfig fetchsvn perl gtk; + inherit (xlibs) libX11; + }; + + simutrans = callPackage ../games/simutrans { }; + + soi = callPackage ../games/soi {}; + + # You still can override by passing more arguments. + spaceOrbit = callPackage ../games/orbit { }; + + spring = callPackage ../games/spring { }; + + springLobby = callPackage ../games/spring/springlobby.nix { }; + + stardust = callPackage ../games/stardust {}; + + steam = callPackage_i686 ../games/steam {}; + + steamChrootEnv = callPackage_i686 ../games/steam/chrootenv.nix { + zenity = gnome2.zenity; + }; + + stuntrally = callPackage ../games/stuntrally { }; + + superTux = callPackage ../games/super-tux { }; + + superTuxKart = callPackage ../games/super-tux-kart { }; + + synthv1 = callPackage ../applications/audio/synthv1 { }; + + tbe = callPackage ../games/the-butterfly-effect {}; + + teetertorture = callPackage ../games/teetertorture { }; + + teeworlds = callPackage ../games/teeworlds { }; + + tennix = callPackage ../games/tennix { }; + + tibia = callPackage ../games/tibia { }; + + tintin = callPackage ../games/tintin { }; + + tpm = callPackage ../games/thePenguinMachine { }; + + tremulous = callPackage ../games/tremulous { }; + + speed_dreams = callPackage ../games/speed-dreams { + # Torcs wants to make shared libraries linked with plib libraries (it provides static). + # i686 is the only platform I know than can do that linking without plib built with -fPIC + plib = plib.override { enablePIC = !stdenv.isi686; }; + libpng = libpng12; + }; + + torcs = callPackage ../games/torcs { + # Torcs wants to make shared libraries linked with plib libraries (it provides static). + # i686 is the only platform I know than can do that linking without plib built with -fPIC + plib = plib.override { enablePIC = !stdenv.isi686; }; + }; + + trigger = callPackage ../games/trigger { }; + + typespeed = callPackage ../games/typespeed { }; + + ufoai = callPackage ../games/ufoai { }; + + ultimatestunts = callPackage ../games/ultimatestunts { }; + + ultrastardx = callPackage ../games/ultrastardx { + ffmpeg = ffmpeg_0_6; + lua = lua5; + }; + + unvanquished = callPackage ../games/unvanquished { }; + + uqm = callPackage ../games/uqm { }; + + urbanterror = callPackage ../games/urbanterror { }; + + ut2004demo = callPackage ../games/ut2004demo { }; + + vdrift = callPackage ../games/vdrift { }; + + vectoroids = callPackage ../games/vectoroids { }; + + vessel = callPackage_i686 ../games/vessel { }; + + warmux = callPackage ../games/warmux { }; + + warsow = callPackage ../games/warsow { + libjpeg = libjpeg62; + }; + + warzone2100 = callPackage ../games/warzone2100 { }; + + widelands = callPackage ../games/widelands { + lua = lua5_1; + }; + + worldofgoo_demo = callPackage ../games/worldofgoo { + demo = true; + }; + + worldofgoo = callPackage ../games/worldofgoo { }; + + xboard = callPackage ../games/xboard { }; + + xconq = callPackage ../games/xconq {}; + + # TODO: the corresponding nix file is missing + # xracer = callPackage ../games/xracer { }; + + xonotic = callPackage ../games/xonotic { }; + + xskat = callPackage ../games/xskat { }; + + xsokoban = builderDefsPackage (import ../games/xsokoban) { + inherit (xlibs) libX11 xproto libXpm libXt; + }; + + zdoom = callPackage ../games/zdoom { }; + + zod = callPackage ../games/zod { }; + + zoom = callPackage ../games/zoom { }; + + keen4 = callPackage ../games/keen4 { }; + + zeroad = callPackage ../games/0ad { }; + + ### DESKTOP ENVIRONMENTS + + cinnamon = recurseIntoAttrs rec { + callPackage = newScope pkgs.cinnamon; + inherit (gnome3) gnome_common libgnomekbd gnome-menus zenity; + + muffin = callPackage ../desktops/cinnamon/muffin.nix { } ; + + cinnamon-control-center = callPackage ../desktops/cinnamon/cinnamon-control-center.nix{ }; + + cinnamon-settings-daemon = callPackage ../desktops/cinnamon/cinnamon-settings-daemon.nix{ }; + + cinnamon-session = callPackage ../desktops/cinnamon/cinnamon-session.nix{ } ; + + cinnamon-desktop = callPackage ../desktops/cinnamon/cinnamon-desktop.nix { }; + + cinnamon-translations = callPackage ../desktops/cinnamon/cinnamon-translations.nix { }; + + cjs = callPackage ../desktops/cinnamon/cjs.nix { }; + }; + + enlightenment = callPackage ../desktops/enlightenment { }; + + e17 = recurseIntoAttrs ( + let callPackage = newScope pkgs.e17; in + import ../desktops/e17 { inherit callPackage pkgs; } + ); + + e18 = recurseIntoAttrs ( + let callPackage = newScope pkgs.e18; in + import ../desktops/e18 { inherit callPackage pkgs; } + ); + + gnome2 = callPackage ../desktops/gnome-2 { + callPackage = pkgs.newScope pkgs.gnome2; + self = pkgs.gnome2; + } // pkgs.gtkLibs // { + # Backwards compatibility; + inherit (pkgs) libsoup libwnck gtk_doc gnome_doc_utils; + }; + + gnome3 = recurseIntoAttrs (callPackage ../desktops/gnome-3/3.10 { + callPackage = pkgs.newScope pkgs.gnome3; + self = pkgs.gnome3; + }); + + gnome3_12 = recurseIntoAttrs (callPackage ../desktops/gnome-3/3.12 { + callPackage = pkgs.newScope pkgs.gnome3_12; + }); + + gnome = recurseIntoAttrs gnome2; + + hsetroot = callPackage ../tools/X11/hsetroot { }; + + kakasi = callPackage ../tools/text/kakasi { }; + + kde4 = recurseIntoAttrs pkgs.kde412; + + kde4_next = recurseIntoAttrs( lib.lowPrioSet pkgs.kde412 ); + + kde412 = kdePackagesFor (pkgs.kde412 // { + eigen = eigen2; + libusb = libusb1; + libcanberra = libcanberra_kde; + }) ../desktops/kde-4.12; + + kdePackagesFor = self: dir: + let callPackageOrig = callPackage; in + let + callPackage = newScope self; + kde4 = callPackageOrig dir { + inherit callPackage callPackageOrig; + }; + in kde4 // { + inherit kde4; + + wrapper = callPackage ../build-support/kdewrapper {}; + + recurseForRelease = true; + + akunambol = callPackage ../applications/networking/sync/akunambol { }; + + amarok = callPackage ../applications/audio/amarok { }; + + bangarang = callPackage ../applications/video/bangarang { }; + + basket = callPackage ../applications/office/basket { }; + + bluedevil = callPackage ../tools/bluetooth/bluedevil { }; + + calligra = callPackage ../applications/office/calligra { }; + + colord-kde = callPackage ../tools/misc/colord-kde { }; + + digikam = if builtins.compareVersions "4.9" kde4.release == 1 then + callPackage ../applications/graphics/digikam/2.nix { } + else + callPackage ../applications/graphics/digikam { }; + + eventlist = callPackage ../applications/office/eventlist {}; + + k3b = callPackage ../applications/misc/k3b { }; + + kadu = callPackage ../applications/networking/instant-messengers/kadu { }; + + kbibtex = callPackage ../applications/office/kbibtex { }; + + kde_gtk_config = callPackage ../tools/misc/kde-gtk-config { }; + + kde_wacomtablet = callPackage ../applications/misc/kde-wacomtablet { }; + + kdeconnect = callPackage ../applications/misc/kdeconnect { }; + + kdenlive = callPackage ../applications/video/kdenlive { mlt = mlt-qt4; }; + + kdesvn = callPackage ../applications/version-management/kdesvn { }; + + kdevelop = callPackage ../applications/editors/kdevelop { }; + + kdevplatform = callPackage ../development/libraries/kdevplatform { }; + + kdiff3 = callPackage ../tools/text/kdiff3 { }; + + kile = callPackage ../applications/editors/kile { }; + + kmplayer = callPackage ../applications/video/kmplayer { }; + + kmymoney = callPackage ../applications/office/kmymoney { }; + + kipi_plugins = callPackage ../applications/graphics/kipi-plugins { }; + + konversation = callPackage ../applications/networking/irc/konversation { }; + + kvirc = callPackage ../applications/networking/irc/kvirc { }; + + krename = callPackage ../applications/misc/krename { }; + + krusader = callPackage ../applications/misc/krusader { }; + + ksshaskpass = callPackage ../tools/security/ksshaskpass {}; + + ktorrent = callPackage ../applications/networking/p2p/ktorrent { }; + + kuickshow = callPackage ../applications/graphics/kuickshow { }; + + libalkimia = callPackage ../development/libraries/libalkimia { }; + + libktorrent = callPackage ../development/libraries/libktorrent { }; + + libkvkontakte = callPackage ../development/libraries/libkvkontakte { }; + + liblikeback = callPackage ../development/libraries/liblikeback { }; + + libmm-qt = callPackage ../development/libraries/libmm-qt { }; + + libnm-qt = callPackage ../development/libraries/libnm-qt { }; + + networkmanagement = callPackage ../tools/networking/networkmanagement { }; + + partitionManager = callPackage ../tools/misc/partition-manager { }; + + plasma-nm = callPackage ../tools/networking/plasma-nm { }; + + polkit_kde_agent = callPackage ../tools/security/polkit-kde-agent { }; + + psi = callPackage ../applications/networking/instant-messengers/psi { }; + + qtcurve = callPackage ../misc/themes/qtcurve { }; + + quassel = callPackage ../applications/networking/irc/quassel { dconf = gnome3.dconf; }; + + quasselWithoutKDE = (self.quassel.override { + withKDE = false; + tag = "-without-kde"; + }); + + quasselDaemon = (self.quassel.override { + monolithic = false; + daemon = true; + tag = "-daemon"; + }); + + quasselClient = (self.quassel.override { + monolithic = false; + client = true; + tag = "-client"; + }); + + quasselClientWithoutKDE = (self.quasselClient.override { + withKDE = false; + tag = "-client-without-kde"; + }); + + rekonq = callPackage ../applications/networking/browsers/rekonq { }; + + kwebkitpart = callPackage ../applications/networking/browsers/kwebkitpart { }; + + rsibreak = callPackage ../applications/misc/rsibreak { }; + + semnotes = callPackage ../applications/misc/semnotes { }; + + skrooge = callPackage ../applications/office/skrooge { }; + + telepathy = callPackage ../applications/networking/instant-messengers/telepathy/kde {}; + + yakuake = callPackage ../applications/misc/yakuake { }; + + zanshin = callPackage ../applications/office/zanshin { }; + + kwooty = callPackage ../applications/networking/newsreaders/kwooty { }; + }; + + redshift = callPackage ../applications/misc/redshift { + inherit (xorg) libX11 libXrandr libxcb randrproto libXxf86vm + xf86vidmodeproto; + inherit (gnome) GConf; + inherit (pythonPackages) pyxdg; + geoclue = geoclue2; + }; + + oxygen_gtk = callPackage ../misc/themes/gtk2/oxygen-gtk { }; + + gtk_engines = callPackage ../misc/themes/gtk2/gtk-engines { }; + + gtk-engine-murrine = callPackage ../misc/themes/gtk2/gtk-engine-murrine { }; + + gnome_themes_standard = gnome3.gnome_themes_standard; + + mate-icon-theme = callPackage ../misc/themes/mate-icon-theme { }; + + mate-themes = callPackage ../misc/themes/mate-themes { }; + + xfce = xfce4_10; + xfce4_10 = recurseIntoAttrs (import ../desktops/xfce { inherit pkgs newScope; }); + + + ### SCIENCE + + ### SCIENCE/GEOMETRY + + drgeo = builderDefsPackage (import ../applications/science/geometry/drgeo) { + inherit (gnome) libglade; + inherit libxml2 perl intltool libtool pkgconfig gtk; + guile = guile_1_8; + }; + + tetgen = callPackage ../applications/science/geometry/tetgen { }; + + + ### SCIENCE/BIOLOGY + + alliance = callPackage ../applications/science/electronics/alliance { + motif = lesstif; + }; + + arb = callPackage ../applications/science/biology/arb { + lesstif = lesstif93; + }; + + archimedes = callPackage ../applications/science/electronics/archimedes { }; + + biolib = callPackage ../development/libraries/science/biology/biolib { }; + + emboss = callPackage ../applications/science/biology/emboss { }; + + mrbayes = callPackage ../applications/science/biology/mrbayes { }; + + ncbiCTools = builderDefsPackage ../development/libraries/ncbi { + inherit tcsh mesa lesstif; + inherit (xlibs) libX11 libXaw xproto libXt libSM libICE + libXmu libXext; + }; + + ncbi_tools = callPackage ../applications/science/biology/ncbi-tools { }; + + paml = callPackage ../applications/science/biology/paml { }; + + pal2nal = callPackage ../applications/science/biology/pal2nal { }; + + plink = callPackage ../applications/science/biology/plink/default.nix { }; + + + ### SCIENCE/MATH + + arpack = callPackage ../development/libraries/science/math/arpack { }; + + atlas = callPackage ../development/libraries/science/math/atlas { + # The build process measures CPU capabilities and optimizes the + # library to perform best on that particular machine. That is a + # great feature, but it's of limited use with pre-built binaries + # coming from a central build farm. + tolerateCpuTimingInaccuracy = true; + }; + + blas = callPackage ../development/libraries/science/math/blas { }; + + content = builderDefsPackage ../applications/science/math/content { + inherit mesa lesstif; + inherit (xlibs) libX11 libXaw xproto libXt libSM libICE + libXmu libXext libXcursor; + }; + + jags = callPackage ../applications/science/math/jags { }; + + liblapack = callPackage ../development/libraries/science/math/liblapack { }; + liblapack_3_5_0 = callPackage ../development/libraries/science/math/liblapack/3.5.0.nix { }; + + liblbfgs = callPackage ../development/libraries/science/math/liblbfgs { }; + + # julia is pinned to specific versions of openblas, so keep old versions + # until they aren't needed. The un-versioned attribute may continue to track + # upstream development. + openblas = callPackage ../development/libraries/science/math/openblas { + liblapack = liblapack_3_5_0; + }; + openblas_0_2_10 = callPackage ../development/libraries/science/math/openblas/0.2.10.nix { + liblapack = liblapack_3_5_0; + }; + openblas_0_2_2 = callPackage ../development/libraries/science/math/openblas/0.2.2.nix { }; + + mathematica = callPackage ../applications/science/math/mathematica { }; + + sage = callPackage ../applications/science/math/sage { }; + + ### SCIENCE/MOLECULAR-DYNAMICS + + gromacs = callPackage ../applications/science/molecular-dynamics/gromacs { + singlePrec = true; + fftw = fftwSinglePrec; + cmake = cmakeCurses; + }; + + gromacsDouble = lowPrio (callPackage ../applications/science/molecular-dynamics/gromacs { + singlePrec = false; + fftw = fftw; + cmake = cmakeCurses; + }); + + + ### SCIENCE/LOGIC + + abc-verifier = callPackage ../applications/science/logic/abc {}; + + alt-ergo = callPackage ../applications/science/logic/alt-ergo {}; + + coq = callPackage ../applications/science/logic/coq { + inherit (ocamlPackages) findlib lablgtk; + camlp5 = ocamlPackages.camlp5_transitional; + }; + + coq_HEAD = callPackage ../applications/science/logic/coq/HEAD.nix { + inherit (ocamlPackages) findlib lablgtk; + camlp5 = ocamlPackages.camlp5_transitional; + }; + + coq_8_3 = callPackage ../applications/science/logic/coq/8.3.nix { + inherit (ocamlPackages) findlib lablgtk; + camlp5 = ocamlPackages.camlp5_transitional; + }; + + cvc3 = callPackage ../applications/science/logic/cvc3 {}; + + ekrhyper = callPackage ../applications/science/logic/ekrhyper {}; + + eprover = callPackage ../applications/science/logic/eprover { + texLive = texLiveAggregationFun { + paths = [ + texLive texLiveExtra + ]; + }; + }; + + ginac = callPackage ../applications/science/math/ginac { }; + + hol = callPackage ../applications/science/logic/hol { }; + + hol_light = callPackage ../applications/science/logic/hol_light { + inherit (ocamlPackages) findlib; + camlp5 = ocamlPackages.camlp5_strict; + }; + + isabelle = import ../applications/science/logic/isabelle { + inherit (pkgs) stdenv fetchurl nettools perl polyml; + inherit (pkgs.emacs24Packages) proofgeneral; + }; + + iprover = callPackage ../applications/science/logic/iprover {}; + + leo2 = callPackage ../applications/science/logic/leo2 {}; + + logisim = callPackage ../applications/science/logic/logisim {}; + + ltl2ba = callPackage ../applications/science/logic/ltl2ba {}; + + matita = callPackage ../applications/science/logic/matita { + ocaml = ocaml_3_11_2; + inherit (ocamlPackages_3_11_2) findlib lablgtk ocaml_expat gmetadom ocaml_http + lablgtkmathview ocaml_mysql ocaml_sqlite3 ocamlnet camlzip ocaml_pcre; + ulex08 = ocamlPackages_3_11_2.ulex08.override { camlp5 = ocamlPackages_3_11_2.camlp5_5_transitional; }; + }; + + matita_130312 = lowPrio (callPackage ../applications/science/logic/matita/130312.nix { + inherit (ocamlPackages) findlib lablgtk ocaml_expat gmetadom ocaml_http + ocaml_mysql ocamlnet ulex08 camlzip ocaml_pcre; + }); + + minisat = callPackage ../applications/science/logic/minisat {}; + + opensmt = callPackage ../applications/science/logic/opensmt { }; + + otter = callPackage ../applications/science/logic/otter {}; + + picosat = callPackage ../applications/science/logic/picosat {}; + + prooftree = callPackage ../applications/science/logic/prooftree { + inherit (ocamlPackages) findlib lablgtk; + camlp5 = ocamlPackages.camlp5_transitional; + }; + + prover9 = callPackage ../applications/science/logic/prover9 { }; + + satallax = callPackage ../applications/science/logic/satallax {}; + + spass = callPackage ../applications/science/logic/spass {}; + + ssreflect = callPackage ../applications/science/logic/ssreflect { + camlp5 = ocamlPackages.camlp5_transitional; + }; + + tptp = callPackage ../applications/science/logic/tptp {}; + + twelf = callPackage ../applications/science/logic/twelf { + smlnj = if stdenv.isDarwin + then smlnjBootstrap + else smlnj; + }; + + verifast = callPackage ../applications/science/logic/verifast {}; + + why3 = callPackage ../applications/science/logic/why3 {}; + + yices = callPackage ../applications/science/logic/yices {}; + + z3 = callPackage ../applications/science/logic/z3 {}; + + boolector = boolector15; + boolector15 = callPackage ../applications/science/logic/boolector {}; + boolector16 = lowPrio (callPackage ../applications/science/logic/boolector { + useV16 = true; + }); + + ### SCIENCE / ELECTRONICS + + eagle = callPackage_i686 ../applications/science/electronics/eagle { }; + + caneda = callPackage ../applications/science/electronics/caneda { }; + + gtkwave = callPackage ../applications/science/electronics/gtkwave { }; + + kicad = callPackage ../applications/science/electronics/kicad { + wxGTK = wxGTK29; + }; + + ngspice = callPackage ../applications/science/electronics/ngspice { }; + + qucs = callPackage ../applications/science/electronics/qucs { }; + + xoscope = callPackage ../applications/science/electronics/xoscope { }; + + + ### SCIENCE / MATH + + ecm = callPackage ../applications/science/math/ecm { }; + + eukleides = callPackage ../applications/science/math/eukleides { + texinfo = texinfo4; + }; + + fricas = callPackage ../applications/science/math/fricas { }; + + gap = callPackage ../applications/science/math/gap { }; + + maxima = callPackage ../applications/science/math/maxima { }; + + wxmaxima = callPackage ../applications/science/math/wxmaxima { }; + + pari = callPackage ../applications/science/math/pari {}; + + pspp = callPackage ../applications/science/math/pssp { + inherit (gnome) libglade gtksourceview; + }; + + singular = callPackage ../applications/science/math/singular {}; + + scilab = callPackage ../applications/science/math/scilab { + withXaw3d = false; + withTk = true; + withGtk = false; + withOCaml = true; + withX = true; + }; + + msieve = callPackage ../applications/science/math/msieve { }; + + weka = callPackage ../applications/science/math/weka { }; + + yad = callPackage ../tools/misc/yad { }; + + yacas = callPackage ../applications/science/math/yacas { }; + + speedcrunch = callPackage ../applications/science/math/speedcrunch { + qt = qt4; + cmake = cmakeCurses; + }; + + + ### SCIENCE / MISC + + boinc = callPackage ../applications/science/misc/boinc { }; + + celestia = callPackage ../applications/science/astronomy/celestia { + lua = lua5_1; + inherit (xlibs) libXmu; + inherit (pkgs.gnome) gtkglext; + }; + + fityk = callPackage ../applications/science/misc/fityk { }; + + gravit = callPackage ../applications/science/astronomy/gravit { }; + + golly = callPackage ../applications/science/misc/golly { }; + + megam = callPackage ../applications/science/misc/megam { }; + + root = callPackage ../applications/science/misc/root { }; + + simgrid = callPackage ../applications/science/misc/simgrid { }; + + spyder = callPackage ../applications/science/spyder { + inherit (pythonPackages) pyflakes rope sphinx numpy scipy matplotlib; # recommended + inherit (pythonPackages) ipython pep8; # optional + inherit pylint; + }; + + stellarium = callPackage ../applications/science/astronomy/stellarium { }; + + tulip = callPackage ../applications/science/misc/tulip { }; + + vite = callPackage ../applications/science/misc/vite { }; + + xplanet = callPackage ../applications/science/astronomy/xplanet { }; + + ### MISC + + atari800 = callPackage ../misc/emulators/atari800 { }; + + ataripp = callPackage ../misc/emulators/atari++ { }; + + auctex = callPackage ../tools/typesetting/tex/auctex { }; + + beep = callPackage ../misc/beep { }; + + cups = callPackage ../misc/cups { libusb = libusb1; }; + + cups_pdf_filter = callPackage ../misc/cups/pdf-filter.nix { }; + + gutenprint = callPackage ../misc/drivers/gutenprint { }; + + gutenprintBin = callPackage ../misc/drivers/gutenprint/bin.nix { }; + + cupsBjnp = callPackage ../misc/cups/drivers/cups-bjnp { }; + + darcnes = callPackage ../misc/emulators/darcnes { }; + + dbacl = callPackage ../tools/misc/dbacl { }; + + dblatex = callPackage ../tools/typesetting/tex/dblatex { + enableAllFeatures = false; + }; + + dblatexFull = appendToName "full" (dblatex.override { + enableAllFeatures = true; + }); + + dosbox = callPackage ../misc/emulators/dosbox { }; + + dpkg = callPackage ../tools/package-management/dpkg { }; + + ekiga = newScope pkgs.gnome ../applications/networking/instant-messengers/ekiga { }; + + emulationstation = callPackage ../misc/emulators/emulationstation { }; + + electricsheep = callPackage ../misc/screensavers/electricsheep { }; + + fakenes = callPackage ../misc/emulators/fakenes { }; + + fceux = callPackage ../misc/emulators/fceux { }; + + foldingathome = callPackage ../misc/foldingathome { }; + + foo2zjs = callPackage ../misc/drivers/foo2zjs {}; + + foomatic_filters = callPackage ../misc/drivers/foomatic-filters {}; + + freestyle = callPackage ../misc/freestyle { }; + + gajim = callPackage ../applications/networking/instant-messengers/gajim { }; + + gammu = callPackage ../applications/misc/gammu { }; + + gensgs = callPackage_i686 ../misc/emulators/gens-gs { }; + + ghostscript = callPackage ../misc/ghostscript { + x11Support = false; + cupsSupport = config.ghostscript.cups or (!stdenv.isDarwin); + gnuFork = config.ghostscript.gnu or false; + }; + + ghostscriptX = appendToName "with-X" (ghostscript.override { + x11Support = true; + }); + + guix = callPackage ../tools/package-management/guix { }; + + gxemul = callPackage ../misc/gxemul { }; + + hatari = callPackage ../misc/emulators/hatari { }; + + hplip = callPackage ../misc/drivers/hplip { }; + + hplipWithPlugin = hplip.override { withPlugin = true; }; + + # using the new configuration style proposal which is unstable + jack1 = callPackage ../misc/jackaudio/jack1.nix { }; + + jack2 = callPackage ../misc/jackaudio { }; + + keynav = callPackage ../tools/X11/keynav { }; + + lazylist = callPackage ../tools/typesetting/tex/lazylist { }; + + lilypond = callPackage ../misc/lilypond { guile = guile_1_8; }; + + martyr = callPackage ../development/libraries/martyr { }; + + maven = maven3; + maven3 = callPackage ../misc/maven { jdk = openjdk; }; + + mess = callPackage ../misc/emulators/mess { + inherit (pkgs.gnome) GConf; + }; + + mupen64plus = callPackage ../misc/emulators/mupen64plus { }; + + mupen64plus1_5 = callPackage ../misc/emulators/mupen64plus/1.5.nix { }; + + nix = nixStable; + + nixStable = callPackage ../tools/package-management/nix { + storeDir = config.nix.storeDir or "/nix/store"; + stateDir = config.nix.stateDir or "/nix/var"; + }; + + nixUnstable = callPackage ../tools/package-management/nix/unstable.nix { + storeDir = config.nix.storeDir or "/nix/store"; + stateDir = config.nix.stateDir or "/nix/var"; + }; + + nixops = callPackage ../tools/package-management/nixops { }; + + nix-prefetch-scripts = callPackage ../tools/package-management/nix-prefetch-scripts { }; + + nix-repl = callPackage ../tools/package-management/nix-repl { }; + + nut = callPackage ../applications/misc/nut { }; + + solfege = callPackage ../misc/solfege { + pysqlite = pkgs.pythonPackages.sqlite3; + }; + + disnix = callPackage ../tools/package-management/disnix { }; + + dysnomia = callPackage ../tools/package-management/disnix/dysnomia { + enableApacheWebApplication = config.disnix.enableApacheWebApplication or false; + enableAxis2WebService = config.disnix.enableAxis2WebService or false; + enableEjabberdDump = config.disnix.enableEjabberdDump or false; + enableMySQLDatabase = config.disnix.enableMySQLDatabase or false; + enablePostgreSQLDatabase = config.disnix.enablePostgreSQLDatabase or false; + enableSubversionRepository = config.disnix.enableSubversionRepository or false; + enableTomcatWebApplication = config.disnix.enableTomcatWebApplication or false; + }; + + disnixos = callPackage ../tools/package-management/disnix/disnixos { }; + + DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService { }; + + latex2html = callPackage ../tools/typesetting/tex/latex2html/default.nix { + tex = tetex; + }; + + lkproof = callPackage ../tools/typesetting/tex/lkproof { }; + + mysqlWorkbench = newScope gnome ../applications/misc/mysql-workbench { + lua = lua5; + inherit (pythonPackages) pexpect paramiko; + }; + + robomongo = callPackage ../applications/misc/robomongo { }; + + opkg = callPackage ../tools/package-management/opkg { }; + + pgadmin = callPackage ../applications/misc/pgadmin { }; + + pgf = pgf2; + + # Keep the old PGF since some documents don't render properly with + # the new one. + pgf1 = callPackage ../tools/typesetting/tex/pgf/1.x.nix { }; + + pgf2 = callPackage ../tools/typesetting/tex/pgf/2.x.nix { }; + + pgfplots = callPackage ../tools/typesetting/tex/pgfplots { }; + + pjsip = callPackage ../applications/networking/pjsip { }; + + polytable = callPackage ../tools/typesetting/tex/polytable { }; + + PPSSPP = callPackage ../misc/emulators/ppsspp { }; + + uae = callPackage ../misc/emulators/uae { }; + + putty = callPackage ../applications/networking/remote/putty { }; + + retroarch = callPackage ../misc/emulators/retroarch { }; + + rssglx = callPackage ../misc/screensavers/rss-glx { }; + + xlockmore = callPackage ../misc/screensavers/xlockmore { }; + + samsungUnifiedLinuxDriver = import ../misc/cups/drivers/samsung { + inherit fetchurl stdenv; + inherit cups ghostscript glibc patchelf; + gcc = import ../development/compilers/gcc/4.4 { + inherit stdenv fetchurl gmp mpfr noSysDirs gettext which; + texinfo = texinfo4; + profiledCompiler = true; + }; + }; + + saneBackends = callPackage ../applications/graphics/sane/backends.nix { + gt68xxFirmware = config.sane.gt68xxFirmware or null; + snapscanFirmware = config.sane.snapscanFirmware or null; + hotplugSupport = config.sane.hotplugSupport or true; + libusb = libusb1; + }; + + saneBackendsGit = callPackage ../applications/graphics/sane/backends-git.nix { + gt68xxFirmware = config.sane.gt68xxFirmware or null; + snapscanFirmware = config.sane.snapscanFirmware or null; + hotplugSupport = config.sane.hotplugSupport or true; + }; + + mkSaneConfig = callPackage ../applications/graphics/sane/config.nix { }; + + saneFrontends = callPackage ../applications/graphics/sane/frontends.nix { }; + + seafile-shared = callPackage ../misc/seafile-shared { }; + + slock = callPackage ../misc/screensavers/slock { }; + + sourceAndTags = import ../misc/source-and-tags { + inherit pkgs stdenv unzip lib ctags; + hasktags = haskellPackages.hasktags; + }; + + splix = callPackage ../misc/cups/drivers/splix { }; + + streamripper = callPackage ../applications/audio/streamripper { }; + + sqsh = callPackage ../development/tools/sqsh { }; + + tetex = callPackage ../tools/typesetting/tex/tetex { libpng = libpng12; }; + + tex4ht = callPackage ../tools/typesetting/tex/tex4ht { }; + + texFunctions = import ../tools/typesetting/tex/nix pkgs; + + texLive = builderDefsPackage (import ../tools/typesetting/tex/texlive) { + inherit builderDefs zlib bzip2 ncurses libpng ed lesstif ruby potrace + gd t1lib freetype icu perl expat curl xz pkgconfig zziplib texinfo + libjpeg bison python fontconfig flex poppler libpaper graphite2 + makeWrapper; + inherit (xlibs) libXaw libX11 xproto libXt libXpm + libXmu libXext xextproto libSM libICE; + ghostscript = ghostscriptX; + harfbuzz = harfbuzz.override { + withIcu = true; withGraphite2 = true; + }; + }; + + texLiveFull = lib.setName "texlive-full" (texLiveAggregationFun { + paths = [ texLive texLiveExtra lmodern texLiveCMSuper texLiveLatexXColor + texLivePGF texLiveBeamer texLiveModerncv tipa tex4ht texinfo + texLiveModerntimeline ]; + }); + + /* Look in configurations/misc/raskin.nix for usage example (around revisions + where TeXLive was added) + + (texLiveAggregationFun { + paths = [texLive texLiveExtra texLiveCMSuper + texLiveBeamer + ]; + }) + + You need to use texLiveAggregationFun to regenerate, say, ls-R (TeX-related file list) + Just installing a few packages doesn't work. + */ + texLiveAggregationFun = params: + builderDefsPackage (import ../tools/typesetting/tex/texlive/aggregate.nix) + ({inherit poppler perl makeWrapper;} // params); + + texDisser = callPackage ../tools/typesetting/tex/disser {}; + + texLiveContext = builderDefsPackage (import ../tools/typesetting/tex/texlive/context.nix) { + inherit texLive; + }; + + texLiveExtra = builderDefsPackage (import ../tools/typesetting/tex/texlive/extra.nix) { + inherit texLive xz; + }; + + texLiveCMSuper = builderDefsPackage (import ../tools/typesetting/tex/texlive/cm-super.nix) { + inherit texLive; + }; + + texLiveLatexXColor = builderDefsPackage (import ../tools/typesetting/tex/texlive/xcolor.nix) { + inherit texLive; + }; + + texLivePGF = builderDefsPackage (import ../tools/typesetting/tex/texlive/pgf.nix) { + inherit texLiveLatexXColor texLive; + }; + + texLiveBeamer = builderDefsPackage (import ../tools/typesetting/tex/texlive/beamer.nix) { + inherit texLiveLatexXColor texLivePGF texLive; + }; + + texLiveModerncv = builderDefsPackage (import ../tools/typesetting/tex/texlive/moderncv.nix) { + inherit texLive unzip; + }; + + texLiveModerntimeline = builderDefsPackage (import ../tools/typesetting/tex/texlive/moderntimeline.nix) { + inherit texLive unzip; + }; + + thermald = callPackage ../tools/system/thermald { }; + + thinkfan = callPackage ../tools/system/thinkfan { }; + + vice = callPackage ../misc/emulators/vice { + libX11 = xlibs.libX11; + giflib = giflib_4_1; + }; + + viewnior = callPackage ../applications/graphics/viewnior { }; + + vimPlugins = recurseIntoAttrs (callPackage ../misc/vim-plugins { }); + + vimprobable2 = callPackage ../applications/networking/browsers/vimprobable2 { + webkit = webkitgtk2; + }; + + vimprobable2Wrapper = wrapFirefox + { browser = vimprobable2; browserName = "vimprobable2"; desktopName = "Vimprobable2"; + }; + + vimb = callPackage ../applications/networking/browsers/vimb { + webkit = webkitgtk2; + }; + + vimbWrapper = wrapFirefox { + browser = vimb; + browserName = "vimb"; + desktopName = "Vimb"; + }; + + VisualBoyAdvance = callPackage ../misc/emulators/VisualBoyAdvance { }; + + # Wine cannot be built in 64-bit; use a 32-bit build instead. + wineStable = callPackage_i686 ../misc/emulators/wine/stable.nix { + bison = bison2; + }; + + wineUnstable = lowPrio (callPackage_i686 ../misc/emulators/wine/unstable.nix { + bison = bison2; + }); + + wine = wineStable; + + winetricks = callPackage ../misc/emulators/wine/winetricks.nix { + inherit (gnome2) zenity; + }; + + wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { }; + + x2x = callPackage ../tools/X11/x2x { }; + + xboxdrv = callPackage ../misc/drivers/xboxdrv { }; + + xinput_calibrator = callPackage ../tools/X11/xinput_calibrator { + inherit (xlibs) libXi inputproto; + }; + + xosd = callPackage ../misc/xosd { }; + + xsane = callPackage ../applications/graphics/sane/xsane.nix { + libpng = libpng12; + saneBackends = saneBackends; + }; + + yafc = callPackage ../applications/networking/yafc { }; + + yandex-disk = callPackage ../tools/filesystems/yandex-disk { }; + + myEnvFun = import ../misc/my-env { + inherit substituteAll pkgs; + inherit (stdenv) mkDerivation; + }; + + # patoline requires a rather large ocaml compilation environment. + # this is why it is build as an environment and not just a normal package. + # remark : the emacs mode is also installed, but you have to adjust your load-path. + PatolineEnv = pack: myEnvFun { + name = "patoline"; + buildInputs = [ stdenv ncurses mesa freeglut libzip gcc + pack.ocaml pack.findlib pack.camomile + pack.dypgen pack.ocaml_sqlite3 pack.camlzip + pack.lablgtk pack.camlimages pack.ocaml_cairo + pack.lablgl pack.ocamlnet pack.cryptokit + pack.ocaml_pcre pack.patoline + ]; + # this is to circumvent the bug with libgcc_s.so.1 which is + # not found when using thread + extraCmds = '' + LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${gcc.gcc}/lib + export LD_LIBRARY_PATH + ''; + }; + + patoline = PatolineEnv ocamlPackages_4_00_1; + + znc = callPackage ../applications/networking/znc { }; + + zncModules = recurseIntoAttrs ( + callPackage ../applications/networking/znc/modules.nix { } + ); + + zsnes = callPackage_i686 ../misc/emulators/zsnes { }; + + snes9x-gtk = callPackage ../misc/emulators/snes9x-gtk { }; + + higan = callPackage ../misc/emulators/higan { }; + + misc = import ../misc/misc.nix { inherit pkgs stdenv; }; + + bullet = callPackage ../development/libraries/bullet {}; + + dart = callPackage ../development/interpreters/dart { }; + + httrack = callPackage ../tools/backup/httrack { }; + + mg = callPackage ../applications/editors/mg { }; + + + # Attributes for backward compatibility. + adobeReader = adobe-reader; + asciidocFull = asciidoc-full; # added 2014-06-22 + lttngTools = lttng-tools; # added 2014-07-31 + lttngUst = lttng-ust; # added 2014-07-31 + + +}; in self; in pkgs From df3061295e6a48920400936917e60755fc5d4769 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 11:09:05 +0400 Subject: [PATCH 211/789] Specify correct version for Symbola --- pkgs/data/fonts/symbola/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/data/fonts/symbola/default.nix b/pkgs/data/fonts/symbola/default.nix index b324e52d021..70375a22bae 100644 --- a/pkgs/data/fonts/symbola/default.nix +++ b/pkgs/data/fonts/symbola/default.nix @@ -1,7 +1,7 @@ {stdenv, fetchurl, unzip }: stdenv.mkDerivation rec { - name = "symbola-7.12"; + name = "symbola-7.17"; src = fetchurl { url = "http://users.teilar.gr/~g1951d/Symbola.zip"; From d48a7a17df09248112efccf2a166b75bb7b2021e Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 28 Aug 2014 15:27:20 -0700 Subject: [PATCH 212/789] nixos/network-interfaces: Sanitize sys-subsystem device names Currently, nixos will allow for interface names with special characters such as the hyphen to be used. This presents a problem when using systemd device names as the namespace paths are separated using hyphens. Within systemd, if a device name has a hyphen it should be replaced with the escape sequence \x2d. This patch sanitizes all interface names before they are used in a systemd device string. --- nixos/modules/tasks/network-interfaces.nix | 29 +++++++++++++--------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index ca7a5ab77ad..868039177d8 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -1,6 +1,7 @@ -{ config, lib, pkgs, ... }: +{ config, lib, pkgs, utils, ... }: with lib; +with utils; let @@ -10,6 +11,10 @@ let hasSits = cfg.sits != { }; hasBonds = cfg.bonds != { }; + # We must escape interfaces due to the systemd interpretation + subsystemDevice = interface: + "sys-subsystem-net-devices-${escapeSystemdPath interface}.device"; + addrOpts = v: assert v == 4 || v == 6; { @@ -603,8 +608,8 @@ in nameValuePair "${i.name}-cfg" { description = "Configuration of ${i.name}"; wantedBy = [ "network-interfaces.target" ]; - bindsTo = [ "sys-subsystem-net-devices-${i.name}.device" ]; - after = [ "sys-subsystem-net-devices-${i.name}.device" ]; + bindsTo = [ (subsystemDevice i.name) ]; + after = [ (subsystemDevice i.name) ]; serviceConfig.Type = "oneshot"; serviceConfig.RemainAfterExit = true; path = [ pkgs.iproute pkgs.gawk ]; @@ -684,7 +689,7 @@ in { description = "Virtual Network Interface ${i.name}"; requires = [ "dev-net-tun.device" ]; after = [ "dev-net-tun.device" ]; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${i.name}.device" ]; + wantedBy = [ "network.target" (subsystemDevice i.name) ]; path = [ pkgs.iproute ]; serviceConfig = { Type = "oneshot"; @@ -702,10 +707,10 @@ in createBridgeDevice = n: v: nameValuePair "${n}-netdev" (let - deps = map (i: "sys-subsystem-net-devices-${i}.device") v.interfaces; + deps = map subsystemDevice v.interfaces; in { description = "Bridge Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; @@ -742,10 +747,10 @@ in createBondDevice = n: v: nameValuePair "${n}-netdev" (let - deps = map (i: "sys-subsystem-net-devices-${i}.device") v.interfaces; + deps = map subsystemDevice v.interfaces; in { description = "Bond Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; @@ -781,10 +786,10 @@ in createSitDevice = n: v: nameValuePair "${n}-netdev" (let - deps = optional (v.dev != null) "sys-subsystem-net-devices-${v.dev}.device"; + deps = optional (v.dev != null) (subsystemDevice v.dev); in { description = "6-to-4 Tunnel Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; @@ -807,10 +812,10 @@ in createVlanDevice = n: v: nameValuePair "${n}-netdev" (let - deps = [ "sys-subsystem-net-devices-${v.interface}.device" ]; + deps = [ (subsystemDevice v.interface) ]; in { description = "Vlan Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; From 18c5119f18d7ef9f3053e05b2b41f1c006e99994 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 11:36:37 +0400 Subject: [PATCH 213/789] Fix maintainers entry --- pkgs/applications/misc/vym/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/vym/default.nix b/pkgs/applications/misc/vym/default.nix index c23be51c3e8..c2dc9aed44a 100644 --- a/pkgs/applications/misc/vym/default.nix +++ b/pkgs/applications/misc/vym/default.nix @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { ''; homepage = http://www.insilmaril.de/vym/; license = stdenv.lib.licenses.gpl2; - maintainer = stdenv.lib.maintainers.AndersonTorres; + maintainer = [ stdenv.lib.maintainers.AndersonTorres ]; platforms = stdenv.lib.platforms.linux; }; } From 4dac1990d7c5f7bd7a512872d1420d86bf4acc54 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Wed, 3 Sep 2014 11:47:47 +0400 Subject: [PATCH 214/789] FME: New Package #3695 --- pkgs/applications/misc/fme/default.nix | 34 + pkgs/top-level/all-packages.nix | 5 + pkgs/top-level/all-packages.nix.orig | 11653 ----------------------- 3 files changed, 39 insertions(+), 11653 deletions(-) create mode 100644 pkgs/applications/misc/fme/default.nix delete mode 100644 pkgs/top-level/all-packages.nix.orig diff --git a/pkgs/applications/misc/fme/default.nix b/pkgs/applications/misc/fme/default.nix new file mode 100644 index 00000000000..93abd13da0c --- /dev/null +++ b/pkgs/applications/misc/fme/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, pkgconfig, autoconf, automake, gettext +, fluxbox, bc, gtkmm, glibmm, libglademm, libsigcxx +}: + +stdenv.mkDerivation rec{ + + name = "fme-${version}"; + version = "1.1.3"; + + src = fetchurl { + url = "https://github.com/rdehouss/fme/archive/v${version}.tar.gz"; + sha256 = "d1c81a6a38c0faad02943ad65d6d0314bd205c6de841669a2efe43e4c503e63d"; + }; + + buildInputs = [ pkgconfig autoconf automake gettext fluxbox bc gtkmm glibmm libglademm libsigcxx ]; + + preConfigure = '' + ./autogen.sh + ''; + + meta = { + description = "Editor for Fluxbox menus"; + longDescription = '' + Fluxbox Menu Editor is a menu editor for the Window Manager Fluxbox written in C++ + with the libraries Gtkmm, Glibmm, libglademm and gettext for internationalization. + Its user-friendly interface will help you to edit, delete, move (Drag and Drop) + a row, a submenu, etc very easily. + ''; + homepage = https://github.com/rdehouss/fme/; + license = stdenv.lib.licenses.gpl2; + maintainers = [ stdenv.lib.maintainers.AndersonTorres ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b7462553522..15d4061b29d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8844,6 +8844,11 @@ let fluxbox = callPackage ../applications/window-managers/fluxbox { }; + fme = callPackage ../applications/misc/fme { + inherit (gnome) libglademm; + inherit pkgconfig autoconf automake gettext; + }; + freecad = callPackage ../applications/graphics/freecad { opencascade = opencascade_6_5; inherit (pythonPackages) matplotlib pycollada; diff --git a/pkgs/top-level/all-packages.nix.orig b/pkgs/top-level/all-packages.nix.orig deleted file mode 100644 index 6e5caa3af9e..00000000000 --- a/pkgs/top-level/all-packages.nix.orig +++ /dev/null @@ -1,11653 +0,0 @@ -/* This file composes the Nix Packages collection. That is, it - imports the functions that build the various packages, and calls - them with appropriate arguments. The result is a set of all the - packages in the Nix Packages collection for some particular - platform. */ - - -{ # The system (e.g., `i686-linux') for which to build the packages. - system ? builtins.currentSystem - -, # The standard environment to use. Only used for bootstrapping. If - # null, the default standard environment is used. - bootStdenv ? null - -, # Non-GNU/Linux OSes are currently "impure" platforms, with their libc - # outside of the store. Thus, GCC, GFortran, & co. must always look for - # files in standard system directories (/usr/include, etc.) - noSysDirs ? (system != "x86_64-darwin" - && system != "x86_64-freebsd" && system != "i686-freebsd" - && system != "x86_64-kfreebsd-gnu") - - # More flags for the bootstrapping of stdenv. -, gccWithCC ? true -, gccWithProfiling ? true - -, # Allow a configuration attribute set to be passed in as an - # argument. Otherwise, it's read from $NIXPKGS_CONFIG or - # ~/.nixpkgs/config.nix. - config ? null - -, crossSystem ? null -, platform ? null -}: - - -let config_ = config; platform_ = platform; in # rename the function arguments - -let - - lib = import ../../lib; - - # The contents of the configuration file found at $NIXPKGS_CONFIG or - # $HOME/.nixpkgs/config.nix. - # for NIXOS (nixos-rebuild): use nixpkgs.config option - config = - let - toPath = builtins.toPath; - getEnv = x: if builtins ? getEnv then builtins.getEnv x else ""; - pathExists = name: - builtins ? pathExists && builtins.pathExists (toPath name); - - configFile = getEnv "NIXPKGS_CONFIG"; - homeDir = getEnv "HOME"; - configFile2 = homeDir + "/.nixpkgs/config.nix"; - - configExpr = - if config_ != null then config_ - else if configFile != "" && pathExists configFile then import (toPath configFile) - else if homeDir != "" && pathExists configFile2 then import (toPath configFile2) - else {}; - - in - # allow both: - # { /* the config */ } and - # { pkgs, ... } : { /* the config */ } - if builtins.isFunction configExpr - then configExpr { inherit pkgs; } - else configExpr; - - # Allow setting the platform in the config file. Otherwise, let's use a reasonable default (pc) - - platformAuto = let - platforms = (import ./platforms.nix); - in - if system == "armv6l-linux" then platforms.raspberrypi - else if system == "armv5tel-linux" then platforms.sheevaplug - else if system == "mips64el-linux" then platforms.fuloong2f_n32 - else if system == "x86_64-linux" then platforms.pc64 - else if system == "i686-linux" then platforms.pc32 - else platforms.pcBase; - - platform = if platform_ != null then platform_ - else config.platform or platformAuto; - - # Helper functions that are exported through `pkgs'. - helperFunctions = - stdenvAdapters // - (import ../build-support/trivial-builders.nix { inherit (pkgs) stdenv; inherit (pkgs.xorg) lndir; }); - - stdenvAdapters = - import ../stdenv/adapters.nix pkgs; - - - # Allow packages to be overriden globally via the `packageOverrides' - # configuration option, which must be a function that takes `pkgs' - # as an argument and returns a set of new or overriden packages. - # The `packageOverrides' function is called with the *original* - # (un-overriden) set of packages, allowing packageOverrides - # attributes to refer to the original attributes (e.g. "foo = - # ... pkgs.foo ..."). - pkgs = applyGlobalOverrides (config.packageOverrides or (pkgs: {})); - - - # Return the complete set of packages, after applying the overrides - # returned by the `overrider' function (see above). Warning: this - # function is very expensive! - applyGlobalOverrides = overrider: - let - # Call the overrider function. We don't want stdenv overrides - # in the case of cross-building, or otherwise the basic - # overrided packages will not be built with the crossStdenv - # adapter. - overrides = overrider pkgsOrig // - (lib.optionalAttrs (pkgsOrig.stdenv ? overrides && crossSystem == null) (pkgsOrig.stdenv.overrides pkgsOrig)); - - # The un-overriden packages, passed to `overrider'. - pkgsOrig = pkgsFun pkgs {}; - - # The overriden, final packages. - pkgs = pkgsFun pkgs overrides; - in pkgs; - - - # The package compositions. Yes, this isn't properly indented. - pkgsFun = pkgs: overrides: - with helperFunctions; - let defaultScope = pkgs // pkgs.xorg; self = self_ // overrides; - self_ = with self; helperFunctions // { - - # Make some arguments passed to all-packages.nix available - inherit system platform; - - # Allow callPackage to fill in the pkgs argument - inherit pkgs; - - - # We use `callPackage' to be able to omit function arguments that - # can be obtained from `pkgs' or `pkgs.xorg' (i.e. `defaultScope'). - # Use `newScope' for sets of packages in `pkgs' (see e.g. `gnome' - # below). - callPackage = newScope {}; - - newScope = extra: lib.callPackageWith (defaultScope // extra); - - - # Override system. This is useful to build i686 packages on x86_64-linux. - forceSystem = system: kernel: (import ./all-packages.nix) { - inherit system; - platform = platform // { kernelArch = kernel; }; - inherit bootStdenv noSysDirs gccWithCC gccWithProfiling config - crossSystem; - }; - - - # Used by wine, firefox with debugging version of Flash, ... - pkgsi686Linux = forceSystem "i686-linux" "i386"; - - callPackage_i686 = lib.callPackageWith (pkgsi686Linux // pkgsi686Linux.xorg); - - - # For convenience, allow callers to get the path to Nixpkgs. - path = ../..; - - - ### Symbolic names. - - x11 = xlibsWrapper; - - # `xlibs' is the set of X library components. This used to be the - # old modular X llibraries project (called `xlibs') but now it's just - # the set of packages in the modular X.org tree (which also includes - # non-library components like the server, drivers, fonts, etc.). - xlibs = xorg // {xlibs = xlibsWrapper;}; - - - ### Helper functions. - - inherit lib config stdenvAdapters; - - inherit (lib) lowPrio hiPrio appendToName makeOverridable; - inherit (misc) versionedDerivation; - - # Applying this to an attribute set will cause nix-env to look - # inside the set for derivations. - recurseIntoAttrs = attrs: attrs // { recurseForDerivations = true; }; - - builderDefs = lib.composedArgsAndFun (import ../build-support/builder-defs/builder-defs.nix) { - inherit stringsWithDeps lib stdenv writeScript - fetchurl fetchmtn fetchgit; - }; - - builderDefsPackage = builderDefs.builderDefsPackage builderDefs; - - stringsWithDeps = lib.stringsWithDeps; - - - ### Nixpkgs maintainer tools - - nix-generate-from-cpan = callPackage ../../maintainers/scripts/nix-generate-from-cpan.nix { }; - - nixpkgs-lint = callPackage ../../maintainers/scripts/nixpkgs-lint.nix { }; - - - ### STANDARD ENVIRONMENT - - - allStdenvs = import ../stdenv { - inherit system platform config; - allPackages = args: import ./all-packages.nix ({ inherit config system; } // args); - }; - - defaultStdenv = allStdenvs.stdenv // { inherit platform; }; - - stdenvCross = lowPrio (makeStdenvCross defaultStdenv crossSystem binutilsCross gccCrossStageFinal); - - stdenv = - if bootStdenv != null then (bootStdenv // {inherit platform;}) else - if crossSystem != null then - stdenvCross - else - let - changer = config.replaceStdenv or null; - in if changer != null then - changer { - # We import again all-packages to avoid recursivities. - pkgs = import ./all-packages.nix { - # We remove packageOverrides to avoid recursivities - config = removeAttrs config [ "replaceStdenv" ]; - }; - } - else - defaultStdenv; - - stdenvApple = stdenvAdapters.overrideGCC allStdenvs.stdenvNative gccApple; - - forceNativeDrv = drv : if crossSystem == null then drv else - (drv // { crossDrv = drv.nativeDrv; }); - - # A stdenv capable of building 32-bit binaries. On x86_64-linux, - # it uses GCC compiled with multilib support; on i686-linux, it's - # just the plain stdenv. - stdenv_32bit = lowPrio ( - if system == "x86_64-linux" then - overrideGCC stdenv gcc48_multi - else - stdenv); - - - ### BUILD SUPPORT - - attrSetToDir = arg: import ../build-support/upstream-updater/attrset-to-dir.nix { - inherit writeTextFile stdenv lib; - theAttrSet = arg; - }; - - autoreconfHook = makeSetupHook - { substitutions = { inherit autoconf automake libtool; }; } - ../build-support/setup-hooks/autoreconf.sh; - - buildEnv = import ../build-support/buildenv { - inherit (pkgs) runCommand perl; - }; - - buildFHSChrootEnv = import ../build-support/build-fhs-chrootenv { - inherit stdenv glibc glibcLocales gcc coreutils diffutils findutils; - inherit gnused gnugrep gnutar gzip bzip2 bashInteractive xz shadow gawk; - inherit less buildEnv; - }; - - dotnetenv = import ../build-support/dotnetenv { - inherit stdenv; - dotnetfx = dotnetfx40; - }; - - scatterOutputHook = makeSetupHook {} ../build-support/setup-hooks/scatter_output.sh; - - vsenv = callPackage ../build-support/vsenv { - vs = vs90wrapper; - }; - - fetchbower = import ../build-support/fetchbower { - inherit stdenv git; - inherit (nodePackages) fetch-bower; - }; - - fetchbzr = import ../build-support/fetchbzr { - inherit stdenv bazaar; - }; - - fetchcvs = import ../build-support/fetchcvs { - inherit stdenv cvs; - }; - - fetchdarcs = import ../build-support/fetchdarcs { - inherit stdenv darcs nix; - }; - - fetchgit = import ../build-support/fetchgit { - inherit stdenv git cacert; - }; - - fetchgitPrivate = import ../build-support/fetchgit/private.nix { - inherit fetchgit writeScript openssh stdenv; - }; - - fetchgitrevision = import ../build-support/fetchgitrevision runCommand git; - - fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or {}); - - packer = callPackage ../development/tools/packer { }; - - fetchpatch = callPackage ../build-support/fetchpatch { }; - - fetchsvn = import ../build-support/fetchsvn { - inherit stdenv subversion openssh; - sshSupport = true; - }; - - fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion; - - fetchsvnssh = import ../build-support/fetchsvnssh { - inherit stdenv subversion openssh expect; - sshSupport = true; - }; - - fetchhg = import ../build-support/fetchhg { - inherit stdenv mercurial nix; - }; - - # `fetchurl' downloads a file from the network. - fetchurl = import ../build-support/fetchurl { - inherit curl stdenv; - }; - - # A wrapper around fetchurl that generates miror://gnome URLs automatically - fetchurlGnome = callPackage ../build-support/fetchurl/gnome.nix { }; - - # fetchurlBoot is used for curl and its dependencies in order to - # prevent a cyclic dependency (curl depends on curl.tar.bz2, - # curl.tar.bz2 depends on fetchurl, fetchurl depends on curl). It - # uses the curl from the previous bootstrap phase (e.g. a statically - # linked curl in the case of stdenv-linux). - fetchurlBoot = stdenv.fetchurlBoot; - - fetchzip = import ../build-support/fetchzip { inherit lib fetchurl unzip; }; - - fetchFromGitHub = { owner, repo, rev, sha256 }: fetchzip { - name = "${repo}-${rev}-src"; - url = "https://github.com/${owner}/${repo}/archive/${rev}.tar.gz"; - inherit sha256; - }; - - resolveMirrorURLs = {url}: fetchurl { - showURLs = true; - inherit url; - }; - - libredirect = callPackage ../build-support/libredirect { }; - - makeDesktopItem = import ../build-support/make-desktopitem { - inherit stdenv; - }; - - makeAutostartItem = import ../build-support/make-startupitem { - inherit stdenv; - inherit lib; - }; - - makeInitrd = {contents, compressor ? "gzip -9"}: - import ../build-support/kernel/make-initrd.nix { - inherit stdenv perl perlArchiveCpio cpio contents ubootChooser compressor; - }; - - makeWrapper = makeSetupHook { } ../build-support/setup-hooks/make-wrapper.sh; - - makeModulesClosure = { kernel, rootModules, allowMissing ? false }: - import ../build-support/kernel/modules-closure.nix { - inherit stdenv kmod kernel nukeReferences rootModules allowMissing; - }; - - pathsFromGraph = ../build-support/kernel/paths-from-graph.pl; - - srcOnly = args: (import ../build-support/src-only) ({inherit stdenv; } // args); - - substituteAll = import ../build-support/substitute/substitute-all.nix { - inherit stdenv; - }; - - replaceDependency = import ../build-support/replace-dependency.nix { - inherit runCommand nix lib; - }; - - nukeReferences = callPackage ../build-support/nuke-references/default.nix { }; - - vmTools = import ../build-support/vm/default.nix { - inherit pkgs; - }; - - releaseTools = import ../build-support/release/default.nix { - inherit pkgs; - }; - - composableDerivation = (import ../../lib/composable-derivation.nix) { - inherit pkgs lib; - }; - - platforms = import ./platforms.nix; - - setJavaClassPath = makeSetupHook { } ../build-support/setup-hooks/set-java-classpath.sh; - - fixDarwinDylibNames = makeSetupHook { } ../build-support/setup-hooks/fix-darwin-dylib-names.sh; - - keepBuildTree = makeSetupHook { } ../build-support/setup-hooks/keep-build-tree.sh; - - enableGCOVInstrumentation = makeSetupHook { } ../build-support/setup-hooks/enable-coverage-instrumentation.sh; - - makeGCOVReport = makeSetupHook - { deps = [ pkgs.lcov pkgs.enableGCOVInstrumentation ]; } - ../build-support/setup-hooks/make-coverage-analysis-report.sh; - - - ### TOOLS - - abduco = callPackage ../tools/misc/abduco { }; - - acct = callPackage ../tools/system/acct { }; - - acoustidFingerprinter = callPackage ../tools/audio/acoustid-fingerprinter { - ffmpeg = ffmpeg_1; - }; - - actdiag = pythonPackages.actdiag; - - adom = callPackage ../games/adom { }; - - aefs = callPackage ../tools/filesystems/aefs { }; - - aegisub = callPackage ../applications/video/aegisub { - wxGTK = wxGTK30; - lua = lua5_1; - }; - - aespipe = callPackage ../tools/security/aespipe { }; - - aescrypt = callPackage ../tools/misc/aescrypt { }; - - ahcpd = callPackage ../tools/networking/ahcpd { }; - - aircrackng = callPackage ../tools/networking/aircrack-ng { }; - - analog = callPackage ../tools/admin/analog {}; - - apktool = callPackage ../development/tools/apktool { - buildTools = androidenv.buildTools; - }; - - apt-offline = callPackage ../tools/misc/apt-offline { }; - - archivemount = callPackage ../tools/filesystems/archivemount { }; - - arandr = callPackage ../tools/X11/arandr { }; - - arcanist = callPackage ../development/tools/misc/arcanist {}; - - arduino_core = callPackage ../development/arduino/arduino-core { - jdk = jdk; - jre = jdk; - }; - - argyllcms = callPackage ../tools/graphics/argyllcms {}; - - arp-scan = callPackage ../tools/misc/arp-scan { }; - - ascii = callPackage ../tools/text/ascii { }; - - asymptote = builderDefsPackage ../tools/graphics/asymptote { - inherit freeglut ghostscriptX imagemagick fftw boehmgc - mesa ncurses readline gsl libsigsegv python zlib perl - texinfo xz; - texLive = texLiveAggregationFun { - paths = [ texLive texLiveExtra texLiveCMSuper ]; - }; - }; - - awscli = callPackage ../tools/admin/awscli { }; - - ec2_api_tools = callPackage ../tools/virtualization/ec2-api-tools { }; - - ec2_ami_tools = callPackage ../tools/virtualization/ec2-ami-tools { }; - - altermime = callPackage ../tools/networking/altermime {}; - - amule = callPackage ../tools/networking/p2p/amule { }; - - amuleDaemon = appendToName "daemon" (amule.override { - monolithic = false; - daemon = true; - }); - - amuleGui = appendToName "gui" (amule.override { - monolithic = false; - client = true; - }); - - androidenv = import ../development/mobile/androidenv { - inherit pkgs; - pkgs_i686 = pkgsi686Linux; - }; - - apg = callPackage ../tools/security/apg { }; - - grc = callPackage ../tools/misc/grc { }; - - otool = callPackage ../os-specific/darwin/otool { }; - - pass = callPackage ../tools/security/pass { - gnupg = gnupg1compat; - }; - - setfile = callPackage ../os-specific/darwin/setfile { }; - - install_name_tool = callPackage ../os-specific/darwin/install_name_tool { }; - - xcodeenv = callPackage ../development/mobile/xcodeenv { }; - - titaniumenv = callPackage ../development/mobile/titaniumenv { - inherit pkgs; - pkgs_i686 = pkgsi686Linux; - }; - - inherit (androidenv) androidsdk_4_4 androidndk; - - aria2 = callPackage ../tools/networking/aria2 { }; - aria = aria2; - - at = callPackage ../tools/system/at { }; - - atftp = callPackage ../tools/networking/atftp {}; - - autogen = callPackage ../development/tools/misc/autogen { }; - - autojump = callPackage ../tools/misc/autojump { }; - - autorandr = callPackage ../tools/misc/autorandr { - inherit (xorg) xrandr xdpyinfo; - }; - - avahi = callPackage ../development/libraries/avahi { - qt4Support = config.avahi.qt4Support or false; - }; - - aws = callPackage ../tools/virtualization/aws { }; - - aws_mturk_clt = callPackage ../tools/misc/aws-mturk-clt { }; - - axel = callPackage ../tools/networking/axel { }; - - azureus = callPackage ../tools/networking/p2p/azureus { }; - - basex = callPackage ../tools/text/xml/basex { }; - - babeld = callPackage ../tools/networking/babeld { }; - - badvpn = callPackage ../tools/networking/badvpn {}; - - banner = callPackage ../games/banner {}; - - barcode = callPackage ../tools/graphics/barcode {}; - - bc = callPackage ../tools/misc/bc { }; - - bcache-tools = callPackage ../tools/filesystems/bcache-tools { }; - - bchunk = callPackage ../tools/cd-dvd/bchunk { }; - - bfr = callPackage ../tools/misc/bfr { }; - - bindfs = callPackage ../tools/filesystems/bindfs { }; - - bitbucket-cli = pythonPackages.bitbucket-cli; - - blockdiag = pythonPackages.blockdiag; - - bmon = callPackage ../tools/misc/bmon { }; - - bochs = callPackage ../applications/virtualization/bochs { wxSupport = false; }; - - boomerang = callPackage ../development/tools/boomerang { }; - - bootchart = callPackage ../tools/system/bootchart { }; - - bro = callPackage ../applications/networking/ids/bro { }; - - bsod = callPackage ../misc/emulators/bsod { }; - - btrfsProgs = callPackage ../tools/filesystems/btrfsprogs { }; - - bwm_ng = callPackage ../tools/networking/bwm-ng { }; - - byobu = callPackage ../tools/misc/byobu { }; - - capstone = callPackage ../development/libraries/capstone { }; - - catdoc = callPackage ../tools/text/catdoc { }; - - ccnet = callPackage ../tools/networking/ccnet { }; - - consul = callPackage ../servers/consul { }; - consul_ui = callPackage ../servers/consul/ui.nix { }; - - chntpw = callPackage ../tools/security/chntpw { }; - - coprthr = callPackage ../development/libraries/coprthr { - flex = flex_2_5_35; - }; - - crawl = callPackage ../games/crawl { lua = lua5; }; - - cv = callPackage ../tools/misc/cv { }; - - direnv = callPackage ../tools/misc/direnv { }; - - ditaa = callPackage ../tools/graphics/ditaa { }; - - dlx = callPackage ../misc/emulators/dlx { }; - - eggdrop = callPackage ../tools/networking/eggdrop { }; - - enca = callPackage ../tools/text/enca { }; - - fasd = callPackage ../tools/misc/fasd { - inherit (haskellPackages) pandoc; - }; - - fop = callPackage ../tools/typesetting/fop { }; - - mcrl = callPackage ../tools/misc/mcrl { }; - - mcrl2 = callPackage ../tools/misc/mcrl2 { }; - - mpdcron = callPackage ../tools/audio/mpdcron { }; - - syslogng = callPackage ../tools/system/syslog-ng { }; - - syslogng_incubator = callPackage ../tools/system/syslog-ng-incubator { }; - - rsyslog = callPackage ../tools/system/rsyslog { }; - - mcrypt = callPackage ../tools/misc/mcrypt { }; - - mcelog = callPackage ../os-specific/linux/mcelog { }; - - apparix = callPackage ../tools/misc/apparix { }; - - appdata-tools = callPackage ../tools/misc/appdata-tools { }; - - asciidoc = callPackage ../tools/typesetting/asciidoc { - inherit (pythonPackages) matplotlib numpy aafigure recursivePthLoader; - enableStandardFeatures = false; - }; - - asciidoc-full = appendToName "full" (asciidoc.override { - inherit (pythonPackages) pygments; - enableStandardFeatures = true; - }); - - autossh = callPackage ../tools/networking/autossh { }; - - bacula = callPackage ../tools/backup/bacula { }; - - beanstalkd = callPackage ../servers/beanstalkd { }; - - bgs = callPackage ../tools/X11/bgs { }; - - biber = callPackage ../tools/typesetting/biber { - inherit (perlPackages) - autovivification BusinessISBN BusinessISMN BusinessISSN ConfigAutoConf - DataCompare DataDump DateSimple EncodeEUCJPASCII EncodeHanExtra EncodeJIS2K - ExtUtilsLibBuilder FileSlurp IPCRun3 Log4Perl LWPProtocolHttps ListAllUtils - ListMoreUtils ModuleBuild MozillaCA ReadonlyXS RegexpCommon TextBibTeX - UnicodeCollate UnicodeLineBreak URI XMLLibXMLSimple XMLLibXSLT XMLWriter; - }; - - bibtextools = callPackage ../tools/typesetting/bibtex-tools { - inherit (strategoPackages016) strategoxt sdf; - }; - - bittorrent = callPackage ../tools/networking/p2p/bittorrent { - gui = true; - }; - - bittornado = callPackage ../tools/networking/p2p/bit-tornado { }; - - blueman = callPackage ../tools/bluetooth/blueman { - inherit (pythonPackages) notify; - }; - - bmrsa = builderDefsPackage (import ../tools/security/bmrsa/11.nix) { - inherit unzip; - }; - - bogofilter = callPackage ../tools/misc/bogofilter { }; - - bsdiff = callPackage ../tools/compression/bsdiff { }; - - btar = callPackage ../tools/backup/btar { }; - - bud = callPackage ../tools/networking/bud { - inherit (pythonPackages) gyp; - }; - - bup = callPackage ../tools/backup/bup { - inherit (pythonPackages) pyxattr pylibacl setuptools fuse; - inherit (haskellPackages) pandoc; - par2Support = (config.bup.par2Support or false); - }; - - ori = callPackage ../tools/backup/ori { }; - - atool = callPackage ../tools/archivers/atool { }; - - bzip2 = callPackage ../tools/compression/bzip2 { }; - - cabextract = callPackage ../tools/archivers/cabextract { }; - - cadaver = callPackage ../tools/networking/cadaver { }; - - cantata = callPackage ../applications/audio/cantata { }; - - can-utils = callPackage ../os-specific/linux/can-utils { }; - - ccid = callPackage ../tools/security/ccid { }; - - ccrypt = callPackage ../tools/security/ccrypt { }; - - cdecl = callPackage ../development/tools/cdecl { }; - - cdrdao = callPackage ../tools/cd-dvd/cdrdao { }; - - cdrkit = callPackage ../tools/cd-dvd/cdrkit { }; - - ceph = callPackage ../tools/filesystems/ceph { }; - - cfdg = builderDefsPackage ../tools/graphics/cfdg { - inherit libpng bison flex ffmpeg; - }; - - checkinstall = callPackage ../tools/package-management/checkinstall { }; - - cheetahTemplate = builderDefsPackage (import ../tools/text/cheetah-template/2.0.1.nix) { - inherit makeWrapper python; - }; - - chkrootkit = callPackage ../tools/security/chkrootkit { }; - - chrony = callPackage ../tools/networking/chrony { }; - - chunkfs = callPackage ../tools/filesystems/chunkfs { }; - - chunksync = callPackage ../tools/backup/chunksync { }; - - cjdns = callPackage ../tools/networking/cjdns { }; - - cksfv = callPackage ../tools/networking/cksfv { }; - - clementine = callPackage ../applications/audio/clementine { }; - - ciopfs = callPackage ../tools/filesystems/ciopfs { }; - - colord = callPackage ../tools/misc/colord { }; - - colord-gtk = callPackage ../tools/misc/colord-gtk { }; - - colordiff = callPackage ../tools/text/colordiff { }; - - concurrencykit = callPackage ../development/libraries/concurrencykit { }; - - connect = callPackage ../tools/networking/connect { }; - - conspy = callPackage ../os-specific/linux/conspy {}; - - connman = callPackage ../tools/networking/connman { }; - - connmanui = callPackage ../tools/networking/connmanui { }; - - convertlit = callPackage ../tools/text/convertlit { }; - - collectd = callPackage ../tools/system/collectd { }; - - colormake = callPackage ../development/tools/build-managers/colormake { }; - - cowsay = callPackage ../tools/misc/cowsay { }; - - cpuminer = callPackage ../tools/misc/cpuminer { }; - - cpuminer-multi = callPackage ../tools/misc/cpuminer-multi { }; - - cuetools = callPackage ../tools/cd-dvd/cuetools { }; - - unifdef = callPackage ../development/tools/misc/unifdef { }; - - "unionfs-fuse" = callPackage ../tools/filesystems/unionfs-fuse { }; - - usb_modeswitch = callPackage ../development/tools/misc/usb-modeswitch { }; - - anthy = callPackage ../tools/inputmethods/anthy { }; - - biosdevname = callPackage ../tools/networking/biosdevname { }; - - clamav = callPackage ../tools/security/clamav { }; - - cloc = callPackage ../tools/misc/cloc { - inherit (perlPackages) perl AlgorithmDiff RegexpCommon; - }; - - cloog = callPackage ../development/libraries/cloog { }; - - cloogppl = callPackage ../development/libraries/cloog-ppl { }; - - convmv = callPackage ../tools/misc/convmv { }; - - cool-old-term = callPackage ../applications/misc/cool-old-term { }; - - coreutils = callPackage ../tools/misc/coreutils - { - # TODO: Add ACL support for cross-Linux. - aclSupport = crossSystem == null && stdenv.isLinux; - }; - - cpio = callPackage ../tools/archivers/cpio { }; - - cromfs = callPackage ../tools/archivers/cromfs { }; - - cron = callPackage ../tools/system/cron { }; - - cudatoolkit5 = callPackage ../development/compilers/cudatoolkit/5.5.nix { - python = python26; - }; - - cudatoolkit6 = callPackage ../development/compilers/cudatoolkit/6.0.nix { - python = python26; - }; - - cudatoolkit = cudatoolkit5; - - curl = callPackage ../tools/networking/curl rec { - fetchurl = fetchurlBoot; - zlibSupport = true; - sslSupport = zlibSupport; - scpSupport = zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin; - }; - - curl3 = callPackage ../tools/networking/curl/7.15.nix rec { - zlibSupport = true; - sslSupport = zlibSupport; - }; - - cunit = callPackage ../tools/misc/cunit { }; - - curlftpfs = callPackage ../tools/filesystems/curlftpfs { }; - - cutter = callPackage ../tools/networking/cutter { }; - - dadadodo = builderDefsPackage (import ../tools/text/dadadodo) { }; - - daq = callPackage ../applications/networking/ids/daq { }; - - dar = callPackage ../tools/archivers/dar { }; - - davfs2 = callPackage ../tools/filesystems/davfs2 { }; - - dbench = callPackage ../development/tools/misc/dbench { }; - - dcraw = callPackage ../tools/graphics/dcraw { }; - - debian_devscripts = callPackage ../tools/misc/debian-devscripts { - inherit (perlPackages) CryptSSLeay LWP TimeDate DBFile FileDesktopEntry; - }; - - debootstrap = callPackage ../tools/misc/debootstrap { }; - - detox = callPackage ../tools/misc/detox { }; - - ddclient = callPackage ../tools/networking/ddclient { }; - - dd_rescue = callPackage ../tools/system/dd_rescue { }; - - ddrescue = callPackage ../tools/system/ddrescue { }; - - deluge = pythonPackages.deluge; - - desktop_file_utils = callPackage ../tools/misc/desktop-file-utils { }; - - despotify = callPackage ../development/libraries/despotify { }; - - dev86 = callPackage ../development/compilers/dev86 { }; - - dnsmasq = callPackage ../tools/networking/dnsmasq { }; - - dnstop = callPackage ../tools/networking/dnstop { }; - - dhcp = callPackage ../tools/networking/dhcp { }; - - dhcpcd = callPackage ../tools/networking/dhcpcd { }; - - di = callPackage ../tools/system/di { }; - - diffstat = callPackage ../tools/text/diffstat { }; - - diffutils = callPackage ../tools/text/diffutils { }; - - wgetpaste = callPackage ../tools/text/wgetpaste { }; - - dirmngr = callPackage ../tools/security/dirmngr { }; - - disper = callPackage ../tools/misc/disper { }; - - dmd = callPackage ../development/compilers/dmd { }; - - dmg2img = callPackage ../tools/misc/dmg2img { }; - - docbook2odf = callPackage ../tools/typesetting/docbook2odf { - inherit (perlPackages) PerlMagick; - }; - - docbook2x = callPackage ../tools/typesetting/docbook2x { - inherit (perlPackages) XMLSAX XMLParser XMLNamespaceSupport; - }; - - dosfstools = callPackage ../tools/filesystems/dosfstools { }; - - dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { }; - - dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { }; - - dolphinEmu = callPackage ../misc/emulators/dolphin-emu { }; - dolphinEmuMaster = callPackage ../misc/emulators/dolphin-emu/master.nix { }; - - dropbear = callPackage ../tools/networking/dropbear { }; - - dtach = callPackage ../tools/misc/dtach { }; - - duo-unix = callPackage ../tools/security/duo-unix { }; - - duplicity = callPackage ../tools/backup/duplicity { - inherit (pythonPackages) boto lockfile; - gnupg = gnupg1; - }; - - duply = callPackage ../tools/backup/duply { }; - - dvdplusrwtools = callPackage ../tools/cd-dvd/dvd+rw-tools { }; - - dvgrab = callPackage ../tools/video/dvgrab { }; - - dvtm = callPackage ../tools/misc/dvtm { }; - - e2fsprogs = callPackage ../tools/filesystems/e2fsprogs { }; - - easyrsa = callPackage ../tools/networking/easyrsa { }; - - ebook_tools = callPackage ../tools/text/ebook-tools { }; - - ecryptfs = callPackage ../tools/security/ecryptfs { }; - - editres = callPackage ../tools/graphics/editres { - inherit (xlibs) libXt libXaw; - inherit (xorg) utilmacros; - }; - - edk2 = callPackage ../development/compilers/edk2 { }; - - emscripten = callPackage ../development/compilers/emscripten { }; - - emscriptenfastcomp = callPackage ../development/compilers/emscripten-fastcomp { }; - - efibootmgr = callPackage ../tools/system/efibootmgr { }; - - efivar = callPackage ../tools/system/efivar { }; - - evemu = callPackage ../tools/system/evemu { }; - - elasticsearch = callPackage ../servers/search/elasticsearch { }; - - elasticsearchPlugins = recurseIntoAttrs ( - callPackage ../servers/search/elasticsearch/plugins.nix { } - ); - - emv = callPackage ../tools/misc/emv { }; - - enblendenfuse = callPackage ../tools/graphics/enblend-enfuse { }; - - encfs = callPackage ../tools/filesystems/encfs { }; - - enscript = callPackage ../tools/text/enscript { }; - - ethtool = callPackage ../tools/misc/ethtool { }; - - ettercap = callPackage ../applications/networking/sniffers/ettercap { }; - - euca2ools = callPackage ../tools/virtualization/euca2ools { pythonPackages = python26Packages; }; - - evtest = callPackage ../applications/misc/evtest { }; - - exempi = callPackage ../development/libraries/exempi { }; - - execline = callPackage ../tools/misc/execline { }; - - exercism = callPackage ../development/tools/exercism { }; - - exif = callPackage ../tools/graphics/exif { }; - - exiftags = callPackage ../tools/graphics/exiftags { }; - - extundelete = callPackage ../tools/filesystems/extundelete { }; - - expect = callPackage ../tools/misc/expect { }; - - f2fs-tools = callPackage ../tools/filesystems/f2fs-tools { }; - - fabric = pythonPackages.fabric; - - fail2ban = callPackage ../tools/security/fail2ban { - systemd = systemd.override { - pythonSupport = true; - }; - }; - - fakeroot = callPackage ../tools/system/fakeroot { }; - - fakechroot = callPackage ../tools/system/fakechroot { }; - - fcitx = callPackage ../tools/inputmethods/fcitx { }; - - fcron = callPackage ../tools/system/fcron { }; - - fdm = callPackage ../tools/networking/fdm {}; - - figlet = callPackage ../tools/misc/figlet { }; - - file = callPackage ../tools/misc/file { }; - - filegive = callPackage ../tools/networking/filegive { }; - - fileschanged = callPackage ../tools/misc/fileschanged { }; - - findutils = callPackage ../tools/misc/findutils { }; - - finger_bsd = callPackage ../tools/networking/bsd-finger { }; - - fio = callPackage ../tools/system/fio { }; - - flashtool = callPackage_i686 ../development/mobile/flashtool { - platformTools = androidenv.platformTools; - }; - - flashrom = callPackage ../tools/misc/flashrom { }; - - flpsed = callPackage ../applications/editors/flpsed { }; - - flvstreamer = callPackage ../tools/networking/flvstreamer { }; - - libbsd = callPackage ../development/libraries/libbsd { }; - - lprof = callPackage ../tools/graphics/lprof { }; - - fdk_aac = callPackage ../development/libraries/fdk-aac { }; - - flvtool2 = callPackage ../tools/video/flvtool2 { }; - - fontforge = lowPrio (callPackage ../tools/misc/fontforge { }); - - fontforgeX = callPackage ../tools/misc/fontforge { - withX11 = true; - }; - - forktty = callPackage ../os-specific/linux/forktty {}; - - fortune = callPackage ../tools/misc/fortune { }; - - fox = callPackage ../development/libraries/fox/default.nix { - libpng = libpng12; - }; - - fox_1_6 = callPackage ../development/libraries/fox/fox-1.6.nix { }; - - fping = callPackage ../tools/networking/fping {}; - - fprot = callPackage ../tools/security/fprot { }; - - freeipmi = callPackage ../tools/system/freeipmi {}; - - freetalk = callPackage ../applications/networking/instant-messengers/freetalk { - guile = guile_1_8; - }; - - freetds = callPackage ../development/libraries/freetds { }; - - ftgl = callPackage ../development/libraries/ftgl { }; - - ftgl212 = callPackage ../development/libraries/ftgl/2.1.2.nix { }; - - fuppes = callPackage ../tools/networking/fuppes { - ffmpeg = ffmpeg_0_6_90; - }; - - fsfs = callPackage ../tools/filesystems/fsfs { }; - - fuse_zip = callPackage ../tools/filesystems/fuse-zip { }; - - fuse_exfat = callPackage ../tools/filesystems/fuse-exfat { }; - - dos2unix = callPackage ../tools/text/dos2unix { }; - - uni2ascii = callPackage ../tools/text/uni2ascii { }; - - g500-control = callPackage ../tools/misc/g500-control { }; - - galculator = callPackage ../applications/misc/galculator { - gtk = gtk3; - }; - - gawk = callPackage ../tools/text/gawk { }; - - gawkInteractive = appendToName "interactive" - (gawk.override { readlineSupport = true; }); - - gbdfed = callPackage ../tools/misc/gbdfed { - gtk = gtk2; - }; - - gdmap = callPackage ../tools/system/gdmap { }; - - genext2fs = callPackage ../tools/filesystems/genext2fs { }; - - gengetopt = callPackage ../development/tools/misc/gengetopt { }; - - getmail = callPackage ../tools/networking/getmail { }; - - getopt = callPackage ../tools/misc/getopt { }; - - gftp = callPackage ../tools/networking/gftp { }; - - gifsicle = callPackage ../tools/graphics/gifsicle { }; - - glusterfs = callPackage ../tools/filesystems/glusterfs { }; - - glmark2 = callPackage ../tools/graphics/glmark2 { }; - - glxinfo = callPackage ../tools/graphics/glxinfo { }; - - gmvault = callPackage ../tools/networking/gmvault { }; - - gnokii = builderDefsPackage (import ../tools/misc/gnokii) { - inherit intltool perl gettext libusb pkgconfig bluez readline pcsclite - libical gtk glib; - inherit (xorg) libXpm; - }; - - gnufdisk = callPackage ../tools/system/fdisk { - guile = guile_1_8; - }; - - gnugrep = callPackage ../tools/text/gnugrep { - libiconv = libiconvOrNull; - }; - - gnulib = callPackage ../development/tools/gnulib { }; - - gnupatch = callPackage ../tools/text/gnupatch { }; - - gnupg1orig = callPackage ../tools/security/gnupg1 { }; - - gnupg1compat = callPackage ../tools/security/gnupg1compat { }; - - # use config.packageOverrides if you prefer original gnupg1 - gnupg1 = gnupg1compat; - - gnupg = callPackage ../tools/security/gnupg { libusb = libusb1; }; - - gnupg2_1 = lowPrio (callPackage ../tools/security/gnupg/git.nix { - libassuan = libassuan2_1; - }); - - gnuplot = callPackage ../tools/graphics/gnuplot { }; - - gnuplot_qt = gnuplot.override { withQt = true; }; - - # must have AquaTerm installed separately - gnuplot_aquaterm = gnuplot.override { aquaterm = true; }; - - gnused = callPackage ../tools/text/gnused { }; - - gnutar = callPackage ../tools/archivers/gnutar { }; - - gnuvd = callPackage ../tools/misc/gnuvd { }; - - goaccess = callPackage ../tools/misc/goaccess { }; - - googleAuthenticator = callPackage ../os-specific/linux/google-authenticator { }; - - gource = callPackage ../applications/version-management/gource {}; - - gpodder = callPackage ../applications/audio/gpodder { }; - - gptfdisk = callPackage ../tools/system/gptfdisk { }; - - grafana = callPackage ../development/tools/misc/grafana { }; - - grafx2 = callPackage ../applications/graphics/grafx2 {}; - - graphviz = callPackage ../tools/graphics/graphviz { }; - - /* Readded by Michael Raskin. There are programs in the wild - * that do want 2.0 but not 2.22. Please give a day's notice for - * objections before removal. The feature is integer coordinates - */ - graphviz_2_0 = callPackage ../tools/graphics/graphviz/2.0.nix { }; - - /* Readded by Michael Raskin. There are programs in the wild - * that do want 2.32 but not 2.0 or 2.36. Please give a day's notice for - * objections before removal. The feature is libgraph. - */ - graphviz_2_32 = callPackage ../tools/graphics/graphviz/2.32.nix { }; - - grive = callPackage ../tools/filesystems/grive { - json_c = json-c-0-11; # won't configure with 0.12; others are vulnerable - }; - - groff = callPackage ../tools/text/groff { - ghostscript = null; - }; - - grub = callPackage_i686 ../tools/misc/grub { - buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true; - }; - - grub2 = callPackage ../tools/misc/grub/2.0x.nix { }; - - grub2_efi = grub2.override { efiSupport = true; }; - - grub2_zfs = grub2.override { zfsSupport = true; }; - - gssdp = callPackage ../development/libraries/gssdp { - inherit (gnome) libsoup; - }; - - gt5 = callPackage ../tools/system/gt5 { }; - - gtest = callPackage ../development/libraries/gtest {}; - gmock = callPackage ../development/libraries/gmock {}; - - gtkdatabox = callPackage ../development/libraries/gtkdatabox {}; - - gtkgnutella = callPackage ../tools/networking/p2p/gtk-gnutella { }; - - gtkvnc = callPackage ../tools/admin/gtk-vnc {}; - - gtmess = callPackage ../applications/networking/instant-messengers/gtmess { }; - - gummiboot = callPackage ../tools/misc/gummiboot { }; - - gupnp = callPackage ../development/libraries/gupnp { - inherit (gnome) libsoup; - }; - - gupnp_av = callPackage ../development/libraries/gupnp-av {}; - - gupnp_igd = callPackage ../development/libraries/gupnp-igd {}; - - gupnptools = callPackage ../tools/networking/gupnp-tools {}; - - gvpe = builderDefsPackage ../tools/networking/gvpe { - inherit openssl gmp nettools iproute; - }; - - gvolicon = callPackage ../tools/audio/gvolicon {}; - - gzip = callPackage ../tools/compression/gzip { }; - - gzrt = callPackage ../tools/compression/gzrt { }; - - partclone = callPackage ../tools/backup/partclone { }; - - partimage = callPackage ../tools/backup/partimage { }; - - pigz = callPackage ../tools/compression/pigz { }; - - haproxy = callPackage ../tools/networking/haproxy { }; - - haveged = callPackage ../tools/security/haveged { }; - - hawkthorne = callPackage ../games/hawkthorne { love = love_0_9; }; - - hardlink = callPackage ../tools/system/hardlink { }; - - hashcat = callPackage ../tools/security/hashcat { }; - - halibut = callPackage ../tools/typesetting/halibut { }; - - hddtemp = callPackage ../tools/misc/hddtemp { }; - - hdf5 = callPackage ../tools/misc/hdf5 { - szip = null; - mpi = null; - }; - - hdf5-mpi = hdf5.override { - szip = null; - mpi = pkgs.openmpi; - }; - - heimdall = callPackage ../tools/misc/heimdall { }; - - hevea = callPackage ../tools/typesetting/hevea { }; - - highlight = callPackage ../tools/text/highlight { - lua = lua5; - }; - - host = callPackage ../tools/networking/host { }; - - hping = callPackage ../tools/networking/hping { }; - - httpie = callPackage ../tools/networking/httpie { }; - - httpfs2 = callPackage ../tools/filesystems/httpfs { }; - - # FIXME: This Hydra snapshot is outdated and depends on the `nixPerl', - # which no longer exists. - # - # hydra = callPackage ../development/tools/misc/hydra { - # nix = nixUnstable; - # }; - - iasl = callPackage ../development/compilers/iasl { }; - - icecast = callPackage ../servers/icecast { }; - - icoutils = callPackage ../tools/graphics/icoutils { }; - - idutils = callPackage ../tools/misc/idutils { }; - - idle3tools = callPackage ../tools/system/idle3tools { }; - - iftop = callPackage ../tools/networking/iftop { }; - - imapproxy = callPackage ../tools/networking/imapproxy { }; - - imapsync = callPackage ../tools/networking/imapsync { - inherit (perlPackages) MailIMAPClient; - }; - - inadyn = callPackage ../tools/networking/inadyn { }; - - inetutils = callPackage ../tools/networking/inetutils { }; - - ioping = callPackage ../tools/system/ioping {}; - - iodine = callPackage ../tools/networking/iodine { }; - - iperf = callPackage ../tools/networking/iperf { }; - - ipmitool = callPackage ../tools/system/ipmitool { - static = false; - }; - - ipmiutil = callPackage ../tools/system/ipmiutil {}; - - ised = callPackage ../tools/misc/ised {}; - - isl = callPackage ../development/libraries/isl { }; - isl_0_12 = callPackage ../development/libraries/isl/0.12.2.nix { }; - - isync = callPackage ../tools/networking/isync { }; - - jd-gui = callPackage_i686 ../tools/security/jd-gui { }; - - jdiskreport = callPackage ../tools/misc/jdiskreport { }; - - jfsrec = callPackage ../tools/filesystems/jfsrec { - boost = boost144; - }; - - jfsutils = callPackage ../tools/filesystems/jfsutils { }; - - jhead = callPackage ../tools/graphics/jhead { }; - - jing = callPackage ../tools/text/xml/jing { }; - - jmtpfs = callPackage ../tools/filesystems/jmtpfs { }; - - jnettop = callPackage ../tools/networking/jnettop { }; - - jq = callPackage ../development/tools/jq {}; - - jscoverage = callPackage ../development/tools/misc/jscoverage { }; - - jwhois = callPackage ../tools/networking/jwhois { }; - - kazam = callPackage ../applications/video/kazam { }; - - kalibrate-rtl = callPackage ../tools/misc/kalibrate-rtl { }; - - kexectools = callPackage ../os-specific/linux/kexectools { }; - - keychain = callPackage ../tools/misc/keychain { }; - - kismet = callPackage ../applications/networking/sniffers/kismet { }; - - less = callPackage ../tools/misc/less { }; - - lockfileProgs = callPackage ../tools/misc/lockfile-progs { }; - - logstash = callPackage ../tools/misc/logstash { }; - - logstash-forwarder = callPackage ../tools/misc/logstash-forwarder { }; - - kippo = callPackage ../servers/kippo { }; - - klavaro = callPackage ../games/klavaro {}; - - kzipmix = callPackage_i686 ../tools/compression/kzipmix { }; - - minidlna = callPackage ../tools/networking/minidlna { - ffmpeg = ffmpeg_0_10; - }; - - mmv = callPackage ../tools/misc/mmv { }; - - most = callPackage ../tools/misc/most { }; - - multitail = callPackage ../tools/misc/multitail { }; - - netperf = callPackage ../applications/networking/netperf { }; - - ninka = callPackage ../development/tools/misc/ninka { }; - - nodejs = callPackage ../development/web/nodejs {}; - - nodePackages = recurseIntoAttrs (import ./node-packages.nix { - inherit pkgs stdenv nodejs fetchurl fetchgit; - neededNatives = [python] ++ lib.optional (lib.elem system lib.platforms.linux) utillinux; - self = pkgs.nodePackages; - }); - - ldapvi = callPackage ../tools/misc/ldapvi { }; - - ldns = callPackage ../development/libraries/ldns { }; - - lftp = callPackage ../tools/networking/lftp { }; - - libconfig = callPackage ../development/libraries/libconfig { }; - - libee = callPackage ../development/libraries/libee { }; - - libestr = callPackage ../development/libraries/libestr { }; - - libevdev = callPackage ../development/libraries/libevdev { }; - - liboauth = callPackage ../development/libraries/liboauth { }; - - libtirpc = callPackage ../development/libraries/ti-rpc { }; - - libshout = callPackage ../development/libraries/libshout { }; - - libqmi = callPackage ../development/libraries/libqmi { }; - - libmbim = callPackage ../development/libraries/libmbim { }; - - libtorrent = callPackage ../tools/networking/p2p/libtorrent { }; - - logcheck = callPackage ../tools/system/logcheck { - inherit (perlPackages) mimeConstruct; - }; - - logrotate = callPackage ../tools/system/logrotate { }; - - logstalgia = callPackage ../tools/graphics/logstalgia {}; - - lout = callPackage ../tools/typesetting/lout { }; - - lrzip = callPackage ../tools/compression/lrzip { }; - - # lsh installs `bin/nettle-lfib-stream' and so does Nettle. Give the - # former a lower priority than Nettle. - lsh = lowPrio (callPackage ../tools/networking/lsh { }); - - lshw = callPackage ../tools/system/lshw { }; - - lxc = callPackage ../os-specific/linux/lxc { }; - - lzip = callPackage ../tools/compression/lzip { }; - - lzma = xz; - - xz = callPackage ../tools/compression/xz { }; - - lzop = callPackage ../tools/compression/lzop { }; - - maildrop = callPackage ../tools/networking/maildrop { }; - - mailpile = callPackage ../applications/networking/mailreaders/mailpile { }; - - mailutils = callPackage ../tools/networking/mailutils { - guile = guile_1_8; - }; - - mairix = callPackage ../tools/text/mairix { }; - - makemkv = callPackage ../applications/video/makemkv { }; - - man = callPackage ../tools/misc/man { }; - - man_db = callPackage ../tools/misc/man-db { }; - - memtest86 = callPackage ../tools/misc/memtest86 { }; - - memtest86plus = callPackage ../tools/misc/memtest86+ { }; - - meo = callPackage ../tools/security/meo { }; - - mc = callPackage ../tools/misc/mc { }; - - mcabber = callPackage ../applications/networking/instant-messengers/mcabber { }; - - mcron = callPackage ../tools/system/mcron { - guile = guile_1_8; - }; - - mdbtools = callPackage ../tools/misc/mdbtools { }; - - mdbtools_git = callPackage ../tools/misc/mdbtools/git.nix { - inherit (gnome) scrollkeeper; - }; - - mednafen = callPackage ../misc/emulators/mednafen { }; - - mednafen-server = callPackage ../misc/emulators/mednafen/server.nix { }; - - megacli = callPackage ../tools/misc/megacli { }; - - megatools = callPackage ../tools/networking/megatools { }; - - mfcuk = callPackage ../tools/security/mfcuk { }; - - minecraft = callPackage ../games/minecraft { }; - - minecraft-server = callPackage ../games/minecraft-server { }; - - minetest = callPackage ../games/minetest { - libpng = libpng12; - }; - - miniupnpc = callPackage ../tools/networking/miniupnpc { }; - - miniupnpd = callPackage ../tools/networking/miniupnpd { }; - - minixml = callPackage ../development/libraries/minixml { }; - - mjpegtools = callPackage ../tools/video/mjpegtools { }; - - mkcue = callPackage ../tools/cd-dvd/mkcue { }; - - mkpasswd = callPackage ../tools/security/mkpasswd { }; - - mktemp = callPackage ../tools/security/mktemp { }; - - mktorrent = callPackage ../tools/misc/mktorrent { }; - - modemmanager = callPackage ../tools/networking/modemmanager {}; - - monit = callPackage ../tools/system/monit { }; - - mosh = callPackage ../tools/networking/mosh { - boost = boostHeaders; - inherit (perlPackages) IOTty; - }; - - mpage = callPackage ../tools/text/mpage { }; - - mr = callPackage ../applications/version-management/mr { }; - - mscgen = callPackage ../tools/graphics/mscgen { }; - - msf = builderDefsPackage (import ../tools/security/metasploit/3.1.nix) { - inherit ruby makeWrapper; - }; - - mssys = callPackage ../tools/misc/mssys { }; - - mtdutils = callPackage ../tools/filesystems/mtdutils { }; - - mtools = callPackage ../tools/filesystems/mtools { }; - - mtr = callPackage ../tools/networking/mtr {}; - - multitran = recurseIntoAttrs (let callPackage = newScope pkgs.multitran; in rec { - multitrandata = callPackage ../tools/text/multitran/data { }; - - libbtree = callPackage ../tools/text/multitran/libbtree { }; - - libmtsupport = callPackage ../tools/text/multitran/libmtsupport { }; - - libfacet = callPackage ../tools/text/multitran/libfacet { }; - - libmtquery = callPackage ../tools/text/multitran/libmtquery { }; - - mtutils = callPackage ../tools/text/multitran/mtutils { }; - }); - - munge = callPackage ../tools/security/munge { }; - - muscleframework = callPackage ../tools/security/muscleframework { }; - - muscletool = callPackage ../tools/security/muscletool { }; - - mysql2pgsql = callPackage ../tools/misc/mysql2pgsql { }; - - namazu = callPackage ../tools/text/namazu { }; - - nbd = callPackage ../tools/networking/nbd { }; - - ndjbdns = callPackage ../tools/networking/ndjbdns { }; - - netatalk = callPackage ../tools/filesystems/netatalk { }; - - netcdf = callPackage ../development/libraries/netcdf { }; - - nc6 = callPackage ../tools/networking/nc6 { }; - - ncat = callPackage ../tools/networking/ncat { }; - - ncftp = callPackage ../tools/networking/ncftp { }; - - ncompress = callPackage ../tools/compression/ncompress { }; - - ndisc6 = callPackage ../tools/networking/ndisc6 { }; - - netboot = callPackage ../tools/networking/netboot {}; - - netcat = callPackage ../tools/networking/netcat { }; - - netcat-openbsd = callPackage ../tools/networking/netcat-openbsd { }; - - nethogs = callPackage ../tools/networking/nethogs { }; - - netkittftp = callPackage ../tools/networking/netkit/tftp { }; - - netpbm = callPackage ../tools/graphics/netpbm { }; - - netrw = callPackage ../tools/networking/netrw { }; - - netselect = callPackage ../tools/networking/netselect { }; - - networkmanager = callPackage ../tools/networking/network-manager { }; - - networkmanager_openvpn = callPackage ../tools/networking/network-manager/openvpn.nix { }; - - networkmanager_pptp = callPackage ../tools/networking/network-manager/pptp.nix { }; - - networkmanager_vpnc = callPackage ../tools/networking/network-manager/vpnc.nix { }; - - networkmanager_openconnect = callPackage ../tools/networking/network-manager/openconnect.nix { }; - - networkmanagerapplet = newScope gnome ../tools/networking/network-manager-applet { dconf = gnome3.dconf; }; - - newsbeuter = callPackage ../applications/networking/feedreaders/newsbeuter { }; - - newsbeuter-dev = callPackage ../applications/networking/feedreaders/newsbeuter/dev.nix { }; - - ngrep = callPackage ../tools/networking/ngrep { }; - - ngrok = callPackage ../tools/misc/ngrok { }; - - mpack = callPackage ../tools/networking/mpack { }; - - pa_applet = callPackage ../tools/audio/pa-applet { }; - - pnmixer = callPackage ../tools/audio/pnmixer { }; - - nifskope = callPackage ../tools/graphics/nifskope { }; - - nilfs_utils = callPackage ../tools/filesystems/nilfs-utils {}; - - nitrogen = callPackage ../tools/X11/nitrogen {}; - - nlopt = callPackage ../development/libraries/nlopt {}; - - npapi_sdk = callPackage ../development/libraries/npapi-sdk {}; - - npth = callPackage ../development/libraries/npth {}; - - nmap = callPackage ../tools/security/nmap { }; - - nmap_graphical = callPackage ../tools/security/nmap { - inherit (pythonPackages) pysqlite; - graphicalSupport = true; - }; - - notbit = callPackage ../applications/networking/notbit { }; - - nox = callPackage ../tools/package-management/nox { - pythonPackages = python3Packages; - nix = nixUnstable; - }; - - nss_pam_ldapd = callPackage ../tools/networking/nss-pam-ldapd {}; - - ntfs3g = callPackage ../tools/filesystems/ntfs-3g { }; - - # ntfsprogs are merged into ntfs-3g - ntfsprogs = pkgs.ntfs3g; - - ntop = callPackage ../tools/networking/ntop { }; - - ntopng = callPackage ../tools/networking/ntopng { }; - - ntp = callPackage ../tools/networking/ntp { }; - - numdiff = callPackage ../tools/text/numdiff { }; - - nssmdns = callPackage ../tools/networking/nss-mdns { }; - - nwdiag = pythonPackages.nwdiag; - - nylon = callPackage ../tools/networking/nylon { }; - - nzbget = callPackage ../tools/networking/nzbget { }; - - oathToolkit = callPackage ../tools/security/oath-toolkit { }; - - obex_data_server = callPackage ../tools/bluetooth/obex-data-server { }; - - obexd = callPackage ../tools/bluetooth/obexd { }; - - obexfs = callPackage ../tools/bluetooth/obexfs { }; - - obexftp = callPackage ../tools/bluetooth/obexftp { }; - - obnam = callPackage ../tools/backup/obnam { }; - - odt2txt = callPackage ../tools/text/odt2txt { }; - - offlineimap = callPackage ../tools/networking/offlineimap { - inherit (pythonPackages) sqlite3; - }; - - opendbx = callPackage ../development/libraries/opendbx { }; - - opendkim = callPackage ../development/libraries/opendkim { }; - - opendylan = callPackage ../development/compilers/opendylan { - opendylan-bootstrap = opendylan_bin; - }; - - opendylan_bin = callPackage ../development/compilers/opendylan/bin.nix { }; - - openjade = callPackage ../tools/text/sgml/openjade { }; - - openntpd = callPackage ../tools/networking/openntpd { }; - - openobex = callPackage ../tools/bluetooth/openobex { }; - - openopc = callPackage ../tools/misc/openopc { - pythonFull = python27Full.override { - extraLibs = [ python27Packages.pyro3 ]; - }; - }; - - openresolv = callPackage ../tools/networking/openresolv { }; - - opensc = callPackage ../tools/security/opensc { }; - - opensc_dnie_wrapper = callPackage ../tools/security/opensc-dnie-wrapper { }; - - openssh = - callPackage ../tools/networking/openssh { - hpnSupport = false; - withKerberos = false; - etcDir = "/etc/ssh"; - pam = if stdenv.isLinux then pam else null; - }; - - openssh_hpn = pkgs.appendToName "with-hpn" (openssh.override { hpnSupport = true; }); - - openssh_with_kerberos = pkgs.appendToName "with-kerberos" (openssh.override { withKerberos = true; }); - - opensp = callPackage ../tools/text/sgml/opensp { }; - - spCompat = callPackage ../tools/text/sgml/opensp/compat.nix { }; - - openvpn = callPackage ../tools/networking/openvpn { }; - - openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { }; - - openvswitch = callPackage ../os-specific/linux/openvswitch { }; - - optipng = callPackage ../tools/graphics/optipng { - libpng = libpng12; - }; - - oslrd = callPackage ../tools/networking/oslrd { }; - - ossec = callPackage ../tools/security/ossec {}; - - otpw = callPackage ../os-specific/linux/otpw { }; - - p7zip = callPackage ../tools/archivers/p7zip { }; - - pal = callPackage ../tools/misc/pal { }; - - panomatic = callPackage ../tools/graphics/panomatic { }; - - par2cmdline = callPackage ../tools/networking/par2cmdline { }; - - parallel = callPackage ../tools/misc/parallel { }; - - parcellite = callPackage ../tools/misc/parcellite { }; - - patchutils = callPackage ../tools/text/patchutils { }; - - parted = callPackage ../tools/misc/parted { hurd = null; }; - - pitivi = callPackage ../applications/video/pitivi { - gst = gst_all_1; - clutter-gtk = clutter_gtk; - inherit (gnome3) gnome_icon_theme gnome_icon_theme_symbolic; - }; - - p0f = callPackage ../tools/security/p0f { }; - - pngout = callPackage ../tools/graphics/pngout { }; - - hurdPartedCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then (makeOverridable - ({ hurd }: - (parted.override { - # Needs the Hurd's libstore. - inherit hurd; - - # The Hurd wants a libparted.a. - enableStatic = true; - - gettext = null; - readline = null; - devicemapper = null; - }).crossDrv) - { hurd = gnu.hurdCrossIntermediate; }) - else null; - - ipsecTools = callPackage ../os-specific/linux/ipsec-tools { flex = flex_2_5_35; }; - - patch = gnupatch; - - pbzip2 = callPackage ../tools/compression/pbzip2 { }; - - pciutils = callPackage ../tools/system/pciutils { }; - - pcsclite = callPackage ../tools/security/pcsclite { }; - - pdf2djvu = callPackage ../tools/typesetting/pdf2djvu { }; - - pdfjam = callPackage ../tools/typesetting/pdfjam { }; - - jbig2enc = callPackage ../tools/graphics/jbig2enc { }; - - pdfread = callPackage ../tools/graphics/pdfread { }; - - briss = callPackage ../tools/graphics/briss { }; - - bully = callPackage ../tools/networking/bully { }; - - pdnsd = callPackage ../tools/networking/pdnsd { }; - - peco = callPackage ../tools/text/peco { }; - - pg_top = callPackage ../tools/misc/pg_top { }; - - pdsh = callPackage ../tools/networking/pdsh { - rsh = true; # enable internal rsh implementation - ssh = openssh; - }; - - pfstools = callPackage ../tools/graphics/pfstools { }; - - philter = callPackage ../tools/networking/philter { }; - - pinentry = callPackage ../tools/security/pinentry { }; - - pius = callPackage ../tools/security/pius { }; - - pk2cmd = callPackage ../tools/misc/pk2cmd { }; - - plantuml = callPackage ../tools/misc/plantuml { }; - - plan9port = callPackage ../tools/system/plan9port { }; - - ploticus = callPackage ../tools/graphics/ploticus { - libpng = libpng12; - }; - - plotutils = callPackage ../tools/graphics/plotutils { }; - - plowshare = callPackage ../tools/misc/plowshare { }; - - pngcrush = callPackage ../tools/graphics/pngcrush { }; - - pngnq = callPackage ../tools/graphics/pngnq { }; - - pngtoico = callPackage ../tools/graphics/pngtoico { - libpng = libpng12; - }; - - pngquant = callPackage ../tools/graphics/pngquant { }; - - podiff = callPackage ../tools/text/podiff { }; - - poedit = callPackage ../tools/text/poedit { }; - - polipo = callPackage ../servers/polipo { }; - - polkit_gnome = callPackage ../tools/security/polkit-gnome { }; - - ponysay = callPackage ../tools/misc/ponysay { }; - - povray = callPackage ../tools/graphics/povray { }; - - ppl = callPackage ../development/libraries/ppl { }; - - ppp = callPackage ../tools/networking/ppp { }; - - pptp = callPackage ../tools/networking/pptp {}; - - prey-bash-client = callPackage ../tools/security/prey { }; - - projectm = callPackage ../applications/audio/projectm { }; - - proxychains = callPackage ../tools/networking/proxychains { }; - - proxytunnel = callPackage ../tools/misc/proxytunnel { }; - - cntlm = callPackage ../tools/networking/cntlm { }; - - pastebinit = callPackage ../tools/misc/pastebinit { }; - - psmisc = callPackage ../os-specific/linux/psmisc { }; - - pstoedit = callPackage ../tools/graphics/pstoedit { }; - - pv = callPackage ../tools/misc/pv { }; - - pwgen = callPackage ../tools/security/pwgen { }; - - pwnat = callPackage ../tools/networking/pwnat { }; - - pycangjie = callPackage ../development/python-modules/pycangjie { }; - - pydb = callPackage ../development/tools/pydb { }; - - pystringtemplate = callPackage ../development/python-modules/stringtemplate { }; - - pythonDBus = dbus_python; - - pythonIRClib = builderDefsPackage (import ../development/python-modules/irclib) { - inherit python; - }; - - pythonSexy = builderDefsPackage (import ../development/python-modules/libsexy) { - inherit python libsexy pkgconfig libxml2 pygtk pango gtk glib; - }; - - openmpi = callPackage ../development/libraries/openmpi { }; - - qhull = callPackage ../development/libraries/qhull { }; - - qjoypad = callPackage ../tools/misc/qjoypad { }; - - qshowdiff = callPackage ../tools/text/qshowdiff { }; - - quilt = callPackage ../development/tools/quilt { }; - - radvd = callPackage ../tools/networking/radvd { }; - - ranger = callPackage ../applications/misc/ranger { }; - - privateer = callPackage ../games/privateer { }; - - rtmpdump = callPackage ../tools/video/rtmpdump { }; - - reaverwps = callPackage ../tools/networking/reaver-wps {}; - - recutils = callPackage ../tools/misc/recutils { }; - - recoll = callPackage ../applications/search/recoll { }; - - reiser4progs = callPackage ../tools/filesystems/reiser4progs { }; - - reiserfsprogs = callPackage ../tools/filesystems/reiserfsprogs { }; - - relfs = callPackage ../tools/filesystems/relfs { - inherit (gnome) gnome_vfs GConf; - }; - - remarkjs = callPackage ../development/web/remarkjs { }; - - remind = callPackage ../tools/misc/remind { }; - - remmina = callPackage ../applications/networking/remote/remmina {}; - - renameutils = callPackage ../tools/misc/renameutils { }; - - replace = callPackage ../tools/text/replace { }; - - reptyr = callPackage ../os-specific/linux/reptyr {}; - - rdiff_backup = callPackage ../tools/backup/rdiff-backup { }; - - rdmd = callPackage ../development/compilers/rdmd { }; - - rhash = callPackage ../tools/security/rhash { }; - - riemann_c_client = callPackage ../tools/misc/riemann-c-client { }; - - ripmime = callPackage ../tools/networking/ripmime {}; - - rkflashtool = callPackage ../tools/misc/rkflashtool { }; - - rmlint = callPackage ../tools/misc/rmlint {}; - - rng_tools = callPackage ../tools/security/rng-tools { }; - - rsnapshot = callPackage ../tools/backup/rsnapshot { - # For the `logger' command, we can use either `utillinux' or - # GNU Inetutils. The latter is more portable. - logger = inetutils; - }; - - rlwrap = callPackage ../tools/misc/rlwrap { }; - - rockbox_utility = callPackage ../tools/misc/rockbox-utility { }; - - rpPPPoE = builderDefsPackage (import ../tools/networking/rp-pppoe) { - inherit ppp; - }; - - rpm = callPackage ../tools/package-management/rpm { }; - - rrdtool = callPackage ../tools/misc/rrdtool { }; - - rtorrent = callPackage ../tools/networking/p2p/rtorrent { }; - - rubber = callPackage ../tools/typesetting/rubber { }; - - rxp = callPackage ../tools/text/xml/rxp { }; - - rzip = callPackage ../tools/compression/rzip { }; - - s3backer = callPackage ../tools/filesystems/s3backer { }; - - s3cmd = callPackage ../tools/networking/s3cmd { }; - - s3cmd_15_pre_81e3842f7a = lowPrio (callPackage ../tools/networking/s3cmd/git.nix { }); - - s3sync = callPackage ../tools/networking/s3sync { - ruby = ruby18; - }; - - s6Dns = callPackage ../tools/networking/s6-dns { }; - - s6LinuxUtils = callPackage ../os-specific/linux/s6-linux-utils { }; - - s6Networking = callPackage ../tools/networking/s6-networking { }; - - s6PortableUtils = callPackage ../tools/misc/s6-portable-utils { }; - - sablotron = callPackage ../tools/text/xml/sablotron { }; - - safecopy = callPackage ../tools/system/safecopy { }; - - salut_a_toi = callPackage ../applications/networking/instant-messengers/salut-a-toi {}; - - samplicator = callPackage ../tools/networking/samplicator { }; - - screen = callPackage ../tools/misc/screen { }; - - scrot = callPackage ../tools/graphics/scrot { }; - - scrypt = callPackage ../tools/security/scrypt { }; - - sdcv = callPackage ../applications/misc/sdcv { }; - - sec = callPackage ../tools/admin/sec { }; - - seccure = callPackage ../tools/security/seccure { }; - - setserial = builderDefsPackage (import ../tools/system/setserial) { - inherit groff; - }; - - seqdiag = pythonPackages.seqdiag; - - screenfetch = callPackage ../tools/misc/screenfetch { }; - - sg3_utils = callPackage ../tools/system/sg3_utils { }; - - sharutils = callPackage ../tools/archivers/sharutils { }; - - shotwell = callPackage ../applications/graphics/shotwell { }; - - shebangfix = callPackage ../tools/misc/shebangfix { }; - - shellinabox = callPackage ../servers/shellinabox { }; - - siege = callPackage ../tools/networking/siege {}; - - silc_client = callPackage ../applications/networking/instant-messengers/silc-client { }; - - silc_server = callPackage ../servers/silc-server { }; - - silver-searcher = callPackage ../tools/text/silver-searcher { }; - - simplescreenrecorder = callPackage ../applications/video/simplescreenrecorder { }; - - sleuthkit = callPackage ../tools/system/sleuthkit {}; - - slimrat = callPackage ../tools/networking/slimrat { - inherit (perlPackages) WWWMechanize LWP; - }; - - slsnif = callPackage ../tools/misc/slsnif { }; - - smartmontools = callPackage ../tools/system/smartmontools { }; - - smbldaptools = callPackage ../tools/networking/smbldaptools { - inherit (perlPackages) NetLDAP CryptSmbHash DigestSHA1; - }; - - smbnetfs = callPackage ../tools/filesystems/smbnetfs {}; - - snort = callPackage ../applications/networking/ids/snort { }; - - snx = callPackage_i686 ../tools/networking/snx { - inherit (pkgsi686Linux) pam gcc33; - inherit (pkgsi686Linux.xlibs) libX11; - }; - - solr = callPackage ../servers/search/solr { }; - - sparsehash = callPackage ../development/libraries/sparsehash { }; - - spiped = callPackage ../tools/networking/spiped { }; - - sproxy = haskellPackages.callPackage ../tools/networking/sproxy { }; - - sproxy-web = haskellPackages.callPackage ../tools/networking/sproxy-web { }; - - stardict = callPackage ../applications/misc/stardict/stardict.nix { - inherit (gnome) libgnomeui scrollkeeper; - }; - - storebrowse = callPackage ../tools/system/storebrowse { }; - - fusesmb = callPackage ../tools/filesystems/fusesmb { }; - - sl = callPackage ../tools/misc/sl { }; - - socat = callPackage ../tools/networking/socat { }; - - socat2pre = lowPrio (callPackage ../tools/networking/socat/2.x.nix { }); - - sourceHighlight = callPackage ../tools/text/source-highlight { - # Boost 1.54 causes the "test_regexranges" test to fail - boost = boost149; - }; - - spaceFM = callPackage ../applications/misc/spacefm { }; - - squashfsTools = callPackage ../tools/filesystems/squashfs { }; - - sshfsFuse = callPackage ../tools/filesystems/sshfs-fuse { }; - - sshuttle = callPackage ../tools/security/sshuttle { }; - - sudo = callPackage ../tools/security/sudo { }; - - suidChroot = builderDefsPackage (import ../tools/system/suid-chroot) { }; - - super = callPackage ../tools/security/super { }; - - ssdeep = callPackage ../tools/security/ssdeep { }; - - ssmtp = callPackage ../tools/networking/ssmtp { - tlsSupport = true; - }; - - ssss = callPackage ../tools/security/ssss { }; - - storeBackup = callPackage ../tools/backup/store-backup { }; - - stow = callPackage ../tools/misc/stow { }; - - stun = callPackage ../tools/networking/stun { }; - - stunnel = callPackage ../tools/networking/stunnel { }; - - su = shadow.su; - - surfraw = callPackage ../tools/networking/surfraw { }; - - swec = callPackage ../tools/networking/swec { - inherit (perlPackages) LWP URI HTMLParser HTTPServerSimple Parent; - }; - - svnfs = callPackage ../tools/filesystems/svnfs { }; - - sysbench = callPackage ../development/tools/misc/sysbench {}; - - system_config_printer = callPackage ../tools/misc/system-config-printer { - libxml2 = libxml2Python; - }; - - sitecopy = callPackage ../tools/networking/sitecopy { }; - - stricat = callPackage ../tools/security/stricat { }; - - privoxy = callPackage ../tools/networking/privoxy { }; - - t1utils = callPackage ../tools/misc/t1utils { }; - - tarsnap = callPackage ../tools/backup/tarsnap { }; - - tcpcrypt = callPackage ../tools/security/tcpcrypt { }; - - tboot = callPackage ../tools/security/tboot { }; - - tcl2048 = callPackage ../games/tcl2048 { }; - - tcpdump = callPackage ../tools/networking/tcpdump { }; - - tcpflow = callPackage ../tools/networking/tcpflow { }; - - teamviewer = callPackage_i686 ../applications/networking/remote/teamviewer { }; - - # Work In Progress: it doesn't start unless running a daemon as root - teamviewer8 = lowPrio (callPackage_i686 ../applications/networking/remote/teamviewer/8.nix { }); - - telnet = callPackage ../tools/networking/telnet { }; - - texmacs = callPackage ../applications/editors/texmacs { - tex = texLive; /* tetex is also an option */ - extraFonts = true; - guile = guile_1_8; - }; - - texmaker = callPackage ../applications/editors/texmaker { }; - - texstudio = callPackage ../applications/editors/texstudio { }; - - tiled-qt = callPackage ../applications/editors/tiled-qt { qt = qt4; }; - - tinc = callPackage ../tools/networking/tinc { }; - - tiny8086 = callPackage ../applications/virtualization/8086tiny { }; - - tmpwatch = callPackage ../tools/misc/tmpwatch { }; - - tmux = callPackage ../tools/misc/tmux { }; - - tor = callPackage ../tools/security/tor { }; - - torbutton = callPackage ../tools/security/torbutton { }; - - torbrowser = callPackage ../tools/security/tor/torbrowser.nix { }; - - torsocks = callPackage ../tools/security/tor/torsocks.nix { }; - - tpm-quote-tools = callPackage ../tools/security/tpm-quote-tools { }; - - tpm-tools = callPackage ../tools/security/tpm-tools { }; - - trickle = callPackage ../tools/networking/trickle {}; - - trousers = callPackage ../tools/security/trousers { }; - - ttf2pt1 = callPackage ../tools/misc/ttf2pt1 { }; - - ttysnoop = callPackage ../os-specific/linux/ttysnoop {}; - - twitterBootstrap = callPackage ../development/web/twitter-bootstrap {}; - - txt2man = callPackage ../tools/misc/txt2man { }; - - ucl = callPackage ../development/libraries/ucl { }; - - ucspi-tcp = callPackage ../tools/networking/ucspi-tcp { }; - - udftools = callPackage ../tools/filesystems/udftools {}; - - udptunnel = callPackage ../tools/networking/udptunnel { }; - - ufraw = callPackage ../applications/graphics/ufraw { }; - - unetbootin = callPackage ../tools/cd-dvd/unetbootin { }; - - unfs3 = callPackage ../servers/unfs3 { }; - - unoconv = callPackage ../tools/text/unoconv { }; - - upx = callPackage ../tools/compression/upx { }; - - urlview = callPackage ../applications/misc/urlview {}; - - usbmuxd = callPackage ../tools/misc/usbmuxd {}; - - vacuum = callPackage ../applications/networking/instant-messengers/vacuum {}; - - volatility = callPackage ../tools/security/volatility { }; - - vidalia = callPackage ../tools/security/vidalia { }; - - vbetool = builderDefsPackage ../tools/system/vbetool { - inherit pciutils libx86 zlib; - }; - - vde2 = callPackage ../tools/networking/vde2 { }; - - vboot_reference = callPackage ../tools/system/vboot_reference { }; - - vcsh = callPackage ../applications/version-management/vcsh { }; - - verilog = callPackage ../applications/science/electronics/verilog {}; - - vfdecrypt = callPackage ../tools/misc/vfdecrypt { }; - - vifm = callPackage ../applications/misc/vifm { }; - - viking = callPackage ../applications/misc/viking { - inherit (gnome) scrollkeeper; - }; - - vnc2flv = callPackage ../tools/video/vnc2flv {}; - - vncrec = builderDefsPackage ../tools/video/vncrec { - inherit (xlibs) imake libX11 xproto gccmakedep libXt - libXmu libXaw libXext xextproto libSM libICE libXpm - libXp; - }; - - vobcopy = callPackage ../tools/cd-dvd/vobcopy { }; - - vobsub2srt = callPackage ../tools/cd-dvd/vobsub2srt { }; - - vorbisgain = callPackage ../tools/misc/vorbisgain { }; - - vpnc = callPackage ../tools/networking/vpnc { }; - - openconnect = callPackage ../tools/networking/openconnect.nix { }; - - vtun = callPackage ../tools/networking/vtun { }; - - wal_e = callPackage ../tools/backup/wal-e { }; - - watchman = callPackage ../development/tools/watchman { }; - - wbox = callPackage ../tools/networking/wbox {}; - - welkin = callPackage ../tools/graphics/welkin {}; - - testdisk = callPackage ../tools/misc/testdisk { }; - - htmlTidy = callPackage ../tools/text/html-tidy { }; - - html-xml-utils = callPackage ../tools/text/xml/html-xml-utils { }; - - tftp_hpa = callPackage ../tools/networking/tftp-hpa {}; - - tigervnc = callPackage ../tools/admin/tigervnc { - fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc - xorg.fontbhlucidatypewriter75dpi ]; - inherit (xorg) xorgserver; - fltk = fltk13; - }; - - tightvnc = callPackage ../tools/admin/tightvnc { - fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc - xorg.fontbhlucidatypewriter75dpi ]; - }; - - time = callPackage ../tools/misc/time { }; - - tkabber = callPackage ../applications/networking/instant-messengers/tkabber { }; - - qfsm = callPackage ../applications/science/electronics/qfsm { }; - - tkgate = callPackage ../applications/science/electronics/tkgate/1.x.nix { - inherit (xlibs) libX11 imake xproto gccmakedep; - }; - - # The newer package is low-priority because it segfaults at startup. - tkgate2 = lowPrio (callPackage ../applications/science/electronics/tkgate/2.x.nix { - inherit (xlibs) libX11; - }); - - tm = callPackage ../tools/system/tm { }; - - trang = callPackage ../tools/text/xml/trang { }; - - tre = callPackage ../development/libraries/tre { }; - - ts = callPackage ../tools/system/ts { }; - - transfig = callPackage ../tools/graphics/transfig { - libpng = libpng12; - }; - - truecrypt = callPackage ../applications/misc/truecrypt { - wxGUI = config.truecrypt.wxGUI or true; - }; - - ttmkfdir = callPackage ../tools/misc/ttmkfdir { }; - - uim = callPackage ../tools/inputmethods/uim { - inherit (pkgs.kde4) kdelibs; - }; - - uhub = callPackage ../servers/uhub { }; - - unclutter = callPackage ../tools/misc/unclutter { }; - - unbound = callPackage ../tools/networking/unbound { }; - - units = callPackage ../tools/misc/units { }; - - unrar = callPackage ../tools/archivers/unrar { }; - - xar = callPackage ../tools/compression/xar { }; - - xarchive = callPackage ../tools/archivers/xarchive { }; - - xarchiver = callPackage ../tools/archivers/xarchiver { }; - - xcruiser = callPackage ../applications/misc/xcruiser { }; - - unarj = callPackage ../tools/archivers/unarj { }; - - unshield = callPackage ../tools/archivers/unshield { }; - - unzip = callPackage ../tools/archivers/unzip { }; - - unzipNLS = lowPrio (unzip.override { enableNLS = true; }); - - uptimed = callPackage ../tools/system/uptimed { }; - - urlwatch = callPackage ../tools/networking/urlwatch { }; - - varnish = callPackage ../servers/varnish { }; - - varnish2 = callPackage ../servers/varnish/2.1.nix { }; - - venus = callPackage ../tools/misc/venus { - python = python27; - }; - - vlan = callPackage ../tools/networking/vlan { }; - - wakelan = callPackage ../tools/networking/wakelan { }; - - wavemon = callPackage ../tools/networking/wavemon { }; - - w3cCSSValidator = callPackage ../tools/misc/w3c-css-validator { - tomcat = tomcat6; - }; - - wdfs = callPackage ../tools/filesystems/wdfs { }; - - wdiff = callPackage ../tools/text/wdiff { }; - - webalizer = callPackage ../tools/networking/webalizer { }; - - webdruid = builderDefsPackage ../tools/admin/webdruid { - inherit zlib libpng freetype gd which - libxml2 geoip; - }; - - weighttp = callPackage ../tools/networking/weighttp { }; - - wget = callPackage ../tools/networking/wget { - inherit (perlPackages) LWP; - }; - - which = callPackage ../tools/system/which { }; - - wicd = callPackage ../tools/networking/wicd { }; - - wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { }; - - wv = callPackage ../tools/misc/wv { }; - - wv2 = callPackage ../tools/misc/wv2 { }; - - x86info = callPackage ../os-specific/linux/x86info { }; - - x11_ssh_askpass = callPackage ../tools/networking/x11-ssh-askpass { }; - - xbursttools = assert stdenv ? glibc; import ../tools/misc/xburst-tools { - inherit stdenv fetchgit autoconf automake confuse pkgconfig libusb libusb1; - # It needs a cross compiler for mipsel to build the firmware it will - # load into the Ben Nanonote - gccCross = - let - pkgsCross = (import ./all-packages.nix) { - inherit system; - inherit bootStdenv noSysDirs gccWithCC gccWithProfiling config; - # Ben Nanonote system - crossSystem = { - config = "mipsel-unknown-linux"; - bigEndian = true; - arch = "mips"; - float = "soft"; - withTLS = true; - libc = "uclibc"; - platform = { - name = "ben_nanonote"; - kernelMajor = "2.6"; - # It's not a bcm47xx processor, but for the headers this should work - kernelHeadersBaseConfig = "bcm47xx_defconfig"; - kernelArch = "mips"; - }; - gcc = { - arch = "mips32"; - }; - }; - }; - in - pkgsCross.gccCrossStageStatic; - }; - - xclip = callPackage ../tools/misc/xclip { }; - - xtitle = callPackage ../tools/misc/xtitle { }; - - xdelta = callPackage ../tools/compression/xdelta { }; - - xdummy = callPackage ../tools/misc/xdummy { }; - - xfsprogs = callPackage ../tools/filesystems/xfsprogs { }; - - xmlroff = callPackage ../tools/typesetting/xmlroff { - inherit (gnome) libgnomeprint; - }; - - xmlstarlet = callPackage ../tools/text/xml/xmlstarlet { }; - - xmlto = callPackage ../tools/typesetting/xmlto { }; - - xmltv = callPackage ../tools/misc/xmltv { }; - - xmpppy = builderDefsPackage (import ../development/python-modules/xmpppy) { - inherit python setuptools; - }; - - xorriso = callPackage ../tools/cd-dvd/xorriso { }; - - xpf = callPackage ../tools/text/xml/xpf { - libxml2 = libxml2Python; - }; - - xsel = callPackage ../tools/misc/xsel { }; - - xtreemfs = callPackage ../tools/filesystems/xtreemfs {}; - - xvfb_run = callPackage ../tools/misc/xvfb-run { inherit (texFunctions) fontsConf; }; - - youtubeDL = callPackage ../tools/misc/youtube-dl { }; - - zbar = callPackage ../tools/graphics/zbar { - pygtk = lib.overrideDerivation pygtk (x: { - gtk = gtk2; - }); - }; - - zdelta = callPackage ../tools/compression/zdelta { }; - - zfstools = callPackage ../tools/filesystems/zfstools { - zfs = linuxPackages.zfs; - }; - - zile = callPackage ../applications/editors/zile { }; - - zip = callPackage ../tools/archivers/zip { }; - - zpaq = callPackage ../tools/archivers/zpaq { }; - zpaqd = callPackage ../tools/archivers/zpaq/zpaqd.nix { }; - - zsync = callPackage ../tools/compression/zsync { }; - - - ### SHELLS - - bash = lowPrio (callPackage ../shells/bash { - texinfo = null; - }); - - bashInteractive = appendToName "interactive" (callPackage ../shells/bash { - interactive = true; - readline = readline63; # Includes many vi mode fixes - }); - - bashCompletion = callPackage ../shells/bash-completion { }; - - dash = callPackage ../shells/dash { }; - - fish = callPackage ../shells/fish { - python = python27Full; - }; - - tcsh = callPackage ../shells/tcsh { }; - - rush = callPackage ../shells/rush { }; - - zsh = callPackage ../shells/zsh { }; - - - ### DEVELOPMENT / COMPILERS - - abc = - abcPatchable []; - - abcPatchable = patches : - import ../development/compilers/abc/default.nix { - inherit stdenv fetchurl patches jre apacheAnt; - javaCup = callPackage ../development/libraries/java/cup { }; - }; - - aldor = callPackage ../development/compilers/aldor { }; - - aliceml = callPackage ../development/compilers/aliceml { }; - - aspectj = callPackage ../development/compilers/aspectj { }; - - ats = callPackage ../development/compilers/ats { }; - ats2 = callPackage ../development/compilers/ats2 { }; - - avra = callPackage ../development/compilers/avra { }; - - bigloo = callPackage ../development/compilers/bigloo { }; - - chicken = callPackage ../development/compilers/chicken { }; - - ccl = builderDefsPackage ../development/compilers/ccl {}; - - clang = wrapClang llvmPackages.clang; - - clang_34 = wrapClang llvmPackages_34.clang; - clang_33 = wrapClang (clangUnwrapped llvm_33 ../development/compilers/llvm/3.3/clang.nix); - - clangAnalyzer = callPackage ../development/tools/analysis/clang-analyzer { - clang = clang_34; - llvmPackages = llvmPackages_34; - }; - - clangUnwrapped = llvm: pkg: callPackage pkg { - stdenv = if stdenv.isDarwin then stdenvApple else stdenv; - inherit llvm; - }; - - clangSelf = clangWrapSelf llvmPackagesSelf.clang; - - clangWrapSelf = build: (import ../build-support/clang-wrapper) { - clang = build; - stdenv = clangStdenv; - libc = glibc; - binutils = binutils; - shell = bash; - inherit libcxx coreutils zlib; - nativeTools = false; - nativeLibc = false; - }; - - #Use this instead of stdenv to build with clang - clangStdenv = lowPrio (stdenvAdapters.overrideGCC stdenv clang); - libcxxStdenv = stdenvAdapters.overrideGCC stdenv (clangWrapSelf llvmPackages.clang); - - clean = callPackage ../development/compilers/clean { }; - - closurecompiler = callPackage ../development/compilers/closure { }; - - cmucl_binary = callPackage ../development/compilers/cmucl/binary.nix { }; - - compcert = callPackage ../development/compilers/compcert {}; - - cryptol1 = lowPrio (callPackage ../development/compilers/cryptol/1.8.x.nix {}); - cryptol2 = with haskellPackages_ghc763; callPackage ../development/compilers/cryptol/2.0.x.nix { - Cabal = Cabal_1_18_1_3; - cabalInstall = cabalInstall_1_18_0_3; - process = process_1_2_0_0; - }; - - cython = pythonPackages.cython; - cython3 = python3Packages.cython; - - dylan = callPackage ../development/compilers/gwydion-dylan { - dylan = callPackage ../development/compilers/gwydion-dylan/binary.nix { }; - }; - - ecl = callPackage ../development/compilers/ecl { }; - - eql = callPackage ../development/compilers/eql {}; - - adobe_flex_sdk = callPackage ../development/compilers/adobe-flex-sdk { }; - - fpc = callPackage ../development/compilers/fpc { }; - - gambit = callPackage ../development/compilers/gambit { }; - - gcc = gcc48; - - gcc33 = wrapGCC (import ../development/compilers/gcc/3.3 { - inherit fetchurl stdenv noSysDirs; - }); - - gcc34 = wrapGCC (import ../development/compilers/gcc/3.4 { - inherit fetchurl stdenv noSysDirs; - }); - - gcc48_realCross = lib.addMetaAttrs { hydraPlatforms = []; } - (callPackage ../development/compilers/gcc/4.8 { - inherit noSysDirs; - binutilsCross = binutilsCross; - libcCross = libcCross; - profiledCompiler = false; - enableMultilib = false; - crossStageStatic = false; - cross = assert crossSystem != null; crossSystem; - }); - - gcc_realCross = gcc48_realCross; - - gccCrossStageStatic = let - libcCross1 = - if stdenv.cross.libc == "msvcrt" then windows.mingw_w64_headers - else if stdenv.cross.libc == "libSystem" then darwin.xcode - else null; - in - wrapGCCCross { - gcc = forceNativeDrv (lib.addMetaAttrs { hydraPlatforms = []; } ( - gcc_realCross.override { - crossStageStatic = true; - langCC = false; - libcCross = libcCross1; - enableShared = false; - })); - libc = libcCross1; - binutils = binutilsCross; - cross = assert crossSystem != null; crossSystem; - }; - - # Only needed for mingw builds - gccCrossMingw2 = wrapGCCCross { - gcc = gccCrossStageStatic.gcc; - libc = windows.mingw_headers2; - binutils = binutilsCross; - cross = assert crossSystem != null; crossSystem; - }; - - gccCrossStageFinal = wrapGCCCross { - gcc = forceNativeDrv (gcc_realCross.override { - libpthreadCross = - # FIXME: Don't explicitly refer to `i586-pc-gnu'. - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; - - # XXX: We have troubles cross-compiling libstdc++ on MinGW (see - # ), so don't even try. - langCC = (crossSystem == null - || crossSystem.config != "i686-pc-mingw32"); - }); - libc = libcCross; - binutils = binutilsCross; - cross = assert crossSystem != null; crossSystem; - }; - - gcc44 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.4) { - inherit fetchurl stdenv gmp mpfr /* ppl cloogppl */ - gettext which noSysDirs; - texinfo = texinfo4; - profiledCompiler = true; - })); - - gcc45 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.5 { - inherit fetchurl stdenv gmp mpfr mpc libelf zlib perl - gettext which noSysDirs; - texinfo = texinfo4; - - ppl = null; - cloogppl = null; - - # bootstrapping a profiled compiler does not work in the sheevaplug: - # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 - profiledCompiler = !stdenv.isArm; - - # When building `gcc.crossDrv' (a "Canadian cross", with host == target - # and host != build), `cross' must be null but the cross-libc must still - # be passed. - cross = null; - libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; - })); - - gcc46 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.6 { - inherit noSysDirs; - - ppl = null; - cloog = null; - - # bootstrapping a profiled compiler does not work in the sheevaplug: - # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 - profiledCompiler = false; - - # When building `gcc.crossDrv' (a "Canadian cross", with host == target - # and host != build), `cross' must be null but the cross-libc must still - # be passed. - cross = null; - libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; - texinfo = texinfo413; - })); - - gcc48 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { - inherit noSysDirs; - - # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion - profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - - # When building `gcc.crossDrv' (a "Canadian cross", with host == target - # and host != build), `cross' must be null but the cross-libc must still - # be passed. - cross = null; - libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; - })); - - gcc48_multi = - if system == "x86_64-linux" then lowPrio ( - wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi (gcc48.gcc.override { - stdenv = overrideGCC stdenv (wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi gcc.gcc); - profiledCompiler = false; - enableMultilib = true; - })) - else throw "Multilib gcc not supported on ‘${system}’"; - - gcc48_debug = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { - stripped = false; - - inherit noSysDirs; - cross = null; - libcCross = null; - binutilsCross = null; - })); - - gcc49 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.9 { - inherit noSysDirs; - - # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion - profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - - # When building `gcc.crossDrv' (a "Canadian cross", with host == target - # and host != build), `cross' must be null but the cross-libc must still - # be passed. - cross = null; - libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; - })); - - gccApple = - assert stdenv.isDarwin; - wrapGCC (makeOverridable (import ../development/compilers/gcc/4.2-apple64) { - inherit fetchurl noSysDirs; - profiledCompiler = true; - # Since it fails to build with GCC 4.6, build it with the "native" - # Apple-GCC. - stdenv = allStdenvs.stdenvNative; - }); - - gfortran = gfortran48; - - gfortran48 = wrapGCC (gcc48.gcc.override { - name = "gfortran"; - langFortran = true; - langCC = false; - langC = false; - profiledCompiler = false; - }); - - gcj = gcj48; - - gcj48 = wrapGCC (gcc48.gcc.override { - name = "gcj"; - langJava = true; - langFortran = false; - langCC = false; - langC = false; - profiledCompiler = false; - inherit zip unzip zlib boehmgc gettext pkgconfig perl; - inherit gtk; - inherit (gnome) libart_lgpl; - inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender - libXrandr xproto renderproto xextproto inputproto randrproto; - }); - - gnat = gnat45; - - gnat45 = wrapGCC (gcc45.gcc.override { - name = "gnat"; - langCC = false; - langC = true; - langAda = true; - profiledCompiler = false; - inherit gnatboot; - # We can't use the ppl stuff, because we would have - # libstdc++ problems. - cloogppl = null; - ppl = null; - }); - - gnat46 = wrapGCC (gcc46.gcc.override { - name = "gnat"; - langCC = false; - langC = true; - langAda = true; - profiledCompiler = false; - gnatboot = gnat45; - # We can't use the ppl stuff, because we would have - # libstdc++ problems. - ppl = null; - cloog = null; - }); - - gnatboot = wrapGCC (import ../development/compilers/gnatboot { - inherit fetchurl stdenv; - }); - - gccgo = gccgo48; - - gccgo48 = wrapGCC (gcc48.gcc.override { - name = "gccgo"; - langCC = true; #required for go. - langC = true; - langGo = true; - }); - - ghdl = wrapGCC (import ../development/compilers/gcc/4.3 { - inherit stdenv fetchurl gmp mpfr noSysDirs gnat; - texinfo = texinfo4; - name = "ghdl"; - langVhdl = true; - langCC = false; - langC = false; - profiledCompiler = false; - enableMultilib = false; - }); - - ghdl_mcode = callPackage ../development/compilers/ghdl { }; - - gcl = builderDefsPackage ../development/compilers/gcl { - inherit mpfr m4 binutils fetchcvs emacs zlib which - texinfo; - gmp = gmp4; - inherit (xlibs) libX11 xproto inputproto libXi - libXext xextproto libXt libXaw libXmu; - inherit stdenv; - texLive = texLiveAggregationFun { - paths = [ - texLive texLiveExtra - ]; - }; - }; - - jhc = callPackage ../development/compilers/jhc { - inherit (haskellPackages_ghc763) ghc binary zlib utf8String readline fgl - regexCompat HsSyck random; - }; - - gcc-arm-embedded-4_7 = callPackage_i686 ../development/compilers/gcc-arm-embedded { - version = "4.7-2013q3-20130916"; - releaseType = "update"; - sha256 = "1bd9bi9q80xn2rpy0rn1vvj70rh15kb7dmah0qs4q2rv78fqj40d"; - }; - gcc-arm-embedded-4_8 = callPackage_i686 ../development/compilers/gcc-arm-embedded { - version = "4.8-2014q1-20140314"; - releaseType = "update"; - sha256 = "ce92859550819d4a3d1a6e2672ea64882b30afa2c08cf67fa8e1d93788c2c577"; - }; - gcc-arm-embedded = gcc-arm-embedded-4_8; - - # Haskell and GHC - - # Import Haskell infrastructure. - - haskell = let pkgs_ = pkgs // { gmp = gmp.override { withStatic = true; }; }; - callPackage = newScope pkgs_; - newScope = extra: lib.callPackageWith (pkgs_ // pkgs_.xorg // extra); - in callPackage ./haskell-defaults.nix { pkgs = pkgs_; inherit callPackage newScope; }; - - # Available GHC versions. - - # For several compiler versions, we export a large set of Haskell-related - # packages. - - # NOTE (recurseIntoAttrs): After discussion, we originally decided to - # enable it for all GHC versions. However, this is getting too much, - # particularly in connection with Hydra builds for all these packages. - # So we enable it for selected versions only. We build all ghcs, though - - ghc = recurseIntoAttrs (lib.mapAttrs' (name: value: - lib.nameValuePair (builtins.substring (builtins.stringLength "packages_") (builtins.stringLength name) name) value.ghc - ) (lib.filterAttrs (name: value: - builtins.substring 0 (builtins.stringLength "packages_") name == "packages_" - ) haskell)); - - haskellPackages = haskellPackages_ghc783; - haskellPlatform = haskellPlatformPackages."2013_2_0_0"; - - haskellPackages_ghc6104 = haskell.packages_ghc6104; - haskellPackages_ghc6123 = haskell.packages_ghc6123; - haskellPackages_ghc704 = haskell.packages_ghc704; - haskellPackages_ghc722 = haskell.packages_ghc722; - haskellPackages_ghc742 = haskell.packages_ghc742; - haskellPackages_ghc763 = haskell.packages_ghc763; - haskellPackages_ghc783_no_profiling = recurseIntoAttrs haskell.packages_ghc783.noProfiling; - haskellPackages_ghc783_profiling = recurseIntoAttrs haskell.packages_ghc783.profiling; - haskellPackages_ghc783 = recurseIntoAttrs haskell.packages_ghc783.highPrio; - haskellPackages_ghcHEAD = haskell.packages_ghcHEAD; - - haskellPlatformPackages = recurseIntoAttrs (import ../development/libraries/haskell/haskell-platform { inherit pkgs; }); - - haxe = callPackage ../development/compilers/haxe { }; - - hhvm = callPackage ../development/compilers/hhvm { }; - hiphopvm = hhvm; /* Compatibility alias */ - - falcon = builderDefsPackage (import ../development/interpreters/falcon) { - inherit cmake; - }; - - fsharp = callPackage ../development/compilers/fsharp {}; - - go_1_0 = callPackage ../development/compilers/go { }; - - go_1_1 = - if stdenv.isDarwin then - callPackage ../development/compilers/go/1.1-darwin.nix { } - else - callPackage ../development/compilers/go/1.1.nix { }; - - go_1_2 = callPackage ../development/compilers/go/1.2.nix { }; - - go_1_3 = callPackage ../development/compilers/go/1.3.nix { }; - - go = go_1_3; - - gox = callPackage ../development/compilers/go/gox.nix { }; - - gprolog = callPackage ../development/compilers/gprolog { }; - - gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { }; - - icedtea7_jdk = callPackage ../development/compilers/icedtea rec { - jdk = openjdk; - jdkPath = "${openjdk}/lib/openjdk"; - } // { outputs = [ "out" ]; }; - - icedtea7_jre = (lib.setName "icedtea7-${lib.getVersion pkgs.icedtea7_jdk.jre}" (lib.addMetaAttrs - { description = "Free Java runtime environment based on OpenJDK 7.0 and the IcedTea project"; } - pkgs.icedtea7_jdk.jre)) // { outputs = [ "jre" ]; }; - - icedtea7_web = callPackage ../development/compilers/icedtea-web { - jdk = "${icedtea7_jdk}/lib/icedtea"; - }; - - ikarus = callPackage ../development/compilers/ikarus { }; - - hugs = callPackage ../development/compilers/hugs { }; - - path64 = callPackage ../development/compilers/path64 { }; - - openjdk = - if stdenv.isDarwin then - callPackage ../development/compilers/openjdk-darwin { } - else - let - openjdkBootstrap = callPackage ../development/compilers/openjdk/bootstrap.nix { }; - in (callPackage ../development/compilers/openjdk { - jdk = openjdkBootstrap; - }) // { outputs = [ "out" ]; }; - - # FIXME: Need a way to set per-output meta attributes. - openjre = (lib.setName "openjre-${lib.getVersion pkgs.openjdk.jre}" (lib.addMetaAttrs - { description = "The open-source Java Runtime Environment"; } - pkgs.openjdk.jre)) // { outputs = [ "jre" ]; }; - - jdk = if stdenv.isDarwin || stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" - then pkgs.openjdk - else pkgs.oraclejdk; - jre = if stdenv.isDarwin || stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" - then pkgs.openjre - else pkgs.oraclejre; - - oraclejdk = pkgs.jdkdistro true false; - - oraclejdk7 = pkgs.oraclejdk7distro true false; - - oraclejdk8 = pkgs.oraclejdk8distro true false; - - oraclejre = lowPrio (pkgs.jdkdistro false false); - - oraclejre7 = lowPrio (pkgs.oraclejdk7distro false false); - - oraclejre8 = lowPrio (pkgs.oraclejdk8distro false false); - - jrePlugin = lowPrio (pkgs.jdkdistro false true); - - supportsJDK = - system == "i686-linux" || - system == "x86_64-linux"; - - jdkdistro = installjdk: pluginSupport: - assert supportsJDK; - (if pluginSupport then appendToName "with-plugin" else x: x) - (callPackage ../development/compilers/oraclejdk/jdk6-linux.nix { }); - - oraclejdk7distro = installjdk: pluginSupport: - assert supportsJDK; - (if pluginSupport then appendToName "with-plugin" else x: x) - (callPackage ../development/compilers/oraclejdk/jdk7-linux.nix { inherit installjdk; }); - - oraclejdk8distro = installjdk: pluginSupport: - assert supportsJDK; - (if pluginSupport then appendToName "with-plugin" else x: x) - (callPackage ../development/compilers/oraclejdk/jdk8-linux.nix { inherit installjdk; }); - - jikes = callPackage ../development/compilers/jikes { }; - - juliaGit = callPackage ../development/compilers/julia/git-20131013.nix { - liblapack = liblapack.override {shared = true;}; - llvm = llvm_33; - openblas = openblas_0_2_2; - }; - julia021 = callPackage ../development/compilers/julia/0.2.1.nix { - liblapack = liblapack.override {shared = true;}; - llvm = llvm_33; - openblas = openblas_0_2_2; - }; - julia030 = let - liblapack = liblapack_3_5_0.override {shared = true;}; - in callPackage ../development/compilers/julia/0.3.0.nix { - inherit liblapack; - suitesparse = suitesparse.override { - inherit liblapack; - }; - llvm = llvm_34; - openblas = openblas_0_2_10; - }; - julia = julia030; - - lazarus = builderDefsPackage (import ../development/compilers/fpc/lazarus.nix) { - inherit makeWrapper gtk glib pango atk gdk_pixbuf; - inherit (xlibs) libXi inputproto libX11 xproto libXext xextproto; - fpc = fpc; - }; - - lessc = callPackage ../development/compilers/lessc { }; - - llvm = llvmPackages.llvm; - - llvm_34 = llvmPackages_34.llvm; - llvm_33 = llvm_v ../development/compilers/llvm/3.3/llvm.nix; - - llvm_v = path: callPackage path { - stdenv = if stdenv.isDarwin then stdenvApple else stdenv; - }; - - llvmPackages = if !stdenv.isDarwin then llvmPackages_34 else llvmPackages_34 // { - # until someone solves build problems with _34 - llvm = llvm_33; - clang = clang_33; - }; - - llvmPackages_34 = recurseIntoAttrs (import ../development/compilers/llvm/3.4 { - inherit stdenv newScope fetchurl; - isl = isl_0_12; - }); - llvmPackagesSelf = import ../development/compilers/llvm/3.4 { inherit newScope fetchurl; isl = isl_0_12; stdenv = libcxxStdenv; }; - - manticore = callPackage ../development/compilers/manticore { }; - - mentorToolchains = recurseIntoAttrs ( - callPackage_i686 ../development/compilers/mentor {} - ); - - mercury = callPackage ../development/compilers/mercury { }; - - mitscheme = callPackage ../development/compilers/mit-scheme { }; - - mlton = callPackage ../development/compilers/mlton { }; - - mono = callPackage ../development/compilers/mono { - inherit (xlibs) libX11; - }; - - monoDLLFixer = callPackage ../build-support/mono-dll-fixer { }; - - mozart = callPackage ../development/compilers/mozart { }; - - neko = callPackage ../development/compilers/neko { }; - - nasm = callPackage ../development/compilers/nasm { }; - - nvidia_cg_toolkit = callPackage ../development/compilers/nvidia-cg-toolkit { }; - - ocaml = ocamlPackages.ocaml; - - ocaml_3_08_0 = callPackage ../development/compilers/ocaml/3.08.0.nix { }; - - ocaml_3_10_0 = callPackage ../development/compilers/ocaml/3.10.0.nix { }; - - ocaml_3_11_2 = callPackage ../development/compilers/ocaml/3.11.2.nix { }; - - ocaml_3_12_1 = callPackage ../development/compilers/ocaml/3.12.1.nix { }; - - ocaml_4_00_1 = callPackage ../development/compilers/ocaml/4.00.1.nix { }; - - ocaml_4_01_0 = callPackage ../development/compilers/ocaml/4.01.0.nix { }; - - orc = callPackage ../development/compilers/orc { }; - - metaocaml_3_09 = callPackage ../development/compilers/ocaml/metaocaml-3.09.nix { }; - - ber_metaocaml_003 = callPackage ../development/compilers/ocaml/ber-metaocaml-003.nix { }; - - mkOcamlPackages = ocaml: self: let callPackage = newScope self; in rec { - inherit ocaml; - - camlidl = callPackage ../development/tools/ocaml/camlidl { }; - - camlp5_5_strict = callPackage ../development/tools/ocaml/camlp5/5.15.nix { }; - - camlp5_5_transitional = callPackage ../development/tools/ocaml/camlp5/5.15.nix { - transitional = true; - }; - - camlp5_6_strict = callPackage ../development/tools/ocaml/camlp5 { }; - - camlp5_6_transitional = callPackage ../development/tools/ocaml/camlp5 { - transitional = true; - }; - - camlp5_strict = camlp5_6_strict; - - camlp5_transitional = camlp5_6_transitional; - - camlzip = callPackage ../development/ocaml-modules/camlzip { }; - - camomile_0_8_2 = callPackage ../development/ocaml-modules/camomile/0.8.2.nix { }; - camomile = callPackage ../development/ocaml-modules/camomile { }; - - camlimages = callPackage ../development/ocaml-modules/camlimages { - libpng = libpng12; - giflib = giflib_4_1; - }; - - biniou = callPackage ../development/ocaml-modules/biniou { }; - - ocaml_cairo = callPackage ../development/ocaml-modules/ocaml-cairo { }; - - cmdliner = callPackage ../development/ocaml-modules/cmdliner { }; - - cppo = callPackage ../development/tools/ocaml/cppo { }; - - cryptokit = callPackage ../development/ocaml-modules/cryptokit { }; - - csv = callPackage ../development/ocaml-modules/csv { }; - - deriving = callPackage ../development/tools/ocaml/deriving { }; - - easy-format = callPackage ../development/ocaml-modules/easy-format { }; - - findlib = callPackage ../development/tools/ocaml/findlib { }; - - javalib = callPackage ../development/ocaml-modules/javalib { - extlib = ocaml_extlib_maximal; - }; - - dypgen = callPackage ../development/ocaml-modules/dypgen { }; - - patoline = callPackage ../tools/typesetting/patoline { }; - - gmetadom = callPackage ../development/ocaml-modules/gmetadom { }; - - lablgl = callPackage ../development/ocaml-modules/lablgl { }; - - lablgtk = callPackage ../development/ocaml-modules/lablgtk { - inherit (gnome) libgnomecanvas libglade gtksourceview; - }; - - lablgtkmathview = callPackage ../development/ocaml-modules/lablgtkmathview { - gtkmathview = callPackage ../development/libraries/gtkmathview { }; - }; - - lambdaTerm = callPackage ../development/ocaml-modules/lambda-term { }; - - menhir = callPackage ../development/ocaml-modules/menhir { }; - - merlin = callPackage ../development/tools/ocaml/merlin { }; - - mldonkey = callPackage ../applications/networking/p2p/mldonkey { }; - - mlgmp = callPackage ../development/ocaml-modules/mlgmp { }; - - ocaml_batteries = callPackage ../development/ocaml-modules/batteries { }; - - ocaml_cryptgps = callPackage ../development/ocaml-modules/cryptgps { }; - - ocaml_data_notation = callPackage ../development/ocaml-modules/odn { }; - - ocaml_expat = callPackage ../development/ocaml-modules/expat { }; - - ocamlgraph = callPackage ../development/ocaml-modules/ocamlgraph { }; - - ocaml_http = callPackage ../development/ocaml-modules/http { }; - - ocamlify = callPackage ../development/tools/ocaml/ocamlify { }; - - ocaml_lwt = callPackage ../development/ocaml-modules/lwt { }; - - ocamlmod = callPackage ../development/tools/ocaml/ocamlmod { }; - - ocaml_mysql = callPackage ../development/ocaml-modules/mysql { }; - - ocamlnet = callPackage ../development/ocaml-modules/ocamlnet { }; - - ocaml_oasis = callPackage ../development/tools/ocaml/oasis { }; - - ocaml_pcre = callPackage ../development/ocaml-modules/pcre { - inherit pcre; - }; - - ocaml_react = callPackage ../development/ocaml-modules/react { }; - - ocamlsdl= callPackage ../development/ocaml-modules/ocamlsdl { }; - - ocaml_sqlite3 = callPackage ../development/ocaml-modules/sqlite3 { }; - - ocaml_ssl = callPackage ../development/ocaml-modules/ssl { }; - - ocaml_text = callPackage ../development/ocaml-modules/ocaml-text { }; - - ounit = callPackage ../development/ocaml-modules/ounit { }; - - ulex = callPackage ../development/ocaml-modules/ulex { }; - - ulex08 = callPackage ../development/ocaml-modules/ulex/0.8 { - camlp5 = camlp5_transitional; - }; - - ocaml_typeconv = callPackage ../development/ocaml-modules/typeconv { }; - - ocaml_typeconv_3_0_5 = callPackage ../development/ocaml-modules/typeconv/3.0.5.nix { }; - - ocaml_sexplib = callPackage ../development/ocaml-modules/sexplib { }; - - ocaml_extlib = callPackage ../development/ocaml-modules/extlib { }; - ocaml_extlib_maximal = callPackage ../development/ocaml-modules/extlib { - minimal = false; - }; - - pycaml = callPackage ../development/ocaml-modules/pycaml { }; - - opam_1_0_0 = callPackage ../development/tools/ocaml/opam/1.0.0.nix { }; - opam_1_1 = callPackage ../development/tools/ocaml/opam/1.1.nix { }; - opam = opam_1_1; - - utop = callPackage ../development/tools/ocaml/utop { }; - - sawja = callPackage ../development/ocaml-modules/sawja { }; - - uucd = callPackage ../development/ocaml-modules/uucd { }; - uunf = callPackage ../development/ocaml-modules/uunf { }; - uutf = callPackage ../development/ocaml-modules/uutf { }; - xmlm = callPackage ../development/ocaml-modules/xmlm { }; - - yojson = callPackage ../development/ocaml-modules/yojson { }; - - zarith = callPackage ../development/ocaml-modules/zarith { }; - - zed = callPackage ../development/ocaml-modules/zed { }; - - }; - - ocamlPackages = recurseIntoAttrs ocamlPackages_4_01_0; - ocamlPackages_3_10_0 = mkOcamlPackages ocaml_3_10_0 pkgs.ocamlPackages_3_10_0; - ocamlPackages_3_11_2 = mkOcamlPackages ocaml_3_11_2 pkgs.ocamlPackages_3_11_2; - ocamlPackages_3_12_1 = mkOcamlPackages ocaml_3_12_1 pkgs.ocamlPackages_3_12_1; - ocamlPackages_4_00_1 = mkOcamlPackages ocaml_4_00_1 pkgs.ocamlPackages_4_00_1; - ocamlPackages_4_01_0 = mkOcamlPackages ocaml_4_01_0 pkgs.ocamlPackages_4_01_0; - ocamlPackages_latest = ocamlPackages_4_01_0; - - ocaml_make = callPackage ../development/ocaml-modules/ocamlmake { }; - - opa = let callPackage = newScope pkgs.ocamlPackages_4_00_1; in callPackage ../development/compilers/opa { }; - - ocamlnat = let callPackage = newScope pkgs.ocamlPackages_3_12_1; in callPackage ../development/ocaml-modules/ocamlnat { }; - - qcmm = callPackage ../development/compilers/qcmm { - lua = lua4; - ocaml = ocaml_3_08_0; - }; - - roadsend = callPackage ../development/compilers/roadsend { }; - - rustc = callPackage ../development/compilers/rustc/0.11.nix {}; - rustcMaster = callPackage ../development/compilers/rustc/head.nix {}; - - rust = rustc; - - - sbclBootstrap = callPackage ../development/compilers/sbcl/bootstrap.nix {}; - sbcl = callPackage ../development/compilers/sbcl { - clisp = clisp; - }; - - scala_2_9 = callPackage ../development/compilers/scala/2.9.nix { }; - scala_2_10 = callPackage ../development/compilers/scala/2.10.nix { }; - scala_2_11 = callPackage ../development/compilers/scala { }; - scala = scala_2_11; - - sdcc = callPackage ../development/compilers/sdcc { }; - - smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { }; - smlnj = callPackage_i686 ../development/compilers/smlnj { }; - - stalin = callPackage ../development/compilers/stalin { }; - - strategoPackages = recurseIntoAttrs strategoPackages018; - - strategoPackages016 = callPackage ../development/compilers/strategoxt/0.16.nix { - stdenv = overrideInStdenv stdenv [gnumake380]; - }; - - strategoPackages017 = callPackage ../development/compilers/strategoxt/0.17.nix { - readline = readline5; - }; - - strategoPackages018 = callPackage ../development/compilers/strategoxt/0.18.nix { - readline = readline5; - }; - - metaBuildEnv = callPackage ../development/compilers/meta-environment/meta-build-env { }; - - swiProlog = callPackage ../development/compilers/swi-prolog { }; - - tbb = callPackage ../development/libraries/tbb { }; - - tinycc = callPackage ../development/compilers/tinycc { }; - - urweb = callPackage ../development/compilers/urweb { }; - - vala = callPackage ../development/compilers/vala/default.nix { }; - - visualcpp = callPackage ../development/compilers/visual-c++ { }; - - vs90wrapper = callPackage ../development/compilers/vs90wrapper { }; - - webdsl = callPackage ../development/compilers/webdsl { }; - - win32hello = callPackage ../development/compilers/visual-c++/test { }; - - wrapGCCWith = gccWrapper: glibc: baseGCC: gccWrapper { - nativeTools = stdenv ? gcc && stdenv.gcc.nativeTools; - nativeLibc = stdenv ? gcc && stdenv.gcc.nativeLibc; - nativePrefix = if stdenv ? gcc then stdenv.gcc.nativePrefix else ""; - gcc = baseGCC; - libc = glibc; - shell = bash; - inherit stdenv binutils coreutils zlib; - }; - - wrapClangWith = clangWrapper: glibc: baseClang: clangWrapper { - nativeTools = stdenv.gcc.nativeTools or false; - nativeLibc = stdenv.gcc.nativeLibc or false; - nativePrefix = stdenv.gcc.nativePrefix or ""; - clang = baseClang; - libc = glibc; - shell = bash; - binutils = stdenv.gcc.binutils; - inherit stdenv coreutils zlib; - }; - - wrapClang = wrapClangWith (makeOverridable (import ../build-support/clang-wrapper)) glibc; - - wrapGCC = wrapGCCWith (makeOverridable (import ../build-support/gcc-wrapper)) glibc; - - wrapGCCCross = - {gcc, libc, binutils, cross, shell ? "", name ? "gcc-cross-wrapper"}: - - forceNativeDrv (import ../build-support/gcc-cross-wrapper { - nativeTools = false; - nativeLibc = false; - noLibc = (libc == null); - inherit stdenv gcc binutils libc shell name cross; - }); - - # prolog - yap = callPackage ../development/compilers/yap { }; - - yasm = callPackage ../development/compilers/yasm { }; - - - ### DEVELOPMENT / INTERPRETERS - - acl2 = builderDefsPackage ../development/interpreters/acl2 { - inherit sbcl; - }; - - angelscript = callPackage ../development/interpreters/angelscript {}; - - clisp = callPackage ../development/interpreters/clisp { }; - - # compatibility issues in 2.47 - at list 2.44.1 is known good - # for sbcl bootstrap - clisp_2_44_1 = callPackage ../development/interpreters/clisp/2.44.1.nix { - libsigsegv = libsigsegv_25; - }; - - clojure = callPackage ../development/interpreters/clojure { }; - - clooj = callPackage ../development/interpreters/clojure/clooj.nix { }; - - erlangR14 = callPackage ../development/interpreters/erlang/R14.nix { }; - erlangR15 = callPackage ../development/interpreters/erlang/R15.nix { }; - erlangR16 = callPackage ../development/interpreters/erlang/R16.nix { }; - erlangR16_odbc = callPackage ../development/interpreters/erlang/R16.nix { odbcSupport = true; }; - erlangR17 = callPackage ../development/interpreters/erlang/R17.nix { }; - erlangR17_odbc = callPackage ../development/interpreters/erlang/R17.nix { odbcSupport = true; }; - erlang = erlangR17; - erlang_odbc = erlangR17_odbc; - - rebar = callPackage ../development/tools/build-managers/rebar { }; - - elixir = callPackage ../development/interpreters/elixir { }; - - groovy = callPackage ../development/interpreters/groovy { }; - - guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { }; - - guile_2_0 = callPackage ../development/interpreters/guile { }; - - guile = guile_2_0; - - hadoop = callPackage ../applications/networking/cluster/hadoop { }; - - io = callPackage ../development/interpreters/io { }; - - j = callPackage ../development/interpreters/j {}; - - jmeter = callPackage ../applications/networking/jmeter {}; - - davmail = callPackage ../applications/networking/davmail {}; - - lxappearance = callPackage ../applications/misc/lxappearance {}; - - kona = callPackage ../development/interpreters/kona {}; - - love = callPackage ../development/interpreters/love {lua=lua5;}; - love_luajit = callPackage ../development/interpreters/love {lua=luajit;}; - love_0_9 = callPackage ../development/interpreters/love/0.9.nix { }; - - lua4 = callPackage ../development/interpreters/lua-4 { }; - lua5_0 = callPackage ../development/interpreters/lua-5/5.0.3.nix { }; - lua5_1 = callPackage ../development/interpreters/lua-5/5.1.nix { }; - lua5_2 = callPackage ../development/interpreters/lua-5/5.2.nix { }; - lua5_2_compat = callPackage ../development/interpreters/lua-5/5.2.nix { - compat = true; - }; - lua5 = lua5_1; - lua = lua5; - - lua5_sockets = callPackage ../development/interpreters/lua-5/sockets.nix {}; - lua5_expat = callPackage ../development/interpreters/lua-5/expat.nix {}; - lua5_filesystem = callPackage ../development/interpreters/lua-5/filesystem.nix {}; - lua5_sec = callPackage ../development/interpreters/lua-5/sec.nix {}; - - luarocks = callPackage ../development/tools/misc/luarocks { - lua = lua5; - }; - - luajit = callPackage ../development/interpreters/luajit {}; - - lush2 = callPackage ../development/interpreters/lush {}; - - maude = callPackage ../development/interpreters/maude { - bison = bison2; - flex = flex_2_5_35; - }; - - mesos = callPackage ../applications/networking/cluster/mesos { - sasl = cyrus_sasl; - automake = automake114x; - inherit (pythonPackages) python boto setuptools distutils-cfg wrapPython; - pythonProtobuf = pythonPackages.protobuf; - }; - - octave = callPackage ../development/interpreters/octave { - fltk = fltk13; - qt = null; - ghostscript = null; - llvm = null; - hdf5 = null; - glpk = null; - suitesparse = null; - openjdk = null; - gnuplot = null; - readline = readline63; - }; - octaveFull = (lowPrio (callPackage ../development/interpreters/octave { - fltk = fltk13; - qt = qt4; - })); - - # mercurial (hg) bleeding edge version - octaveHG = callPackage ../development/interpreters/octave/hg.nix { }; - - ocropus = callPackage ../applications/misc/ocropus { }; - - perl514 = callPackage ../development/interpreters/perl/5.14 { }; - - perl516 = callPackage ../development/interpreters/perl/5.16 { - fetchurl = fetchurlBoot; - }; - - perl520 = callPackage ../development/interpreters/perl/5.20 { }; - - perl = if system != "i686-cygwin" then perl516 else sysPerl; - - php = php54; - - phpPackages = recurseIntoAttrs (import ./php-packages.nix { - inherit php pkgs; - }); - - php53 = callPackage ../development/interpreters/php/5.3.nix { }; - - php_fpm53 = callPackage ../development/interpreters/php/5.3.nix { - config = config // { - php = (config.php or {}) // { - fpm = true; - apxs2 = false; - }; - }; - }; - - php54 = callPackage ../development/interpreters/php/5.4.nix { }; - - picolisp = callPackage ../development/interpreters/picolisp {}; - - pltScheme = racket; # just to be sure - - polyml = callPackage ../development/compilers/polyml { }; - - pure = callPackage ../development/interpreters/pure { - llvm = llvm_33 ; - }; - - python = python2; - python2 = python27; - python3 = python34; - - # pythonPackages further below, but assigned here because they need to be in sync - pythonPackages = python2Packages; - python2Packages = python27Packages; - python3Packages = python34Packages; - - pythonFull = python2Full; - python2Full = python27Full; - - python26 = callPackage ../development/interpreters/python/2.6 { db = db47; }; - python27 = callPackage ../development/interpreters/python/2.7 { }; - python32 = callPackage ../development/interpreters/python/3.2 { }; - python33 = callPackage ../development/interpreters/python/3.3 { }; - python34 = hiPrio (callPackage ../development/interpreters/python/3.4 { }); - - pypy = callPackage ../development/interpreters/pypy/2.3 { }; - - python26Full = callPackage ../development/interpreters/python/wrapper.nix { - extraLibs = []; - postBuild = ""; - python = python26; - inherit (python26Packages) recursivePthLoader; - }; - python27Full = callPackage ../development/interpreters/python/wrapper.nix { - extraLibs = []; - postBuild = ""; - python = python27; - inherit (python27Packages) recursivePthLoader; - }; - - pythonDocs = recurseIntoAttrs (import ../development/interpreters/python/docs { - inherit stdenv fetchurl lib; - }); - - pythonLinkmeWrapper = callPackage ../development/interpreters/python/python-linkme-wrapper.nix { }; - - pypi2nix = python27Packages.pypi2nix; - - pyrex = pyrex095; - - pyrex095 = callPackage ../development/interpreters/pyrex/0.9.5.nix { }; - - pyrex096 = callPackage ../development/interpreters/pyrex/0.9.6.nix { }; - - qi = callPackage ../development/compilers/qi { }; - - racket = callPackage ../development/interpreters/racket { }; - - rakudo = callPackage ../development/interpreters/rakudo { }; - - rascal = callPackage ../development/interpreters/rascal { }; - - regina = callPackage ../development/interpreters/regina { }; - - renpy = callPackage ../development/interpreters/renpy { - wrapPython = pythonPackages.wrapPython; - }; - - ruby18 = callPackage ../development/interpreters/ruby/ruby-18.nix { }; - ruby19 = callPackage ../development/interpreters/ruby/ruby-19.nix { }; - ruby2 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.0.nix { }); - ruby21 = callPackage ../development/interpreters/ruby/ruby-2.1.2.nix { }; - - ruby = ruby19; - - rubyLibs = recurseIntoAttrs (callPackage ../development/interpreters/ruby/libs.nix { }); - - rake = rubyLibs.rake; - - rubySqlite3 = callPackage ../development/ruby-modules/sqlite3 { }; - - rubygemsFun = ruby: builderDefsPackage (import ../development/interpreters/ruby/rubygems.nix) { - inherit ruby makeWrapper; - }; - rubygems = hiPrio (rubygemsFun ruby); - - rq = callPackage ../applications/networking/cluster/rq { }; - - scsh = callPackage ../development/interpreters/scsh { }; - - scheme48 = callPackage ../development/interpreters/scheme48 { }; - - self = callPackage_i686 ../development/interpreters/self { }; - - spark = callPackage ../applications/networking/cluster/spark { }; - - spidermonkey = callPackage ../development/interpreters/spidermonkey { }; - spidermonkey_1_8_0rc1 = callPackage ../development/interpreters/spidermonkey/1.8.0-rc1.nix { }; - spidermonkey_185 = callPackage ../development/interpreters/spidermonkey/185-1.0.0.nix { }; - spidermonkey_17 = callPackage ../development/interpreters/spidermonkey/17.0.nix { }; - spidermonkey_24 = callPackage ../development/interpreters/spidermonkey/24.2.nix { }; - - supercollider = callPackage ../development/interpreters/supercollider { - qt = qt4; - fftw = fftwSinglePrec; - }; - - supercollider_scel = supercollider.override { useSCEL = true; }; - - sysPerl = callPackage ../development/interpreters/perl/sys-perl { }; - - tcl = callPackage ../development/interpreters/tcl { }; - - xulrunner = callPackage ../development/interpreters/xulrunner { - inherit (gnome) libIDL; - inherit (pythonPackages) pysqlite; - }; - - xulrunner_30 = firefox30Pkgs.xulrunner; - - - ### DEVELOPMENT / MISC - - amdadlsdk = callPackage ../development/misc/amdadl-sdk { }; - - amdappsdk26 = callPackage ../development/misc/amdapp-sdk { - version = "2.6"; - }; - - amdappsdk27 = callPackage ../development/misc/amdapp-sdk { - version = "2.7"; - }; - - amdappsdk28 = callPackage ../development/misc/amdapp-sdk { - version = "2.8"; - }; - - amdappsdk = amdappsdk28; - - amdappsdkFull = callPackage ../development/misc/amdapp-sdk { - version = "2.8"; - samples = true; - }; - - avrgcclibc = callPackage ../development/misc/avr-gcc-with-avr-libc { - gcc = gcc46; - stdenv = overrideGCC stdenv gcc46; - }; - - avr8burnomat = callPackage ../development/misc/avr8-burn-omat { }; - - sourceFromHead = import ../build-support/source-from-head-fun.nix { - inherit config; - }; - - ecj = callPackage ../development/eclipse/ecj { }; - - jdtsdk = callPackage ../development/eclipse/jdt-sdk { }; - - jruby165 = callPackage ../development/interpreters/jruby { }; - - guileCairo = callPackage ../development/guile-modules/guile-cairo { }; - - guileGnome = callPackage ../development/guile-modules/guile-gnome { - gconf = gnome.GConf; - inherit (gnome) gnome_vfs libglade libgnome libgnomecanvas libgnomeui; - }; - - guile_lib = callPackage ../development/guile-modules/guile-lib { }; - - guile_ncurses = callPackage ../development/guile-modules/guile-ncurses { }; - - guile-xcb = callPackage ../development/guile-modules/guile-xcb { }; - - pharo-vm = callPackage_i686 ../development/pharo/vm { }; - - srecord = callPackage ../development/tools/misc/srecord { }; - - windowssdk = ( - import ../development/misc/windows-sdk { - inherit fetchurl stdenv cabextract; - }); - - - ### DEVELOPMENT / TOOLS - - ansible = callPackage ../tools/system/ansible { }; - - antlr = callPackage ../development/tools/parsing/antlr/2.7.7.nix { }; - - antlr3 = callPackage ../development/tools/parsing/antlr { }; - - ant = apacheAnt; - - apacheAnt = callPackage ../development/tools/build-managers/apache-ant { }; - - astyle = callPackage ../development/tools/misc/astyle { }; - - autobuild = callPackage ../development/tools/misc/autobuild { }; - - autoconf = callPackage ../development/tools/misc/autoconf { }; - - autoconf213 = callPackage ../development/tools/misc/autoconf/2.13.nix { }; - - autocutsel = callPackage ../tools/X11/autocutsel{ }; - - automake = automake112x; - - automake111x = callPackage ../development/tools/misc/automake/automake-1.11.x.nix { }; - - automake112x = callPackage ../development/tools/misc/automake/automake-1.12.x.nix { }; - - automake113x = callPackage ../development/tools/misc/automake/automake-1.13.x.nix { }; - - automake114x = callPackage ../development/tools/misc/automake/automake-1.14.x.nix { }; - - automoc4 = callPackage ../development/tools/misc/automoc4 { }; - - avrdude = callPackage ../development/tools/misc/avrdude { }; - - avarice = callPackage ../development/tools/misc/avarice { }; - - babeltrace = callPackage ../development/tools/misc/babeltrace { }; - - bam = callPackage ../development/tools/build-managers/bam {}; - - binutils = callPackage ../development/tools/misc/binutils { - inherit noSysDirs; - }; - - binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { - inherit noSysDirs; - gold = false; - }); - - binutilsCross = - if crossSystem != null && crossSystem.libc == "libSystem" then darwin.cctools - else lowPrio (forceNativeDrv (import ../development/tools/misc/binutils { - inherit stdenv fetchurl zlib bison; - noSysDirs = true; - cross = assert crossSystem != null; crossSystem; - })); - - bison2 = callPackage ../development/tools/parsing/bison/2.x.nix { }; - bison3 = callPackage ../development/tools/parsing/bison/3.x.nix { }; - bison = bison3; - - bossa = callPackage ../development/tools/misc/bossa { - wxGTK = wxGTK30; - }; - - buildbot = callPackage ../development/tools/build-managers/buildbot { - inherit (pythonPackages) twisted jinja2 sqlalchemy sqlalchemy_migrate; - dateutil = pythonPackages.dateutil_1_5; - }; - - buildbotSlave = callPackage ../development/tools/build-managers/buildbot-slave { - inherit (pythonPackages) twisted; - }; - - byacc = callPackage ../development/tools/parsing/byacc { }; - - casperjs = callPackage ../development/tools/casperjs { }; - - cbrowser = callPackage ../development/tools/misc/cbrowser { }; - - ccache = callPackage ../development/tools/misc/ccache { }; - - # Wrapper that works as gcc or g++ - # It can be used by setting in nixpkgs config like this, for example: - # replaceStdenv = { pkgs }: pkgs.ccacheStdenv; - # But if you build in chroot, you should have that path in chroot - # If instantiated directly, it will use the HOME/.ccache as cache directory. - # You can use an override in packageOverrides to set extraConfig: - # packageOverrides = pkgs: { - # ccacheWrapper = pkgs.ccacheWrapper.override { - # extraConfig = '' - # CCACHE_COMPRESS=1 - # CCACHE_DIR=/bin/.ccache - # ''; - # }; - # - ccacheWrapper = makeOverridable ({ extraConfig ? "" }: - wrapGCC (ccache.links extraConfig)) {}; - ccacheStdenv = lowPrio (overrideGCC stdenv ccacheWrapper); - - cccc = callPackage ../development/tools/analysis/cccc { }; - - cgdb = callPackage ../development/tools/misc/cgdb { }; - - chromedriver = callPackage ../development/tools/selenium/chromedriver { gconf = gnome.GConf; }; - - chrpath = callPackage ../development/tools/misc/chrpath { }; - - "cl-launch" = callPackage ../development/tools/misc/cl-launch {}; - - complexity = callPackage ../development/tools/misc/complexity { }; - - ctags = callPackage ../development/tools/misc/ctags { }; - - ctagsWrapped = import ../development/tools/misc/ctags/wrapped.nix { - inherit pkgs ctags writeScriptBin; - }; - - cmake = callPackage ../development/tools/build-managers/cmake { }; - - cmake264 = callPackage ../development/tools/build-managers/cmake/264.nix { }; - - cmakeCurses = cmake.override { useNcurses = true; }; - - cmakeWithGui = cmakeCurses.override { useQt4 = true; }; - - coccinelle = callPackage ../development/tools/misc/coccinelle { }; - - framac = callPackage ../development/tools/analysis/frama-c { }; - - cppi = callPackage ../development/tools/misc/cppi { }; - - cproto = callPackage ../development/tools/misc/cproto { }; - - cflow = callPackage ../development/tools/misc/cflow { }; - - cov-build = callPackage ../development/tools/analysis/cov-build {}; - - cppcheck = callPackage ../development/tools/analysis/cppcheck { }; - - cscope = callPackage ../development/tools/misc/cscope { }; - - csslint = callPackage ../development/web/csslint { }; - - libcxx = callPackage ../development/libraries/libc++ { stdenv = pkgs.clangStdenv; }; - libcxxabi = callPackage ../development/libraries/libc++abi { stdenv = pkgs.clangStdenv; }; - - libsigrok = callPackage ../development/tools/libsigrok { }; - - libsigrokdecode = callPackage ../development/tools/libsigrokdecode { }; - - dejagnu = callPackage ../development/tools/misc/dejagnu { }; - - dfeet = callPackage ../development/tools/misc/d-feet { - inherit (pythonPackages) pep8; - }; - - dfu-programmer = callPackage ../development/tools/misc/dfu-programmer { }; - - ddd = callPackage ../development/tools/misc/ddd { }; - - distcc = callPackage ../development/tools/misc/distcc { }; - - # distccWrapper: wrapper that works as gcc or g++ - # It can be used by setting in nixpkgs config like this, for example: - # replaceStdenv = { pkgs }: pkgs.distccStdenv; - # But if you build in chroot, a default 'nix' will create - # a new net namespace, and won't have network access. - # You can use an override in packageOverrides to set extraConfig: - # packageOverrides = pkgs: { - # distccWrapper = pkgs.distccWrapper.override { - # extraConfig = '' - # DISTCC_HOSTS="myhost1 myhost2" - # ''; - # }; - # - distccWrapper = makeOverridable ({ extraConfig ? "" }: - wrapGCC (distcc.links extraConfig)) {}; - distccStdenv = lowPrio (overrideGCC stdenv distccWrapper); - - distccMasquerade = callPackage ../development/tools/misc/distcc/masq.nix { - gccRaw = gcc.gcc; - binutils = binutils; - }; - - docutils = builderDefsPackage (import ../development/tools/documentation/docutils) { - inherit python pil makeWrapper; - }; - - doxygen = callPackage ../development/tools/documentation/doxygen { - qt4 = null; - }; - - doxygen_gui = lowPrio (doxygen.override { inherit qt4; }); - - drush = callPackage ../development/tools/misc/drush { }; - - eggdbus = callPackage ../development/tools/misc/eggdbus { }; - - elfutils = callPackage ../development/tools/misc/elfutils { }; - - epm = callPackage ../development/tools/misc/epm { }; - - emma = callPackage ../development/tools/analysis/emma { }; - - findbugs = callPackage ../development/tools/analysis/findbugs { }; - - pmd = callPackage ../development/tools/analysis/pmd { }; - - jdepend = callPackage ../development/tools/analysis/jdepend { }; - - checkstyle = callPackage ../development/tools/analysis/checkstyle { }; - - flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { }; - flex_2_5_39 = callPackage ../development/tools/parsing/flex/2.5.39.nix { }; - flex = flex_2_5_39; - - m4 = gnum4; - - global = callPackage ../development/tools/misc/global { }; - - gnome_doc_utils = callPackage ../development/tools/documentation/gnome-doc-utils {}; - - gnum4 = callPackage ../development/tools/misc/gnum4 { }; - - gnumake380 = callPackage ../development/tools/build-managers/gnumake/3.80 { }; - gnumake381 = callPackage ../development/tools/build-managers/gnumake/3.81 { }; - gnumake382 = callPackage ../development/tools/build-managers/gnumake/3.82 { }; - gnumake40 = callPackage ../development/tools/build-managers/gnumake/4.0 { }; - gnumake = gnumake382; - - gob2 = callPackage ../development/tools/misc/gob2 { }; - - gradle = callPackage ../development/tools/build-managers/gradle { }; - - gperf = callPackage ../development/tools/misc/gperf { }; - - gtk_doc = callPackage ../development/tools/documentation/gtk-doc { }; - - gtkdialog = callPackage ../development/tools/misc/gtkdialog { }; - - guileLint = callPackage ../development/tools/guile/guile-lint { }; - - gwrap = callPackage ../development/tools/guile/g-wrap { }; - - help2man = callPackage ../development/tools/misc/help2man { - inherit (perlPackages) LocaleGettext; - }; - - hyenae = callPackage ../tools/networking/hyenae { }; - - ibus = callPackage ../development/libraries/ibus { }; - - iconnamingutils = callPackage ../development/tools/misc/icon-naming-utils { - inherit (perlPackages) XMLSimple; - }; - - indent = callPackage ../development/tools/misc/indent { }; - - ino = callPackage ../development/arduino/ino { }; - - inotifyTools = callPackage ../development/tools/misc/inotify-tools { }; - - intel-gpu-tools = callPackage ../development/tools/misc/intel-gpu-tools { - inherit (xorg) libpciaccess dri2proto libX11 libXext libXv libXrandr; - }; - - ired = callPackage ../development/tools/analysis/radare/ired.nix { }; - - itstool = callPackage ../development/tools/misc/itstool { }; - - jam = callPackage ../development/tools/build-managers/jam { }; - - jikespg = callPackage ../development/tools/parsing/jikespg { }; - - jenkins = callPackage ../development/tools/continuous-integration/jenkins { }; - - lcov = callPackage ../development/tools/analysis/lcov { }; - - leiningen = callPackage ../development/tools/build-managers/leiningen { }; - - libtool = libtool_2; - - libtool_1_5 = callPackage ../development/tools/misc/libtool { }; - - libtool_2 = callPackage ../development/tools/misc/libtool/libtool2.nix { }; - - lsof = callPackage ../development/tools/misc/lsof { }; - - ltrace = callPackage ../development/tools/misc/ltrace { }; - - lttng-tools = callPackage ../development/tools/misc/lttng-tools { }; - - lttng-ust = callPackage ../development/tools/misc/lttng-ust { }; - - lttv = callPackage ../development/tools/misc/lttv { }; - - mk = callPackage ../development/tools/build-managers/mk { }; - - neoload = callPackage ../development/tools/neoload { - licenseAccepted = (config.neoload.accept_license or false); - }; - - ninja = callPackage ../development/tools/build-managers/ninja { }; - - nixbang = callPackage ../development/tools/misc/nixbang { - pythonPackages = python3Packages; - }; - - node_webkit = callPackage ../development/tools/node-webkit { - gconf = pkgs.gnome.GConf; - }; - - noweb = callPackage ../development/tools/literate-programming/noweb { }; - - omake = callPackage ../development/tools/ocaml/omake { }; - omake_rc1 = callPackage ../development/tools/ocaml/omake/0.9.8.6-rc1.nix { }; - - opengrok = callPackage ../development/tools/misc/opengrok { }; - - openocd = callPackage ../development/tools/misc/openocd { }; - - oprofile = callPackage ../development/tools/profiling/oprofile { }; - - patchelf = callPackage ../development/tools/misc/patchelf { }; - - peg = callPackage ../development/tools/parsing/peg { }; - - phantomjs = callPackage ../development/tools/phantomjs { - stdenv = if stdenv.isDarwin - then overrideGCC stdenv gccApple - else stdenv; - }; - - pmccabe = callPackage ../development/tools/misc/pmccabe { }; - - /* Make pkgconfig always return a nativeDrv, never a proper crossDrv, - because most usage of pkgconfig as buildInput (inheritance of - pre-cross nixpkgs) means using it using as nativeBuildInput - cross_renaming: we should make all programs use pkgconfig as - nativeBuildInput after the renaming. - */ - pkgconfig = forceNativeDrv (callPackage ../development/tools/misc/pkgconfig { }); - pkgconfigUpstream = lowPrio (pkgconfig.override { vanilla = true; }); - - prelink = callPackage ../development/tools/misc/prelink { }; - - premake3 = callPackage ../development/tools/misc/premake/3.nix { }; - - premake4 = callPackage ../development/tools/misc/premake { }; - - premake = premake4; - - pstack = callPackage ../development/tools/misc/gdb/pstack.nix { }; - - radare = callPackage ../development/tools/analysis/radare { - inherit (gnome) vte; - lua = lua5; - useX11 = config.radare.useX11 or false; - pythonBindings = config.radare.pythonBindings or false; - rubyBindings = config.radare.rubyBindings or false; - luaBindings = config.radare.luaBindings or false; - }; - - ragel = callPackage ../development/tools/parsing/ragel { }; - - re2c = callPackage ../development/tools/parsing/re2c { }; - - remake = callPackage ../development/tools/build-managers/remake { }; - - saleae-logic = callPackage ../development/tools/misc/saleae-logic { }; - - # couldn't find the source yet - seleniumRCBin = callPackage ../development/tools/selenium/remote-control { - jre = jdk; - }; - - selenium-server-standalone = callPackage ../development/tools/selenium/server { }; - - scons = callPackage ../development/tools/build-managers/scons { }; - - simpleBuildTool = callPackage ../development/tools/build-managers/simple-build-tool { }; - - sigrok-cli = callPackage ../development/tools/sigrok-cli { }; - - slimerjs = callPackage ../development/tools/slimerjs {}; - - sloccount = callPackage ../development/tools/misc/sloccount { }; - - smatch = callPackage ../development/tools/analysis/smatch { - buildllvmsparse = false; - buildc2xml = false; - }; - - smc = callPackage ../tools/misc/smc { }; - - sparse = callPackage ../development/tools/analysis/sparse { }; - - speedtest_cli = callPackage ../tools/networking/speedtest-cli { }; - - spin = callPackage ../development/tools/analysis/spin { }; - - splint = callPackage ../development/tools/analysis/splint { - flex = flex_2_5_35; - }; - - stm32flash = callPackage ../development/tools/misc/stm32flash { }; - - strace = callPackage ../development/tools/misc/strace { }; - - swig = callPackage ../development/tools/misc/swig { }; - - swig2 = callPackage ../development/tools/misc/swig/2.x.nix { }; - - swig3 = callPackage ../development/tools/misc/swig/3.x.nix { }; - - swigWithJava = swig; - - swfmill = callPackage ../tools/video/swfmill { }; - - swftools = callPackage ../tools/video/swftools { }; - - tcptrack = callPackage ../development/tools/misc/tcptrack { }; - - teensy-loader = callPackage ../development/tools/misc/teensy { }; - - texinfo413 = callPackage ../development/tools/misc/texinfo/4.13a.nix { }; - texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { }; - texinfo4 = texinfo413; - texinfo = texinfo5; - texinfoInteractive = appendToName "interactive" ( - texinfo.override { interactive = true; } - ); - - texi2html = callPackage ../development/tools/misc/texi2html { }; - - uhd = callPackage ../development/tools/misc/uhd { }; - - uisp = callPackage ../development/tools/misc/uisp { }; - - uncrustify = callPackage ../development/tools/misc/uncrustify { }; - - vagrant = callPackage ../development/tools/vagrant { - ruby = ruby2; - }; - - gdb = callPackage ../development/tools/misc/gdb { - hurd = gnu.hurdCross; - readline = readline63; - inherit (gnu) mig; - }; - - gdbCross = lowPrio (callPackage ../development/tools/misc/gdb { - target = crossSystem; - }); - - valgrind = callPackage ../development/tools/analysis/valgrind { - stdenv = - # On Darwin, Valgrind 3.7.0 expects Apple's GCC (for - # `__private_extern'.) - if stdenv.isDarwin - then overrideGCC stdenv gccApple - else stdenv; - }; - - valkyrie = callPackage ../development/tools/analysis/valkyrie { }; - - xc3sprog = callPackage ../development/tools/misc/xc3sprog { }; - - xmlindent = callPackage ../development/web/xmlindent {}; - - xpwn = callPackage ../development/mobile/xpwn {}; - - xxdiff = callPackage ../development/tools/misc/xxdiff { - bison = bison2; - }; - - yacc = bison; - - yodl = callPackage ../development/tools/misc/yodl { }; - - - ### DEVELOPMENT / LIBRARIES - - a52dec = callPackage ../development/libraries/a52dec { }; - - aacskeys = callPackage ../development/libraries/aacskeys { }; - - aalib = callPackage ../development/libraries/aalib { }; - - accountsservice = callPackage ../development/libraries/accountsservice { }; - - acl = callPackage ../development/libraries/acl { }; - - activemq = callPackage ../development/libraries/apache-activemq { }; - - adns = callPackage ../development/libraries/adns { }; - - afflib = callPackage ../development/libraries/afflib {}; - - agg = callPackage ../development/libraries/agg { }; - - allegro = callPackage ../development/libraries/allegro {}; - allegro5 = callPackage ../development/libraries/allegro/5.nix {}; - allegro5unstable = callPackage - ../development/libraries/allegro/5-unstable.nix {}; - - amrnb = callPackage ../development/libraries/amrnb { }; - - amrwb = callPackage ../development/libraries/amrwb { }; - - apr = callPackage ../development/libraries/apr { }; - - aprutil = callPackage ../development/libraries/apr-util { - bdbSupport = true; - }; - - asio = callPackage ../development/libraries/asio { }; - - aspell = callPackage ../development/libraries/aspell { }; - - aspellDicts = recurseIntoAttrs (import ../development/libraries/aspell/dictionaries.nix { - inherit fetchurl stdenv aspell which; - }); - - aterm = aterm25; - - aterm25 = callPackage ../development/libraries/aterm/2.5.nix { }; - - aterm28 = lowPrio (callPackage ../development/libraries/aterm/2.8.nix { }); - - attica = callPackage ../development/libraries/attica { }; - - attr = callPackage ../development/libraries/attr { }; - - at_spi2_core = callPackage ../development/libraries/at-spi2-core { }; - - at_spi2_atk = callPackage ../development/libraries/at-spi2-atk { }; - - aqbanking = callPackage ../development/libraries/aqbanking { }; - - aubio = callPackage ../development/libraries/aubio { }; - - audiofile = callPackage ../development/libraries/audiofile { }; - - babl_0_0_22 = callPackage ../development/libraries/babl/0_0_22.nix { }; - - babl = callPackage ../development/libraries/babl { }; - - beecrypt = callPackage ../development/libraries/beecrypt { }; - - boehmgc = callPackage ../development/libraries/boehm-gc { }; - - boolstuff = callPackage ../development/libraries/boolstuff { }; - - boost144 = callPackage ../development/libraries/boost/1.44.nix { }; - boost149 = callPackage ../development/libraries/boost/1.49.nix { }; - boost155 = callPackage ../development/libraries/boost/1.55.nix { }; - boost = boost155; - - boostHeaders = callPackage ../development/libraries/boost/header-only-wrapper.nix { }; - - botan = callPackage ../development/libraries/botan { }; - botanUnstable = callPackage ../development/libraries/botan/unstable.nix { }; - - box2d = callPackage ../development/libraries/box2d { }; - box2d_2_0_1 = callPackage ../development/libraries/box2d/2.0.1.nix { }; - - buddy = callPackage ../development/libraries/buddy { }; - - bwidget = callPackage ../development/libraries/bwidget { }; - - c-ares = callPackage ../development/libraries/c-ares { - fetchurl = fetchurlBoot; - }; - - caelum = callPackage ../development/libraries/caelum { }; - - capnproto = callPackage ../development/libraries/capnproto { }; - - scmccid = callPackage ../development/libraries/scmccid { }; - - ccrtp = callPackage ../development/libraries/ccrtp { }; - ccrtp_1_8 = callPackage ../development/libraries/ccrtp/1.8.nix { }; - - celt = callPackage ../development/libraries/celt {}; - celt_0_7 = callPackage ../development/libraries/celt/0.7.nix {}; - celt_0_5_1 = callPackage ../development/libraries/celt/0.5.1.nix {}; - - cgal = callPackage ../development/libraries/CGAL {}; - - cgui = callPackage ../development/libraries/cgui {}; - - check = callPackage ../development/libraries/check { }; - - chipmunk = builderDefsPackage (import ../development/libraries/chipmunk) { - inherit cmake freeglut mesa; - inherit (xlibs) libX11 xproto inputproto libXi libXmu; - }; - - chmlib = callPackage ../development/libraries/chmlib { }; - - chromaprint = callPackage ../development/libraries/chromaprint { }; - - cil = callPackage ../development/libraries/cil { }; - - cilaterm = callPackage ../development/libraries/cil-aterm { - stdenv = overrideInStdenv stdenv [gnumake380]; - }; - - clanlib = callPackage ../development/libraries/clanlib { }; - - classads = callPackage ../development/libraries/classads { }; - - classpath = callPackage ../development/libraries/java/classpath { - javac = gcj; - jvm = gcj; - gconf = gnome.GConf; - }; - - clearsilver = callPackage ../development/libraries/clearsilver { }; - - cln = callPackage ../development/libraries/cln { }; - - clppcre = builderDefsPackage (import ../development/libraries/cl-ppcre) { }; - - clucene_core_2 = callPackage ../development/libraries/clucene-core/2.x.nix { }; - - clucene_core_1 = callPackage ../development/libraries/clucene-core { }; - - clucene_core = clucene_core_1; - - clutter = callPackage ../development/libraries/clutter { }; - - clutter_1_18 = callPackage ../development/libraries/clutter/1.18.nix { - cogl = cogl_1_18; - }; - - clutter-gst = callPackage ../development/libraries/clutter-gst { }; - - clutter_gtk = callPackage ../development/libraries/clutter-gtk { }; - clutter_gtk_0_10 = callPackage ../development/libraries/clutter-gtk/0.10.8.nix { }; - - cminpack = callPackage ../development/libraries/cminpack { }; - - cogl = callPackage ../development/libraries/cogl { }; - - cogl_1_18 = callPackage ../development/libraries/cogl/1.18.nix { }; - - coin3d = callPackage ../development/libraries/coin3d { }; - - commoncpp2 = callPackage ../development/libraries/commoncpp2 { }; - - confuse = callPackage ../development/libraries/confuse { }; - - coredumper = callPackage ../development/libraries/coredumper { }; - - ctl = callPackage ../development/libraries/ctl { }; - - cpp-netlib = callPackage ../development/libraries/cpp-netlib { }; - - cppunit = callPackage ../development/libraries/cppunit { }; - - cppnetlib = callPackage ../development/libraries/cppnetlib { - boost = boostHeaders; - }; - - cracklib = callPackage ../development/libraries/cracklib { }; - - cryptopp = callPackage ../development/libraries/crypto++ { }; - - cyrus_sasl = callPackage ../development/libraries/cyrus-sasl { }; - - # Make bdb5 the default as it is the last release under the custom - # bsd-like license - db = db5; - db4 = db48; - db44 = callPackage ../development/libraries/db/db-4.4.nix { }; - db45 = callPackage ../development/libraries/db/db-4.5.nix { }; - db47 = callPackage ../development/libraries/db/db-4.7.nix { }; - db48 = callPackage ../development/libraries/db/db-4.8.nix { }; - db5 = db53; - db53 = callPackage ../development/libraries/db/db-5.3.nix { }; - db6 = db60; - db60 = callPackage ../development/libraries/db/db-6.0.nix { }; - - dbus = callPackage ../development/libraries/dbus { }; - dbus_cplusplus = callPackage ../development/libraries/dbus-cplusplus { }; - dbus_glib = callPackage ../development/libraries/dbus-glib { }; - dbus_java = callPackage ../development/libraries/java/dbus-java { }; - dbus_python = callPackage ../development/python-modules/dbus { }; - - # Should we deprecate these? Currently there are many references. - dbus_tools = pkgs.dbus.tools; - dbus_libs = pkgs.dbus.libs; - dbus_daemon = pkgs.dbus.daemon; - - dhex = callPackage ../applications/editors/dhex { }; - - dclib = callPackage ../development/libraries/dclib { }; - - dillo = callPackage ../applications/networking/browsers/dillo { - fltk = fltk13; - }; - - directfb = callPackage ../development/libraries/directfb { }; - - dotconf = callPackage ../development/libraries/dotconf { }; - - dssi = callPackage ../development/libraries/dssi {}; - - dragonegg = llvmPackages.dragonegg; - - dxflib = callPackage ../development/libraries/dxflib {}; - - eigen = callPackage ../development/libraries/eigen {}; - - eigen2 = callPackage ../development/libraries/eigen/2.0.nix {}; - - enchant = callPackage ../development/libraries/enchant { }; - - enet = callPackage ../development/libraries/enet { }; - - enginepkcs11 = callPackage ../development/libraries/enginepkcs11 { }; - - epoxy = callPackage ../development/libraries/epoxy { - inherit (xorg) utilmacros libX11; - }; - - esdl = callPackage ../development/libraries/esdl { }; - - exiv2 = callPackage ../development/libraries/exiv2 { }; - - expat = callPackage ../development/libraries/expat { }; - - extremetuxracer = callPackage ../games/extremetuxracer { - libpng = libpng12; - }; - - eventlog = callPackage ../development/libraries/eventlog { }; - - facile = callPackage ../development/libraries/facile { }; - - faac = callPackage ../development/libraries/faac { }; - - faad2 = callPackage ../development/libraries/faad2 { }; - - farsight2 = callPackage ../development/libraries/farsight2 { }; - - farstream = callPackage ../development/libraries/farstream { - inherit (gst_all_1) - gstreamer gst-plugins-base gst-python gst-plugins-good gst-plugins-bad - gst-libav; - }; - - fcgi = callPackage ../development/libraries/fcgi { }; - - ffmpeg_0_6 = callPackage ../development/libraries/ffmpeg/0.6.nix { - vpxSupport = !stdenv.isMips; - }; - - ffmpeg_0_6_90 = callPackage ../development/libraries/ffmpeg/0.6.90.nix { - vpxSupport = !stdenv.isMips; - }; - - ffmpeg_0_10 = callPackage ../development/libraries/ffmpeg/0.10.nix { - vpxSupport = !stdenv.isMips; - - stdenv = if stdenv.isDarwin - then overrideGCC stdenv gccApple - else stdenv; - }; - - ffmpeg_1 = callPackage ../development/libraries/ffmpeg/1.x.nix { - vpxSupport = !stdenv.isMips; - }; - - ffmpeg_2 = callPackage ../development/libraries/ffmpeg/2.x.nix { }; - - ffmpeg = ffmpeg_2; - - ffms = callPackage ../development/libraries/ffms { }; - - fftw = callPackage ../development/libraries/fftw { }; - fftwSinglePrec = fftw.override { precision = "single"; }; - fftwFloat = fftwSinglePrec; # the configure option is just an alias - - flann = callPackage ../development/libraries/flann { }; - - flite = callPackage ../development/libraries/flite { }; - - fltk13 = callPackage ../development/libraries/fltk/fltk13.nix { }; - - fltk20 = callPackage ../development/libraries/fltk { }; - - fmod = callPackage ../development/libraries/fmod { }; - - freeimage = callPackage ../development/libraries/freeimage { }; - - freetts = callPackage ../development/libraries/freetts { }; - - cfitsio = callPackage ../development/libraries/cfitsio { }; - - fontconfig = callPackage ../development/libraries/fontconfig { }; - - makeFontsConf = let fontconfig_ = fontconfig; in {fontconfig ? fontconfig_, fontDirectories}: - import ../development/libraries/fontconfig/make-fonts-conf.nix { - inherit runCommand libxslt fontconfig fontDirectories; - }; - - freealut = callPackage ../development/libraries/freealut { }; - - freeglut = callPackage ../development/libraries/freeglut { }; - - freetype = callPackage ../development/libraries/freetype { }; - - frei0r = callPackage ../development/libraries/frei0r { }; - - fribidi = callPackage ../development/libraries/fribidi { }; - - funambol = callPackage ../development/libraries/funambol { }; - - fam = gamin; - - gamin = callPackage ../development/libraries/gamin { }; - - ganv = callPackage ../development/libraries/ganv { }; - - gav = callPackage ../games/gav { }; - - gsb = callPackage ../games/gsb { }; - - gdome2 = callPackage ../development/libraries/gdome2 { - inherit (gnome) gtkdoc; - }; - - gdbm = callPackage ../development/libraries/gdbm { }; - - gegl = callPackage ../development/libraries/gegl { - # avocodec avformat librsvg - }; - - gegl_0_0_22 = callPackage ../development/libraries/gegl/0_0_22.nix { - # avocodec avformat librsvg - libpng = libpng12; - }; - - geoclue = callPackage ../development/libraries/geoclue {}; - - geoclue2 = callPackage ../development/libraries/geoclue/2.0.nix {}; - - geoip = callPackage ../development/libraries/geoip { }; - - geoipjava = callPackage ../development/libraries/java/geoipjava { }; - - geos = callPackage ../development/libraries/geos { }; - - gettext = gettext_0_18; - - gettext_0_17 = callPackage ../development/libraries/gettext/0.17.nix { }; - gettext_0_18 = callPackage ../development/libraries/gettext { }; - - gd = callPackage ../development/libraries/gd { }; - - gdal = callPackage ../development/libraries/gdal { }; - - ggz_base_libs = callPackage ../development/libraries/ggz_base_libs {}; - - giblib = callPackage ../development/libraries/giblib { }; - - libgit2 = callPackage ../development/libraries/git2 { }; - - glew = callPackage ../development/libraries/glew { }; - - glfw = glfw3; - glfw2 = callPackage ../development/libraries/glfw/2.x.nix { }; - glfw3 = callPackage ../development/libraries/glfw/3.x.nix { }; - - glibc = callPackage ../development/libraries/glibc/2.19 { - kernelHeaders = linuxHeaders; - installLocales = config.glibc.locales or false; - machHeaders = null; - hurdHeaders = null; - gccCross = null; - }; - - glibc_memusage = callPackage ../development/libraries/glibc/2.19 { - kernelHeaders = linuxHeaders; - installLocales = false; - withGd = true; - }; - - glibcCross = forceNativeDrv (makeOverridable (import ../development/libraries/glibc/2.19) - (let crossGNU = crossSystem != null && crossSystem.config == "i586-pc-gnu"; - in { - inherit stdenv fetchurl; - gccCross = gccCrossStageStatic; - kernelHeaders = if crossGNU then gnu.hurdHeaders else linuxHeadersCross; - installLocales = config.glibc.locales or false; - } - // lib.optionalAttrs crossGNU { - inherit (gnu) machHeaders hurdHeaders libpthreadHeaders mig; - inherit fetchgit; - })); - - - # We can choose: - libcCrossChooser = name : if name == "glibc" then glibcCross - else if name == "uclibc" then uclibcCross - else if name == "msvcrt" then windows.mingw_w64 - else if name == "libSystem" then darwin.xcode - else throw "Unknown libc"; - - libcCross = assert crossSystem != null; libcCrossChooser crossSystem.libc; - - eglibc = callPackage ../development/libraries/eglibc { - kernelHeaders = linuxHeaders; - installLocales = config.glibc.locales or false; - }; - - glibcLocales = callPackage ../development/libraries/glibc/2.19/locales.nix { }; - - glibcInfo = callPackage ../development/libraries/glibc/2.19/info.nix { }; - - glibc_multi = callPackage ../development/libraries/glibc/2.19/multi.nix { - inherit glibc; - glibc32 = (import ./all-packages.nix {system = "i686-linux";}).glibc; - }; - - glm = callPackage ../development/libraries/glm { }; - - glog = callPackage ../development/libraries/glog { }; - - gloox = callPackage ../development/libraries/gloox { }; - - glpk = callPackage ../development/libraries/glpk { }; - - glsurf = callPackage ../applications/science/math/glsurf { - inherit (ocamlPackages) lablgl findlib camlimages ocaml_mysql mlgmp; - libpng = libpng12; - giflib = giflib_4_1; - }; - - gmime = callPackage ../development/libraries/gmime { }; - - gmm = callPackage ../development/libraries/gmm { }; - - gmp = gmp5; - gmp5 = gmp51; - - gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); - - # The GHC bootstrap binaries link against libgmp.so.3, which is in GMP 4.x. - gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; - - gmp51 = callPackage ../development/libraries/gmp/5.1.x.nix { }; - - #GMP ex-satellite, so better keep it near gmp - mpfr = callPackage ../development/libraries/mpfr/default.nix { }; - - gobjectIntrospection = callPackage ../development/libraries/gobject-introspection { }; - - goocanvas = callPackage ../development/libraries/goocanvas { }; - - google-gflags = callPackage ../development/libraries/google-gflags { }; - - gperftools = callPackage ../development/libraries/gperftools { }; - - gst_all_1 = recurseIntoAttrs(callPackage ../development/libraries/gstreamer { - callPackage = pkgs.newScope (pkgs // { libav = pkgs.libav_10; }); - }); - - gst_all = { - inherit (pkgs) gstreamer gnonlin gst_python qt_gstreamer; - gstPluginsBase = pkgs.gst_plugins_base; - gstPluginsBad = pkgs.gst_plugins_bad; - gstPluginsGood = pkgs.gst_plugins_good; - gstPluginsUgly = pkgs.gst_plugins_ugly; - gstFfmpeg = pkgs.gst_ffmpeg; - }; - - gstreamer = callPackage ../development/libraries/gstreamer/legacy/gstreamer { - bison = bison2; - }; - - gst_plugins_base = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-base {}; - - gst_plugins_good = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-good {}; - - gst_plugins_bad = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-bad {}; - - gst_plugins_ugly = callPackage ../development/libraries/gstreamer/legacy/gst-plugins-ugly {}; - - gst_ffmpeg = callPackage ../development/libraries/gstreamer/legacy/gst-ffmpeg { - ffmpeg = ffmpeg_0_10; - }; - - gst_python = callPackage ../development/libraries/gstreamer/legacy/gst-python {}; - - gstreamermm = callPackage ../development/libraries/gstreamer/legacy/gstreamermm { }; - - gnonlin = callPackage ../development/libraries/gstreamer/legacy/gnonlin {}; - - gusb = callPackage ../development/libraries/gusb { - inherit (gnome) gtkdoc; - }; - - qt_gstreamer = callPackage ../development/libraries/gstreamer/legacy/qt-gstreamer {}; - - gnet = callPackage ../development/libraries/gnet { }; - - gnu-efi = callPackage ../development/libraries/gnu-efi { }; - - gnutls = gnutls32; - - gnutls31 = callPackage ../development/libraries/gnutls/3.1.nix { - guileBindings = config.gnutls.guile or false; - }; - - gnutls32 = callPackage ../development/libraries/gnutls/3.2.nix { - guileBindings = config.gnutls.guile or false; - }; - - gnutls_with_guile = lowPrio (gnutls.override { guileBindings = true; }); - - gpac = callPackage ../applications/video/gpac { }; - - gpgme = callPackage ../development/libraries/gpgme { - gnupg1 = gnupg1orig; - }; - - grantlee = callPackage ../development/libraries/grantlee { }; - - gsasl = callPackage ../development/libraries/gsasl { }; - - gsl = callPackage ../development/libraries/gsl { }; - - gsm = callPackage ../development/libraries/gsm {}; - - gsoap = callPackage ../development/libraries/gsoap { }; - - gss = callPackage ../development/libraries/gss { }; - - gtkimageview = callPackage ../development/libraries/gtkimageview { }; - - gtkmathview = callPackage ../development/libraries/gtkmathview { }; - - gtkLibs = { - inherit (pkgs) glib glibmm atk atkmm cairo pango pangomm gdk_pixbuf gtk - gtkmm; - }; - - glib = callPackage ../development/libraries/glib { }; - glib-tested = glib.override { doCheck = true; }; # checked version separate to break cycles - glibmm = callPackage ../development/libraries/glibmm { }; - - glib_networking = callPackage ../development/libraries/glib-networking {}; - - atk = callPackage ../development/libraries/atk { }; - atkmm = callPackage ../development/libraries/atkmm { }; - - pixman = callPackage ../development/libraries/pixman { }; - - cairo = callPackage ../development/libraries/cairo { - glSupport = config.cairo.gl or (stdenv.isLinux && - !stdenv.isArm && !stdenv.isMips); - }; - cairomm = callPackage ../development/libraries/cairomm { }; - - pango = callPackage ../development/libraries/pango { }; - pangomm = callPackage ../development/libraries/pangomm { }; - - pangox_compat = callPackage ../development/libraries/pangox-compat { }; - - gdk_pixbuf = callPackage ../development/libraries/gdk-pixbuf { - # workaround signal 10 in gdk_pixbuf tests - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - gtk2 = callPackage ../development/libraries/gtk+/2.x.nix { - cupsSupport = config.gtk2.cups or stdenv.isLinux; - }; - - gtk3 = callPackage ../development/libraries/gtk+/3.x.nix { }; - - gtk = pkgs.gtk2; - - gtkmm = callPackage ../development/libraries/gtkmm/2.x.nix { }; - gtkmm3 = callPackage ../development/libraries/gtkmm/3.x.nix { }; - - gtkmozembedsharp = callPackage ../development/libraries/gtkmozembed-sharp { - gtksharp = gtksharp2; - }; - - gtksharp1 = callPackage ../development/libraries/gtk-sharp-1 { - inherit (gnome) libglade libgtkhtml gtkhtml - libgnomecanvas libgnomeui libgnomeprint - libgnomeprintui GConf; - }; - - gtksharp2 = callPackage ../development/libraries/gtk-sharp-2 { - inherit (gnome) libglade libgtkhtml gtkhtml - libgnomecanvas libgnomeui libgnomeprint - libgnomeprintui GConf gnomepanel; - }; - - gtksourceviewsharp = callPackage ../development/libraries/gtksourceview-sharp { - inherit (gnome) gtksourceview; - gtksharp = gtksharp2; - }; - - gtkspell = callPackage ../development/libraries/gtkspell { }; - - gtkspell3 = callPackage ../development/libraries/gtkspell/3.nix { }; - - gts = callPackage ../development/libraries/gts { }; - - gvfs = callPackage ../development/libraries/gvfs { gconf = gnome.GConf; }; - - gwenhywfar = callPackage ../development/libraries/gwenhywfar { }; - - hamlib = callPackage ../development/libraries/hamlib { }; - - # TODO : Add MIT Kerberos and let admin choose. - kerberos = heimdal; - - heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; - - harfbuzz = callPackage ../development/libraries/harfbuzz { }; - - hawknl = callPackage ../development/libraries/hawknl { }; - - herqq = callPackage ../development/libraries/herqq { }; - - hspell = callPackage ../development/libraries/hspell { }; - - hspellDicts = callPackage ../development/libraries/hspell/dicts.nix { }; - - hsqldb = callPackage ../development/libraries/java/hsqldb { }; - - http-parser = callPackage ../development/libraries/http-parser { inherit (pythonPackages) gyp; }; - - hunspell = callPackage ../development/libraries/hunspell { }; - - hwloc = callPackage ../development/libraries/hwloc { - inherit (xlibs) libX11; - }; - - hydraAntLogger = callPackage ../development/libraries/java/hydra-ant-logger { }; - - icu = callPackage ../development/libraries/icu { }; - - id3lib = callPackage ../development/libraries/id3lib { }; - - iksemel = callPackage ../development/libraries/iksemel { }; - - ilbc = callPackage ../development/libraries/ilbc { }; - - ilixi = callPackage ../development/libraries/ilixi { }; - - ilmbase = callPackage ../development/libraries/ilmbase { }; - - imlib = callPackage ../development/libraries/imlib { - libpng = libpng12; - }; - - imlib2 = callPackage ../development/libraries/imlib2 { }; - - incrtcl = callPackage ../development/libraries/incrtcl { }; - - indilib = callPackage ../development/libraries/indilib { }; - - iniparser = callPackage ../development/libraries/iniparser { }; - - intltool = callPackage ../development/tools/misc/intltool { }; - - irrlicht3843 = callPackage ../development/libraries/irrlicht { }; - - isocodes = callPackage ../development/libraries/iso-codes { }; - - itk = callPackage ../development/libraries/itk { }; - - jamp = builderDefsPackage ../games/jamp { - inherit mesa SDL SDL_image SDL_mixer; - }; - - jasper = callPackage ../development/libraries/jasper { }; - - jama = callPackage ../development/libraries/jama { }; - - jansson = callPackage ../development/libraries/jansson { }; - - jbig2dec = callPackage ../development/libraries/jbig2dec { }; - - jetty_gwt = callPackage ../development/libraries/java/jetty-gwt { }; - - jetty_util = callPackage ../development/libraries/java/jetty-util { }; - - json_glib = callPackage ../development/libraries/json-glib { }; - - json-c-0-11 = callPackage ../development/libraries/json-c/0.11.nix { }; # vulnerable - json_c = callPackage ../development/libraries/json-c { }; - - jsoncpp = callPackage ../development/libraries/jsoncpp { }; - - libjson = callPackage ../development/libraries/libjson { }; - - judy = callPackage ../development/libraries/judy { }; - - keybinder = callPackage ../development/libraries/keybinder { - automake = automake111x; - lua = lua5_1; - }; - - keybinder3 = callPackage ../development/libraries/keybinder3 { - automake = automake111x; - lua = lua5_1; - }; - - krb5 = callPackage ../development/libraries/kerberos/krb5.nix { }; - - lcms = lcms1; - - lcms1 = callPackage ../development/libraries/lcms { }; - - lcms2 = callPackage ../development/libraries/lcms2 { }; - - lensfun = callPackage ../development/libraries/lensfun { }; - - lesstif = callPackage ../development/libraries/lesstif { }; - - lesstif93 = callPackage ../development/libraries/lesstif-0.93 { }; - - leveldb = callPackage ../development/libraries/leveldb { }; - - levmar = callPackage ../development/libraries/levmar { }; - - leptonica = callPackage ../development/libraries/leptonica { - libpng = libpng12; - }; - - lgi = callPackage ../development/libraries/lgi { - lua = lua5_1; - }; - - lib3ds = callPackage ../development/libraries/lib3ds { }; - - libaacs = callPackage ../development/libraries/libaacs { }; - - libaal = callPackage ../development/libraries/libaal { }; - - libao = callPackage ../development/libraries/libao { - usePulseAudio = config.pulseaudio or true; - }; - - libarchive = callPackage ../development/libraries/libarchive { }; - - libass = callPackage ../development/libraries/libass { }; - - libassuan1 = callPackage ../development/libraries/libassuan1 { }; - - libassuan = callPackage ../development/libraries/libassuan { }; - - libassuan2_1 = callPackage ../development/libraries/libassuan/git.nix { }; - - libatomic_ops = callPackage ../development/libraries/libatomic_ops {}; - - libav = libav_10; - libav_all = callPackage ../development/libraries/libav { }; - inherit (libav_all) libav_0_8 libav_9 libav_10; - - libavc1394 = callPackage ../development/libraries/libavc1394 { }; - - libbluedevil = callPackage ../development/libraries/libbluedevil { }; - - libbluray = callPackage ../development/libraries/libbluray { }; - - libbs2b = callPackage ../development/libraries/audio/libbs2b { }; - - libcaca = callPackage ../development/libraries/libcaca { }; - - libcanberra = callPackage ../development/libraries/libcanberra { }; - libcanberra_gtk3 = libcanberra.override { gtk = gtk3; }; - libcanberra_kde = if (config.kde_runtime.libcanberraWithoutGTK or true) - then libcanberra.override { gtk = null; } - else libcanberra; - - libcello = callPackage ../development/libraries/libcello {}; - - libcdaudio = callPackage ../development/libraries/libcdaudio { }; - - libcddb = callPackage ../development/libraries/libcddb { }; - - libcdio = callPackage ../development/libraries/libcdio { }; - libcdio082 = callPackage ../development/libraries/libcdio/0.82.nix { }; - - libcdr = callPackage ../development/libraries/libcdr { lcms = lcms2; }; - - libchamplain = callPackage ../development/libraries/libchamplain { - inherit (gnome) libsoup; - }; - - libchamplain_0_6 = callPackage ../development/libraries/libchamplain/0.6.nix {}; - - libchop = callPackage ../development/libraries/libchop { }; - - libcm = callPackage ../development/libraries/libcm { }; - - inherit (gnome3) libcroco; - - libcangjie = callPackage ../development/libraries/libcangjie { }; - - libcredis = callPackage ../development/libraries/libcredis { }; - - libctemplate = callPackage ../development/libraries/libctemplate { }; - - libcue = callPackage ../development/libraries/libcue { }; - - libdaemon = callPackage ../development/libraries/libdaemon { }; - - libdbi = callPackage ../development/libraries/libdbi { }; - - libdbiDriversBase = callPackage ../development/libraries/libdbi-drivers { - mysql = null; - sqlite = null; - }; - - libdbiDrivers = libdbiDriversBase.override { - inherit sqlite mysql; - }; - - libdbusmenu_qt = callPackage ../development/libraries/libdbusmenu-qt { }; - - libdc1394 = callPackage ../development/libraries/libdc1394 { }; - - libdc1394avt = callPackage ../development/libraries/libdc1394avt { }; - - libdevil = callPackage ../development/libraries/libdevil { }; - - libdiscid = callPackage ../development/libraries/libdiscid { }; - - libdivsufsort = callPackage ../development/libraries/libdivsufsort { }; - - libdmtx = callPackage ../development/libraries/libdmtx { }; - - libdnet = callPackage ../development/libraries/libdnet { }; - - libdrm = callPackage ../development/libraries/libdrm { - inherit fetchurl stdenv pkgconfig; - inherit (xorg) libpthreadstubs; - }; - - libdv = callPackage ../development/libraries/libdv { }; - - libdvbpsi = callPackage ../development/libraries/libdvbpsi { }; - - libdwg = callPackage ../development/libraries/libdwg { }; - - libdvdcss = callPackage ../development/libraries/libdvdcss { }; - - libdvdnav = callPackage ../development/libraries/libdvdnav { }; - - libdvdread = callPackage ../development/libraries/libdvdread { }; - - libdwarf = callPackage ../development/libraries/libdwarf { }; - - libeatmydata = callPackage ../development/libraries/libeatmydata { }; - - libebml = callPackage ../development/libraries/libebml { }; - - libedit = callPackage ../development/libraries/libedit { }; - - libelf = callPackage ../development/libraries/libelf { }; - - libfm = callPackage ../development/libraries/libfm { }; - - libgadu = callPackage ../development/libraries/libgadu { }; - - libgdata = gnome3.libgdata; - - libgig = callPackage ../development/libraries/libgig { }; - - libgnome_keyring = callPackage ../development/libraries/libgnome-keyring { }; - libgnome_keyring3 = gnome3.libgnome_keyring; - - libgnurl = callPackage ../development/libraries/libgnurl { }; - - libseccomp = callPackage ../development/libraries/libseccomp { }; - - libsecret = callPackage ../development/libraries/libsecret { }; - - libserialport = callPackage ../development/libraries/libserialport { }; - - libgtop = callPackage ../development/libraries/libgtop {}; - - liblo = callPackage ../development/libraries/liblo { }; - - liblrdf = librdf; - - liblscp = callPackage ../development/libraries/liblscp { }; - - libe-book = callPackage ../development/libraries/libe-book {}; - - libev = builderDefsPackage ../development/libraries/libev { }; - - libevent14 = callPackage ../development/libraries/libevent/1.4.nix { }; - libevent = callPackage ../development/libraries/libevent { }; - - libewf = callPackage ../development/libraries/libewf { }; - - libexif = callPackage ../development/libraries/libexif { }; - - libexosip = callPackage ../development/libraries/exosip {}; - - libexosip_3 = callPackage ../development/libraries/exosip/3.x.nix { - libosip = libosip_3; - }; - - libextractor = callPackage ../development/libraries/libextractor { - libmpeg2 = mpeg2dec; - }; - - libexttextcat = callPackage ../development/libraries/libexttextcat {}; - - libf2c = callPackage ../development/libraries/libf2c {}; - - libfixposix = callPackage ../development/libraries/libfixposix {}; - - libffcall = builderDefsPackage (import ../development/libraries/libffcall) { - inherit fetchcvs; - }; - - libffi = callPackage ../development/libraries/libffi { }; - - libftdi = callPackage ../development/libraries/libftdi { }; - - libftdi1 = callPackage ../development/libraries/libftdi/1.x.nix { }; - - libgcrypt = callPackage ../development/libraries/libgcrypt { }; - - libgcrypt_1_6 = lowPrio (callPackage ../development/libraries/libgcrypt/1.6.nix { }); - - libgdiplus = callPackage ../development/libraries/libgdiplus { }; - - libgksu = callPackage ../development/libraries/libgksu { }; - - libgpgerror = callPackage ../development/libraries/libgpg-error { }; - - libgphoto2 = callPackage ../development/libraries/libgphoto2 { }; - - libgphoto2_4 = callPackage ../development/libraries/libgphoto2/2.4.nix { }; - - libgpod = callPackage ../development/libraries/libgpod { - inherit (pkgs.pythonPackages) mutagen; - }; - - libharu = callPackage ../development/libraries/libharu { }; - - libical = callPackage ../development/libraries/libical { }; - - libicns = callPackage ../development/libraries/libicns { }; - - libimobiledevice = callPackage ../development/libraries/libimobiledevice { }; - - libiodbc = callPackage ../development/libraries/libiodbc { - useGTK = config.libiodbc.gtk or false; - }; - - libivykis = callPackage ../development/libraries/libivykis { }; - - liblastfmSF = callPackage ../development/libraries/liblastfmSF { }; - - liblastfm = callPackage ../development/libraries/liblastfm { }; - - liblqr1 = callPackage ../development/libraries/liblqr-1 { }; - - liblockfile = callPackage ../development/libraries/liblockfile { }; - - liblogging = callPackage ../development/libraries/liblogging { }; - - libmcrypt = callPackage ../development/libraries/libmcrypt {}; - - libmhash = callPackage ../development/libraries/libmhash {}; - - libmodbus = callPackage ../development/libraries/libmodbus {}; - - libmtp = callPackage ../development/libraries/libmtp { }; - - libmsgpack = callPackage ../development/libraries/libmsgpack { }; - - libnatspec = callPackage ../development/libraries/libnatspec { }; - - libnfc = callPackage ../development/libraries/libnfc { }; - - libnfsidmap = callPackage ../development/libraries/libnfsidmap { }; - - libnice = callPackage ../development/libraries/libnice { }; - - liboping = callPackage ../development/libraries/liboping { }; - - libplist = callPackage ../development/libraries/libplist { }; - - libQGLViewer = callPackage ../development/libraries/libqglviewer { }; - - libre = callPackage ../development/libraries/libre {}; - librem = callPackage ../development/libraries/librem {}; - - libresample = callPackage ../development/libraries/libresample {}; - - librevenge = callPackage ../development/libraries/librevenge {}; - - librevisa = callPackage ../development/libraries/librevisa { }; - - libsamplerate = callPackage ../development/libraries/libsamplerate { }; - - libspectre = callPackage ../development/libraries/libspectre { }; - - libgsf = callPackage ../development/libraries/libgsf { }; - - libiconv = callPackage ../development/libraries/libiconv { }; - - libiconvOrEmpty = if libiconvOrNull == null then [] else [libiconv]; - - libiconvOrNull = - if gcc.libc or null != null || stdenv.isGlibc - then null - else libiconv; - - # The logic behind this attribute is broken: libiconvOrNull==null does - # NOT imply libiconv=glibc! On Darwin, for example, we have a native - # libiconv library which is not glibc. - libiconvOrLibc = if libiconvOrNull == null then gcc.libc else libiconv; - - # On non-GNU systems we need GNU Gettext for libintl. - libintlOrEmpty = stdenv.lib.optional (!stdenv.isLinux) gettext; - - libid3tag = callPackage ../development/libraries/libid3tag { }; - - libidn = callPackage ../development/libraries/libidn { }; - - libiec61883 = callPackage ../development/libraries/libiec61883 { }; - - libinfinity = callPackage ../development/libraries/libinfinity { - inherit (gnome) gtkdoc; - }; - - libiptcdata = callPackage ../development/libraries/libiptcdata { }; - - libjpeg_original = callPackage ../development/libraries/libjpeg { }; - libjpeg_turbo = callPackage ../development/libraries/libjpeg-turbo { }; - libjpeg = if (stdenv.isLinux) then libjpeg_turbo else libjpeg_original; # some problems, both on FreeBSD and Darwin - - libjpeg62 = callPackage ../development/libraries/libjpeg/62.nix { - libtool = libtool_1_5; - }; - - libjson_rpc_cpp = callPackage ../development/libraries/libjson-rpc-cpp { }; - - libkate = callPackage ../development/libraries/libkate { }; - - libksba = callPackage ../development/libraries/libksba { }; - - libmad = callPackage ../development/libraries/libmad { }; - - libmatchbox = callPackage ../development/libraries/libmatchbox { }; - - libmatthew_java = callPackage ../development/libraries/java/libmatthew-java { }; - - libmatroska = callPackage ../development/libraries/libmatroska { }; - - libmcs = callPackage ../development/libraries/libmcs { }; - - libmemcached = callPackage ../development/libraries/libmemcached { }; - - libmicrohttpd = callPackage ../development/libraries/libmicrohttpd { }; - - libmikmod = callPackage ../development/libraries/libmikmod { - # resolve the "stray '@' in program" errors - stdenv = if stdenv.isDarwin - then overrideGCC stdenv gccApple - else stdenv; - }; - - libmilter = callPackage ../development/libraries/libmilter { }; - - libmkv = callPackage ../development/libraries/libmkv { }; - - libmms = callPackage ../development/libraries/libmms { }; - - libmowgli = callPackage ../development/libraries/libmowgli { }; - - libmng = callPackage ../development/libraries/libmng { }; - - libmnl = callPackage ../development/libraries/libmnl { }; - - libmodplug = callPackage ../development/libraries/libmodplug {}; - - libmpcdec = callPackage ../development/libraries/libmpcdec { }; - - libmp3splt = callPackage ../development/libraries/libmp3splt { }; - - libmrss = callPackage ../development/libraries/libmrss { }; - - libmsn = callPackage ../development/libraries/libmsn { }; - - libmspack = callPackage ../development/libraries/libmspack { }; - - libmusclecard = callPackage ../development/libraries/libmusclecard { }; - - libmusicbrainz2 = callPackage ../development/libraries/libmusicbrainz/2.x.nix { }; - - libmusicbrainz3 = callPackage ../development/libraries/libmusicbrainz { }; - - libmusicbrainz5 = callPackage ../development/libraries/libmusicbrainz/5.x.nix { }; - - libmusicbrainz = libmusicbrainz3; - - libmwaw = callPackage ../development/libraries/libmwaw { }; - - libmx = callPackage ../development/libraries/libmx { }; - - libnet = callPackage ../development/libraries/libnet { }; - - libnetfilter_conntrack = callPackage ../development/libraries/libnetfilter_conntrack { }; - - libnetfilter_queue = callPackage ../development/libraries/libnetfilter_queue { }; - - libnfnetlink = callPackage ../development/libraries/libnfnetlink { }; - - libnftnl = callPackage ../development/libraries/libnftnl { }; - - libnih = callPackage ../development/libraries/libnih { }; - - libnova = callPackage ../development/libraries/libnova { }; - - libnxml = callPackage ../development/libraries/libnxml { }; - - libodfgen = callPackage ../development/libraries/libodfgen { }; - - libofa = callPackage ../development/libraries/libofa { }; - - libofx = callPackage ../development/libraries/libofx { }; - - libogg = callPackage ../development/libraries/libogg { }; - - liboggz = callPackage ../development/libraries/liboggz { }; - - liboil = callPackage ../development/libraries/liboil { }; - - liboop = callPackage ../development/libraries/liboop { }; - - libopus = callPackage ../development/libraries/libopus { }; - - libosinfo = callPackage ../development/libraries/libosinfo {}; - - libosip = callPackage ../development/libraries/osip {}; - - libosip_3 = callPackage ../development/libraries/osip/3.nix {}; - - libotr = callPackage ../development/libraries/libotr { - libgcrypt = libgcrypt_1_6; - }; - - libotr_3_2 = callPackage ../development/libraries/libotr/3.2.nix { }; - - libp11 = callPackage ../development/libraries/libp11 { }; - - libpar2 = callPackage ../development/libraries/libpar2 { }; - - libpcap = callPackage ../development/libraries/libpcap { }; - - libpipeline = callPackage ../development/libraries/libpipeline { }; - - libpng = callPackage ../development/libraries/libpng { }; - libpng_apng = libpng.override { apngSupport = true; }; - libpng12 = callPackage ../development/libraries/libpng/12.nix { }; - libpng15 = callPackage ../development/libraries/libpng/15.nix { }; - - libpaper = callPackage ../development/libraries/libpaper { }; - - libproxy = callPackage ../development/libraries/libproxy { - stdenv = if stdenv.isDarwin - then overrideGCC stdenv gcc - else stdenv; - }; - - libpseudo = callPackage ../development/libraries/libpseudo { }; - - libpwquality = callPackage ../development/libraries/libpwquality { }; - - libqalculate = callPackage ../development/libraries/libqalculate { }; - - librsvg = callPackage ../development/libraries/librsvg { - gtk2 = null; gtk3 = null; # neither gtk version by default - }; - - librsync = callPackage ../development/libraries/librsync { }; - - libsearpc = callPackage ../development/libraries/libsearpc { }; - - libsigcxx = callPackage ../development/libraries/libsigcxx { }; - - libsigcxx12 = callPackage ../development/libraries/libsigcxx/1.2.nix { }; - - libsigsegv = callPackage ../development/libraries/libsigsegv { }; - - # To bootstrap SBCL, I need CLisp 2.44.1; it needs libsigsegv 2.5 - libsigsegv_25 = callPackage ../development/libraries/libsigsegv/2.5.nix { }; - - libsndfile = callPackage ../development/libraries/libsndfile { }; - - libsodium = callPackage ../development/libraries/libsodium { }; - - libsoup = callPackage ../development/libraries/libsoup { }; - - libssh = callPackage ../development/libraries/libssh { }; - - libssh2 = callPackage ../development/libraries/libssh2 { }; - - libstartup_notification = callPackage ../development/libraries/startup-notification { }; - - libspatialindex = callPackage ../development/libraries/libspatialindex { }; - - libspatialite = callPackage ../development/libraries/libspatialite { }; - - libtar = callPackage ../development/libraries/libtar { }; - - libtasn1 = callPackage ../development/libraries/libtasn1 { }; - - libtheora = callPackage ../development/libraries/libtheora { }; - - libtiff = callPackage ../development/libraries/libtiff { }; - - libtiger = callPackage ../development/libraries/libtiger { }; - - libtommath = callPackage ../development/libraries/libtommath { }; - - libtorrentRasterbar = callPackage ../development/libraries/libtorrent-rasterbar { - # fix "unrecognized option -arch" error - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - libtoxcore = callPackage ../development/libraries/libtoxcore { }; - - libtsm = callPackage ../development/libraries/libtsm { }; - - libtunepimp = callPackage ../development/libraries/libtunepimp { }; - - libtxc_dxtn = callPackage ../development/libraries/libtxc_dxtn { }; - - libtxc_dxtn_s2tc = callPackage ../development/libraries/libtxc_dxtn_s2tc { }; - - libgeotiff = callPackage ../development/libraries/libgeotiff { }; - - libunistring = callPackage ../development/libraries/libunistring { }; - - libupnp = callPackage ../development/libraries/pupnp { }; - - giflib = callPackage ../development/libraries/giflib { }; - giflib_4_1 = callPackage ../development/libraries/giflib/4.1.nix { }; - - libungif = callPackage ../development/libraries/giflib/libungif.nix { }; - - libunibreak = callPackage ../development/libraries/libunibreak { }; - - libunique = callPackage ../development/libraries/libunique/default.nix { }; - - liburcu = callPackage ../development/libraries/liburcu { }; - - libusb = callPackage ../development/libraries/libusb {}; - - libusb1 = callPackage ../development/libraries/libusb1 { - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - libunwind = callPackage ../development/libraries/libunwind { }; - - libuvVersions = callPackage ../development/libraries/libuv { }; - - libv4l = lowPrio (v4l_utils.override { - withQt4 = false; - }); - - libva = callPackage ../development/libraries/libva { }; - - libvdpau = callPackage ../development/libraries/libvdpau { }; - - libvirt = callPackage ../development/libraries/libvirt { }; - - libvirt-glib = callPackage ../development/libraries/libvirt-glib { }; - - libvisio = callPackage ../development/libraries/libvisio { }; - - libvisual = callPackage ../development/libraries/libvisual { }; - - libvncserver = callPackage ../development/libraries/libvncserver {}; - - libviper = callPackage ../development/libraries/libviper { }; - - libvpx = callPackage ../development/libraries/libvpx { }; - - libvterm = callPackage ../development/libraries/libvterm { }; - - libvorbis = callPackage ../development/libraries/libvorbis { }; - - libwebp = callPackage ../development/libraries/libwebp { }; - - libwmf = callPackage ../development/libraries/libwmf { }; - - libwnck = libwnck2; - libwnck2 = callPackage ../development/libraries/libwnck { }; - libwnck3 = callPackage ../development/libraries/libwnck/3.x.nix { }; - - libwpd = callPackage ../development/libraries/libwpd { }; - - libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix { }; - - libwpg = callPackage ../development/libraries/libwpg { }; - - libx86 = builderDefsPackage ../development/libraries/libx86 {}; - - libxdg_basedir = callPackage ../development/libraries/libxdg-basedir { }; - - libxkbcommon = callPackage ../development/libraries/libxkbcommon { }; - - libxklavier = callPackage ../development/libraries/libxklavier { }; - - libxmi = callPackage ../development/libraries/libxmi { }; - - libxml2 = callPackage ../development/libraries/libxml2 { - pythonSupport = false; - }; - - libxml2Python = lowPrio (libxml2.override { - pythonSupport = true; - }); - - libxmlxx = callPackage ../development/libraries/libxmlxx { }; - - libxmp = callPackage ../development/libraries/libxmp { }; - - libxslt = callPackage ../development/libraries/libxslt { }; - - libixp_for_wmii = lowPrio (import ../development/libraries/libixp_for_wmii { - inherit fetchurl stdenv; - }); - - libyaml = callPackage ../development/libraries/libyaml { }; - - libyamlcpp = callPackage ../development/libraries/libyaml-cpp { }; - libyamlcpp03 = callPackage ../development/libraries/libyaml-cpp/0.3.x.nix { }; - - libyubikey = callPackage ../development/libraries/libyubikey {}; - - libzip = callPackage ../development/libraries/libzip { }; - - libzdb = callPackage ../development/libraries/libzdb { }; - - libzrtpcpp = callPackage ../development/libraries/libzrtpcpp { }; - libzrtpcpp_1_6 = callPackage ../development/libraries/libzrtpcpp/1.6.nix { - ccrtp = ccrtp_1_8; - }; - - libwacom = callPackage ../development/libraries/libwacom { }; - - lightning = callPackage ../development/libraries/lightning { }; - - lirc = callPackage ../development/libraries/lirc { }; - - liquidfun = callPackage ../development/libraries/liquidfun { }; - - liquidwar = builderDefsPackage ../games/liquidwar { - inherit (xlibs) xproto libX11 libXrender; - inherit gmp mesa libjpeg - expat gettext perl - SDL SDL_image SDL_mixer SDL_ttf - curl sqlite - libogg libvorbis libcaca csound cunit - ; - guile = guile_1_8; - libpng = libpng15; # 0.0.13 needs libpng 1.2--1.5 - }; - - log4cpp = callPackage ../development/libraries/log4cpp { }; - - log4cxx = callPackage ../development/libraries/log4cxx { }; - - log4cplus = callPackage ../development/libraries/log4cplus { }; - - loudmouth = callPackage ../development/libraries/loudmouth { }; - - lzo = callPackage ../development/libraries/lzo { }; - - mdds_0_7_1 = callPackage ../development/libraries/mdds/0.7.1.nix { }; - mdds = callPackage ../development/libraries/mdds { }; - - # failed to build - mediastreamer = callPackage ../development/libraries/mediastreamer { }; - - menu-cache = callPackage ../development/libraries/menu-cache { }; - - mesaSupported = lib.elem system lib.platforms.mesaPlatforms; - - mesaDarwinOr = alternative: if stdenv.isDarwin - then callPackage ../development/libraries/mesa-darwin { } - else alternative; - mesa_noglu = mesaDarwinOr (callPackage ../development/libraries/mesa { - # makes it slower, but during runtime we link against just mesa_drivers - # through /run/opengl-driver*, which is overriden according to config.grsecurity - grsecEnabled = true; - }); - mesa_glu = mesaDarwinOr (callPackage ../development/libraries/mesa-glu { }); - mesa_drivers = mesaDarwinOr ( - let mo = mesa_noglu.override { - grsecEnabled = config.grsecurity or false; - }; - in mo.drivers - ); - mesa = mesaDarwinOr (buildEnv { - name = "mesa-${mesa_noglu.version}"; - paths = [ mesa_noglu mesa_glu ]; - }); - - metaEnvironment = recurseIntoAttrs (let callPackage = newScope pkgs.metaEnvironment; in rec { - sdfLibrary = callPackage ../development/libraries/sdf-library { aterm = aterm28; }; - toolbuslib = callPackage ../development/libraries/toolbuslib { aterm = aterm28; inherit (windows) w32api; }; - cLibrary = callPackage ../development/libraries/c-library { aterm = aterm28; }; - errorSupport = callPackage ../development/libraries/error-support { aterm = aterm28; }; - ptSupport = callPackage ../development/libraries/pt-support { aterm = aterm28; }; - ptableSupport = callPackage ../development/libraries/ptable-support { aterm = aterm28; }; - configSupport = callPackage ../development/libraries/config-support { aterm = aterm28; }; - asfSupport = callPackage ../development/libraries/asf-support { aterm = aterm28; }; - tideSupport = callPackage ../development/libraries/tide-support { aterm = aterm28; }; - rstoreSupport = callPackage ../development/libraries/rstore-support { aterm = aterm28; }; - sdfSupport = callPackage ../development/libraries/sdf-support { aterm = aterm28; }; - sglr = callPackage ../development/libraries/sglr { aterm = aterm28; }; - ascSupport = callPackage ../development/libraries/asc-support { aterm = aterm28; }; - pgen = callPackage ../development/libraries/pgen { aterm = aterm28; }; - }); - - ming = callPackage ../development/libraries/ming { }; - - minizip = callPackage ../development/libraries/minizip { }; - - minmay = callPackage ../development/libraries/minmay { }; - - miro = callPackage ../applications/video/miro { - inherit (pythonPackages) pywebkitgtk pysqlite pycurl mutagen; - }; - - mkvtoolnix = callPackage ../applications/video/mkvtoolnix { }; - - mlt-qt4 = callPackage ../development/libraries/mlt { - qt = qt4; - SDL = SDL_pulseaudio; - }; - - mlt-qt5 = callPackage ../development/libraries/mlt { - qt = qt5; - SDL = SDL_pulseaudio; - }; - - movit = callPackage ../development/libraries/movit { }; - - mps = callPackage ../development/libraries/mps { }; - - libmpeg2 = callPackage ../development/libraries/libmpeg2 { }; - - mpeg2dec = libmpeg2; - - msilbc = callPackage ../development/libraries/msilbc { }; - - mp4v2 = callPackage ../development/libraries/mp4v2 { }; - - mpc = callPackage ../development/libraries/mpc { }; - - mpich2 = callPackage ../development/libraries/mpich2 { }; - - mtdev = callPackage ../development/libraries/mtdev { }; - - mtpfs = callPackage ../tools/filesystems/mtpfs { }; - - mu = callPackage ../tools/networking/mu { - texinfo = texinfo4; - }; - - muparser = callPackage ../development/libraries/muparser { }; - - mygpoclient = callPackage ../development/python-modules/mygpoclient { }; - - mygui = callPackage ../development/libraries/mygui {}; - - myguiSvn = callPackage ../development/libraries/mygui/svn.nix {}; - - mysocketw = callPackage ../development/libraries/mysocketw { }; - - mythes = callPackage ../development/libraries/mythes { }; - - nanomsg = callPackage ../development/libraries/nanomsg { }; - - ncurses = callPackage ../development/libraries/ncurses { - unicode = system != "i686-cygwin"; - }; - - neon = callPackage ../development/libraries/neon { - compressionSupport = true; - sslSupport = true; - }; - - nethack = builderDefsPackage (import ../games/nethack) { - inherit ncurses flex bison; - }; - - nettle = callPackage ../development/libraries/nettle { }; - - newt = callPackage ../development/libraries/newt { }; - - nix-plugins = callPackage ../development/libraries/nix-plugins { - nix = pkgs.nixUnstable; - }; - - nspr = callPackage ../development/libraries/nspr { }; - - nss = lowPrio (callPackage ../development/libraries/nss { }); - - nssTools = callPackage ../development/libraries/nss { - includeTools = true; - }; - - ntrack = callPackage ../development/libraries/ntrack { }; - - nvidia-texture-tools = callPackage ../development/libraries/nvidia-texture-tools { }; - - ode = builderDefsPackage (import ../development/libraries/ode) { }; - - ogre = callPackage ../development/libraries/ogre {}; - - ogrepaged = callPackage ../development/libraries/ogrepaged { }; - - oniguruma = callPackage ../development/libraries/oniguruma { }; - - openal = callPackage ../development/libraries/openal { }; - - # added because I hope that it has been easier to compile on x86 (for blender) - openalSoft = callPackage ../development/libraries/openal-soft { }; - - openbabel = callPackage ../development/libraries/openbabel { }; - - opencascade = callPackage ../development/libraries/opencascade { }; - - opencascade_6_5 = callPackage ../development/libraries/opencascade/6.5.nix { - automake = automake111x; - ftgl = ftgl212; - }; - - opencascade_oce = callPackage ../development/libraries/opencascade/oce.nix { }; - - opencsg = callPackage ../development/libraries/opencsg { }; - - openct = callPackage ../development/libraries/openct { }; - - opencv = callPackage ../development/libraries/opencv { }; - - opencv_2_1 = callPackage ../development/libraries/opencv/2.1.nix { - libpng = libpng12; - }; - - # this ctl version is needed by openexr_viewers - openexr_ctl = callPackage ../development/libraries/openexr_ctl { }; - - openexr = callPackage ../development/libraries/openexr { }; - - openldap = callPackage ../development/libraries/openldap { - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - openlierox = callPackage ../games/openlierox { }; - - libopensc_dnie = callPackage ../development/libraries/libopensc-dnie { }; - - opencolorio = callPackage ../development/libraries/opencolorio { }; - - ois = callPackage ../development/libraries/ois {}; - - opal = callPackage ../development/libraries/opal {}; - - openjpeg = callPackage ../development/libraries/openjpeg { lcms = lcms2; }; - - openscenegraph = callPackage ../development/libraries/openscenegraph { - giflib = giflib_4_1; - ffmpeg = ffmpeg_0_10; - }; - - openspades = callPackage ../games/openspades {}; - - libressl = callPackage ../development/libraries/libressl { }; - - boringssl = callPackage ../development/libraries/boringssl { }; - - openssl = callPackage ../development/libraries/openssl { - fetchurl = fetchurlBoot; - cryptodevHeaders = linuxPackages.cryptodev.override { - fetchurl = fetchurlBoot; - onlyHeaders = true; - }; - }; - - ortp = callPackage ../development/libraries/ortp { - srtp = srtp_linphone; - }; - - p11_kit = callPackage ../development/libraries/p11-kit { }; - - paperkey = callPackage ../tools/security/paperkey { }; - - pangoxsl = callPackage ../development/libraries/pangoxsl { }; - - pcl = callPackage ../development/libraries/pcl { - vtk = vtkWithQt4; - }; - - pcre = callPackage ../development/libraries/pcre { - unicodeSupport = config.pcre.unicode or true; - }; - - pdf2xml = callPackage ../development/libraries/pdf2xml {} ; - - phonon = callPackage ../development/libraries/phonon { }; - - phonon_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer { }; - - phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc { }; - - physfs = callPackage ../development/libraries/physfs { }; - - pkcs11helper = callPackage ../development/libraries/pkcs11helper { }; - - plib = callPackage ../development/libraries/plib { }; - - pocketsphinx = callPackage ../development/libraries/pocketsphinx { }; - - podofo = callPackage ../development/libraries/podofo { }; - - polkit = callPackage ../development/libraries/polkit { - spidermonkey = spidermonkey_185; - }; - - polkit_qt_1 = callPackage ../development/libraries/polkit-qt-1 { }; - - policykit = callPackage ../development/libraries/policykit { }; - - poppler = callPackage ../development/libraries/poppler { lcms = lcms2; }; - popplerQt4 = poppler.poppler_qt4; - - popt = callPackage ../development/libraries/popt { }; - - portaudio = callPackage ../development/libraries/portaudio { - # resolves a variety of compile-time errors - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - portaudioSVN = callPackage ../development/libraries/portaudio/svn-head.nix { }; - - portmidi = callPackage ../development/libraries/portmidi {}; - - prison = callPackage ../development/libraries/prison { }; - - proj = callPackage ../development/libraries/proj { }; - - postgis = callPackage ../development/libraries/postgis { }; - - protobuf = callPackage ../development/libraries/protobuf { }; - - protobufc = callPackage ../development/libraries/protobufc { }; - - pth = callPackage ../development/libraries/pth { }; - - ptlib = callPackage ../development/libraries/ptlib {}; - - re2 = callPackage ../development/libraries/re2 { }; - - qca2 = callPackage ../development/libraries/qca2 {}; - - qca2_ossl = callPackage ../development/libraries/qca2/ossl.nix {}; - - qimageblitz = callPackage ../development/libraries/qimageblitz {}; - - qjson = callPackage ../development/libraries/qjson { }; - - qoauth = callPackage ../development/libraries/qoauth { }; - - qt3 = callPackage ../development/libraries/qt-3 { - openglSupport = mesaSupported; - libpng = libpng12; - }; - - qt4 = pkgs.kde4.qt4; - - qt48 = callPackage ../development/libraries/qt-4.x/4.8 { - # GNOME dependencies are not used unless gtkStyle == true - mesa = mesa_noglu; - inherit (pkgs.gnome) libgnomeui GConf gnome_vfs; - cups = if stdenv.isLinux then cups else null; - - # resolve unrecognised flag '-fconstant-cfstrings' errors - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - qt48Full = qt48.override { - docs = true; - demos = true; - examples = true; - developerBuild = true; - }; - - qt4SDK = qtcreator.override { - sdkBuild = true; - qtLib = qt48Full; - }; - - qt53Full = qt53.override { - buildDocs = true; - buildExamples = true; - buildTests = true; - developerBuild = true; - }; - - qt53 = callPackage ../development/libraries/qt-5/qt-5.3.nix { - mesa = mesa_noglu; - cups = if stdenv.isLinux then cups else null; - # GNOME dependencies are not used unless gtkStyle == true - inherit (gnome) libgnomeui GConf gnome_vfs; - bison = bison2; # error: too few arguments to function 'int yylex(... - }; - - qt5 = callPackage ../development/libraries/qt-5 { - mesa = mesa_noglu; - cups = if stdenv.isLinux then cups else null; - # GNOME dependencies are not used unless gtkStyle == true - inherit (gnome) libgnomeui GConf gnome_vfs; - bison = bison2; # error: too few arguments to function 'int yylex(... - }; - - qt5Full = qt5.override { - buildDocs = true; - buildExamples = true; - buildTests = true; - developerBuild = true; - }; - - qt5SDK = qtcreator.override { - sdkBuild = true; - qtLib = qt5Full; - }; - - qtcreator = callPackage ../development/qtcreator { - qtLib = qt48.override { developerBuild = true; }; - }; - - qtscriptgenerator = callPackage ../development/libraries/qtscriptgenerator { }; - - quesoglc = callPackage ../development/libraries/quesoglc { }; - - qwt = callPackage ../development/libraries/qwt {}; - - qwt6 = callPackage ../development/libraries/qwt/6.nix { }; - - rabbitmq-c = callPackage ../development/libraries/rabbitmq-c {}; - - rabbitmq-java-client = callPackage ../development/libraries/rabbitmq-java-client {}; - - raul = callPackage ../development/libraries/audio/raul { }; - - readline = readline6; # 6.2 works, 6.3 breaks python, parted - - readline4 = callPackage ../development/libraries/readline/readline4.nix { }; - - readline5 = callPackage ../development/libraries/readline/readline5.nix { }; - - readline6 = callPackage ../development/libraries/readline/readline6.nix { }; - - readline63 = callPackage ../development/libraries/readline/readline6.3.nix { }; - - librdf_raptor = callPackage ../development/libraries/librdf/raptor.nix { }; - - librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { }; - - librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { }; - - librdf_redland = callPackage ../development/libraries/librdf/redland.nix { }; - - librdf = callPackage ../development/libraries/librdf { }; - - lilv = callPackage ../development/libraries/audio/lilv { }; - - lv2 = callPackage ../development/libraries/audio/lv2 { }; - - lvtk = callPackage ../development/libraries/audio/lvtk { }; - - qrupdate = callPackage ../development/libraries/qrupdate { }; - - redland = pkgs.librdf_redland; - - rhino = callPackage ../development/libraries/java/rhino { - javac = gcj; - jvm = gcj; - }; - - rlog = callPackage ../development/libraries/rlog { }; - - rubberband = callPackage ../development/libraries/rubberband { - fftw = fftwSinglePrec; - inherit (vamp) vampSDK; - }; - - sbc = callPackage ../development/libraries/sbc { }; - - schroedinger = callPackage ../development/libraries/schroedinger { }; - - SDL = callPackage ../development/libraries/SDL { - openglSupport = mesaSupported; - alsaSupport = (!stdenv.isDarwin); - x11Support = true; - pulseaudioSupport = stdenv.isDarwin; # better go through ALSA - - # resolve the unrecognized -fpascal-strings option error - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - # Fixes major problems with choppy sound in MLT / Kdenlive / Shotcut - SDL_pulseaudio = SDL.override { pulseaudioSupport = true; }; - - SDL_gfx = callPackage ../development/libraries/SDL_gfx { }; - - SDL_image = callPackage ../development/libraries/SDL_image { - # provide an Objective-C compiler - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - SDL_mixer = callPackage ../development/libraries/SDL_mixer { }; - - SDL_net = callPackage ../development/libraries/SDL_net { }; - - SDL_sound = callPackage ../development/libraries/SDL_sound { }; - - SDL_ttf = callPackage ../development/libraries/SDL_ttf { }; - - SDL2 = callPackage ../development/libraries/SDL2 { - openglSupport = mesaSupported; - alsaSupport = true; - x11Support = true; - pulseaudioSupport = false; # better go through ALSA - }; - - SDL2_image = callPackage ../development/libraries/SDL2_image { }; - - SDL2_mixer = callPackage ../development/libraries/SDL2_mixer { }; - - SDL2_net = callPackage ../development/libraries/SDL2_net { }; - - SDL2_gfx = callPackage ../development/libraries/SDL2_gfx { }; - - serd = callPackage ../development/libraries/serd {}; - - serf = callPackage ../development/libraries/serf {}; - - silgraphite = callPackage ../development/libraries/silgraphite {}; - graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix {}; - - simgear = callPackage ../development/libraries/simgear { }; - - sfml_git = callPackage ../development/libraries/sfml { }; - - skalibs = callPackage ../development/libraries/skalibs { }; - - slang = callPackage ../development/libraries/slang { }; - - slibGuile = callPackage ../development/libraries/slib { - scheme = guile_1_8; - texinfo = texinfo4; # otherwise erros: must be after `@defun' to use `@defunx' - }; - - smpeg = callPackage ../development/libraries/smpeg { }; - - snack = callPackage ../development/libraries/snack { - # optional - }; - - snappy = callPackage ../development/libraries/snappy { }; - - sodium = callPackage ../development/libraries/sodium {}; - - sofia_sip = callPackage ../development/libraries/sofia-sip { }; - - soprano = callPackage ../development/libraries/soprano { }; - - soqt = callPackage ../development/libraries/soqt { }; - - sord = callPackage ../development/libraries/sord {}; - - spandsp = callPackage ../development/libraries/spandsp {}; - - speechd = callPackage ../development/libraries/speechd { }; - - speech_tools = callPackage ../development/libraries/speech-tools {}; - - speex = callPackage ../development/libraries/speex { }; - - sphinxbase = callPackage ../development/libraries/sphinxbase { }; - - spice = callPackage ../development/libraries/spice { - celt = celt_0_5_1; - inherit (xlibs) libXrandr libXfixes libXext libXrender libXinerama; - inherit (pythonPackages) pyparsing; - }; - - spice_gtk = callPackage ../development/libraries/spice-gtk { }; - - spice_protocol = callPackage ../development/libraries/spice-protocol { }; - - sratom = callPackage ../development/libraries/audio/sratom { }; - - srtp = callPackage ../development/libraries/srtp {}; - - srtp_linphone = callPackage ../development/libraries/srtp/linphone.nix { }; - - sqlite = lowPrio (callPackage ../development/libraries/sqlite { - readline = null; - ncurses = null; - }); - - sqliteInteractive = appendToName "interactive" (sqlite.override { - inherit readline ncurses; - }); - - sqlcipher = lowPrio (callPackage ../development/libraries/sqlcipher { - readline = null; - ncurses = null; - }); - - stfl = callPackage ../development/libraries/stfl { - stdenv = if stdenv.isDarwin - then overrideGCC stdenv gccApple - else stdenv; - }; - - stlink = callPackage ../development/tools/misc/stlink { }; - - steghide = callPackage ../tools/security/steghide {}; - - stepmania = callPackage ../games/stepmania {}; - - stlport = callPackage ../development/libraries/stlport { }; - - strigi = callPackage ../development/libraries/strigi { clucene_core = clucene_core_2; }; - - subtitleeditor = callPackage ../applications/video/subtitleeditor { }; - - suil = callPackage ../development/libraries/audio/suil { }; - - suitesparse = callPackage ../development/libraries/suitesparse { }; - - sutils = callPackage ../tools/misc/sutils { }; - - sword = callPackage ../development/libraries/sword { }; - - szip = callPackage ../development/libraries/szip { }; - - t1lib = callPackage ../development/libraries/t1lib { }; - - taglib = callPackage ../development/libraries/taglib { }; - - taglib_extras = callPackage ../development/libraries/taglib-extras { }; - - talloc = callPackage ../development/libraries/talloc { }; - - tclap = callPackage ../development/libraries/tclap {}; - - tclgpg = callPackage ../development/libraries/tclgpg { }; - - tcllib = callPackage ../development/libraries/tcllib { }; - - tcltls = callPackage ../development/libraries/tcltls { }; - - tdb = callPackage ../development/libraries/tdb { }; - - tecla = callPackage ../development/libraries/tecla { }; - - telepathy_glib = callPackage ../development/libraries/telepathy/glib { }; - - telepathy_farstream = callPackage ../development/libraries/telepathy/farstream {}; - - telepathy_qt = callPackage ../development/libraries/telepathy/qt { }; - - thrift = callPackage ../development/libraries/thrift { }; - - tinyxml = tinyxml2; - - tinyxml2 = callPackage ../development/libraries/tinyxml/2.6.2.nix { }; - - tk = callPackage ../development/libraries/tk { }; - - tnt = callPackage ../development/libraries/tnt { }; - - tokyocabinet = callPackage ../development/libraries/tokyo-cabinet { }; - tokyotyrant = callPackage ../development/libraries/tokyo-tyrant { }; - - tremor = callPackage ../development/libraries/tremor { }; - - unicap = callPackage ../development/libraries/unicap {}; - - tsocks = callPackage ../development/libraries/tsocks { }; - - unixODBC = callPackage ../development/libraries/unixODBC { }; - - unixODBCDrivers = recurseIntoAttrs (import ../development/libraries/unixODBCDrivers { - inherit fetchurl stdenv unixODBC glibc libtool openssl zlib; - inherit postgresql mysql sqlite; - }); - - urt = callPackage ../development/libraries/urt { }; - - ustr = callPackage ../development/libraries/ustr { }; - - usbredir = callPackage ../development/libraries/usbredir { - libusb = libusb1; - }; - - ucommon = callPackage ../development/libraries/ucommon { }; - - v8 = callPackage ../development/libraries/v8 { - inherit (pythonPackages) gyp; - }; - - vaapiIntel = callPackage ../development/libraries/vaapi-intel { }; - - vaapiVdpau = callPackage ../development/libraries/vaapi-vdpau { }; - - vamp = callPackage ../development/libraries/audio/vamp { }; - - vcdimager = callPackage ../development/libraries/vcdimager { }; - - vigra = callPackage ../development/libraries/vigra { - inherit (pkgs.pythonPackages) numpy; - }; - - vlock = callPackage ../misc/screensavers/vlock { }; - - vmime = callPackage ../development/libraries/vmime { }; - - vrpn = callPackage ../development/libraries/vrpn { }; - - vtk = callPackage ../development/libraries/vtk { }; - - vtkWithQt4 = vtk.override { qtLib = qt4; }; - - vxl = callPackage ../development/libraries/vxl { - libpng = libpng12; - }; - - wayland = callPackage ../development/libraries/wayland { }; - - webkit = webkitgtk; - - webkitgtk = callPackage ../development/libraries/webkitgtk { - harfbuzz = harfbuzz.override { - withIcu = true; - }; - gst-plugins-base = gst_all_1.gst-plugins-base; - }; - - webkitgtk2 = webkitgtk.override { - withGtk2 = true; - enableIntrospection = false; - }; - - wildmidi = callPackage ../development/libraries/wildmidi { }; - - wvstreams = callPackage ../development/libraries/wvstreams { }; - - wxGTK = wxGTK28; - - wxGTK28 = callPackage ../development/libraries/wxGTK-2.8 { - inherit (gnome) GConf; - withMesa = lib.elem system lib.platforms.mesaPlatforms; - }; - - wxGTK29 = callPackage ../development/libraries/wxGTK-2.9/default.nix { - inherit (gnome) GConf; - withMesa = lib.elem system lib.platforms.mesaPlatforms; - - # use for Objective-C++ compiler - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - wxGTK30 = callPackage ../development/libraries/wxGTK-3.0/default.nix { - inherit (gnome) GConf; - withMesa = lib.elem system lib.platforms.mesaPlatforms; - - # use for Objective-C++ compiler - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - wtk = callPackage ../development/libraries/wtk { }; - - x264 = callPackage ../development/libraries/x264 { }; - - xapian = callPackage ../development/libraries/xapian { }; - - xapianBindings = callPackage ../development/libraries/xapian/bindings { # TODO perl php Java, tcl, C#, python - }; - - xapian10 = callPackage ../development/libraries/xapian/1.0.x.nix { }; - - xapianBindings10 = callPackage ../development/libraries/xapian/bindings/1.0.x.nix { # TODO perl php Java, tcl, C#, python - }; - - Xaw3d = callPackage ../development/libraries/Xaw3d { }; - - xbase = callPackage ../development/libraries/xbase { }; - - xcb-util-cursor = callPackage ../development/libraries/xcb-util-cursor { }; - - xdo = callPackage ../tools/misc/xdo { }; - - xineLib = callPackage ../development/libraries/xine-lib { - ffmpeg = ffmpeg_1; - }; - - xautolock = callPackage ../misc/screensavers/xautolock { }; - - xercesc = callPackage ../development/libraries/xercesc {}; - - xlibsWrapper = callPackage ../development/libraries/xlibs-wrapper { - packages = [ - freetype fontconfig xlibs.xproto xlibs.libX11 xlibs.libXt - xlibs.libXft xlibs.libXext xlibs.libSM xlibs.libICE - xlibs.xextproto - ]; - }; - - xmlrpc_c = callPackage ../development/libraries/xmlrpc-c { }; - - xmlsec = callPackage ../development/libraries/xmlsec { }; - - xvidcore = callPackage ../development/libraries/xvidcore { }; - - xylib = callPackage ../development/libraries/xylib { }; - - yajl = callPackage ../development/libraries/yajl { }; - - zangband = builderDefsPackage (import ../games/zangband) { - inherit ncurses flex bison autoconf automake m4 coreutils; - }; - - zeitgeist = callPackage ../development/libraries/zeitgeist { }; - - zlib = callPackage ../development/libraries/zlib { - fetchurl = fetchurlBoot; - }; - - zlibStatic = lowPrio (appendToName "static" (callPackage ../development/libraries/zlib { - static = true; - })); - - zeromq2 = callPackage ../development/libraries/zeromq/2.x.nix {}; - zeromq3 = callPackage ../development/libraries/zeromq/3.x.nix {}; - zeromq4 = callPackage ../development/libraries/zeromq/4.x.nix {}; - - zziplib = callPackage ../development/libraries/zziplib { }; - - - ### DEVELOPMENT / LIBRARIES / JAVA - - atermjava = callPackage ../development/libraries/java/aterm { - stdenv = overrideInStdenv stdenv [gnumake380]; - }; - - commonsFileUpload = callPackage ../development/libraries/java/jakarta-commons/file-upload { }; - - fastjar = callPackage ../development/tools/java/fastjar { }; - - httpunit = callPackage ../development/libraries/java/httpunit { }; - - gwtdragdrop = callPackage ../development/libraries/java/gwt-dragdrop { }; - - gwtwidgets = callPackage ../development/libraries/java/gwt-widgets { }; - - jakartabcel = callPackage ../development/libraries/java/jakarta-bcel { - regexp = jakartaregexp; - }; - - jakartaregexp = callPackage ../development/libraries/java/jakarta-regexp { }; - - javaCup = callPackage ../development/libraries/java/cup { }; - - javasvn = callPackage ../development/libraries/java/javasvn { }; - - jclasslib = callPackage ../development/tools/java/jclasslib { }; - - jdom = callPackage ../development/libraries/java/jdom { }; - - jflex = callPackage ../development/libraries/java/jflex { }; - - jjtraveler = callPackage ../development/libraries/java/jjtraveler { - stdenv = overrideInStdenv stdenv [gnumake380]; - }; - - junit = callPackage ../development/libraries/java/junit { antBuild = releaseTools.antBuild; }; - - junixsocket = callPackage ../development/libraries/java/junixsocket { }; - - jzmq = callPackage ../development/libraries/java/jzmq { }; - - lucene = callPackage ../development/libraries/java/lucene { }; - - mockobjects = callPackage ../development/libraries/java/mockobjects { }; - - saxon = callPackage ../development/libraries/java/saxon { }; - - saxonb = callPackage ../development/libraries/java/saxon/default8.nix { }; - - sharedobjects = callPackage ../development/libraries/java/shared-objects { - stdenv = overrideInStdenv stdenv [gnumake380]; - }; - - smack = callPackage ../development/libraries/java/smack { }; - - swt = callPackage ../development/libraries/java/swt { - inherit (gnome) libsoup; - }; - - - ### DEVELOPMENT / LIBRARIES / JAVASCRIPT - - jquery_ui = callPackage ../development/libraries/javascript/jquery-ui { }; - - yuicompressor = callPackage ../development/tools/yuicompressor { }; - - ### DEVELOPMENT / LISP MODULES - - asdf = callPackage ../development/lisp-modules/asdf { - texLive = null; - }; - - clwrapperFunction = callPackage ../development/lisp-modules/clwrapper; - - wrapLisp = lisp: clwrapperFunction { inherit lisp; }; - - lispPackagesFor = clwrapper: callPackage ../development/lisp-modules/lisp-packages.nix { - inherit clwrapper; - }; - - lispPackagesClisp = lispPackagesFor (wrapLisp clisp); - lispPackagesSBCL = lispPackagesFor (wrapLisp sbcl); - lispPackages = recurseIntoAttrs lispPackagesSBCL; - - - ### DEVELOPMENT / PERL MODULES - - buildPerlPackage = import ../development/perl-modules/generic perl; - - perlPackages = recurseIntoAttrs (import ./perl-packages.nix { - inherit pkgs; - overrides = (config.perlPackageOverrides or (p: {})) pkgs; - }); - - perl514Packages = import ./perl-packages.nix { - pkgs = pkgs // { - perl = perl514; - buildPerlPackage = import ../development/perl-modules/generic perl514; - }; - overrides = (config.perl514PackageOverrides or (p: {})) pkgs; - }; - - perlXMLParser = perlPackages.XMLParser; - - ack = perlPackages.ack; - - perlArchiveCpio = perlPackages.ArchiveCpio; - - perlcritic = perlPackages.PerlCritic; - - planetary_annihilation = callPackage ../games/planetaryannihilation { }; - - - ### DEVELOPMENT / PYTHON MODULES - - # python function with default python interpreter - buildPythonPackage = pythonPackages.buildPythonPackage; - - # `nix-env -i python-nose` installs for 2.7, the default python. - # Therefore we do not recurse into attributes here, in contrast to - # python27Packages. `nix-env -iA python26Packages.nose` works - # regardless. - python26Packages = import ./python-packages.nix { - inherit pkgs; - python = python26; - }; - - python27Packages = lib.hiPrioSet (recurseIntoAttrs (import ./python-packages.nix { - inherit pkgs; - python = python27; - })); - - python32Packages = import ./python-packages.nix { - inherit pkgs; - python = python32; - }; - - python33Packages = recurseIntoAttrs (import ./python-packages.nix { - inherit pkgs; - python = python33; - }); - - python34Packages = recurseIntoAttrs (import ./python-packages.nix { - inherit pkgs; - python = python34; - }); - - pypyPackages = recurseIntoAttrs (import ./python-packages.nix { - inherit pkgs; - python = pypy; - }); - - foursuite = callPackage ../development/python-modules/4suite { }; - - bsddb3 = callPackage ../development/python-modules/bsddb3 { }; - - ecdsa = callPackage ../development/python-modules/ecdsa { }; - - numeric = callPackage ../development/python-modules/numeric { }; - - pil = pythonPackages.pil; - - psyco = callPackage ../development/python-modules/psyco { }; - - pycairo = pythonPackages.pycairo; - - pycapnp = pythonPackages.pycapnp; - - pycrypto = pythonPackages.pycrypto; - - pycups = callPackage ../development/python-modules/pycups { }; - - pyexiv2 = callPackage ../development/python-modules/pyexiv2 { }; - - pygame = callPackage ../development/python-modules/pygame { }; - - pygobject = pythonPackages.pygobject; - - pygobject3 = pythonPackages.pygobject3; - - pygtk = pythonPackages.pygtk; - - pyGtkGlade = pythonPackages.pyGtkGlade; - - pylint = callPackage ../development/python-modules/pylint { }; - - pyopenssl = builderDefsPackage (import ../development/python-modules/pyopenssl) { - inherit python openssl; - }; - - rhpl = callPackage ../development/python-modules/rhpl { }; - - sip = callPackage ../development/python-modules/sip { }; - - pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix { - stdenv = if stdenv.isDarwin - then clangStdenv - else stdenv; - }; - - pysideApiextractor = callPackage ../development/python-modules/pyside/apiextractor.nix { }; - - pysideGeneratorrunner = callPackage ../development/python-modules/pyside/generatorrunner.nix { }; - - pyside = callPackage ../development/python-modules/pyside { }; - - pysideTools = callPackage ../development/python-modules/pyside/tools.nix { }; - - pysideShiboken = callPackage ../development/python-modules/pyside/shiboken.nix { }; - - pyx = callPackage ../development/python-modules/pyx { }; - - pyxml = callPackage ../development/python-modules/pyxml { }; - - rbtools = callPackage ../development/python-modules/rbtools { }; - - setuptools = pythonPackages.setuptools; - - slowaes = callPackage ../development/python-modules/slowaes { }; - - wxPython = pythonPackages.wxPython; - wxPython28 = pythonPackages.wxPython28; - - twisted = pythonPackages.twisted; - - ZopeInterface = pythonPackages.zope_interface; - - ### DEVELOPMENT / R MODULES - - R = callPackage ../applications/science/math/R { - inherit (xlibs) libX11 libXt; - texLive = texLiveAggregationFun { paths = [ texLive texLiveExtra ]; }; - withRecommendedPackages = false; - }; - - rWrapper = callPackage ../development/r-modules/wrapper.nix { - # Those packages are usually installed as part of the R build. - recommendedPackages = with rPackages; [ MASS lattice Matrix nlme - survival boot cluster codetools foreign KernSmooth rpart class - nnet spatial mgcv ]; - # Override this attribute to register additional libraries. - packages = []; - }; - - rPackages = import ../development/r-modules/cran-packages.nix { - inherit pkgs; - overrides = (config.rPackageOverrides or (p: {})) pkgs; - }; - - ### SERVERS - - rdf4store = callPackage ../servers/http/4store { }; - - apacheHttpd = pkgs.apacheHttpd_2_2; - - apacheHttpd_2_2 = callPackage ../servers/http/apache-httpd/2.2.nix { - sslSupport = true; - }; - - apacheHttpd_2_4 = lowPrio (callPackage ../servers/http/apache-httpd/2.4.nix { - sslSupport = true; - }); - - apcupsd = callPackage ../servers/apcupsd { }; - - sabnzbd = callPackage ../servers/sabnzbd { }; - - bind = callPackage ../servers/dns/bind { }; - - bird = callPackage ../servers/bird { }; - - couchdb = callPackage ../servers/http/couchdb { - spidermonkey = spidermonkey_185; - python = python27; - sphinx = python27Packages.sphinx; - erlang = erlangR16; - }; - - dico = callPackage ../servers/dico { }; - - dict = callPackage ../servers/dict { - libmaa = callPackage ../servers/dict/libmaa.nix {}; - }; - - dictdDBs = recurseIntoAttrs (import ../servers/dict/dictd-db.nix { - inherit builderDefs; - }); - - dictDBCollector = import ../servers/dict/dictd-db-collector.nix { - inherit stdenv lib dict; - }; - - dictdWiktionary = callPackage ../servers/dict/dictd-wiktionary.nix {}; - - dictdWordnet = callPackage ../servers/dict/dictd-wordnet.nix {}; - - diod = callPackage ../servers/diod { }; - - dovecot = dovecot21; - - dovecot21 = callPackage ../servers/mail/dovecot { }; - - dovecot22 = callPackage ../servers/mail/dovecot/2.2.x.nix { }; - - dovecot_pigeonhole = callPackage ../servers/mail/dovecot-pigeonhole { }; - - etcd = callPackage ../servers/etcd { }; - - ejabberd = callPackage ../servers/xmpp/ejabberd { - erlang = erlangR16; - }; - - elasticmq = callPackage ../servers/elasticmq { }; - - etcdctl = callPackage ../development/tools/etcdctl { }; - - fcgiwrap = callPackage ../servers/fcgiwrap { }; - - felix = callPackage ../servers/felix { }; - - felix_remoteshell = callPackage ../servers/felix/remoteshell.nix { }; - - fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { }; - - firebird = callPackage ../servers/firebird { icu = null; }; - firebirdSuper = callPackage ../servers/firebird { superServer = true; }; - - fleet = callPackage ../servers/fleet { }; - - freepops = callPackage ../servers/mail/freepops { }; - - freeswitch = callPackage ../servers/sip/freeswitch { }; - - ghostOne = callPackage ../servers/games/ghost-one { - boost = boost144.override { taggedLayout = true; }; - }; - - ircdHybrid = callPackage ../servers/irc/ircd-hybrid { }; - - jboss = callPackage ../servers/http/jboss { }; - - jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { }; - - jetty = callPackage ../servers/http/jetty { }; - - jetty61 = callPackage ../servers/http/jetty/6.1 { }; - - joseki = callPackage ../servers/http/joseki {}; - - leafnode = callPackage ../servers/news/leafnode { }; - - lighttpd = callPackage ../servers/http/lighttpd { }; - - mailman = callPackage ../servers/mail/mailman { }; - - mediatomb = callPackage ../servers/mediatomb { }; - - memcached = callPackage ../servers/memcached {}; - - mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd/default.nix { }; - - mod_evasive = callPackage ../servers/http/apache-modules/mod_evasive { }; - - mod_python = callPackage ../servers/http/apache-modules/mod_python { }; - - mod_fastcgi = callPackage ../servers/http/apache-modules/mod_fastcgi { }; - - mod_wsgi = callPackage ../servers/http/apache-modules/mod_wsgi { }; - - mpd = callPackage ../servers/mpd { - aacSupport = config.mpd.aacSupport or true; - ffmpegSupport = config.mpd.ffmpegSupport or true; - }; - - mpd_clientlib = callPackage ../servers/mpd/clientlib.nix { }; - - miniHttpd = callPackage ../servers/http/mini-httpd {}; - - mlmmj = callPackage ../servers/mail/mlmmj { }; - - myserver = callPackage ../servers/http/myserver { }; - - nginx = callPackage ../servers/http/nginx { - rtmp = true; - fullWebDAV = true; - syslog = true; - moreheaders = true; - }; - - ngircd = callPackage ../servers/irc/ngircd { }; - - nix-binary-cache = callPackage ../servers/http/nix-binary-cache {}; - - nsd = callPackage ../servers/dns/nsd { }; - - nsq = callPackage ../servers/nsq { }; - - openresty = callPackage ../servers/http/openresty { }; - - opensmtpd = callPackage ../servers/mail/opensmtpd { }; - - petidomo = callPackage ../servers/mail/petidomo { }; - - popa3d = callPackage ../servers/mail/popa3d { }; - - postfix = callPackage ../servers/mail/postfix { }; - - postfix211 = callPackage ../servers/mail/postfix/2.11.nix { }; - - pulseaudio = callPackage ../servers/pulseaudio { - gconf = gnome.GConf; - # The following are disabled in the default build, because if this - # functionality is desired, they are only needed in the PulseAudio - # server. - bluez = null; - avahi = null; - }; - pulseaudioFull = pulseaudio.override { - bluez = bluez5; - avahi = avahi; - jackaudioSupport = true; - x11Support = true; - }; - - tomcat_connectors = callPackage ../servers/http/apache-modules/tomcat-connectors { }; - - pies = callPackage ../servers/pies { }; - - portmap = callPackage ../servers/portmap { }; - - rpcbind = callPackage ../servers/rpcbind { }; - - #monetdb = callPackage ../servers/sql/monetdb { }; - - mariadb = callPackage ../servers/sql/mariadb {}; - - mongodb = callPackage ../servers/nosql/mongodb { }; - - riak = callPackage ../servers/nosql/riak/1.3.1.nix { }; - - influxdb = callPackage ../servers/nosql/influxdb { }; - - mysql51 = import ../servers/sql/mysql/5.1.x.nix { - inherit fetchurl ncurses zlib perl openssl stdenv; - ps = procps; /* !!! Linux only */ - }; - - mysql55 = callPackage ../servers/sql/mysql/5.5.x.nix { }; - - mysql = mysql51; - - mysql_jdbc = callPackage ../servers/sql/mysql/jdbc { }; - - nagios = callPackage ../servers/monitoring/nagios { }; - - munin = callPackage ../servers/monitoring/munin { }; - - nagiosPluginsOfficial = callPackage ../servers/monitoring/nagios/plugins/official-2.x.nix { }; - - neo4j = callPackage ../servers/nosql/neo4j { }; - - net_snmp = callPackage ../servers/monitoring/net-snmp { }; - - riemann = callPackage ../servers/monitoring/riemann { }; - - oidentd = callPackage ../servers/identd/oidentd { }; - - openfire = callPackage ../servers/xmpp/openfire { }; - - oracleXE = callPackage ../servers/sql/oracle-xe { }; - - OVMF = callPackage ../applications/virtualization/OVMF { }; - - postgresql = postgresql92; - - postgresql84 = callPackage ../servers/sql/postgresql/8.4.x.nix { }; - - postgresql90 = callPackage ../servers/sql/postgresql/9.0.x.nix { }; - - postgresql91 = callPackage ../servers/sql/postgresql/9.1.x.nix { }; - - postgresql92 = callPackage ../servers/sql/postgresql/9.2.x.nix { }; - - postgresql93 = callPackage ../servers/sql/postgresql/9.3.x.nix { }; - - postgresql_jdbc = callPackage ../servers/sql/postgresql/jdbc { }; - - psqlodbc = callPackage ../servers/sql/postgresql/psqlodbc { }; - - pyIRCt = builderDefsPackage (import ../servers/xmpp/pyIRCt) { - inherit xmpppy pythonIRClib python makeWrapper; - }; - - pyMAILt = builderDefsPackage (import ../servers/xmpp/pyMAILt) { - inherit xmpppy python makeWrapper fetchcvs; - }; - - qpid-cpp = callPackage ../servers/amqp/qpid-cpp { }; - - rabbitmq_server = callPackage ../servers/amqp/rabbitmq-server { }; - - radius = callPackage ../servers/radius { }; - - redis = callPackage ../servers/nosql/redis { }; - - redstore = callPackage ../servers/http/redstore { }; - - restund = callPackage ../servers/restund {}; - - rethinkdb = callPackage ../servers/nosql/rethinkdb { }; - - rippled = callPackage ../servers/rippled { }; - - s6 = callPackage ../servers/s6 { }; - - spamassassin = callPackage ../servers/mail/spamassassin { - inherit (perlPackages) HTMLParser NetDNS NetAddrIP DBFile - HTTPDate MailDKIM LWP IOSocketSSL; - }; - - samba = callPackage ../servers/samba { }; - - # A lightweight Samba, useful for non-Linux-based OSes. - samba_light = lowPrio (callPackage ../servers/samba { - pam = null; - fam = null; - cups = null; - acl = null; - openldap = null; - # libunwind 1.0.1 is not ported to GNU/Hurd. - libunwind = null; - }); - - serfdom = callPackage ../servers/serfdom { }; - - seyren = callPackage ../servers/monitoring/seyren { }; - - shishi = callPackage ../servers/shishi { }; - - sipwitch = callPackage ../servers/sip/sipwitch { }; - - spawn_fcgi = callPackage ../servers/http/spawn-fcgi { }; - - squids = recurseIntoAttrs( import ../servers/squid/squids.nix { - inherit fetchurl stdenv perl lib composableDerivation - openldap pam db cyrus_sasl kerberos libcap expat libxml2 libtool - openssl; - }); - squid = squids.squid31; # has ipv6 support - - thttpd = callPackage ../servers/http/thttpd { }; - - storm = callPackage ../servers/computing/storm { }; - - tomcat5 = callPackage ../servers/http/tomcat/5.0.nix { }; - - tomcat6 = callPackage ../servers/http/tomcat/6.0.nix { }; - - tomcat7 = callPackage ../servers/http/tomcat/7.0.nix { }; - - tomcat8 = callPackage ../servers/http/tomcat/8.0.nix { }; - - tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; - - axis2 = callPackage ../servers/http/tomcat/axis2 { }; - - unifi = callPackage ../servers/unifi { }; - - virtuoso6 = callPackage ../servers/sql/virtuoso/6.x.nix { }; - - virtuoso7 = callPackage ../servers/sql/virtuoso/7.x.nix { }; - - virtuoso = virtuoso6; - - vsftpd = callPackage ../servers/ftp/vsftpd { }; - - winstone = callPackage ../servers/http/winstone { }; - - xinetd = callPackage ../servers/xinetd { }; - - zookeeper = callPackage ../servers/zookeeper { }; - - xquartz = callPackage ../servers/x11/xquartz { }; - quartz-wm = callPackage ../servers/x11/quartz-wm { stdenv = clangStdenv; }; - - xorg = recurseIntoAttrs (import ../servers/x11/xorg/default.nix { - inherit clangStdenv fetchurl fetchgit fetchpatch stdenv pkgconfig intltool freetype fontconfig - libxslt expat libpng zlib perl mesa_drivers spice_protocol - dbus libuuid openssl gperf m4 - autoconf automake libtool xmlto asciidoc flex bison python mtdev pixman; - mesa = mesa_noglu; - udev = if stdenv.isLinux then udev else null; - libdrm = if stdenv.isLinux then libdrm else null; - } // { - xf86videointel-testing = callPackage ../servers/x11/xorg/xf86-video-intel-testing.nix { }; - }); - - xorgReplacements = callPackage ../servers/x11/xorg/replacements.nix { }; - - xorgVideoUnichrome = callPackage ../servers/x11/xorg/unichrome/default.nix { }; - - yaws = callPackage ../servers/http/yaws { }; - - zabbix = recurseIntoAttrs (import ../servers/monitoring/zabbix { - inherit fetchurl stdenv pkgconfig postgresql curl openssl zlib; - }); - - zabbix20 = callPackage ../servers/monitoring/zabbix/2.0.nix { }; - zabbix22 = callPackage ../servers/monitoring/zabbix/2.2.nix { }; - - - ### OS-SPECIFIC - - afuse = callPackage ../os-specific/linux/afuse { }; - - amdUcode = callPackage ../os-specific/linux/microcode/amd.nix { }; - - autofs5 = callPackage ../os-specific/linux/autofs/autofs-v5.nix { }; - - _915resolution = callPackage ../os-specific/linux/915resolution { }; - - nfsUtils = callPackage ../os-specific/linux/nfs-utils { }; - - acpi = callPackage ../os-specific/linux/acpi { }; - - acpid = callPackage ../os-specific/linux/acpid { }; - - acpitool = callPackage ../os-specific/linux/acpitool { }; - - alienfx = callPackage ../os-specific/linux/alienfx { }; - - alsaLib = callPackage ../os-specific/linux/alsa-lib { }; - - alsaPlugins = callPackage ../os-specific/linux/alsa-plugins { - jack2 = null; - }; - - alsaPluginWrapper = callPackage ../os-specific/linux/alsa-plugins/wrapper.nix { }; - - alsaUtils = callPackage ../os-specific/linux/alsa-utils { }; - alsaOss = callPackage ../os-specific/linux/alsa-oss { }; - - microcode2ucode = callPackage ../os-specific/linux/microcode/converter.nix { }; - - microcodeIntel = callPackage ../os-specific/linux/microcode/intel.nix { }; - - apparmor = callPackage ../os-specific/linux/apparmor { - inherit (perlPackages) LocaleGettext TermReadKey RpcXML; - bison = bison2; - }; - - atop = callPackage ../os-specific/linux/atop { }; - - audit = callPackage ../os-specific/linux/audit { }; - - b43Firmware_5_1_138 = callPackage ../os-specific/linux/firmware/b43-firmware/5.1.138.nix { }; - - b43FirmwareCutter = callPackage ../os-specific/linux/firmware/b43-firmware-cutter { }; - - batctl = callPackage ../os-specific/linux/batman-adv/batctl.nix { }; - - bluez4 = callPackage ../os-specific/linux/bluez { - pygobject = pygobject3; - }; - - bluez5 = lowPrio (callPackage ../os-specific/linux/bluez/bluez5.nix { }); - - bluez = bluez4; - - inherit (pythonPackages) bedup; - - beret = callPackage ../games/beret { }; - - bridge_utils = callPackage ../os-specific/linux/bridge-utils { }; - - busybox = callPackage ../os-specific/linux/busybox { }; - - checkpolicy = callPackage ../os-specific/linux/checkpolicy { }; - - checksec = callPackage ../os-specific/linux/checksec { }; - - cifs_utils = callPackage ../os-specific/linux/cifs-utils { }; - - conky = callPackage ../os-specific/linux/conky { - mpdSupport = config.conky.mpdSupport or true; - x11Support = config.conky.x11Support or false; - xdamage = config.conky.xdamage or false; - wireless = config.conky.wireless or false; - luaSupport = config.conky.luaSupport or false; - rss = config.conky.rss or false; - weatherMetar = config.conky.weatherMetar or false; - weatherXoap = config.conky.weatherXoap or false; - }; - - cpufrequtils = callPackage ../os-specific/linux/cpufrequtils { }; - - cryopid = callPackage ../os-specific/linux/cryopid { }; - - criu = callPackage ../os-specific/linux/criu { }; - - cryptsetup = callPackage ../os-specific/linux/cryptsetup { }; - - cramfsswap = callPackage ../os-specific/linux/cramfsswap { }; - - darwin = rec { - cctools = forceNativeDrv (callPackage ../os-specific/darwin/cctools-port { - cross = assert crossSystem != null; crossSystem; - inherit maloader; - xctoolchain = xcode.toolchain; - }); - - maloader = callPackage ../os-specific/darwin/maloader { - inherit opencflite; - }; - - opencflite = callPackage ../os-specific/darwin/opencflite {}; - - xcode = callPackage ../os-specific/darwin/xcode {}; - }; - - devicemapper = lvm2; - - disk_indicator = callPackage ../os-specific/linux/disk-indicator { }; - - dmidecode = callPackage ../os-specific/linux/dmidecode { }; - - dmtcp = callPackage ../os-specific/linux/dmtcp { }; - - dietlibc = callPackage ../os-specific/linux/dietlibc { }; - - directvnc = builderDefsPackage ../os-specific/linux/directvnc { - inherit libjpeg pkgconfig zlib directfb; - inherit (xlibs) xproto; - }; - - dmraid = callPackage ../os-specific/linux/dmraid { - devicemapper = devicemapper.override {enable_dmeventd = true;}; - }; - - drbd = callPackage ../os-specific/linux/drbd { }; - - dstat = callPackage ../os-specific/linux/dstat { - # pythonFull includes the "curses" standard library module, for pretty - # dstat color output - python = pythonFull; - }; - - libossp_uuid = callPackage ../development/libraries/libossp-uuid { }; - - libuuid = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then (utillinux // { - crossDrv = lib.overrideDerivation utillinux.crossDrv (args: { - # `libblkid' fails to build on GNU/Hurd. - configureFlags = args.configureFlags - + " --disable-libblkid --disable-mount --disable-libmount" - + " --disable-fsck --enable-static --disable-partx"; - doCheck = false; - CPPFLAGS = # ugly hack for ugly software! - lib.concatStringsSep " " - (map (v: "-D${v}=4096") - [ "PATH_MAX" "MAXPATHLEN" "MAXHOSTNAMELEN" ]); - }); - }) - else if stdenv.isLinux - then utillinux - else null; - - e3cfsprogs = callPackage ../os-specific/linux/e3cfsprogs { }; - - ebtables = callPackage ../os-specific/linux/ebtables { }; - - eject = utillinux; - - ffado = callPackage ../os-specific/linux/ffado { }; - - fbterm = callPackage ../os-specific/linux/fbterm { }; - - firejail = callPackage ../os-specific/linux/firejail {}; - - fuse = callPackage ../os-specific/linux/fuse { }; - - fxload = callPackage ../os-specific/linux/fxload { }; - - gfxtablet = callPackage ../os-specific/linux/gfxtablet {}; - - gpm = callPackage ../servers/gpm { }; - - gradm = callPackage ../os-specific/linux/gradm { - flex = flex_2_5_35; - }; - - hdparm = callPackage ../os-specific/linux/hdparm { }; - - hibernate = callPackage ../os-specific/linux/hibernate { }; - - hostapd = callPackage ../os-specific/linux/hostapd { }; - - htop = - if stdenv.isLinux then - callPackage ../os-specific/linux/htop { } - else if stdenv.isDarwin then - callPackage ../os-specific/darwin/htop { } - else null; - - # GNU/Hurd core packages. - gnu = recurseIntoAttrs (callPackage ../os-specific/gnu { - inherit platform crossSystem; - }); - - hwdata = callPackage ../os-specific/linux/hwdata { }; - - i7z = callPackage ../os-specific/linux/i7z { }; - - ifplugd = callPackage ../os-specific/linux/ifplugd { }; - - iomelt = callPackage ../os-specific/linux/iomelt { }; - - iotop = callPackage ../os-specific/linux/iotop { }; - - iproute = callPackage ../os-specific/linux/iproute { }; - - iputils = callPackage ../os-specific/linux/iputils { - sp = spCompat; - inherit (perlPackages) SGMLSpm; - }; - - iptables = callPackage ../os-specific/linux/iptables { }; - - iw = callPackage ../os-specific/linux/iw { }; - - jujuutils = callPackage ../os-specific/linux/jujuutils { }; - - kbd = callPackage ../os-specific/linux/kbd { }; - - kmscon = callPackage ../os-specific/linux/kmscon { }; - - latencytop = callPackage ../os-specific/linux/latencytop { }; - - ldm = callPackage ../os-specific/linux/ldm { }; - - libaio = callPackage ../os-specific/linux/libaio { }; - - libatasmart = callPackage ../os-specific/linux/libatasmart { }; - - libcgroup = callPackage ../os-specific/linux/libcgroup { }; - - libnl = callPackage ../os-specific/linux/libnl { }; - libnl_3_2_19 = callPackage ../os-specific/linux/libnl/3.2.19.nix { }; - - linuxConsoleTools = callPackage ../os-specific/linux/consoletools { }; - - # -- Linux kernel expressions ------------------------------------------------ - - linuxHeaders = linuxHeaders_3_7; - - linuxHeaders24Cross = forceNativeDrv (import ../os-specific/linux/kernel-headers/2.4.nix { - inherit stdenv fetchurl perl; - cross = assert crossSystem != null; crossSystem; - }); - - linuxHeaders26Cross = forceNativeDrv (import ../os-specific/linux/kernel-headers/2.6.32.nix { - inherit stdenv fetchurl perl; - cross = assert crossSystem != null; crossSystem; - }); - - linuxHeaders_3_7 = callPackage ../os-specific/linux/kernel-headers/3.7.nix { }; - - linuxHeaders_3_14 = callPackage ../os-specific/linux/kernel-headers/3.14.nix { }; - - # We can choose: - linuxHeadersCrossChooser = ver : if ver == "2.4" then linuxHeaders24Cross - else if ver == "2.6" then linuxHeaders26Cross - else throw "Unknown linux kernel version"; - - linuxHeadersCross = assert crossSystem != null; - linuxHeadersCrossChooser crossSystem.platform.kernelMajor; - - kernelPatches = callPackage ../os-specific/linux/kernel/patches.nix { }; - - linux_3_2 = makeOverridable (import ../os-specific/linux/kernel/linux-3.2.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = []; - }; - - linux_3_4 = makeOverridable (import ../os-specific/linux/kernel/linux-3.4.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - ]; - }; - - linux_3_6_rpi = makeOverridable (import ../os-specific/linux/kernel/linux-rpi-3.6.nix) { - inherit fetchurl stdenv perl buildLinux; - }; - - linux_3_10 = makeOverridable (import ../os-specific/linux/kernel/linux-3.10.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; - }; - - linux_3_12 = makeOverridable (import ../os-specific/linux/kernel/linux-3.12.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; - }; - - linux_3_14 = makeOverridable (import ../os-specific/linux/kernel/linux-3.14.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; - }; - - linux_3_15 = makeOverridable (import ../os-specific/linux/kernel/linux-3.15.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; - }; - - linux_3_16 = makeOverridable (import ../os-specific/linux/kernel/linux-3.16.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; - }; - - linux_testing = makeOverridable (import ../os-specific/linux/kernel/linux-testing.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; - }; - - /* grsec configuration - - We build several flavors of 'default' grsec kernels. These are - built by default with Hydra. If the user selects a matching - 'default' flavor, then the pre-canned package set can be - chosen. Typically, users will make very basic choices like - 'security' + 'server' or 'performance' + 'desktop' with - virtualisation support. These will then be picked. - - Note: Xen guest kernels are included for e.g. NixOps deployments - to EC2, where Xen is the Hypervisor. - */ - - grFlavors = import ../build-support/grsecurity/flavors.nix; - - mkGrsecurity = opts: - (import ../build-support/grsecurity { - grsecOptions = opts; - inherit pkgs lib; - }); - - grKernel = opts: (mkGrsecurity opts).grsecKernel; - grPackage = opts: recurseIntoAttrs (mkGrsecurity opts).grsecPackage; - - # Stable kernels - linux_grsec_stable_desktop = grKernel grFlavors.linux_grsec_stable_desktop; - linux_grsec_stable_server = grKernel grFlavors.linux_grsec_stable_server; - linux_grsec_stable_server_xen = grKernel grFlavors.linux_grsec_stable_server_xen; - - # Testing kernels - linux_grsec_testing_desktop = grKernel grFlavors.linux_grsec_testing_desktop; - linux_grsec_testing_server = grKernel grFlavors.linux_grsec_testing_server; - linux_grsec_testing_server_xen = grKernel grFlavors.linux_grsec_testing_server_xen; - - /* Linux kernel modules are inherently tied to a specific kernel. So - rather than provide specific instances of those packages for a - specific kernel, we have a function that builds those packages - for a specific kernel. This function can then be called for - whatever kernel you're using. */ - - linuxPackagesFor = kernel: self: let callPackage = newScope self; in { - inherit kernel; - - acpi_call = callPackage ../os-specific/linux/acpi-call {}; - - batman_adv = callPackage ../os-specific/linux/batman-adv {}; - - bbswitch = callPackage ../os-specific/linux/bbswitch {}; - - ati_drivers_x11 = callPackage ../os-specific/linux/ati-drivers { }; - - blcr = callPackage ../os-specific/linux/blcr { }; - - cryptodev = callPackage ../os-specific/linux/cryptodev { }; - - cpupower = callPackage ../os-specific/linux/cpupower { }; - - e1000e = callPackage ../os-specific/linux/e1000e {}; - - v4l2loopback = callPackage ../os-specific/linux/v4l2loopback { }; - - frandom = callPackage ../os-specific/linux/frandom { }; - - ktap = callPackage ../os-specific/linux/ktap { }; - - lttng-modules = callPackage ../os-specific/linux/lttng-modules { }; - - broadcom_sta = callPackage ../os-specific/linux/broadcom-sta/default.nix { }; - - nvidiabl = callPackage ../os-specific/linux/nvidiabl { }; - - nvidia_x11 = callPackage ../os-specific/linux/nvidia-x11 { }; - - nvidia_x11_legacy173 = callPackage ../os-specific/linux/nvidia-x11/legacy173.nix { }; - nvidia_x11_legacy304 = callPackage ../os-specific/linux/nvidia-x11/legacy304.nix { }; - - openafsClient = callPackage ../servers/openafs-client { }; - - openiscsi = callPackage ../os-specific/linux/open-iscsi { }; - - wis_go7007 = callPackage ../os-specific/linux/wis-go7007 { }; - - kernelHeaders = callPackage ../os-specific/linux/kernel-headers { }; - - klibc = callPackage ../os-specific/linux/klibc { }; - - klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { }); - - - /* compiles but has to be integrated into the kernel somehow - Let's have it uncommented and finish it.. - */ - ndiswrapper = callPackage ../os-specific/linux/ndiswrapper { }; - - netatop = callPackage ../os-specific/linux/netatop { }; - - perf = callPackage ../os-specific/linux/kernel/perf.nix { }; - - psmouse_alps = callPackage ../os-specific/linux/psmouse-alps { }; - - spl = callPackage ../os-specific/linux/spl { }; - spl_git = callPackage ../os-specific/linux/spl/git.nix { }; - - sysdig = callPackage ../os-specific/linux/sysdig {}; - - tp_smapi = callPackage ../os-specific/linux/tp_smapi { }; - - v86d = callPackage ../os-specific/linux/v86d { }; - - virtualbox = callPackage ../applications/virtualization/virtualbox { - stdenv = stdenv_32bit; - inherit (gnome) libIDL; - enableExtensionPack = config.virtualbox.enableExtensionPack or false; - }; - - virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { }; - - zfs = callPackage ../os-specific/linux/zfs { }; - zfs_git = callPackage ../os-specific/linux/zfs/git.nix { }; - }; - - # The current default kernel / kernel modules. - linux = linuxPackages.kernel; - linuxPackages = linuxPackages_3_12; - - # Update this when adding the newest kernel major version! - linux_latest = pkgs.linux_3_16; - linuxPackages_latest = pkgs.linuxPackages_3_16; - - # Build the kernel modules for the some of the kernels. - linuxPackages_3_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_2 linuxPackages_3_2); - linuxPackages_3_4 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_4 linuxPackages_3_4); - linuxPackages_3_6_rpi = linuxPackagesFor pkgs.linux_3_6_rpi linuxPackages_3_6_rpi; - linuxPackages_3_10 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_10 linuxPackages_3_10); - linuxPackages_3_10_tuxonice = linuxPackagesFor pkgs.linux_3_10_tuxonice linuxPackages_3_10_tuxonice; - linuxPackages_3_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_12 linuxPackages_3_12); - linuxPackages_3_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_14 linuxPackages_3_14); - linuxPackages_3_15 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_15 linuxPackages_3_15); - linuxPackages_3_16 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_16 linuxPackages_3_16); - linuxPackages_testing = recurseIntoAttrs (linuxPackagesFor pkgs.linux_testing linuxPackages_testing); - - # grsecurity flavors - # Stable kernels - linuxPackages_grsec_stable_desktop = grPackage grFlavors.linux_grsec_stable_desktop; - linuxPackages_grsec_stable_server = grPackage grFlavors.linux_grsec_stable_server; - linuxPackages_grsec_stable_server_xen = grPackage grFlavors.linux_grsec_stable_server_xen; - - # Testing kernels - linuxPackages_grsec_testing_desktop = grPackage grFlavors.linux_grsec_testing_desktop; - linuxPackages_grsec_testing_server = grPackage grFlavors.linux_grsec_testing_server; - linuxPackages_grsec_testing_server_xen = grPackage grFlavors.linux_grsec_testing_server_xen; - - # A function to build a manually-configured kernel - linuxManualConfig = pkgs.buildLinux; - buildLinux = import ../os-specific/linux/kernel/manual-config.nix { - inherit (pkgs) stdenv runCommand nettools bc perl kmod writeTextFile ubootChooser; - }; - - keyutils = callPackage ../os-specific/linux/keyutils { }; - - libselinux = callPackage ../os-specific/linux/libselinux { }; - - libsemanage = callPackage ../os-specific/linux/libsemanage { }; - - libraw = callPackage ../development/libraries/libraw { }; - - libraw1394 = callPackage ../development/libraries/libraw1394 { }; - - libsexy = callPackage ../development/libraries/libsexy { }; - - libsepol = callPackage ../os-specific/linux/libsepol { }; - - libsmbios = callPackage ../os-specific/linux/libsmbios { }; - - lm_sensors = callPackage ../os-specific/linux/lm-sensors { }; - - lockdep = callPackage ../os-specific/linux/lockdep { }; - - lsiutil = callPackage ../os-specific/linux/lsiutil { }; - - kmod = callPackage ../os-specific/linux/kmod { }; - - kmod-blacklist-ubuntu = callPackage ../os-specific/linux/kmod-blacklist-ubuntu { }; - - kvm = qemu_kvm; - - libcap = callPackage ../os-specific/linux/libcap { }; - - libcap_progs = callPackage ../os-specific/linux/libcap/progs.nix { }; - - libcap_pam = callPackage ../os-specific/linux/libcap/pam.nix { }; - - libcap_manpages = callPackage ../os-specific/linux/libcap/man.nix { }; - - libcap_ng = callPackage ../os-specific/linux/libcap-ng { }; - - libnscd = callPackage ../os-specific/linux/libnscd { }; - - libnotify = callPackage ../development/libraries/libnotify { }; - - libvolume_id = callPackage ../os-specific/linux/libvolume_id { }; - - lsscsi = callPackage ../os-specific/linux/lsscsi { }; - - lvm2 = callPackage ../os-specific/linux/lvm2 { }; - - mdadm = callPackage ../os-specific/linux/mdadm { }; - - mingetty = callPackage ../os-specific/linux/mingetty { }; - - module_init_tools = callPackage ../os-specific/linux/module-init-tools { }; - - aggregateModules = modules: - callPackage ../os-specific/linux/kmod/aggregator.nix { - inherit modules; - }; - - multipath_tools = callPackage ../os-specific/linux/multipath-tools { }; - - musl = callPackage ../os-specific/linux/musl { }; - - nettools = callPackage ../os-specific/linux/net-tools { }; - - neverball = callPackage ../games/neverball { - libpng = libpng15; - }; - - nftables = callPackage ../os-specific/linux/nftables { }; - - numactl = callPackage ../os-specific/linux/numactl { }; - - gocode = callPackage ../development/tools/gocode { }; - - gogoclient = callPackage ../os-specific/linux/gogoclient { }; - - nss_ldap = callPackage ../os-specific/linux/nss_ldap { }; - - pam = callPackage ../os-specific/linux/pam { }; - - # pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader ) - - pam_ccreds = callPackage ../os-specific/linux/pam_ccreds { }; - - pam_console = callPackage ../os-specific/linux/pam_console { - libtool = libtool_1_5; - }; - - pam_devperm = callPackage ../os-specific/linux/pam_devperm { }; - - pam_krb5 = callPackage ../os-specific/linux/pam_krb5 { }; - - pam_ldap = callPackage ../os-specific/linux/pam_ldap { }; - - pam_login = callPackage ../os-specific/linux/pam_login { }; - - pam_ssh_agent_auth = callPackage ../os-specific/linux/pam_ssh_agent_auth { }; - - pam_usb = callPackage ../os-specific/linux/pam_usb { }; - - paxctl = callPackage ../os-specific/linux/paxctl { }; - - pax-utils = callPackage ../os-specific/linux/pax-utils { }; - - pcmciaUtils = callPackage ../os-specific/linux/pcmciautils { - firmware = config.pcmciaUtils.firmware or []; - config = config.pcmciaUtils.config or null; - }; - - plymouth = callPackage ../os-specific/linux/plymouth { - automake = automake113x; - }; - - pmount = callPackage ../os-specific/linux/pmount { }; - - pmutils = callPackage ../os-specific/linux/pm-utils { }; - - pmtools = callPackage ../os-specific/linux/pmtools { }; - - policycoreutils = callPackage ../os-specific/linux/policycoreutils { }; - - powertop = callPackage ../os-specific/linux/powertop { }; - - prayer = callPackage ../servers/prayer { }; - - procps = procps-ng; - - procps-old = lowPrio (callPackage ../os-specific/linux/procps { }); - - procps-ng = callPackage ../os-specific/linux/procps-ng { }; - - watch = callPackage ../os-specific/linux/procps/watch.nix { }; - - qemu_kvm = lowPrio (qemu.override { x86Only = true; }); - - firmwareLinuxNonfree = callPackage ../os-specific/linux/firmware/firmware-linux-nonfree { }; - - radeontools = callPackage ../os-specific/linux/radeontools { }; - - raspberrypifw = callPackage ../os-specific/linux/firmware/raspberrypi {}; - - regionset = callPackage ../os-specific/linux/regionset { }; - - rfkill = callPackage ../os-specific/linux/rfkill { }; - - rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { }; - - rtkit = callPackage ../os-specific/linux/rtkit { }; - - sdparm = callPackage ../os-specific/linux/sdparm { }; - - sepolgen = callPackage ../os-specific/linux/sepolgen { }; - - setools = callPackage ../os-specific/linux/setools { }; - - shadow = callPackage ../os-specific/linux/shadow { }; - - statifier = builderDefsPackage (import ../os-specific/linux/statifier) { }; - - sysdig = callPackage ../os-specific/linux/sysdig { - kernel = null; - }; # pkgs.sysdig is a client, for a driver look at linuxPackagesFor - - sysfsutils = callPackage ../os-specific/linux/sysfsutils { }; - - sysprof = callPackage ../development/tools/profiling/sysprof { - inherit (gnome) libglade; - }; - - # Provided with sysfsutils. - libsysfs = sysfsutils; - systool = sysfsutils; - - sysklogd = callPackage ../os-specific/linux/sysklogd { }; - - syslinux = callPackage ../os-specific/linux/syslinux { }; - - sysstat = callPackage ../os-specific/linux/sysstat { }; - - systemd = callPackage ../os-specific/linux/systemd { - linuxHeaders = linuxHeaders_3_14; - }; - - systemtap = callPackage ../development/tools/profiling/systemtap { - inherit (gnome) libglademm; - }; - - # In nixos, you can set systemd.package = pkgs.systemd_with_lvm2 to get - # LVM2 working in systemd. - systemd_with_lvm2 = pkgs.lib.overrideDerivation pkgs.systemd (p: { - name = p.name + "-with-lvm2"; - postInstall = p.postInstall + '' - cp "${pkgs.lvm2}/lib/systemd/system-generators/"* $out/lib/systemd/system-generators - ''; - }); - - sysvinit = callPackage ../os-specific/linux/sysvinit { }; - - sysvtools = callPackage ../os-specific/linux/sysvinit { - withoutInitTools = true; - }; - - # FIXME: `tcp-wrapper' is actually not OS-specific. - tcp_wrappers = callPackage ../os-specific/linux/tcp-wrappers { }; - - trackballs = callPackage ../games/trackballs { - debug = false; - guile = guile_1_8; - }; - - tunctl = callPackage ../os-specific/linux/tunctl { }; - - ubootChooser = name : if name == "upstream" then ubootUpstream - else if name == "sheevaplug" then ubootSheevaplug - else if name == "guruplug" then ubootGuruplug - else if name == "nanonote" then ubootNanonote - else throw "Unknown uboot"; - - ubootUpstream = callPackage ../misc/uboot { }; - - ubootSheevaplug = callPackage ../misc/uboot/sheevaplug.nix { }; - - ubootNanonote = callPackage ../misc/uboot/nanonote.nix { }; - - ubootGuruplug = callPackage ../misc/uboot/guruplug.nix { }; - - uclibc = callPackage ../os-specific/linux/uclibc { }; - - uclibcCross = lowPrio (callPackage ../os-specific/linux/uclibc { - inherit fetchurl stdenv libiconv; - linuxHeaders = linuxHeadersCross; - gccCross = gccCrossStageStatic; - cross = assert crossSystem != null; crossSystem; - }); - - udev145 = callPackage ../os-specific/linux/udev/145.nix { }; - udev = pkgs.systemd; - - udisks1 = callPackage ../os-specific/linux/udisks/1-default.nix { }; - udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { }; - udisks = udisks1; - - udisks_glue = callPackage ../os-specific/linux/udisks-glue { }; - - untie = callPackage ../os-specific/linux/untie { }; - - upower = callPackage ../os-specific/linux/upower { }; - - upower_99 = callPackage ../os-specific/linux/upower/0.99.nix { }; - - upstart = callPackage ../os-specific/linux/upstart { }; - - usbutils = callPackage ../os-specific/linux/usbutils { }; - - usermount = callPackage ../os-specific/linux/usermount { }; - - utillinux = lowPrio (callPackage ../os-specific/linux/util-linux { - ncurses = null; - perl = null; - }); - - utillinuxCurses = utillinux.override { - inherit ncurses perl; - }; - - v4l_utils = callPackage ../os-specific/linux/v4l-utils { - withQt4 = true; - }; - - windows = rec { - cygwinSetup = callPackage ../os-specific/windows/cygwin-setup { }; - - jom = callPackage ../os-specific/windows/jom { }; - - w32api = callPackage ../os-specific/windows/w32api { - gccCross = gccCrossStageStatic; - binutilsCross = binutilsCross; - }; - - w32api_headers = w32api.override { - onlyHeaders = true; - }; - - mingw_runtime = callPackage ../os-specific/windows/mingwrt { - gccCross = gccCrossMingw2; - binutilsCross = binutilsCross; - }; - - mingw_runtime_headers = mingw_runtime.override { - onlyHeaders = true; - }; - - mingw_headers1 = buildEnv { - name = "mingw-headers-1"; - paths = [ w32api_headers mingw_runtime_headers ]; - }; - - mingw_headers2 = buildEnv { - name = "mingw-headers-2"; - paths = [ w32api mingw_runtime_headers ]; - }; - - mingw_headers3 = buildEnv { - name = "mingw-headers-3"; - paths = [ w32api mingw_runtime ]; - }; - - mingw_w64 = callPackage ../os-specific/windows/mingw-w64 { - gccCross = gccCrossStageStatic; - binutilsCross = binutilsCross; - }; - - mingw_w64_headers = callPackage ../os-specific/windows/mingw-w64 { - onlyHeaders = true; - }; - - mingw_w64_pthreads = callPackage ../os-specific/windows/mingw-w64 { - onlyPthreads = true; - }; - - pthreads = callPackage ../os-specific/windows/pthread-w32 { - mingw_headers = mingw_headers3; - }; - - wxMSW = callPackage ../os-specific/windows/wxMSW-2.8 { }; - }; - - wesnoth = callPackage ../games/wesnoth { - lua = lua5; - }; - - wirelesstools = callPackage ../os-specific/linux/wireless-tools { }; - - wpa_supplicant = callPackage ../os-specific/linux/wpa_supplicant { }; - - wpa_supplicant_gui = callPackage ../os-specific/linux/wpa_supplicant/gui.nix { }; - - xf86_input_mtrack = callPackage ../os-specific/linux/xf86-input-mtrack { - inherit (xorg) utilmacros xproto inputproto xorgserver; - }; - - xf86_input_multitouch = - callPackage ../os-specific/linux/xf86-input-multitouch { }; - - xf86_input_wacom = callPackage ../os-specific/linux/xf86-input-wacom { }; - - xf86_video_nested = callPackage ../os-specific/linux/xf86-video-nested { - inherit (xorg) fontsproto renderproto utilmacros xorgserver; - }; - - xf86_video_nouveau = xorg.xf86videonouveau; - - xmoto = builderDefsPackage (import ../games/xmoto) { - inherit chipmunk sqlite curl zlib bzip2 libjpeg libpng - freeglut mesa SDL SDL_mixer SDL_image SDL_net SDL_ttf - lua5 ode libxdg_basedir libxml2; - }; - - xorg_sys_opengl = callPackage ../os-specific/linux/opengl/xorg-sys { }; - - zd1211fw = callPackage ../os-specific/linux/firmware/zd1211 { }; - - - ### DATA - - andagii = callPackage ../data/fonts/andagii {}; - - anonymousPro = callPackage ../data/fonts/anonymous-pro {}; - - arkpandora_ttf = builderDefsPackage (import ../data/fonts/arkpandora) { }; - - aurulent-sans = callPackage ../data/fonts/aurulent-sans { }; - - bakoma_ttf = callPackage ../data/fonts/bakoma-ttf { }; - - cacert = callPackage ../data/misc/cacert { }; - - cantarell_fonts = callPackage ../data/fonts/cantarell-fonts { }; - - comic-neue = callPackage ../data/fonts/comic-neue { }; - - corefonts = callPackage ../data/fonts/corefonts { }; - - wrapFonts = paths : ((import ../data/fonts/fontWrap) { - inherit fetchurl stdenv builderDefs paths; - inherit (xorg) mkfontdir mkfontscale; - }); - - clearlyU = callPackage ../data/fonts/clearlyU { }; - - cm_unicode = callPackage ../data/fonts/cm-unicode {}; - - dejavu_fonts = callPackage ../data/fonts/dejavu-fonts { - inherit (perlPackages) FontTTF; - }; - - docbook5 = callPackage ../data/sgml+xml/schemas/docbook-5.0 { }; - - docbook_sgml_dtd_31 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix { }; - - docbook_sgml_dtd_41 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix { }; - - docbook_xml_dtd_412 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix { }; - - docbook_xml_dtd_42 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix { }; - - docbook_xml_dtd_43 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix { }; - - docbook_xml_dtd_45 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix { }; - - docbook_xml_ebnf_dtd = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook-ebnf { }; - - docbook_xml_xslt = docbook_xsl; - - docbook_xsl = callPackage ../data/sgml+xml/stylesheets/xslt/docbook-xsl { }; - - docbook5_xsl = docbook_xsl_ns; - - docbook_xsl_ns = callPackage ../data/sgml+xml/stylesheets/xslt/docbook-xsl-ns { }; - - dosemu_fonts = callPackage ../data/fonts/dosemu-fonts { }; - - eb-garamond = callPackage ../data/fonts/eb-garamond { }; - - fira = callPackage ../data/fonts/fira { }; - - freefont_ttf = callPackage ../data/fonts/freefont-ttf { }; - - freepats = callPackage ../data/misc/freepats { }; - - gentium = callPackage ../data/fonts/gentium {}; - - gnome_user_docs = callPackage ../data/documentation/gnome-user-docs { }; - - inherit (gnome3) gsettings_desktop_schemas; - - hicolor_icon_theme = callPackage ../data/icons/hicolor-icon-theme { }; - - inconsolata = callPackage ../data/fonts/inconsolata {}; - - ipafont = callPackage ../data/fonts/ipafont {}; - - junicode = callPackage ../data/fonts/junicode { }; - - kochi-substitute = callPackage ../data/fonts/kochi-substitute {}; - - kochi-substitute-naga10 = callPackage ../data/fonts/kochi-substitute-naga10 {}; - - liberation_ttf = callPackage ../data/fonts/redhat-liberation-fonts { }; - - libertine = builderDefsPackage (import ../data/fonts/libertine) { - inherit fetchurl fontforge lib; - }; - - lmmath = callPackage ../data/fonts/lmodern/lmmath.nix {}; - - lmodern = callPackage ../data/fonts/lmodern { }; - - lohit-fonts = callPackage ../data/fonts/lohit-fonts { }; - - manpages = callPackage ../data/documentation/man-pages { }; - - miscfiles = callPackage ../data/misc/miscfiles { }; - - mobile_broadband_provider_info = callPackage ../data/misc/mobile-broadband-provider-info { }; - - mph_2b_damase = callPackage ../data/fonts/mph-2b-damase { }; - - nafees = callPackage ../data/fonts/nafees { }; - - oldstandard = callPackage ../data/fonts/oldstandard { }; - - opensans-ttf = callPackage ../data/fonts/opensans-ttf { }; - - poly = callPackage ../data/fonts/poly { }; - - posix_man_pages = callPackage ../data/documentation/man-pages-posix { }; - - pthreadmanpages = callPackage ../data/documentation/pthread-man-pages { }; - - shared_mime_info = callPackage ../data/misc/shared-mime-info { }; - - shared_desktop_ontologies = callPackage ../data/misc/shared-desktop-ontologies { }; - - stdmanpages = callPackage ../data/documentation/std-man-pages { }; - - symbola = callPackage ../data/fonts/symbola { }; - - iana_etc = callPackage ../data/misc/iana-etc { }; - - poppler_data = callPackage ../data/misc/poppler-data { }; - - r3rs = callPackage ../data/documentation/rnrs/r3rs.nix { }; - - r4rs = callPackage ../data/documentation/rnrs/r4rs.nix { }; - - r5rs = callPackage ../data/documentation/rnrs/r5rs.nix { }; - - source-code-pro = callPackage ../data/fonts/source-code-pro {}; - - source-sans-pro = callPackage ../data/fonts/source-sans-pro { }; - - source-serif-pro = callPackage ../data/fonts/source-serif-pro { }; - - source-han-sans-japanese = callPackage ../data/fonts/source-han-sans/japanese.nix {}; - source-han-sans-korean = callPackage ../data/fonts/source-han-sans/korean.nix {}; - source-han-sans-simplified-chinese = callPackage ../data/fonts/source-han-sans/simplified-chinese.nix {}; - source-han-sans-traditional-chinese = callPackage ../data/fonts/source-han-sans/traditional-chinese.nix {}; - - tango-icon-theme = callPackage ../data/icons/tango-icon-theme { }; - - themes = name: import (../data/misc/themes + ("/" + name + ".nix")) { - inherit fetchurl; - }; - - theano = callPackage ../data/fonts/theano { }; - - tempora_lgc = callPackage ../data/fonts/tempora-lgc { }; - - terminus_font = callPackage ../data/fonts/terminus-font { }; - - tipa = callPackage ../data/fonts/tipa { }; - - ttf_bitstream_vera = callPackage ../data/fonts/ttf-bitstream-vera { }; - - tzdata = callPackage ../data/misc/tzdata { }; - - ubuntu_font_family = callPackage ../data/fonts/ubuntu-font-family { }; - - ucsFonts = callPackage ../data/fonts/ucs-fonts { }; - - unifont = callPackage ../data/fonts/unifont { }; - - vistafonts = callPackage ../data/fonts/vista-fonts { }; - - wqy_microhei = callPackage ../data/fonts/wqy-microhei { }; - - wqy_zenhei = callPackage ../data/fonts/wqy-zenhei { }; - - xhtml1 = callPackage ../data/sgml+xml/schemas/xml-dtd/xhtml1 { }; - - xkeyboard_config = xorg.xkeyboardconfig; - - - ### APPLICATIONS - - a2jmidid = callPackage ../applications/audio/a2jmidid { }; - - aangifte2006 = callPackage_i686 ../applications/taxes/aangifte-2006 { }; - - aangifte2007 = callPackage_i686 ../applications/taxes/aangifte-2007 { }; - - aangifte2008 = callPackage_i686 ../applications/taxes/aangifte-2008 { }; - - aangifte2009 = callPackage_i686 ../applications/taxes/aangifte-2009 { }; - - aangifte2010 = callPackage_i686 ../applications/taxes/aangifte-2010 { }; - - aangifte2011 = callPackage_i686 ../applications/taxes/aangifte-2011 { }; - - aangifte2012 = callPackage_i686 ../applications/taxes/aangifte-2012 { }; - - aangifte2013 = callPackage_i686 ../applications/taxes/aangifte-2013 { }; - - abcde = callPackage ../applications/audio/abcde { - inherit (perlPackages) DigestSHA MusicBrainz MusicBrainzDiscID; - libcdio = libcdio082; - }; - - abiword = callPackage ../applications/office/abiword { - inherit (gnome) libglade libgnomecanvas; - }; - - abook = callPackage ../applications/misc/abook { }; - - adobe-reader = callPackage_i686 ../applications/misc/adobe-reader { }; - - aewan = callPackage ../applications/editors/aewan { }; - - alchemy = callPackage ../applications/graphics/alchemy { }; - - ams-lv2 = callPackage ../applications/audio/ams-lv2 { }; - - amsn = callPackage ../applications/networking/instant-messengers/amsn { }; - - antiword = callPackage ../applications/office/antiword {}; - - ardour = ardour3; - - ardour3 = lowPrio (callPackage ../applications/audio/ardour { - inherit (gnome) libgnomecanvas libgnomecanvasmm; - }); - - arora = callPackage ../applications/networking/browsers/arora { }; - - atom = callPackage ../applications/editors/atom { - gconf = gnome.GConf; - }; - - aseprite = callPackage ../applications/editors/aseprite { - giflib = giflib_4_1; - }; - - audacious = callPackage ../applications/audio/audacious { }; - - audacity = callPackage ../applications/audio/audacity { - ffmpeg = ffmpeg_0_10; - }; - - milkytracker = callPackage ../applications/audio/milkytracker { }; - - aumix = callPackage ../applications/audio/aumix { - gtkGUI = false; - }; - - autopanosiftc = callPackage ../applications/graphics/autopanosiftc { }; - - avidemux = callPackage ../applications/video/avidemux { }; - - avogadro = callPackage ../applications/science/chemistry/avogadro { - eigen = eigen2; - }; - - avrdudess = callPackage ../applications/misc/avrdudess { }; - - avxsynth = callPackage ../applications/video/avxsynth { }; - - awesome-3-4 = callPackage ../applications/window-managers/awesome/3.4.nix { - lua = lua5; - cairo = cairo.override { xcbSupport = true; }; - }; - awesome-3-5 = callPackage ../applications/window-managers/awesome { - lua = lua5_1; - cairo = cairo.override { xcbSupport = true; }; - }; - awesome = awesome-3-5; - - inherit (gnome3) baobab; - - backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { }; - - backintime-gnome = callPackage ../applications/networking/sync/backintime/gnome.nix { }; - - backintime = backintime-gnome; - - bar = callPackage ../applications/window-managers/bar { }; - - baresip = callPackage ../applications/networking/instant-messengers/baresip { - ffmpeg = ffmpeg_1; - }; - - batik = callPackage ../applications/graphics/batik { }; - - bazaar = callPackage ../applications/version-management/bazaar { }; - - bazaarTools = builderDefsPackage (import ../applications/version-management/bazaar/tools.nix) { - inherit bazaar; - }; - - beast = callPackage ../applications/audio/beast { - inherit (gnome) libgnomecanvas libart_lgpl; - guile = guile_1_8; - }; - - bibletime = callPackage ../applications/misc/bibletime { }; - - bitcoin = callPackage ../applications/misc/bitcoin {}; - bitcoind = callPackage ../applications/misc/bitcoin { gui = false; }; - - altcoins = recurseIntoAttrs ( - callPackage ../applications/misc/bitcoin/altcoins.nix {} - ); - - bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { - gnutls = gnutls; - libotr = libotr_3_2; - }; - - blender = callPackage ../applications/misc/blender { - python = python34; - }; - - bristol = callPackage ../applications/audio/bristol { }; - - bspwm = callPackage ../applications/window-managers/bspwm { }; - - bvi = callPackage ../applications/editors/bvi { }; - - calf = callPackage ../applications/audio/calf { - inherit (gnome) libglade; - }; - - calibre = callPackage ../applications/misc/calibre { - inherit (pythonPackages) pyqt5 sip_4_16; - }; - - camlistore = callPackage ../applications/misc/camlistore { }; - - carrier = builderDefsPackage (import ../applications/networking/instant-messengers/carrier/2.5.0.nix) { - inherit fetchurl stdenv pkgconfig perl perlXMLParser libxml2 openssl nss - gtkspell aspell gettext ncurses avahi dbus dbus_glib python - libtool automake autoconf gstreamer; - inherit gtk glib; - inherit (gnome) startupnotification GConf ; - inherit (xlibs) libXScrnSaver scrnsaverproto libX11 xproto kbproto; - }; - funpidgin = carrier; - - cc1394 = callPackage ../applications/video/cc1394 { }; - - cddiscid = callPackage ../applications/audio/cd-discid { }; - - cdparanoia = cdparanoiaIII; - - cdparanoiaIII = callPackage ../applications/audio/cdparanoia { }; - - cdrtools = callPackage ../applications/misc/cdrtools { }; - - centerim = callPackage ../applications/networking/instant-messengers/centerim { }; - - cgit = callPackage ../applications/version-management/git-and-tools/cgit { }; - - cgminer = callPackage ../applications/misc/cgminer { - amdappsdk = amdappsdk28; - }; - - chatzilla = callPackage ../applications/networking/irc/chatzilla { }; - - chromium = callPackage ../applications/networking/browsers/chromium { - channel = "stable"; - pulseSupport = config.pulseaudio or true; - enablePepperFlash = config.chromium.enablePepperFlash or false; - enablePepperPDF = config.chromium.enablePepperPDF or false; - }; - - chromiumBeta = lowPrio (chromium.override { channel = "beta"; }); - - chromiumDev = lowPrio (chromium.override { channel = "dev"; }); - - cinelerra = callPackage ../applications/video/cinelerra { }; - - clipit = callPackage ../applications/misc/clipit { }; - - cmus = callPackage ../applications/audio/cmus { }; - - compiz = callPackage ../applications/window-managers/compiz { - inherit (gnome) GConf ORBit2 metacity; - boost = boost149; # https://bugs.launchpad.net/compiz/+bug/1131864 - }; - - coriander = callPackage ../applications/video/coriander { - inherit (gnome) libgnomeui GConf; - }; - - csound = callPackage ../applications/audio/csound { }; - - cinepaint = callPackage ../applications/graphics/cinepaint { - fltk = fltk13; - libpng = libpng12; - }; - - codeblocks = callPackage ../applications/editors/codeblocks { }; - codeblocksFull = callPackage ../applications/editors/codeblocks { contribPlugins = true; }; - - codeville = builderDefsPackage (import ../applications/version-management/codeville/0.8.0.nix) { - inherit makeWrapper; - python = pythonFull; - }; - - comical = callPackage ../applications/graphics/comical { }; - - conkeror = callPackage ../applications/networking/browsers/conkeror { }; - - conkerorWrapper = wrapFirefox { - browser = conkeror; - browserName = "conkeror"; - desktopName = "Conkeror"; - }; - - cuneiform = builderDefsPackage (import ../tools/graphics/cuneiform) { - inherit cmake patchelf; - imagemagick = imagemagick; - }; - - cvs = callPackage ../applications/version-management/cvs { }; - - cvsps = callPackage ../applications/version-management/cvsps { }; - - cvs2svn = callPackage ../applications/version-management/cvs2svn { }; - - d4x = callPackage ../applications/misc/d4x { }; - - darcs = with haskellPackages_ghc783; callPackage ../applications/version-management/darcs { - cabal = cabal.override { - extension = self : super : { - isLibrary = false; - configureFlags = "-f-library " + super.configureFlags or ""; - }; - }; - }; - - darktable = callPackage ../applications/graphics/darktable { - inherit (gnome) GConf libglade; - }; - - dd-agent = callPackage ../tools/networking/dd-agent { inherit (pythonPackages) tornado; }; - - dia = callPackage ../applications/graphics/dia { - inherit (pkgs.gnome) libart_lgpl libgnomeui; - }; - - diffuse = callPackage ../applications/version-management/diffuse { }; - - distrho = callPackage ../applications/audio/distrho {}; - - djvulibre = callPackage ../applications/misc/djvulibre { }; - - djvu2pdf = callPackage ../tools/typesetting/djvu2pdf { }; - - djview = callPackage ../applications/graphics/djview { }; - djview4 = pkgs.djview; - - dmenu = callPackage ../applications/misc/dmenu { - enableXft = config.dmenu.enableXft or false; - }; - - dmtx = builderDefsPackage (import ../tools/graphics/dmtx) { - inherit libpng libtiff libjpeg imagemagick librsvg - pkgconfig bzip2 zlib libtool freetype fontconfig - ghostscript jasper xz; - inherit (xlibs) libX11; - }; - - docker = callPackage ../applications/virtualization/docker { }; - - doodle = callPackage ../applications/search/doodle { }; - - dunst = callPackage ../applications/misc/dunst { }; - - dvb_apps = callPackage ../applications/video/dvb-apps { }; - - dvdauthor = callPackage ../applications/video/dvdauthor { }; - - dwb = callPackage ../applications/networking/browsers/dwb { dconf = gnome3.dconf; }; - - dwbWrapper = wrapFirefox - { browser = dwb; browserName = "dwb"; desktopName = "dwb"; - }; - - dwm = callPackage ../applications/window-managers/dwm { - patches = config.dwm.patches or []; - }; - - dzen2 = callPackage ../applications/window-managers/dzen2 { }; - - eaglemode = callPackage ../applications/misc/eaglemode { }; - - eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { }); - - ed = callPackage ../applications/editors/ed { }; - - ekho = callPackage ../applications/audio/ekho { }; - - electrum = callPackage ../applications/misc/electrum { }; - - elinks = callPackage ../applications/networking/browsers/elinks { }; - - elvis = callPackage ../applications/editors/elvis { }; - - emacs = emacs24; - - emacs24 = callPackage ../applications/editors/emacs-24 { - # use override to enable additional features - libXaw = xlibs.libXaw; - Xaw3d = null; - gconf = null; - librsvg = null; - alsaLib = null; - imagemagick = null; - }; - - emacs24-nox = lowPrio (appendToName "nox" (emacs24.override { - withX = false; - })); - - emacs24Macport = lowPrio (callPackage ../applications/editors/emacs-24/macport.nix { - stdenv = pkgs.clangStdenv; - }); - - emacsPackages = emacs: self: let callPackage = newScope self; in rec { - inherit emacs; - - autoComplete = callPackage ../applications/editors/emacs-modes/auto-complete { }; - - bbdb = callPackage ../applications/editors/emacs-modes/bbdb { }; - - bbdb3 = callPackage ../applications/editors/emacs-modes/bbdb/3.nix {}; - - cedet = callPackage ../applications/editors/emacs-modes/cedet { }; - - calfw = callPackage ../applications/editors/emacs-modes/calfw { }; - - coffee = callPackage ../applications/editors/emacs-modes/coffee { }; - - colorTheme = callPackage ../applications/editors/emacs-modes/color-theme { }; - - colorThemeSolarized = callPackage ../applications/editors/emacs-modes/color-theme-solarized { }; - - cryptol = callPackage ../applications/editors/emacs-modes/cryptol { }; - - cua = callPackage ../applications/editors/emacs-modes/cua { }; - - darcsum = callPackage ../applications/editors/emacs-modes/darcsum { }; - - # ecb = callPackage ../applications/editors/emacs-modes/ecb { }; - - jabber = callPackage ../applications/editors/emacs-modes/jabber { }; - - emacsClangCompleteAsync = callPackage ../applications/editors/emacs-modes/emacs-clang-complete-async { }; - - emacsSessionManagement = callPackage ../applications/editors/emacs-modes/session-management-for-emacs { }; - - emacsw3m = callPackage ../applications/editors/emacs-modes/emacs-w3m { }; - - emms = callPackage ../applications/editors/emacs-modes/emms { }; - - ess = callPackage ../applications/editors/emacs-modes/ess { }; - - flymakeCursor = callPackage ../applications/editors/emacs-modes/flymake-cursor { }; - - gh = callPackage ../applications/editors/emacs-modes/gh { }; - - graphvizDot = callPackage ../applications/editors/emacs-modes/graphviz-dot { }; - - gist = callPackage ../applications/editors/emacs-modes/gist { }; - - idris = callPackage ../applications/editors/emacs-modes/idris { }; - - jade = callPackage ../applications/editors/emacs-modes/jade { }; - - jdee = callPackage ../applications/editors/emacs-modes/jdee { - # Requires Emacs 23, for `avl-tree'. - }; - - js2 = callPackage ../applications/editors/emacs-modes/js2 { }; - - stratego = callPackage ../applications/editors/emacs-modes/stratego { }; - - haskellMode = callPackage ../applications/editors/emacs-modes/haskell { }; - - ocamlMode = callPackage ../applications/editors/emacs-modes/ocaml { }; - - structuredHaskellMode = callPackage ../applications/editors/emacs-modes/structured-haskell-mode { - inherit (haskellPackages) cabal haskellSrcExts; - }; - - tuaregMode = callPackage ../applications/editors/emacs-modes/tuareg { }; - - hol_light_mode = callPackage ../applications/editors/emacs-modes/hol_light { }; - - htmlize = callPackage ../applications/editors/emacs-modes/htmlize { }; - - logito = callPackage ../applications/editors/emacs-modes/logito { }; - - loremIpsum = callPackage ../applications/editors/emacs-modes/lorem-ipsum { }; - - magit = callPackage ../applications/editors/emacs-modes/magit { }; - - maudeMode = callPackage ../applications/editors/emacs-modes/maude { }; - - metaweblog = callPackage ../applications/editors/emacs-modes/metaweblog { }; - - notmuch = lowPrio (callPackage ../applications/networking/mailreaders/notmuch { }); - - offlineimap = callPackage ../applications/editors/emacs-modes/offlineimap {}; - - # This is usually a newer version of Org-Mode than that found in GNU Emacs, so - # we want it to have higher precedence. - org = hiPrio (callPackage ../applications/editors/emacs-modes/org { }); - - org2blog = callPackage ../applications/editors/emacs-modes/org2blog { }; - - pcache = callPackage ../applications/editors/emacs-modes/pcache { }; - - phpMode = callPackage ../applications/editors/emacs-modes/php { }; - - prologMode = callPackage ../applications/editors/emacs-modes/prolog { }; - - proofgeneral_4_2 = callPackage ../applications/editors/emacs-modes/proofgeneral/4.2.nix { - texinfo = texinfo4 ; - texLive = pkgs.texLiveAggregationFun { - paths = [ pkgs.texLive pkgs.texLiveCMSuper ]; - }; - }; - proofgeneral_4_3_pre = callPackage ../applications/editors/emacs-modes/proofgeneral/4.3pre.nix { - texinfo = texinfo4 ; - texLive = pkgs.texLiveAggregationFun { - paths = [ pkgs.texLive pkgs.texLiveCMSuper ]; - }; - }; - proofgeneral = self.proofgeneral_4_2; - - quack = callPackage ../applications/editors/emacs-modes/quack { }; - - rectMark = callPackage ../applications/editors/emacs-modes/rect-mark { }; - - remember = callPackage ../applications/editors/emacs-modes/remember { }; - - rudel = callPackage ../applications/editors/emacs-modes/rudel { }; - - sbtMode = callPackage ../applications/editors/emacs-modes/sbt-mode { }; - - scalaMode1 = callPackage ../applications/editors/emacs-modes/scala-mode/v1.nix { }; - scalaMode2 = callPackage ../applications/editors/emacs-modes/scala-mode/v2.nix { }; - - sunriseCommander = callPackage ../applications/editors/emacs-modes/sunrise-commander { }; - - writeGood = callPackage ../applications/editors/emacs-modes/writegood { }; - - xmlRpc = callPackage ../applications/editors/emacs-modes/xml-rpc { }; - }; - - emacs24Packages = recurseIntoAttrs (emacsPackages emacs24 pkgs.emacs24Packages); - - inherit (gnome3) empathy; - - epdfview = callPackage ../applications/misc/epdfview { }; - - inherit (gnome3) epiphany; - - espeak = callPackage ../applications/audio/espeak { }; - - espeakedit = callPackage ../applications/audio/espeak/edit.nix { }; - - esniper = callPackage ../applications/networking/esniper { }; - - etherape = callPackage ../applications/networking/sniffers/etherape { - inherit (gnome) gnomedocutils libgnome libglade libgnomeui scrollkeeper; - }; - - evilvte = callPackage ../applications/misc/evilvte { - configH = config.evilvte.config or ""; - }; - - evopedia = callPackage ../applications/misc/evopedia { }; - - keepassx = callPackage ../applications/misc/keepassx { }; - keepassx2 = callPackage ../applications/misc/keepassx/2.0.nix { }; - - inherit (gnome3) evince; - evolution_data_server = gnome3.evolution_data_server; - - keepass = callPackage ../applications/misc/keepass { }; - - exrdisplay = callPackage ../applications/graphics/exrdisplay { - fltk = fltk20; - }; - - fbpanel = callPackage ../applications/window-managers/fbpanel { }; - - fbreader = callPackage ../applications/misc/fbreader { }; - - fetchmail = import ../applications/misc/fetchmail { - inherit stdenv fetchurl openssl; - }; - - fldigi = callPackage ../applications/audio/fldigi { }; - - fluidsynth = callPackage ../applications/audio/fluidsynth { }; - - fossil = callPackage ../applications/version-management/fossil { }; - - fribid = callPackage ../applications/networking/browsers/mozilla-plugins/fribid { }; - - fvwm = callPackage ../applications/window-managers/fvwm { }; - - geany = callPackage ../applications/editors/geany { }; - - gksu = callPackage ../applications/misc/gksu { }; - - gnuradio = callPackage ../applications/misc/gnuradio { - inherit (pythonPackages) lxml numpy scipy matplotlib pyopengl; - fftw = fftwFloat; - }; - - gnuradio-osmosdr = callPackage ../applications/misc/gnuradio-osmosdr { }; - - goldendict = callPackage ../applications/misc/goldendict { }; - - google-musicmanager = callPackage ../applications/audio/google-musicmanager { }; - - gpicview = callPackage ../applications/graphics/gpicview { }; - - gqrx = callPackage ../applications/misc/gqrx { }; - - grass = import ../applications/misc/grass { - inherit (xlibs) libXmu libXext libXp libX11 libXt libSM libICE libXpm - libXaw libXrender; - inherit config composableDerivation stdenv fetchurl - lib flex bison cairo fontconfig - gdal zlib ncurses gdbm proj pkgconfig swig - blas liblapack libjpeg libpng mysql unixODBC mesa postgresql python - readline sqlite tcl tk libtiff freetype makeWrapper wxGTK; - fftw = fftwSinglePrec; - ffmpeg = ffmpeg_0_10; - motif = lesstif; - opendwg = libdwg; - wxPython = wxPython28; - }; - - grip = callPackage ../applications/misc/grip { - inherit (gnome) libgnome libgnomeui vte; - }; - - gtimelog = pythonPackages.gtimelog; - - inherit (gnome3) gucharmap; - - guitarix = callPackage ../applications/audio/guitarix { - fftw = fftwSinglePrec; - }; - - photivo = callPackage ../applications/graphics/photivo { }; - - wavesurfer = callPackage ../applications/misc/audio/wavesurfer { }; - - wireshark = callPackage ../applications/networking/sniffers/wireshark { }; - - wvdial = callPackage ../os-specific/linux/wvdial { }; - - fbida = callPackage ../applications/graphics/fbida { }; - - fdupes = callPackage ../tools/misc/fdupes { }; - - feh = callPackage ../applications/graphics/feh { }; - - filezilla = callPackage ../applications/networking/ftp/filezilla { }; - - firefox13Pkgs = callPackage ../applications/networking/browsers/firefox/13.0.nix { - inherit (gnome) libIDL; - }; - - firefox13Wrapper = wrapFirefox { browser = firefox13Pkgs.firefox; }; - - firefox30Pkgs = callPackage ../applications/networking/browsers/firefox/30.nix { - inherit (gnome) libIDL; - inherit (pythonPackages) pysqlite; - libpng = libpng_apng; - }; - - firefox = callPackage ../applications/networking/browsers/firefox { - inherit (gnome) libIDL; - inherit (pythonPackages) pysqlite; - }; - - firefoxWrapper = wrapFirefox { browser = pkgs.firefox; }; - - firefox-bin = callPackage ../applications/networking/browsers/firefox-bin { - gconf = pkgs.gnome.GConf; - inherit (pkgs.gnome) libgnome libgnomeui; - inherit (pkgs.xlibs) libX11 libXScrnSaver libXext - libXinerama libXrender libXt; - }; - - flac = callPackage ../applications/audio/flac { }; - - flashplayer = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-11 { - debug = config.flashplayer.debug or false; - }; - - fluxbox = callPackage ../applications/window-managers/fluxbox { }; - - freecad = callPackage ../applications/graphics/freecad { - opencascade = opencascade_6_5; - inherit (pythonPackages) matplotlib pycollada; - }; - - freemind = callPackage ../applications/misc/freemind { - jdk = jdk; - jre = jdk; - }; - - freenet = callPackage ../applications/networking/p2p/freenet { }; - - freepv = callPackage ../applications/graphics/freepv { }; - - xfontsel = callPackage ../applications/misc/xfontsel { }; - xlsfonts = callPackage ../applications/misc/xlsfonts { }; - - freerdp = callPackage ../applications/networking/remote/freerdp { - ffmpeg = ffmpeg_1; - }; - - freerdpUnstable = callPackage ../applications/networking/remote/freerdp/unstable.nix { }; - - freicoin = callPackage ../applications/misc/freicoin { }; - - fspot = callPackage ../applications/graphics/f-spot { - inherit (gnome) libgnome libgnomeui; - gtksharp = gtksharp1; - }; - - fuze = callPackage ../applications/networking/instant-messengers/fuze {}; - - gcolor2 = callPackage ../applications/graphics/gcolor2 { }; - - get_iplayer = callPackage ../applications/misc/get_iplayer {}; - - gimp_2_8 = callPackage ../applications/graphics/gimp/2.8.nix { - inherit (gnome) libart_lgpl; - webkit = null; - lcms = lcms2; - wrapPython = pythonPackages.wrapPython; - }; - - gimp = gimp_2_8; - - gimpPlugins = recurseIntoAttrs (import ../applications/graphics/gimp/plugins { - inherit pkgs gimp; - }); - - gitAndTools = recurseIntoAttrs (import ../applications/version-management/git-and-tools { - inherit pkgs; - }); - git = gitAndTools.git; - gitFull = gitAndTools.gitFull; - gitSVN = gitAndTools.gitSVN; - - gitRepo = callPackage ../applications/version-management/git-repo { - python = python27; - }; - - gitolite = callPackage ../applications/version-management/gitolite { }; - - inherit (gnome3) gitg; - - giv = callPackage ../applications/graphics/giv { - pcre = pcre.override { unicodeSupport = true; }; - }; - - gmrun = callPackage ../applications/misc/gmrun {}; - - gnucash = callPackage ../applications/office/gnucash { - inherit (gnome2) libgnomeui libgtkhtml gtkhtml libbonoboui libgnomeprint libglade libart_lgpl; - gconf = gnome2.GConf; - guile = guile_1_8; - slibGuile = slibGuile.override { scheme = guile_1_8; }; - goffice = goffice_0_8; - }; - - goffice_0_8 = callPackage ../desktops/gnome-3/3.10/misc/goffice/0.8.nix { - inherit (gnome2) libglade libgnomeui; - gconf = gnome2.GConf; - libart = gnome2.libart_lgpl; - }; # latest version: gnome3.goffice - - ideas = recurseIntoAttrs ( (callPackage ../applications/editors/idea { }) - // (callPackage ../applications/editors/idea/pycharm.nix { })); - - libquvi = callPackage ../applications/video/quvi/library.nix { }; - - mi2ly = callPackage ../applications/audio/mi2ly {}; - - praat = callPackage ../applications/audio/praat { }; - - quvi = callPackage ../applications/video/quvi/tool.nix { }; - - quvi_scripts = callPackage ../applications/video/quvi/scripts.nix { }; - - qjackctl = callPackage ../applications/audio/qjackctl { }; - - gkrellm = callPackage ../applications/misc/gkrellm { }; - - gmu = callPackage ../applications/audio/gmu { }; - - gnash = callPackage ../applications/video/gnash { - inherit (gnome) gtkglext; - }; - - gnome_mplayer = callPackage ../applications/video/gnome-mplayer { - inherit (gnome) GConf; - }; - - gnumeric = callPackage ../applications/office/gnumeric { - inherit (gnome3) goffice gnome_icon_theme; - }; - - gnunet = callPackage ../applications/networking/p2p/gnunet { - libgcrypt = libgcrypt_1_6; - }; - - gnunet_svn = lowPrio (callPackage ../applications/networking/p2p/gnunet/svn.nix { - libgcrypt = libgcrypt_1_6; - }); - - gocr = callPackage ../applications/graphics/gocr { }; - - gobby5 = callPackage ../applications/editors/gobby { - inherit (gnome) gtksourceview; - }; - - gphoto2 = callPackage ../applications/misc/gphoto2 { }; - - gphoto2fs = builderDefsPackage ../applications/misc/gphoto2/gphotofs.nix { - inherit libgphoto2 fuse pkgconfig glib libtool; - }; - - graphicsmagick = callPackage ../applications/graphics/graphicsmagick { }; - graphicsmagick_q16 = callPackage ../applications/graphics/graphicsmagick { quantumdepth = 16; }; - - graphicsmagick137 = callPackage ../applications/graphics/graphicsmagick/1.3.7.nix { - libpng = libpng12; - }; - - gtkpod = callPackage ../applications/audio/gtkpod { - inherit (gnome) libglade; - }; - - jbidwatcher = callPackage ../applications/misc/jbidwatcher { - java = if stdenv.isLinux then jre else jdk; - }; - - qrdecode = builderDefsPackage (import ../tools/graphics/qrdecode) { - libpng = libpng12; - opencv = opencv_2_1; - }; - - qrencode = callPackage ../tools/graphics/qrencode { }; - - gecko_mediaplayer = callPackage ../applications/networking/browsers/mozilla-plugins/gecko-mediaplayer { - inherit (gnome) GConf; - browser = firefox; - }; - - geeqie = callPackage ../applications/graphics/geeqie { }; - - gigedit = callPackage ../applications/audio/gigedit { }; - - gqview = callPackage ../applications/graphics/gqview { }; - - gmpc = callPackage ../applications/audio/gmpc { }; - - gmtk = callPackage ../applications/networking/browsers/mozilla-plugins/gmtk { - inherit (gnome) GConf; - }; - - googleearth = callPackage_i686 ../applications/misc/googleearth { }; - - google_talk_plugin = callPackage ../applications/networking/browsers/mozilla-plugins/google-talk-plugin { - libpng = libpng12; - }; - - gosmore = builderDefsPackage ../applications/misc/gosmore { - inherit fetchsvn curl pkgconfig libxml2 gtk; - }; - - gpsbabel = callPackage ../applications/misc/gpsbabel { }; - - gpscorrelate = callPackage ../applications/misc/gpscorrelate { }; - - gpsd = callPackage ../servers/gpsd { }; - - guitone = callPackage ../applications/version-management/guitone { - graphviz = graphviz_2_32; - }; - - gv = callPackage ../applications/misc/gv { }; - - guvcview = callPackage ../os-specific/linux/guvcview { }; - - hello = callPackage ../applications/misc/hello/ex-2 { }; - - herbstluftwm = callPackage ../applications/window-managers/herbstluftwm { }; - - hexchat = callPackage ../applications/networking/irc/hexchat { }; - - hexedit = callPackage ../applications/editors/hexedit { }; - - hipchat = callPackage ../applications/networking/instant-messengers/hipchat { }; - - homebank = callPackage ../applications/office/homebank { }; - - htmldoc = callPackage ../applications/misc/htmldoc { - fltk = fltk13; - }; - - hugin = callPackage ../applications/graphics/hugin { }; - - hydrogen = callPackage ../applications/audio/hydrogen { }; - - i3 = callPackage ../applications/window-managers/i3 { }; - - i3lock = callPackage ../applications/window-managers/i3/lock.nix { - inherit (xorg) libxkbfile; - cairo = cairo.override { xcbSupport = true; }; - }; - - i3minator = callPackage ../tools/misc/i3minator { }; - - i3status = callPackage ../applications/window-managers/i3/status.nix { }; - - i810switch = callPackage ../os-specific/linux/i810switch { }; - - icewm = callPackage ../applications/window-managers/icewm { }; - - id3v2 = callPackage ../applications/audio/id3v2 { }; - - ifenslave = callPackage ../os-specific/linux/ifenslave { }; - - ii = callPackage ../applications/networking/irc/ii { }; - - ike = callPackage ../applications/ike { }; - - ikiwiki = callPackage ../applications/misc/ikiwiki { - inherit (perlPackages) TextMarkdown URI HTMLParser HTMLScrubber - HTMLTemplate TimeDate CGISession DBFile CGIFormBuilder LocaleGettext - RpcXML XMLSimple PerlMagick YAML YAMLLibYAML HTMLTree Filechdir - AuthenPassphrase NetOpenIDConsumer LWPxParanoidAgent CryptSSLeay; - }; - - imagemagick = callPackage ../applications/graphics/ImageMagick { - tetex = null; - librsvg = null; - }; - - imagemagickBig = lowPrio (callPackage ../applications/graphics/ImageMagick { }); - - # Impressive, formerly known as "KeyJNote". - impressive = callPackage ../applications/office/impressive { - # XXX These are the PyOpenGL dependencies, which we need here. - inherit (pythonPackages) pyopengl; - }; - - inferno = callPackage_i686 ../applications/inferno { }; - - inkscape = callPackage ../applications/graphics/inkscape { - inherit (pythonPackages) lxml; - lcms = lcms2; - }; - - ion3 = callPackage ../applications/window-managers/ion-3 { - lua = lua5; - }; - - ipe = callPackage ../applications/graphics/ipe { }; - - iptraf = callPackage ../applications/networking/iptraf { }; - - irssi = callPackage ../applications/networking/irc/irssi { - # compile with gccApple on darwin to support the -no-cpp-precompile flag - stdenv = if stdenv.isDarwin - then stdenvAdapters.overrideGCC stdenv gccApple - else stdenv; - }; - - irssi_fish = callPackage ../applications/networking/irc/irssi/fish { }; - - irssi_otr = callPackage ../applications/networking/irc/irssi/otr { }; - - bip = callPackage ../applications/networking/irc/bip { }; - - jack_capture = callPackage ../applications/audio/jack-capture { }; - - jack_oscrolloscope = callPackage ../applications/audio/jack-oscrolloscope { }; - - jack_rack = callPackage ../applications/audio/jack-rack { }; - - jackmeter = callPackage ../applications/audio/jackmeter { }; - - jalv = callPackage ../applications/audio/jalv { }; - - jedit = callPackage ../applications/editors/jedit { }; - - jigdo = callPackage ../applications/misc/jigdo { }; - - jitsi = callPackage ../applications/networking/instant-messengers/jitsi { }; - - joe = callPackage ../applications/editors/joe { }; - - jbrout = callPackage ../applications/graphics/jbrout { - inherit (pythonPackages) lxml; - }; - - jwm = callPackage ../applications/window-managers/jwm { }; - - k3d = callPackage ../applications/graphics/k3d { - inherit (pkgs.gnome2) gtkglext; - }; - - keepnote = callPackage ../applications/office/keepnote { - pygtk = pyGtkGlade; - }; - - kermit = callPackage ../tools/misc/kermit { }; - - keymon = callPackage ../applications/video/key-mon { }; - - kino = callPackage ../applications/video/kino { - inherit (gnome) libglade; - }; - - koji = callPackage ../tools/package-management/koji { }; - - lame = callPackage ../applications/audio/lame { }; - - larswm = callPackage ../applications/window-managers/larswm { }; - - lash = callPackage ../applications/audio/lash { }; - - ladspaH = callPackage ../applications/audio/ladspa-plugins/ladspah.nix { }; - - ladspaPlugins = callPackage ../applications/audio/ladspa-plugins { - fftw = fftwSinglePrec; - }; - - caps = callPackage ../applications/audio/caps { }; - - lastwatch = callPackage ../applications/audio/lastwatch { }; - - lastfmsubmitd = callPackage ../applications/audio/lastfmsubmitd { }; - - lbdb = callPackage ../tools/misc/lbdb { }; - - lci = callPackage ../applications/science/logic/lci {}; - - ldcpp = callPackage ../applications/networking/p2p/ldcpp { - inherit (gnome) libglade; - }; - - librecad = callPackage ../applications/misc/librecad { }; - - librecad2 = callPackage ../applications/misc/librecad/2.0.nix { }; - - libreoffice = callPackage ../applications/office/libreoffice { - inherit (perlPackages) ArchiveZip CompressZlib; - inherit (gnome) GConf ORBit2 gnome_vfs; - zip = zip.override { enableNLS = false; }; - boost = boost155; - jdk = openjdk; - fontsConf = makeFontsConf { - fontDirectories = [ - freefont_ttf xorg.fontmiscmisc xorg.fontbhttf - ]; - }; - clucene_core = clucene_core_2; - lcms = lcms2; - harfbuzz = harfbuzz.override { - withIcu = true; withGraphite2 = true; - }; - }; - - liferea = callPackage ../applications/networking/newsreaders/liferea { }; - - lingot = callPackage ../applications/audio/lingot { - inherit (gnome) libglade; - }; - - links = callPackage ../applications/networking/browsers/links { }; - - ledger = callPackage ../applications/office/ledger/2.6.3.nix { }; - ledger3 = callPackage ../applications/office/ledger/3.0.nix { }; - - lighttable = callPackage ../applications/editors/lighttable {}; - - links2 = callPackage ../applications/networking/browsers/links2 { }; - - linphone = callPackage ../applications/networking/instant-messengers/linphone rec { - inherit (gnome) libglade; - libexosip = libexosip_3; - libosip = libosip_3; - }; - - linuxsampler = callPackage ../applications/audio/linuxsampler { - bison = bison2; - }; - - llpp = callPackage ../applications/misc/llpp { inherit (ocamlPackages) lablgl; }; - - lmms = callPackage ../applications/audio/lmms { }; - - lrzsz = callPackage ../tools/misc/lrzsz { }; - - luminanceHDR = callPackage ../applications/graphics/luminance-hdr { }; - - lxdvdrip = callPackage ../applications/video/lxdvdrip { }; - - handbrake = callPackage ../applications/video/handbrake { }; - - lilyterm = callPackage ../applications/misc/lilyterm { - inherit (gnome) vte; - gtk = gtk2; - }; - - lynx = callPackage ../applications/networking/browsers/lynx { }; - - lyx = callPackage ../applications/misc/lyx { }; - - makeself = callPackage ../applications/misc/makeself { }; - - matchbox = callPackage ../applications/window-managers/matchbox { }; - - mcpp = callPackage ../development/compilers/mcpp { }; - - mda_lv2 = callPackage ../applications/audio/mda-lv2 { }; - - meld = callPackage ../applications/version-management/meld { - inherit (gnome) scrollkeeper; - pygtk = pyGtkGlade; - }; - - mcomix = callPackage ../applications/graphics/mcomix { }; - - mercurial = callPackage ../applications/version-management/mercurial { - inherit (pythonPackages) curses docutils; - guiSupport = false; # use mercurialFull to get hgk GUI - }; - - mercurialFull = appendToName "full" (pkgs.mercurial.override { guiSupport = true; }); - - merkaartor = callPackage ../applications/misc/merkaartor { }; - - meshlab = callPackage ../applications/graphics/meshlab { }; - - mhwaveedit = callPackage ../applications/audio/mhwaveedit {}; - - mid2key = callPackage ../applications/audio/mid2key { }; - - midori = callPackage ../applications/networking/browsers/midori { }; - - midoriWrapper = wrapFirefox - { browser = midori; browserName = "midori"; desktopName = "Midori"; - icon = "${midori}/share/icons/hicolor/22x22/apps/midori.png"; - }; - - mikmod = callPackage ../applications/audio/mikmod { }; - - minicom = callPackage ../tools/misc/minicom { }; - - minimodem = callPackage ../applications/audio/minimodem { }; - - minidjvu = callPackage ../applications/graphics/minidjvu { }; - - mirage = callPackage ../applications/graphics/mirage {}; - - mixxx = callPackage ../applications/audio/mixxx { - inherit (vamp) vampSDK; - }; - - mmex = callPackage ../applications/office/mmex { }; - - moc = callPackage ../applications/audio/moc { }; - - monkeysAudio = callPackage ../applications/audio/monkeys-audio { }; - - monodevelop = callPackage ../applications/editors/monodevelop { - inherit (gnome) gnome_vfs libbonobo libglade libgnome GConf; - mozilla = firefox; - gtksharp = gtksharp2; - }; - - monodoc = callPackage ../applications/editors/monodoc { - gtksharp = gtksharp1; - }; - - monotone = callPackage ../applications/version-management/monotone { - lua = lua5; - boost = boost149; - }; - - monotoneViz = builderDefsPackage (import ../applications/version-management/monotone-viz/mtn-head.nix) { - inherit ocaml graphviz pkgconfig autoconf automake libtool glib gtk; - inherit (ocamlPackages) lablgtk; - inherit (gnome) libgnomecanvas; - }; - - mopidy = callPackage ../applications/audio/mopidy { }; - - mopidy-spotify = callPackage ../applications/audio/mopidy-spotify { }; - - mopidy-moped = callPackage ../applications/audio/mopidy-moped { }; - - mozilla = callPackage ../applications/networking/browsers/mozilla { - inherit (gnome) libIDL; - }; - - mozplugger = builderDefsPackage (import ../applications/networking/browsers/mozilla-plugins/mozplugger) { - inherit firefox; - inherit (xlibs) libX11 xproto; - }; - - easytag = callPackage ../applications/audio/easytag { }; - - mp3info = callPackage ../applications/audio/mp3info { }; - - mp3splt = callPackage ../applications/audio/mp3splt { }; - - mpc123 = callPackage ../applications/audio/mpc123 { }; - - mpg123 = callPackage ../applications/audio/mpg123 { }; - - mpg321 = callPackage ../applications/audio/mpg321 { }; - - mpc_cli = callPackage ../applications/audio/mpc { }; - - ncmpc = callPackage ../applications/audio/ncmpc { }; - - ncmpcpp = callPackage ../applications/audio/ncmpcpp { }; - - normalize = callPackage ../applications/audio/normalize { }; - - mplayer = callPackage ../applications/video/mplayer { - pulseSupport = config.pulseaudio or false; - vdpauSupport = config.mplayer.vdpauSupport or false; - }; - - mplayer2 = callPackage ../applications/video/mplayer2 { - ffmpeg = libav_9; # see https://trac.macports.org/ticket/44386 - }; - - MPlayerPlugin = browser: - import ../applications/networking/browsers/mozilla-plugins/mplayerplug-in { - inherit browser; - inherit fetchurl stdenv pkgconfig gettext; - inherit (xlibs) libXpm; - # !!! should depend on MPlayer - }; - - mpv = callPackage ../applications/video/mpv { - lua = lua5_1; - bs2bSupport = config.mpv.bs2bSupport or true; - quviSupport = config.mpv.quviSupport or false; - cacaSupport = config.mpv.cacaSupport or true; - vaapiSupport = config.mpv.vaapiSupport or false; - }; - - mrxvt = callPackage ../applications/misc/mrxvt { }; - - multisync = callPackage ../applications/misc/multisync { - inherit (gnome) ORBit2 libbonobo libgnomeui GConf; - }; - - mumble = callPackage ../applications/networking/mumble { - avahi = avahi.override { - withLibdnssdCompat = true; - }; - jackSupport = config.mumble.jackSupport or false; - speechdSupport = config.mumble.speechdSupport or false; - }; - - murmur = callPackage ../applications/networking/mumble/murmur.nix { - avahi = avahi.override { - withLibdnssdCompat = true; - }; - iceSupport = config.murmur.iceSupport or true; - }; - - mutt = callPackage ../applications/networking/mailreaders/mutt { }; - - namecoin = callPackage ../applications/misc/namecoin { }; - namecoinqt = callPackage ../applications/misc/namecoin/qt.nix { }; - - pcmanfm = callPackage ../applications/misc/pcmanfm { }; - - ruby_gpgme = callPackage ../development/libraries/ruby_gpgme { - ruby = ruby19; - hoe = rubyLibs.hoe; - }; - - ruby_ncursesw_sup = callPackage ../development/libraries/ruby_ncursesw_sup { }; - - shotcut = callPackage ../applications/video/shotcut { mlt = mlt-qt5; }; - - smplayer = callPackage ../applications/video/smplayer { }; - - sup = with rubyLibs; callPackage ../applications/networking/mailreaders/sup { - ruby = ruby19.override { - cursesSupport = true; - }; - - inherit gettext highline iconv locale lockfile - text trollop xapian_ruby which; - - rmail_sup = ""; # missing - unicode = ""; - - # See https://github.com/NixOS/nixpkgs/issues/1804 and - # https://github.com/NixOS/nixpkgs/issues/2146 - bundler = pkgs.lib.overrideDerivation pkgs.rubyLibs.bundler ( - oldAttrs: { - dontPatchShebangs = 1; - } - ); - chronic = chronic; - gpgme = ruby_gpgme; - mime_types = mime_types; - ncursesw_sup = ruby_ncursesw_sup; - rake = rake; - }; - - synfigstudio = callPackage ../applications/graphics/synfigstudio { - fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; - }; - - sxhkd = callPackage ../applications/window-managers/sxhkd { }; - - msmtp = callPackage ../applications/networking/msmtp { }; - - imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix { - lua = lua5; - }; - - mupdf = callPackage ../applications/misc/mupdf { }; - - mypaint = callPackage ../applications/graphics/mypaint { }; - - mythtv = callPackage ../applications/video/mythtv { }; - - tvtime = callPackage ../applications/video/tvtime { - kernel = linux; - }; - - nano = callPackage ../applications/editors/nano { }; - - nanoblogger = callPackage ../applications/misc/nanoblogger { }; - - navipowm = callPackage ../applications/misc/navipowm { }; - - navit = callPackage ../applications/misc/navit { }; - - netbeans = callPackage ../applications/editors/netbeans { }; - - ncdu = callPackage ../tools/misc/ncdu { }; - - ncdc = callPackage ../applications/networking/p2p/ncdc { }; - - nedit = callPackage ../applications/editors/nedit { - motif = lesstif; - }; - - netsurfBrowser = netsurf.browser; - netsurf = recurseIntoAttrs (import ../applications/networking/browsers/netsurf { inherit pkgs; }); - - notmuch = callPackage ../applications/networking/mailreaders/notmuch { - # use emacsPackages.notmuch if you want emacs support - emacs = null; - }; - - nova = callPackage ../applications/virtualization/nova { }; - - novaclient = callPackage ../applications/virtualization/nova/client.nix { }; - - nspluginwrapper = callPackage ../applications/networking/browsers/mozilla-plugins/nspluginwrapper {}; - - nvi = callPackage ../applications/editors/nvi { }; - - nvpy = callPackage ../applications/editors/nvpy { }; - - obconf = callPackage ../tools/X11/obconf { - inherit (gnome) libglade; - }; - - ocrad = callPackage ../applications/graphics/ocrad { }; - - offrss = callPackage ../applications/networking/offrss { }; - - ogmtools = callPackage ../applications/video/ogmtools { }; - - omxplayer = callPackage ../applications/video/omxplayer { }; - - oneteam = callPackage ../applications/networking/instant-messengers/oneteam {}; - - openbox = callPackage ../applications/window-managers/openbox { }; - - openimageio = callPackage ../applications/graphics/openimageio { }; - - openjump = callPackage ../applications/misc/openjump { }; - - openscad = callPackage ../applications/graphics/openscad {}; - - opera = callPackage ../applications/networking/browsers/opera { - inherit (pkgs.kde4) kdelibs; - }; - - opusfile = callPackage ../applications/audio/opusfile { }; - - opusTools = callPackage ../applications/audio/opus-tools { }; - - pamixer = callPackage ../applications/audio/pamixer { }; - - pan = callPackage ../applications/networking/newsreaders/pan { - spellChecking = false; - }; - - panotools = callPackage ../applications/graphics/panotools { }; - - pavucontrol = callPackage ../applications/audio/pavucontrol { }; - - paraview = callPackage ../applications/graphics/paraview { }; - - pencil = callPackage ../applications/graphics/pencil { }; - - petrifoo = callPackage ../applications/audio/petrifoo { - inherit (gnome) libgnomecanvas; - }; - - pdftk = callPackage ../tools/typesetting/pdftk { }; - pdfgrep = callPackage ../tools/typesetting/pdfgrep { }; - - pianobar = callPackage ../applications/audio/pianobar { }; - - pianobooster = callPackage ../applications/audio/pianobooster { }; - - picard = callPackage ../applications/audio/picard { }; - - picocom = callPackage ../tools/misc/picocom { }; - - pidgin = callPackage ../applications/networking/instant-messengers/pidgin { - openssl = if config.pidgin.openssl or true then openssl else null; - gnutls = if config.pidgin.gnutls or false then gnutls else null; - libgcrypt = if config.pidgin.gnutls or false then libgcrypt else null; - startupnotification = libstartup_notification; - }; - - pidginlatex = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-latex { - imagemagick = imagemagickBig; - }; - - pidginlatexSF = builderDefsPackage - (import ../applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/pidgin-latex-sf.nix) - { - inherit pkgconfig pidgin texLive imagemagick which glib gtk; - }; - - pidginmsnpecan = callPackage ../applications/networking/instant-messengers/pidgin-plugins/msn-pecan { }; - - pidginotr = callPackage ../applications/networking/instant-messengers/pidgin-plugins/otr { }; - - pidginsipe = callPackage ../applications/networking/instant-messengers/pidgin-plugins/sipe { }; - - toxprpl = callPackage ../applications/networking/instant-messengers/pidgin-plugins/tox-prpl { }; - - pinfo = callPackage ../applications/misc/pinfo { }; - - pinta = callPackage ../applications/graphics/pinta { - gtksharp = gtksharp2; - }; - - pommed = callPackage ../os-specific/linux/pommed { - inherit (xorg) libXpm; - }; - - potrace = callPackage ../applications/graphics/potrace {}; - - posterazor = callPackage ../applications/misc/posterazor { }; - - pqiv = callPackage ../applications/graphics/pqiv { }; - - qiv = callPackage ../applications/graphics/qiv { }; - - processing = callPackage ../applications/graphics/processing { inherit (xorg) libXxf86vm; }; - - # perhaps there are better apps for this task? It's how I had configured my preivous system. - # And I don't want to rewrite all rules - procmail = callPackage ../applications/misc/procmail { }; - - pstree = callPackage ../applications/misc/pstree { }; - - pulseview = callPackage ../applications/science/electronics/pulseview { }; - - puredata = callPackage ../applications/audio/puredata { }; - - pythonmagick = callPackage ../applications/graphics/PythonMagick { }; - - qbittorrent = callPackage ../applications/networking/p2p/qbittorrent { }; - - eiskaltdcpp = callPackage ../applications/networking/p2p/eiskaltdcpp { }; - - qemu = callPackage ../applications/virtualization/qemu { }; - - qmmp = callPackage ../applications/audio/qmmp { }; - - qsampler = callPackage ../applications/audio/qsampler { }; - - qsynth = callPackage ../applications/audio/qsynth { }; - - qtpfsgui = callPackage ../applications/graphics/qtpfsgui { }; - - qtractor = callPackage ../applications/audio/qtractor { }; - - quodlibet = callPackage ../applications/audio/quodlibet { - inherit (pythonPackages) mutagen; - }; - - quodlibet-with-gst-plugins = callPackage ../applications/audio/quodlibet { - inherit (pythonPackages) mutagen; - withGstPlugins = true; - gst_plugins_bad = null; - }; - - rakarrack = callPackage ../applications/audio/rakarrack { - inherit (xorg) libXpm libXft; - fltk = fltk13; - }; - - rapcad = callPackage ../applications/graphics/rapcad {}; - - rapidsvn = callPackage ../applications/version-management/rapidsvn { }; - - ratpoison = callPackage ../applications/window-managers/ratpoison { }; - - rawtherapee = callPackage ../applications/graphics/rawtherapee { - fftw = fftwSinglePrec; - }; - - rcs = callPackage ../applications/version-management/rcs { }; - - rdesktop = callPackage ../applications/networking/remote/rdesktop { }; - - recode = callPackage ../tools/text/recode { }; - - retroshare = callPackage ../applications/networking/p2p/retroshare { - qt = qt4; - }; - - retroshare06 = lowPrio (callPackage ../applications/networking/p2p/retroshare/0.6.nix { - qt = qt4; - }); - - rsync = callPackage ../applications/networking/sync/rsync { - enableACLs = !(stdenv.isDarwin || stdenv.isSunOS || stdenv.isFreeBSD); - enableCopyDevicesPatch = (config.rsync.enableCopyDevicesPatch or false); - }; - - rtl-sdr = callPackage ../applications/misc/rtl-sdr { }; - - rubyripper = callPackage ../applications/audio/rubyripper {}; - - rxvt = callPackage ../applications/misc/rxvt { }; - - # = urxvt - rxvt_unicode = callPackage ../applications/misc/rxvt_unicode { - perlSupport = true; - gdkPixbufSupport = true; - unicode3Support = true; - }; - - sakura = callPackage ../applications/misc/sakura { - inherit (gnome) vte; - }; - - sbagen = callPackage ../applications/misc/sbagen { }; - - scite = callPackage ../applications/editors/scite { }; - - scribus = callPackage ../applications/office/scribus { - inherit (gnome) libart_lgpl; - }; - - seafile-client = callPackage ../applications/networking/seafile-client { }; - - seeks = callPackage ../tools/networking/p2p/seeks { - opencv = opencv_2_1; - }; - - seg3d = callPackage ../applications/graphics/seg3d { - wxGTK = wxGTK28.override { unicode = false; }; - }; - - seq24 = callPackage ../applications/audio/seq24 { }; - - setbfree = callPackage ../applications/audio/setbfree { }; - - sflphone = callPackage ../applications/networking/instant-messengers/sflphone { - gtk = gtk3; - }; - - siproxd = callPackage ../applications/networking/siproxd { }; - - skype = callPackage_i686 ../applications/networking/instant-messengers/skype { }; - - skype4pidgin = callPackage ../applications/networking/instant-messengers/pidgin-plugins/skype4pidgin { }; - - skype_call_recorder = callPackage ../applications/networking/instant-messengers/skype-call-recorder { }; - - slrn = callPackage ../applications/networking/newsreaders/slrn { }; - - spideroak = callPackage ../applications/networking/spideroak { }; - - ssvnc = callPackage ../applications/networking/remote/ssvnc { }; - - st = callPackage ../applications/misc/st { - conf = config.st.conf or null; - }; - - stella = callPackage ../misc/emulators/stella { }; - - linuxstopmotion = callPackage ../applications/video/linuxstopmotion { }; - - sweethome3d = recurseIntoAttrs ( (callPackage ../applications/misc/sweethome3d { }) - // (callPackage ../applications/misc/sweethome3d/editors.nix { - sweethome3dApp = sweethome3d.application; - }) - ); - - sxiv = callPackage ../applications/graphics/sxiv { }; - - bittorrentSync = callPackage ../applications/networking/bittorrentsync { }; - - dropbox = callPackage ../applications/networking/dropbox { }; - - dropbox-cli = callPackage ../applications/networking/dropbox-cli { }; - - lightdm = callPackage ../applications/display-managers/lightdm { }; - - lightdm_gtk_greeter = callPackage ../applications/display-managers/lightdm-gtk-greeter { }; - - # slic3r 0.9.10b says: "Running Slic3r under Perl >= 5.16 is not supported nor recommended" - slic3r = callPackage ../applications/misc/slic3r { - perlPackages = perl514Packages; - perl = perl514; - }; - - curaengine = callPackage ../applications/misc/curaengine { }; - - cura = callPackage ../applications/misc/cura { }; - - printrun = callPackage ../applications/misc/printrun { }; - - slim = callPackage ../applications/display-managers/slim { - libpng = libpng12; - }; - - smartdeblur = callPackage ../applications/graphics/smartdeblur { }; - - snd = callPackage ../applications/audio/snd { }; - - shntool = callPackage ../applications/audio/shntool { }; - - sonic_visualiser = callPackage ../applications/audio/sonic-visualiser { - inherit (pkgs.vamp) vampSDK; - inherit (pkgs.xlibs) libX11; - fftw = pkgs.fftwSinglePrec; - }; - - sox = callPackage ../applications/misc/audio/sox { }; - - soxr = callPackage ../applications/misc/audio/soxr { }; - - spotify = callPackage ../applications/audio/spotify { - inherit (gnome) GConf; - libpng = libpng12; - }; - - libspotify = callPackage ../development/libraries/libspotify { - apiKey = config.libspotify.apiKey or null; - }; - - stalonetray = callPackage ../applications/window-managers/stalonetray {}; - - stp = callPackage ../applications/science/logic/stp {}; - - stumpwm = lispPackages.stumpwm; - - sublime = callPackage ../applications/editors/sublime { }; - - sublime3 = lowPrio (callPackage ../applications/editors/sublime3 { }); - - subversion = callPackage ../applications/version-management/subversion/default.nix { - bdbSupport = true; - httpServer = false; - httpSupport = true; - pythonBindings = false; - perlBindings = false; - javahlBindings = false; - saslSupport = false; - httpd = apacheHttpd; - sasl = cyrus_sasl; - }; - - subversionClient = appendToName "client" (subversion.override { - bdbSupport = false; - perlBindings = true; - pythonBindings = true; - }); - - surf = callPackage ../applications/misc/surf { - webkit = webkitgtk2; - }; - - svk = perlPackages.SVK; - - swh_lv2 = callPackage ../applications/audio/swh-lv2 { }; - - sylpheed = callPackage ../applications/networking/mailreaders/sylpheed { - sslSupport = true; - gpgSupport = true; - }; - - symlinks = callPackage ../tools/system/symlinks { }; - - syncthing = callPackage ../applications/networking/syncthing { }; - - # linux only by now - synergy = callPackage ../applications/misc/synergy { }; - - tabbed = callPackage ../applications/window-managers/tabbed { }; - - tahoelafs = callPackage ../tools/networking/p2p/tahoe-lafs { - inherit (pythonPackages) twisted foolscap simplejson nevow zfec - pycryptopp sqlite3 darcsver setuptoolsTrial setuptoolsDarcs - numpy pyasn1 mock; - }; - - tailor = builderDefsPackage (import ../applications/version-management/tailor) { - inherit makeWrapper python; - }; - - tangogps = callPackage ../applications/misc/tangogps { - gconf = gnome.GConf; - }; - - teamspeak_client = callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { }; - teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { }; - - taskjuggler = callPackage ../applications/misc/taskjuggler { }; - - taskwarrior = callPackage ../applications/misc/taskwarrior { }; - - taskserver = callPackage ../servers/misc/taskserver { }; - - telegram-cli = callPackage ../applications/networking/instant-messengers/telegram-cli/default.nix { }; - - telepathy_gabble = callPackage ../applications/networking/instant-messengers/telepathy/gabble { }; - - telepathy_haze = callPackage ../applications/networking/instant-messengers/telepathy/haze {}; - - telepathy_logger = callPackage ../applications/networking/instant-messengers/telepathy/logger {}; - - telepathy_mission_control = callPackage ../applications/networking/instant-messengers/telepathy/mission-control { }; - - telepathy_rakia = callPackage ../applications/networking/instant-messengers/telepathy/rakia { }; - - telepathy_salut = callPackage ../applications/networking/instant-messengers/telepathy/salut {}; - - terminator = callPackage ../applications/misc/terminator { - vte = gnome.vte.override { pythonSupport = true; }; - inherit (pythonPackages) notify; - }; - - tesseract = callPackage ../applications/graphics/tesseract { }; - - thinkingRock = callPackage ../applications/misc/thinking-rock { }; - - thunderbird = callPackage ../applications/networking/mailreaders/thunderbird { - inherit (gnome) libIDL; - inherit (pythonPackages) pysqlite; - libpng = libpng_apng; - }; - - thunderbird-bin = callPackage ../applications/networking/mailreaders/thunderbird-bin { - gconf = pkgs.gnome.GConf; - inherit (pkgs.gnome) libgnome libgnomeui; - inherit (pkgs.xlibs) libX11 libXScrnSaver libXext - libXinerama libXrender libXt; - }; - - tig = gitAndTools.tig; - - tilda = callPackage ../applications/misc/tilda { - vte = gnome3.vte; - gtk = gtk3; - }; - - timidity = callPackage ../tools/misc/timidity { }; - - tint2 = callPackage ../applications/misc/tint2 { }; - - tkcvs = callPackage ../applications/version-management/tkcvs { }; - - tla = callPackage ../applications/version-management/arch { }; - - todo-txt-cli = callPackage ../applications/office/todo.txt-cli { }; - - torchat = callPackage ../applications/networking/instant-messengers/torchat { - wrapPython = pythonPackages.wrapPython; - }; - - toxic = callPackage ../applications/networking/instant-messengers/toxic { }; - - transcode = callPackage ../applications/audio/transcode { }; - - transmission = callPackage ../applications/networking/p2p/transmission { }; - transmission_gtk = transmission.override { enableGTK3 = true; }; - - transmission_remote_gtk = callPackage ../applications/networking/p2p/transmission-remote-gtk {}; - - trayer = callPackage ../applications/window-managers/trayer { }; - - tree = callPackage ../tools/system/tree {}; - - tribler = callPackage ../applications/networking/p2p/tribler { }; - - twister = callPackage ../applications/networking/p2p/twister { }; - - twmn = callPackage ../applications/misc/twmn { }; - - twinkle = callPackage ../applications/networking/instant-messengers/twinkle { }; - - umurmur = callPackage ../applications/networking/umurmur { }; - - unison = callPackage ../applications/networking/sync/unison { - inherit (ocamlPackages) lablgtk; - enableX11 = config.unison.enableX11 or true; - }; - - uucp = callPackage ../tools/misc/uucp { }; - - uvccapture = callPackage ../applications/video/uvccapture { }; - - uwimap = callPackage ../tools/networking/uwimap { }; - - uzbl = callPackage ../applications/networking/browsers/uzbl { - webkit = webkitgtk2; - }; - - uTox = callPackage ../applications/networking/instant-messengers/utox { }; - - vanitygen = callPackage ../applications/misc/vanitygen { }; - - vbindiff = callPackage ../applications/editors/vbindiff { }; - - vcprompt = callPackage ../applications/version-management/vcprompt { }; - - vdpauinfo = callPackage ../tools/X11/vdpauinfo { }; - - veracity = callPackage ../applications/version-management/veracity {}; - - viewMtn = builderDefsPackage (import ../applications/version-management/viewmtn/0.10.nix) - { - inherit monotone cheetahTemplate highlight ctags - makeWrapper graphviz which python; - flup = pythonPackages.flup; - }; - - vim = callPackage ../applications/editors/vim { }; - - macvim = callPackage ../applications/editors/vim/macvim.nix { }; - - vimHugeX = vim_configurable; - - vim_configurable = callPackage ../applications/editors/vim/configurable.nix { - inherit (pkgs) fetchurl fetchhg stdenv ncurses pkgconfig gettext - composableDerivation lib config glib gtk python perl tcl ruby; - inherit (pkgs.xlibs) libX11 libXext libSM libXpm libXt libXaw libXau libXmu - libICE; - - features = "huge"; # one of tiny, small, normal, big or huge - lua = pkgs.lua5; - gui = config.vim.gui or "auto"; - - # optional features by flags - flags = [ "python" "X11" ]; # only flag "X11" by now - - # so that we can use gccApple if we're building on darwin - inherit stdenvAdapters gccApple; - }; - - vimNox = lowPrio (vim_configurable.override { source = "vim-nox"; }); - - qvim = lowPrio (callPackage ../applications/editors/vim/qvim.nix { - inherit (pkgs) fetchgit stdenv ncurses pkgconfig gettext - composableDerivation lib config python perl tcl ruby qt4; - inherit (pkgs.xlibs) libX11 libXext libSM libXpm libXt libXaw libXau libXmu - libICE; - - inherit (pkgs) stdenvAdapters gccApple; - - features = "huge"; # one of tiny, small, normal, big or huge - lua = pkgs.lua5; - flags = [ "python" "X11" ]; # only flag "X11" by now - }); - - vimpc = callPackage ../applications/audio/vimpc { }; - - virtviewer = callPackage ../applications/virtualization/virt-viewer { - gtkvnc = gtkvnc.override { enableGTK3 = true; }; - spice_gtk = spice_gtk.override { enableGTK3 = true; }; - }; - virtmanager = callPackage ../applications/virtualization/virt-manager { - inherit (gnome) gnome_python; - vte = gnome3.vte; - dconf = gnome3.dconf; - gtkvnc = gtkvnc.override { enableGTK3 = true; }; - spice_gtk = spice_gtk.override { enableGTK3 = true; }; - }; - - virtinst = callPackage ../applications/virtualization/virtinst {}; - - virtualgl = callPackage ../tools/X11/virtualgl { }; - - bumblebee = callPackage ../tools/X11/bumblebee { }; - - vkeybd = callPackage ../applications/audio/vkeybd { - inherit (xlibs) libX11; - }; - - vlc = callPackage ../applications/video/vlc { }; - - vmpk = callPackage ../applications/audio/vmpk { }; - - vnstat = callPackage ../applications/networking/vnstat { }; - - vorbisTools = callPackage ../applications/audio/vorbis-tools { }; - - vue = callPackage ../applications/misc/vue { - jre = icedtea7_jre; - }; - - vwm = callPackage ../applications/window-managers/vwm { }; - - vym = callPackage ../applications/misc/vym { }; - - w3m = callPackage ../applications/networking/browsers/w3m { - graphicsSupport = false; - }; - - weechat = callPackage ../applications/networking/irc/weechat { }; - - weechatDevel = lowPrio (callPackage ../applications/networking/irc/weechat/devel.nix { }); - - weston = callPackage ../applications/window-managers/weston { }; - - windowmaker = callPackage ../applications/window-managers/windowmaker { }; - - winswitch = callPackage ../tools/X11/winswitch { }; - - wings = callPackage ../applications/graphics/wings { - erlang = erlangR14; - esdl = esdl.override { erlang = erlangR14; }; - }; - - wmname = callPackage ../applications/misc/wmname { }; - - wmctrl = callPackage ../tools/X11/wmctrl { }; - - # I'm keen on wmiimenu only >wmii-3.5 no longer has it... - wmiimenu = import ../applications/window-managers/wmii31 { - libixp = libixp_for_wmii; - inherit fetchurl /* fetchhg */ stdenv gawk; - inherit (xlibs) libX11; - }; - - wmiiSnap = import ../applications/window-managers/wmii { - libixp = libixp_for_wmii; - inherit fetchurl /* fetchhg */ stdenv gawk; - inherit (xlibs) libX11 xextproto libXt libXext; - includeUnpack = config.stdenv.includeUnpack or false; - }; - - wordnet = callPackage ../applications/misc/wordnet { }; - - wrapFirefox = - { browser, browserName ? "firefox", desktopName ? "Firefox", nameSuffix ? "" - , icon ? "${browser}/lib/${browser.name}/browser/icons/mozicon128.png" }: - let - cfg = stdenv.lib.attrByPath [ browserName ] {} config; - enableAdobeFlash = cfg.enableAdobeFlash or false; - enableGnash = cfg.enableGnash or false; - in - import ../applications/networking/browsers/firefox/wrapper.nix { - inherit stdenv lib makeWrapper makeDesktopItem browser browserName desktopName nameSuffix icon; - plugins = - assert !(enableGnash && enableAdobeFlash); - ([ ] - ++ lib.optional enableGnash gnash - ++ lib.optional enableAdobeFlash flashplayer - ++ lib.optional (cfg.enableDjvu or false) (djview4) - ++ lib.optional (cfg.enableMPlayer or false) (MPlayerPlugin browser) - ++ lib.optional (cfg.enableGeckoMediaPlayer or false) gecko_mediaplayer - ++ lib.optional (supportsJDK && cfg.jre or false && jrePlugin ? mozillaPlugin) jrePlugin - ++ lib.optional (cfg.enableGoogleTalkPlugin or false) google_talk_plugin - ++ lib.optional (cfg.enableFriBIDPlugin or false) fribid - ++ lib.optional (cfg.enableGnomeExtensions or false) gnome3.gnome_shell - ); - libs = [ gstreamer gst_plugins_base ] ++ lib.optionals (cfg.enableQuakeLive or false) - (with xlibs; [ stdenv.gcc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib ]); - gtk_modules = [ libcanberra ]; - }; - - wxhexeditor = callPackage ../applications/editors/wxhexeditor { }; - - x11vnc = callPackage ../tools/X11/x11vnc { }; - - x2vnc = callPackage ../tools/X11/x2vnc { }; - - xaos = builderDefsPackage (import ../applications/graphics/xaos) { - inherit (xlibs) libXt libX11 libXext xextproto xproto; - inherit gsl aalib zlib intltool gettext perl; - libpng = libpng12; - }; - - xara = callPackage ../applications/graphics/xara { }; - - xawtv = callPackage ../applications/video/xawtv { }; - - xbindkeys = callPackage ../tools/X11/xbindkeys { }; - - xbmc = callPackage ../applications/video/xbmc { - ffmpeg = ffmpeg_1; - }; - - xca = callPackage ../applications/misc/xca { }; - - xcalib = callPackage ../tools/X11/xcalib { }; - - xcape = callPackage ../tools/X11/xcape { }; - - xchainkeys = callPackage ../tools/X11/xchainkeys { }; - - xchat = callPackage ../applications/networking/irc/xchat { }; - - xchm = callPackage ../applications/misc/xchm { }; - - xcompmgr = callPackage ../applications/window-managers/xcompmgr { }; - - compton = callPackage ../applications/window-managers/compton { }; - - xdaliclock = callPackage ../tools/misc/xdaliclock {}; - - xdg-user-dirs = callPackage ../tools/X11/xdg-user-dirs { }; - - xdg_utils = callPackage ../tools/X11/xdg-utils { }; - - xdotool = callPackage ../tools/X11/xdotool { }; - - xen = callPackage ../applications/virtualization/xen { - stdenv = overrideGCC stdenv gcc45; - }; - - xfe = callPackage ../applications/misc/xfe { - fox = fox_1_6; - }; - - xfig = callPackage ../applications/graphics/xfig { }; - - xineUI = callPackage ../applications/video/xine-ui { }; - - xneur_0_13 = callPackage ../applications/misc/xneur { }; - - xneur_0_8 = callPackage ../applications/misc/xneur/0.8.nix { }; - - xneur = xneur_0_13; - - gxneur = callPackage ../applications/misc/gxneur { - inherit (gnome) libglade GConf; - }; - - xournal = callPackage ../applications/graphics/xournal { - inherit (gnome) libgnomeprint libgnomeprintui libgnomecanvas; - }; - - xpdf = callPackage ../applications/misc/xpdf { - motif = lesstif; - base14Fonts = "${ghostscript}/share/ghostscript/fonts"; - }; - - xkb_switch = callPackage ../tools/X11/xkb-switch { }; - - libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { }; - - xpra = callPackage ../tools/X11/xpra { }; - - xrestop = callPackage ../tools/X11/xrestop { }; - - xscreensaver = callPackage ../misc/screensavers/xscreensaver { - inherit (gnome) libglade; - }; - - xsynth_dssi = callPackage ../applications/audio/xsynth-dssi { }; - - xterm = callPackage ../applications/misc/xterm { }; - - finalterm = callPackage ../applications/misc/finalterm { }; - - xtrace = callPackage ../tools/X11/xtrace { }; - - xlaunch = callPackage ../tools/X11/xlaunch { }; - - xmacro = callPackage ../tools/X11/xmacro { }; - - xmove = callPackage ../applications/misc/xmove { }; - - xmp = callPackage ../applications/audio/xmp { }; - - xnee = callPackage ../tools/X11/xnee { }; - - xvidcap = callPackage ../applications/video/xvidcap { - inherit (gnome) scrollkeeper libglade; - }; - - yate = callPackage ../applications/misc/yate { }; - - inherit (gnome3) yelp; - - qgis = callPackage ../applications/misc/qgis {}; - - qtbitcointrader = callPackage ../applications/misc/qtbitcointrader { }; - - ykpers = callPackage ../applications/misc/ykpers {}; - - yoshimi = callPackage ../applications/audio/yoshimi { - fltk = fltk13; - }; - - zathuraCollection = recurseIntoAttrs - (let callPackage = newScope pkgs.zathuraCollection; in - import ../applications/misc/zathura { - inherit callPackage pkgs fetchurl; - useMupdf = config.zathura.useMupdf or false; - }); - - zathura = zathuraCollection.zathuraWrapper; - - zed = callPackage ../applications/editors/zed { }; - - zeroc_ice = callPackage ../development/libraries/zeroc-ice { }; - - girara = callPackage ../applications/misc/girara { - gtk = gtk3; - }; - - zgrviewer = callPackage ../applications/graphics/zgrviewer {}; - - zim = callPackage ../applications/office/zim { - pygtk = pyGtkGlade; - }; - - zotero = callPackage ../applications/office/zotero { - xulrunner = xulrunner_30; - }; - - zynaddsubfx = callPackage ../applications/audio/zynaddsubfx { }; - - - ### GAMES - - alienarena = callPackage ../games/alienarena { }; - - andyetitmoves = if stdenv.isLinux then callPackage ../games/andyetitmoves {} else null; - - anki = callPackage ../games/anki { }; - - asc = callPackage ../games/asc { - lua = lua5; - libsigcxx = libsigcxx12; - }; - - astromenace = callPackage ../games/astromenace { }; - - atanks = callPackage ../games/atanks {}; - - ballAndPaddle = callPackage ../games/ball-and-paddle { - guile = guile_1_8; - }; - - bitsnbots = callPackage ../games/bitsnbots { - lua = lua5; - }; - - blackshades = callPackage ../games/blackshades { }; - - blackshadeselite = callPackage ../games/blackshadeselite { }; - - blobby = callPackage ../games/blobby { }; - - bsdgames = callPackage ../games/bsdgames { }; - - btanks = callPackage ../games/btanks { }; - - bzflag = callPackage ../games/bzflag { }; - - castle_combat = callPackage ../games/castle-combat { }; - - chessdb = callPackage ../games/chessdb { }; - - construoBase = lowPrio (callPackage ../games/construo { - mesa = null; - freeglut = null; - }); - - construo = construoBase.override { - inherit mesa freeglut; - }; - - crack_attack = callPackage ../games/crack-attack { }; - - crafty = callPackage ../games/crafty { }; - craftyFull = appendToName "full" (crafty.override { fullVariant = true; }); - - crrcsim = callPackage ../games/crrcsim {}; - - dhewm3 = callPackage ../games/dhewm3 {}; - - drumkv1 = callPackage ../applications/audio/drumkv1 { }; - - dwarf_fortress = callPackage_i686 ../games/dwarf-fortress { - SDL_image = pkgsi686Linux.SDL_image.override { - libpng = pkgsi686Linux.libpng12; - }; - }; - - dwarf_fortress_2014 = callPackage_i686 ../games/dwarf-fortress/df2014.nix { - SDL_image = pkgsi686Linux.SDL_image.override { - libpng = pkgsi686Linux.libpng12; - }; - }; - - dwarf_fortress_modable = appendToName "moddable" (dwarf_fortress.override { - copyDataDirectory = true; - }); - - dwarf_fortress_2014_modable = appendToName "moddable" (dwarf_fortress_2014.override { - copyDataDirectory = true; - }); - - dwarf-therapist = callPackage ../games/dwarf-therapist { }; - - d1x_rebirth = callPackage ../games/d1x-rebirth { }; - - d2x_rebirth = callPackage ../games/d2x-rebirth { }; - - eboard = callPackage ../games/eboard { }; - - eduke32 = callPackage ../games/eduke32 { }; - - egoboo = callPackage ../games/egoboo { }; - - exult = callPackage ../games/exult { }; - - flightgear = callPackage ../games/flightgear { }; - - freeciv = callPackage ../games/freeciv { }; - - freeciv_gtk = callPackage ../games/freeciv { - gtkClient = true; - sdlClient = false; - }; - - freedink = callPackage ../games/freedink { }; - - fsg = callPackage ../games/fsg { - wxGTK = wxGTK28.override { unicode = false; }; - }; - - gemrb = callPackage ../games/gemrb { }; - - gl117 = callPackage ../games/gl-117 {}; - - glestae = callPackage ../games/glestae {}; - - globulation2 = callPackage ../games/globulation {}; - - gltron = callPackage ../games/gltron { }; - - gnuchess = callPackage ../games/gnuchess { }; - - gnugo = callPackage ../games/gnugo { }; - - gparted = callPackage ../tools/misc/gparted { }; - - gsmartcontrol = callPackage ../tools/misc/gsmartcontrol { - inherit (gnome) libglademm; - }; - - gtypist = callPackage ../games/gtypist { }; - - hexen = callPackage ../games/hexen { }; - - icbm3d = callPackage ../games/icbm3d { }; - - ingen = callPackage ../applications/audio/ingen { }; - - instead = callPackage ../games/instead { - lua = lua5; - }; - - kobodeluxe = callPackage ../games/kobodeluxe { }; - - lincity = builderDefsPackage (import ../games/lincity) { - inherit (xlibs) libX11 libXext xextproto - libICE libSM xproto; - inherit libpng zlib; - }; - - lincity_ng = callPackage ../games/lincity/ng.nix {}; - - mars = callPackage ../games/mars { }; - - micropolis = callPackage ../games/micropolis { }; - - mnemosyne = callPackage ../games/mnemosyne { - inherit (pythonPackages) matplotlib cherrypy sqlite3; - }; - - naev = callPackage ../games/naev { }; - - nexuiz = callPackage ../games/nexuiz { }; - - njam = callPackage ../games/njam { }; - - oilrush = callPackage ../games/oilrush { }; - - openra = callPackage ../games/openra { }; - - openttd = callPackage ../games/openttd { - zlib = zlibStatic; - }; - - opentyrian = callPackage ../games/opentyrian { }; - - openxcom = callPackage ../games/openxcom { }; - - pingus = callPackage ../games/pingus {}; - - pioneers = callPackage ../games/pioneers { }; - - pong3d = callPackage ../games/pong3d { }; - - prboom = callPackage ../games/prboom { }; - - quake3demo = callPackage ../games/quake3/wrapper { - name = "quake3-demo-${quake3game.name}"; - description = "Demo of Quake 3 Arena, a classic first-person shooter"; - game = quake3game; - paks = [quake3demodata]; - }; - - quake3demodata = callPackage ../games/quake3/demo { }; - - quake3game = callPackage ../games/quake3/game { }; - - quantumminigolf = callPackage ../games/quantumminigolf {}; - - racer = callPackage ../games/racer { }; - - residualvm = callPackage ../games/residualvm { - openglSupport = mesaSupported; - }; - - rigsofrods = callPackage ../games/rigsofrods { - mygui = myguiSvn; - }; - - rili = callPackage ../games/rili { }; - - rogue = callPackage ../games/rogue { }; - - samplv1 = callPackage ../applications/audio/samplv1 { }; - - sauerbraten = callPackage ../games/sauerbraten {}; - - scid = callPackage ../games/scid { }; - - scummvm = callPackage ../games/scummvm { }; - - scorched3d = callPackage ../games/scorched3d { }; - - sdlmame = callPackage ../games/sdlmame { }; - - sgtpuzzles = builderDefsPackage (import ../games/sgt-puzzles) { - inherit pkgconfig fetchsvn perl gtk; - inherit (xlibs) libX11; - }; - - simutrans = callPackage ../games/simutrans { }; - - soi = callPackage ../games/soi {}; - - # You still can override by passing more arguments. - spaceOrbit = callPackage ../games/orbit { }; - - spring = callPackage ../games/spring { }; - - springLobby = callPackage ../games/spring/springlobby.nix { }; - - stardust = callPackage ../games/stardust {}; - - steam = callPackage_i686 ../games/steam {}; - - steamChrootEnv = callPackage_i686 ../games/steam/chrootenv.nix { - zenity = gnome2.zenity; - }; - - stuntrally = callPackage ../games/stuntrally { }; - - superTux = callPackage ../games/super-tux { }; - - superTuxKart = callPackage ../games/super-tux-kart { }; - - synthv1 = callPackage ../applications/audio/synthv1 { }; - - tbe = callPackage ../games/the-butterfly-effect {}; - - teetertorture = callPackage ../games/teetertorture { }; - - teeworlds = callPackage ../games/teeworlds { }; - - tennix = callPackage ../games/tennix { }; - - tibia = callPackage ../games/tibia { }; - - tintin = callPackage ../games/tintin { }; - - tpm = callPackage ../games/thePenguinMachine { }; - - tremulous = callPackage ../games/tremulous { }; - - speed_dreams = callPackage ../games/speed-dreams { - # Torcs wants to make shared libraries linked with plib libraries (it provides static). - # i686 is the only platform I know than can do that linking without plib built with -fPIC - plib = plib.override { enablePIC = !stdenv.isi686; }; - libpng = libpng12; - }; - - torcs = callPackage ../games/torcs { - # Torcs wants to make shared libraries linked with plib libraries (it provides static). - # i686 is the only platform I know than can do that linking without plib built with -fPIC - plib = plib.override { enablePIC = !stdenv.isi686; }; - }; - - trigger = callPackage ../games/trigger { }; - - typespeed = callPackage ../games/typespeed { }; - - ufoai = callPackage ../games/ufoai { }; - - ultimatestunts = callPackage ../games/ultimatestunts { }; - - ultrastardx = callPackage ../games/ultrastardx { - ffmpeg = ffmpeg_0_6; - lua = lua5; - }; - - unvanquished = callPackage ../games/unvanquished { }; - - uqm = callPackage ../games/uqm { }; - - urbanterror = callPackage ../games/urbanterror { }; - - ut2004demo = callPackage ../games/ut2004demo { }; - - vdrift = callPackage ../games/vdrift { }; - - vectoroids = callPackage ../games/vectoroids { }; - - vessel = callPackage_i686 ../games/vessel { }; - - warmux = callPackage ../games/warmux { }; - - warsow = callPackage ../games/warsow { - libjpeg = libjpeg62; - }; - - warzone2100 = callPackage ../games/warzone2100 { }; - - widelands = callPackage ../games/widelands { - lua = lua5_1; - }; - - worldofgoo_demo = callPackage ../games/worldofgoo { - demo = true; - }; - - worldofgoo = callPackage ../games/worldofgoo { }; - - xboard = callPackage ../games/xboard { }; - - xconq = callPackage ../games/xconq {}; - - # TODO: the corresponding nix file is missing - # xracer = callPackage ../games/xracer { }; - - xonotic = callPackage ../games/xonotic { }; - - xskat = callPackage ../games/xskat { }; - - xsokoban = builderDefsPackage (import ../games/xsokoban) { - inherit (xlibs) libX11 xproto libXpm libXt; - }; - - zdoom = callPackage ../games/zdoom { }; - - zod = callPackage ../games/zod { }; - - zoom = callPackage ../games/zoom { }; - - keen4 = callPackage ../games/keen4 { }; - - zeroad = callPackage ../games/0ad { }; - - ### DESKTOP ENVIRONMENTS - - cinnamon = recurseIntoAttrs rec { - callPackage = newScope pkgs.cinnamon; - inherit (gnome3) gnome_common libgnomekbd gnome-menus zenity; - - muffin = callPackage ../desktops/cinnamon/muffin.nix { } ; - - cinnamon-control-center = callPackage ../desktops/cinnamon/cinnamon-control-center.nix{ }; - - cinnamon-settings-daemon = callPackage ../desktops/cinnamon/cinnamon-settings-daemon.nix{ }; - - cinnamon-session = callPackage ../desktops/cinnamon/cinnamon-session.nix{ } ; - - cinnamon-desktop = callPackage ../desktops/cinnamon/cinnamon-desktop.nix { }; - - cinnamon-translations = callPackage ../desktops/cinnamon/cinnamon-translations.nix { }; - - cjs = callPackage ../desktops/cinnamon/cjs.nix { }; - }; - - enlightenment = callPackage ../desktops/enlightenment { }; - - e17 = recurseIntoAttrs ( - let callPackage = newScope pkgs.e17; in - import ../desktops/e17 { inherit callPackage pkgs; } - ); - - e18 = recurseIntoAttrs ( - let callPackage = newScope pkgs.e18; in - import ../desktops/e18 { inherit callPackage pkgs; } - ); - - gnome2 = callPackage ../desktops/gnome-2 { - callPackage = pkgs.newScope pkgs.gnome2; - self = pkgs.gnome2; - } // pkgs.gtkLibs // { - # Backwards compatibility; - inherit (pkgs) libsoup libwnck gtk_doc gnome_doc_utils; - }; - - gnome3 = recurseIntoAttrs (callPackage ../desktops/gnome-3/3.10 { - callPackage = pkgs.newScope pkgs.gnome3; - self = pkgs.gnome3; - }); - - gnome3_12 = recurseIntoAttrs (callPackage ../desktops/gnome-3/3.12 { - callPackage = pkgs.newScope pkgs.gnome3_12; - }); - - gnome = recurseIntoAttrs gnome2; - - hsetroot = callPackage ../tools/X11/hsetroot { }; - - kakasi = callPackage ../tools/text/kakasi { }; - - kde4 = recurseIntoAttrs pkgs.kde412; - - kde4_next = recurseIntoAttrs( lib.lowPrioSet pkgs.kde412 ); - - kde412 = kdePackagesFor (pkgs.kde412 // { - eigen = eigen2; - libusb = libusb1; - libcanberra = libcanberra_kde; - }) ../desktops/kde-4.12; - - kdePackagesFor = self: dir: - let callPackageOrig = callPackage; in - let - callPackage = newScope self; - kde4 = callPackageOrig dir { - inherit callPackage callPackageOrig; - }; - in kde4 // { - inherit kde4; - - wrapper = callPackage ../build-support/kdewrapper {}; - - recurseForRelease = true; - - akunambol = callPackage ../applications/networking/sync/akunambol { }; - - amarok = callPackage ../applications/audio/amarok { }; - - bangarang = callPackage ../applications/video/bangarang { }; - - basket = callPackage ../applications/office/basket { }; - - bluedevil = callPackage ../tools/bluetooth/bluedevil { }; - - calligra = callPackage ../applications/office/calligra { }; - - colord-kde = callPackage ../tools/misc/colord-kde { }; - - digikam = if builtins.compareVersions "4.9" kde4.release == 1 then - callPackage ../applications/graphics/digikam/2.nix { } - else - callPackage ../applications/graphics/digikam { }; - - eventlist = callPackage ../applications/office/eventlist {}; - - k3b = callPackage ../applications/misc/k3b { }; - - kadu = callPackage ../applications/networking/instant-messengers/kadu { }; - - kbibtex = callPackage ../applications/office/kbibtex { }; - - kde_gtk_config = callPackage ../tools/misc/kde-gtk-config { }; - - kde_wacomtablet = callPackage ../applications/misc/kde-wacomtablet { }; - - kdeconnect = callPackage ../applications/misc/kdeconnect { }; - - kdenlive = callPackage ../applications/video/kdenlive { mlt = mlt-qt4; }; - - kdesvn = callPackage ../applications/version-management/kdesvn { }; - - kdevelop = callPackage ../applications/editors/kdevelop { }; - - kdevplatform = callPackage ../development/libraries/kdevplatform { }; - - kdiff3 = callPackage ../tools/text/kdiff3 { }; - - kile = callPackage ../applications/editors/kile { }; - - kmplayer = callPackage ../applications/video/kmplayer { }; - - kmymoney = callPackage ../applications/office/kmymoney { }; - - kipi_plugins = callPackage ../applications/graphics/kipi-plugins { }; - - konversation = callPackage ../applications/networking/irc/konversation { }; - - kvirc = callPackage ../applications/networking/irc/kvirc { }; - - krename = callPackage ../applications/misc/krename { }; - - krusader = callPackage ../applications/misc/krusader { }; - - ksshaskpass = callPackage ../tools/security/ksshaskpass {}; - - ktorrent = callPackage ../applications/networking/p2p/ktorrent { }; - - kuickshow = callPackage ../applications/graphics/kuickshow { }; - - libalkimia = callPackage ../development/libraries/libalkimia { }; - - libktorrent = callPackage ../development/libraries/libktorrent { }; - - libkvkontakte = callPackage ../development/libraries/libkvkontakte { }; - - liblikeback = callPackage ../development/libraries/liblikeback { }; - - libmm-qt = callPackage ../development/libraries/libmm-qt { }; - - libnm-qt = callPackage ../development/libraries/libnm-qt { }; - - networkmanagement = callPackage ../tools/networking/networkmanagement { }; - - partitionManager = callPackage ../tools/misc/partition-manager { }; - - plasma-nm = callPackage ../tools/networking/plasma-nm { }; - - polkit_kde_agent = callPackage ../tools/security/polkit-kde-agent { }; - - psi = callPackage ../applications/networking/instant-messengers/psi { }; - - qtcurve = callPackage ../misc/themes/qtcurve { }; - - quassel = callPackage ../applications/networking/irc/quassel { dconf = gnome3.dconf; }; - - quasselWithoutKDE = (self.quassel.override { - withKDE = false; - tag = "-without-kde"; - }); - - quasselDaemon = (self.quassel.override { - monolithic = false; - daemon = true; - tag = "-daemon"; - }); - - quasselClient = (self.quassel.override { - monolithic = false; - client = true; - tag = "-client"; - }); - - quasselClientWithoutKDE = (self.quasselClient.override { - withKDE = false; - tag = "-client-without-kde"; - }); - - rekonq = callPackage ../applications/networking/browsers/rekonq { }; - - kwebkitpart = callPackage ../applications/networking/browsers/kwebkitpart { }; - - rsibreak = callPackage ../applications/misc/rsibreak { }; - - semnotes = callPackage ../applications/misc/semnotes { }; - - skrooge = callPackage ../applications/office/skrooge { }; - - telepathy = callPackage ../applications/networking/instant-messengers/telepathy/kde {}; - - yakuake = callPackage ../applications/misc/yakuake { }; - - zanshin = callPackage ../applications/office/zanshin { }; - - kwooty = callPackage ../applications/networking/newsreaders/kwooty { }; - }; - - redshift = callPackage ../applications/misc/redshift { - inherit (xorg) libX11 libXrandr libxcb randrproto libXxf86vm - xf86vidmodeproto; - inherit (gnome) GConf; - inherit (pythonPackages) pyxdg; - geoclue = geoclue2; - }; - - oxygen_gtk = callPackage ../misc/themes/gtk2/oxygen-gtk { }; - - gtk_engines = callPackage ../misc/themes/gtk2/gtk-engines { }; - - gtk-engine-murrine = callPackage ../misc/themes/gtk2/gtk-engine-murrine { }; - - gnome_themes_standard = gnome3.gnome_themes_standard; - - mate-icon-theme = callPackage ../misc/themes/mate-icon-theme { }; - - mate-themes = callPackage ../misc/themes/mate-themes { }; - - xfce = xfce4_10; - xfce4_10 = recurseIntoAttrs (import ../desktops/xfce { inherit pkgs newScope; }); - - - ### SCIENCE - - ### SCIENCE/GEOMETRY - - drgeo = builderDefsPackage (import ../applications/science/geometry/drgeo) { - inherit (gnome) libglade; - inherit libxml2 perl intltool libtool pkgconfig gtk; - guile = guile_1_8; - }; - - tetgen = callPackage ../applications/science/geometry/tetgen { }; - - - ### SCIENCE/BIOLOGY - - alliance = callPackage ../applications/science/electronics/alliance { - motif = lesstif; - }; - - arb = callPackage ../applications/science/biology/arb { - lesstif = lesstif93; - }; - - archimedes = callPackage ../applications/science/electronics/archimedes { }; - - biolib = callPackage ../development/libraries/science/biology/biolib { }; - - emboss = callPackage ../applications/science/biology/emboss { }; - - mrbayes = callPackage ../applications/science/biology/mrbayes { }; - - ncbiCTools = builderDefsPackage ../development/libraries/ncbi { - inherit tcsh mesa lesstif; - inherit (xlibs) libX11 libXaw xproto libXt libSM libICE - libXmu libXext; - }; - - ncbi_tools = callPackage ../applications/science/biology/ncbi-tools { }; - - paml = callPackage ../applications/science/biology/paml { }; - - pal2nal = callPackage ../applications/science/biology/pal2nal { }; - - plink = callPackage ../applications/science/biology/plink/default.nix { }; - - - ### SCIENCE/MATH - - arpack = callPackage ../development/libraries/science/math/arpack { }; - - atlas = callPackage ../development/libraries/science/math/atlas { - # The build process measures CPU capabilities and optimizes the - # library to perform best on that particular machine. That is a - # great feature, but it's of limited use with pre-built binaries - # coming from a central build farm. - tolerateCpuTimingInaccuracy = true; - }; - - blas = callPackage ../development/libraries/science/math/blas { }; - - content = builderDefsPackage ../applications/science/math/content { - inherit mesa lesstif; - inherit (xlibs) libX11 libXaw xproto libXt libSM libICE - libXmu libXext libXcursor; - }; - - jags = callPackage ../applications/science/math/jags { }; - - liblapack = callPackage ../development/libraries/science/math/liblapack { }; - liblapack_3_5_0 = callPackage ../development/libraries/science/math/liblapack/3.5.0.nix { }; - - liblbfgs = callPackage ../development/libraries/science/math/liblbfgs { }; - - # julia is pinned to specific versions of openblas, so keep old versions - # until they aren't needed. The un-versioned attribute may continue to track - # upstream development. - openblas = callPackage ../development/libraries/science/math/openblas { - liblapack = liblapack_3_5_0; - }; - openblas_0_2_10 = callPackage ../development/libraries/science/math/openblas/0.2.10.nix { - liblapack = liblapack_3_5_0; - }; - openblas_0_2_2 = callPackage ../development/libraries/science/math/openblas/0.2.2.nix { }; - - mathematica = callPackage ../applications/science/math/mathematica { }; - - sage = callPackage ../applications/science/math/sage { }; - - ### SCIENCE/MOLECULAR-DYNAMICS - - gromacs = callPackage ../applications/science/molecular-dynamics/gromacs { - singlePrec = true; - fftw = fftwSinglePrec; - cmake = cmakeCurses; - }; - - gromacsDouble = lowPrio (callPackage ../applications/science/molecular-dynamics/gromacs { - singlePrec = false; - fftw = fftw; - cmake = cmakeCurses; - }); - - - ### SCIENCE/LOGIC - - abc-verifier = callPackage ../applications/science/logic/abc {}; - - alt-ergo = callPackage ../applications/science/logic/alt-ergo {}; - - coq = callPackage ../applications/science/logic/coq { - inherit (ocamlPackages) findlib lablgtk; - camlp5 = ocamlPackages.camlp5_transitional; - }; - - coq_HEAD = callPackage ../applications/science/logic/coq/HEAD.nix { - inherit (ocamlPackages) findlib lablgtk; - camlp5 = ocamlPackages.camlp5_transitional; - }; - - coq_8_3 = callPackage ../applications/science/logic/coq/8.3.nix { - inherit (ocamlPackages) findlib lablgtk; - camlp5 = ocamlPackages.camlp5_transitional; - }; - - cvc3 = callPackage ../applications/science/logic/cvc3 {}; - - ekrhyper = callPackage ../applications/science/logic/ekrhyper {}; - - eprover = callPackage ../applications/science/logic/eprover { - texLive = texLiveAggregationFun { - paths = [ - texLive texLiveExtra - ]; - }; - }; - - ginac = callPackage ../applications/science/math/ginac { }; - - hol = callPackage ../applications/science/logic/hol { }; - - hol_light = callPackage ../applications/science/logic/hol_light { - inherit (ocamlPackages) findlib; - camlp5 = ocamlPackages.camlp5_strict; - }; - - isabelle = import ../applications/science/logic/isabelle { - inherit (pkgs) stdenv fetchurl nettools perl polyml; - inherit (pkgs.emacs24Packages) proofgeneral; - }; - - iprover = callPackage ../applications/science/logic/iprover {}; - - leo2 = callPackage ../applications/science/logic/leo2 {}; - - logisim = callPackage ../applications/science/logic/logisim {}; - - ltl2ba = callPackage ../applications/science/logic/ltl2ba {}; - - matita = callPackage ../applications/science/logic/matita { - ocaml = ocaml_3_11_2; - inherit (ocamlPackages_3_11_2) findlib lablgtk ocaml_expat gmetadom ocaml_http - lablgtkmathview ocaml_mysql ocaml_sqlite3 ocamlnet camlzip ocaml_pcre; - ulex08 = ocamlPackages_3_11_2.ulex08.override { camlp5 = ocamlPackages_3_11_2.camlp5_5_transitional; }; - }; - - matita_130312 = lowPrio (callPackage ../applications/science/logic/matita/130312.nix { - inherit (ocamlPackages) findlib lablgtk ocaml_expat gmetadom ocaml_http - ocaml_mysql ocamlnet ulex08 camlzip ocaml_pcre; - }); - - minisat = callPackage ../applications/science/logic/minisat {}; - - opensmt = callPackage ../applications/science/logic/opensmt { }; - - otter = callPackage ../applications/science/logic/otter {}; - - picosat = callPackage ../applications/science/logic/picosat {}; - - prooftree = callPackage ../applications/science/logic/prooftree { - inherit (ocamlPackages) findlib lablgtk; - camlp5 = ocamlPackages.camlp5_transitional; - }; - - prover9 = callPackage ../applications/science/logic/prover9 { }; - - satallax = callPackage ../applications/science/logic/satallax {}; - - spass = callPackage ../applications/science/logic/spass {}; - - ssreflect = callPackage ../applications/science/logic/ssreflect { - camlp5 = ocamlPackages.camlp5_transitional; - }; - - tptp = callPackage ../applications/science/logic/tptp {}; - - twelf = callPackage ../applications/science/logic/twelf { - smlnj = if stdenv.isDarwin - then smlnjBootstrap - else smlnj; - }; - - verifast = callPackage ../applications/science/logic/verifast {}; - - why3 = callPackage ../applications/science/logic/why3 {}; - - yices = callPackage ../applications/science/logic/yices {}; - - z3 = callPackage ../applications/science/logic/z3 {}; - - boolector = boolector15; - boolector15 = callPackage ../applications/science/logic/boolector {}; - boolector16 = lowPrio (callPackage ../applications/science/logic/boolector { - useV16 = true; - }); - - ### SCIENCE / ELECTRONICS - - eagle = callPackage_i686 ../applications/science/electronics/eagle { }; - - caneda = callPackage ../applications/science/electronics/caneda { }; - - gtkwave = callPackage ../applications/science/electronics/gtkwave { }; - - kicad = callPackage ../applications/science/electronics/kicad { - wxGTK = wxGTK29; - }; - - ngspice = callPackage ../applications/science/electronics/ngspice { }; - - qucs = callPackage ../applications/science/electronics/qucs { }; - - xoscope = callPackage ../applications/science/electronics/xoscope { }; - - - ### SCIENCE / MATH - - ecm = callPackage ../applications/science/math/ecm { }; - - eukleides = callPackage ../applications/science/math/eukleides { - texinfo = texinfo4; - }; - - fricas = callPackage ../applications/science/math/fricas { }; - - gap = callPackage ../applications/science/math/gap { }; - - maxima = callPackage ../applications/science/math/maxima { }; - - wxmaxima = callPackage ../applications/science/math/wxmaxima { }; - - pari = callPackage ../applications/science/math/pari {}; - - pspp = callPackage ../applications/science/math/pssp { - inherit (gnome) libglade gtksourceview; - }; - - singular = callPackage ../applications/science/math/singular {}; - - scilab = callPackage ../applications/science/math/scilab { - withXaw3d = false; - withTk = true; - withGtk = false; - withOCaml = true; - withX = true; - }; - - msieve = callPackage ../applications/science/math/msieve { }; - - weka = callPackage ../applications/science/math/weka { }; - - yad = callPackage ../tools/misc/yad { }; - - yacas = callPackage ../applications/science/math/yacas { }; - - speedcrunch = callPackage ../applications/science/math/speedcrunch { - qt = qt4; - cmake = cmakeCurses; - }; - - - ### SCIENCE / MISC - - boinc = callPackage ../applications/science/misc/boinc { }; - - celestia = callPackage ../applications/science/astronomy/celestia { - lua = lua5_1; - inherit (xlibs) libXmu; - inherit (pkgs.gnome) gtkglext; - }; - - fityk = callPackage ../applications/science/misc/fityk { }; - - gravit = callPackage ../applications/science/astronomy/gravit { }; - - golly = callPackage ../applications/science/misc/golly { }; - - megam = callPackage ../applications/science/misc/megam { }; - - root = callPackage ../applications/science/misc/root { }; - - simgrid = callPackage ../applications/science/misc/simgrid { }; - - spyder = callPackage ../applications/science/spyder { - inherit (pythonPackages) pyflakes rope sphinx numpy scipy matplotlib; # recommended - inherit (pythonPackages) ipython pep8; # optional - inherit pylint; - }; - - stellarium = callPackage ../applications/science/astronomy/stellarium { }; - - tulip = callPackage ../applications/science/misc/tulip { }; - - vite = callPackage ../applications/science/misc/vite { }; - - xplanet = callPackage ../applications/science/astronomy/xplanet { }; - - ### MISC - - atari800 = callPackage ../misc/emulators/atari800 { }; - - ataripp = callPackage ../misc/emulators/atari++ { }; - - auctex = callPackage ../tools/typesetting/tex/auctex { }; - - beep = callPackage ../misc/beep { }; - - cups = callPackage ../misc/cups { libusb = libusb1; }; - - cups_pdf_filter = callPackage ../misc/cups/pdf-filter.nix { }; - - gutenprint = callPackage ../misc/drivers/gutenprint { }; - - gutenprintBin = callPackage ../misc/drivers/gutenprint/bin.nix { }; - - cupsBjnp = callPackage ../misc/cups/drivers/cups-bjnp { }; - - darcnes = callPackage ../misc/emulators/darcnes { }; - - dbacl = callPackage ../tools/misc/dbacl { }; - - dblatex = callPackage ../tools/typesetting/tex/dblatex { - enableAllFeatures = false; - }; - - dblatexFull = appendToName "full" (dblatex.override { - enableAllFeatures = true; - }); - - dosbox = callPackage ../misc/emulators/dosbox { }; - - dpkg = callPackage ../tools/package-management/dpkg { }; - - ekiga = newScope pkgs.gnome ../applications/networking/instant-messengers/ekiga { }; - - emulationstation = callPackage ../misc/emulators/emulationstation { }; - - electricsheep = callPackage ../misc/screensavers/electricsheep { }; - - fakenes = callPackage ../misc/emulators/fakenes { }; - - fceux = callPackage ../misc/emulators/fceux { }; - - foldingathome = callPackage ../misc/foldingathome { }; - - foo2zjs = callPackage ../misc/drivers/foo2zjs {}; - - foomatic_filters = callPackage ../misc/drivers/foomatic-filters {}; - - freestyle = callPackage ../misc/freestyle { }; - - gajim = callPackage ../applications/networking/instant-messengers/gajim { }; - - gammu = callPackage ../applications/misc/gammu { }; - - gensgs = callPackage_i686 ../misc/emulators/gens-gs { }; - - ghostscript = callPackage ../misc/ghostscript { - x11Support = false; - cupsSupport = config.ghostscript.cups or (!stdenv.isDarwin); - gnuFork = config.ghostscript.gnu or false; - }; - - ghostscriptX = appendToName "with-X" (ghostscript.override { - x11Support = true; - }); - - guix = callPackage ../tools/package-management/guix { }; - - gxemul = callPackage ../misc/gxemul { }; - - hatari = callPackage ../misc/emulators/hatari { }; - - hplip = callPackage ../misc/drivers/hplip { }; - - hplipWithPlugin = hplip.override { withPlugin = true; }; - - # using the new configuration style proposal which is unstable - jack1 = callPackage ../misc/jackaudio/jack1.nix { }; - - jack2 = callPackage ../misc/jackaudio { }; - - keynav = callPackage ../tools/X11/keynav { }; - - lazylist = callPackage ../tools/typesetting/tex/lazylist { }; - - lilypond = callPackage ../misc/lilypond { guile = guile_1_8; }; - - martyr = callPackage ../development/libraries/martyr { }; - - maven = maven3; - maven3 = callPackage ../misc/maven { jdk = openjdk; }; - - mess = callPackage ../misc/emulators/mess { - inherit (pkgs.gnome) GConf; - }; - - mupen64plus = callPackage ../misc/emulators/mupen64plus { }; - - mupen64plus1_5 = callPackage ../misc/emulators/mupen64plus/1.5.nix { }; - - nix = nixStable; - - nixStable = callPackage ../tools/package-management/nix { - storeDir = config.nix.storeDir or "/nix/store"; - stateDir = config.nix.stateDir or "/nix/var"; - }; - - nixUnstable = callPackage ../tools/package-management/nix/unstable.nix { - storeDir = config.nix.storeDir or "/nix/store"; - stateDir = config.nix.stateDir or "/nix/var"; - }; - - nixops = callPackage ../tools/package-management/nixops { }; - - nix-prefetch-scripts = callPackage ../tools/package-management/nix-prefetch-scripts { }; - - nix-repl = callPackage ../tools/package-management/nix-repl { }; - - nut = callPackage ../applications/misc/nut { }; - - solfege = callPackage ../misc/solfege { - pysqlite = pkgs.pythonPackages.sqlite3; - }; - - disnix = callPackage ../tools/package-management/disnix { }; - - dysnomia = callPackage ../tools/package-management/disnix/dysnomia { - enableApacheWebApplication = config.disnix.enableApacheWebApplication or false; - enableAxis2WebService = config.disnix.enableAxis2WebService or false; - enableEjabberdDump = config.disnix.enableEjabberdDump or false; - enableMySQLDatabase = config.disnix.enableMySQLDatabase or false; - enablePostgreSQLDatabase = config.disnix.enablePostgreSQLDatabase or false; - enableSubversionRepository = config.disnix.enableSubversionRepository or false; - enableTomcatWebApplication = config.disnix.enableTomcatWebApplication or false; - }; - - disnixos = callPackage ../tools/package-management/disnix/disnixos { }; - - DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService { }; - - latex2html = callPackage ../tools/typesetting/tex/latex2html/default.nix { - tex = tetex; - }; - - lkproof = callPackage ../tools/typesetting/tex/lkproof { }; - - mysqlWorkbench = newScope gnome ../applications/misc/mysql-workbench { - lua = lua5; - inherit (pythonPackages) pexpect paramiko; - }; - - robomongo = callPackage ../applications/misc/robomongo { }; - - opkg = callPackage ../tools/package-management/opkg { }; - - pgadmin = callPackage ../applications/misc/pgadmin { }; - - pgf = pgf2; - - # Keep the old PGF since some documents don't render properly with - # the new one. - pgf1 = callPackage ../tools/typesetting/tex/pgf/1.x.nix { }; - - pgf2 = callPackage ../tools/typesetting/tex/pgf/2.x.nix { }; - - pgfplots = callPackage ../tools/typesetting/tex/pgfplots { }; - - pjsip = callPackage ../applications/networking/pjsip { }; - - polytable = callPackage ../tools/typesetting/tex/polytable { }; - - PPSSPP = callPackage ../misc/emulators/ppsspp { }; - - uae = callPackage ../misc/emulators/uae { }; - - putty = callPackage ../applications/networking/remote/putty { }; - - retroarch = callPackage ../misc/emulators/retroarch { }; - - rssglx = callPackage ../misc/screensavers/rss-glx { }; - - xlockmore = callPackage ../misc/screensavers/xlockmore { }; - - samsungUnifiedLinuxDriver = import ../misc/cups/drivers/samsung { - inherit fetchurl stdenv; - inherit cups ghostscript glibc patchelf; - gcc = import ../development/compilers/gcc/4.4 { - inherit stdenv fetchurl gmp mpfr noSysDirs gettext which; - texinfo = texinfo4; - profiledCompiler = true; - }; - }; - - saneBackends = callPackage ../applications/graphics/sane/backends.nix { - gt68xxFirmware = config.sane.gt68xxFirmware or null; - snapscanFirmware = config.sane.snapscanFirmware or null; - hotplugSupport = config.sane.hotplugSupport or true; - libusb = libusb1; - }; - - saneBackendsGit = callPackage ../applications/graphics/sane/backends-git.nix { - gt68xxFirmware = config.sane.gt68xxFirmware or null; - snapscanFirmware = config.sane.snapscanFirmware or null; - hotplugSupport = config.sane.hotplugSupport or true; - }; - - mkSaneConfig = callPackage ../applications/graphics/sane/config.nix { }; - - saneFrontends = callPackage ../applications/graphics/sane/frontends.nix { }; - - seafile-shared = callPackage ../misc/seafile-shared { }; - - slock = callPackage ../misc/screensavers/slock { }; - - sourceAndTags = import ../misc/source-and-tags { - inherit pkgs stdenv unzip lib ctags; - hasktags = haskellPackages.hasktags; - }; - - splix = callPackage ../misc/cups/drivers/splix { }; - - streamripper = callPackage ../applications/audio/streamripper { }; - - sqsh = callPackage ../development/tools/sqsh { }; - - tetex = callPackage ../tools/typesetting/tex/tetex { libpng = libpng12; }; - - tex4ht = callPackage ../tools/typesetting/tex/tex4ht { }; - - texFunctions = import ../tools/typesetting/tex/nix pkgs; - - texLive = builderDefsPackage (import ../tools/typesetting/tex/texlive) { - inherit builderDefs zlib bzip2 ncurses libpng ed lesstif ruby potrace - gd t1lib freetype icu perl expat curl xz pkgconfig zziplib texinfo - libjpeg bison python fontconfig flex poppler libpaper graphite2 - makeWrapper; - inherit (xlibs) libXaw libX11 xproto libXt libXpm - libXmu libXext xextproto libSM libICE; - ghostscript = ghostscriptX; - harfbuzz = harfbuzz.override { - withIcu = true; withGraphite2 = true; - }; - }; - - texLiveFull = lib.setName "texlive-full" (texLiveAggregationFun { - paths = [ texLive texLiveExtra lmodern texLiveCMSuper texLiveLatexXColor - texLivePGF texLiveBeamer texLiveModerncv tipa tex4ht texinfo - texLiveModerntimeline ]; - }); - - /* Look in configurations/misc/raskin.nix for usage example (around revisions - where TeXLive was added) - - (texLiveAggregationFun { - paths = [texLive texLiveExtra texLiveCMSuper - texLiveBeamer - ]; - }) - - You need to use texLiveAggregationFun to regenerate, say, ls-R (TeX-related file list) - Just installing a few packages doesn't work. - */ - texLiveAggregationFun = params: - builderDefsPackage (import ../tools/typesetting/tex/texlive/aggregate.nix) - ({inherit poppler perl makeWrapper;} // params); - - texDisser = callPackage ../tools/typesetting/tex/disser {}; - - texLiveContext = builderDefsPackage (import ../tools/typesetting/tex/texlive/context.nix) { - inherit texLive; - }; - - texLiveExtra = builderDefsPackage (import ../tools/typesetting/tex/texlive/extra.nix) { - inherit texLive xz; - }; - - texLiveCMSuper = builderDefsPackage (import ../tools/typesetting/tex/texlive/cm-super.nix) { - inherit texLive; - }; - - texLiveLatexXColor = builderDefsPackage (import ../tools/typesetting/tex/texlive/xcolor.nix) { - inherit texLive; - }; - - texLivePGF = builderDefsPackage (import ../tools/typesetting/tex/texlive/pgf.nix) { - inherit texLiveLatexXColor texLive; - }; - - texLiveBeamer = builderDefsPackage (import ../tools/typesetting/tex/texlive/beamer.nix) { - inherit texLiveLatexXColor texLivePGF texLive; - }; - - texLiveModerncv = builderDefsPackage (import ../tools/typesetting/tex/texlive/moderncv.nix) { - inherit texLive unzip; - }; - - texLiveModerntimeline = builderDefsPackage (import ../tools/typesetting/tex/texlive/moderntimeline.nix) { - inherit texLive unzip; - }; - - thermald = callPackage ../tools/system/thermald { }; - - thinkfan = callPackage ../tools/system/thinkfan { }; - - vice = callPackage ../misc/emulators/vice { - libX11 = xlibs.libX11; - giflib = giflib_4_1; - }; - - viewnior = callPackage ../applications/graphics/viewnior { }; - - vimPlugins = recurseIntoAttrs (callPackage ../misc/vim-plugins { }); - - vimprobable2 = callPackage ../applications/networking/browsers/vimprobable2 { - webkit = webkitgtk2; - }; - - vimprobable2Wrapper = wrapFirefox - { browser = vimprobable2; browserName = "vimprobable2"; desktopName = "Vimprobable2"; - }; - - vimb = callPackage ../applications/networking/browsers/vimb { - webkit = webkitgtk2; - }; - - vimbWrapper = wrapFirefox { - browser = vimb; - browserName = "vimb"; - desktopName = "Vimb"; - }; - - VisualBoyAdvance = callPackage ../misc/emulators/VisualBoyAdvance { }; - - # Wine cannot be built in 64-bit; use a 32-bit build instead. - wineStable = callPackage_i686 ../misc/emulators/wine/stable.nix { - bison = bison2; - }; - - wineUnstable = lowPrio (callPackage_i686 ../misc/emulators/wine/unstable.nix { - bison = bison2; - }); - - wine = wineStable; - - winetricks = callPackage ../misc/emulators/wine/winetricks.nix { - inherit (gnome2) zenity; - }; - - wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { }; - - x2x = callPackage ../tools/X11/x2x { }; - - xboxdrv = callPackage ../misc/drivers/xboxdrv { }; - - xinput_calibrator = callPackage ../tools/X11/xinput_calibrator { - inherit (xlibs) libXi inputproto; - }; - - xosd = callPackage ../misc/xosd { }; - - xsane = callPackage ../applications/graphics/sane/xsane.nix { - libpng = libpng12; - saneBackends = saneBackends; - }; - - yafc = callPackage ../applications/networking/yafc { }; - - yandex-disk = callPackage ../tools/filesystems/yandex-disk { }; - - myEnvFun = import ../misc/my-env { - inherit substituteAll pkgs; - inherit (stdenv) mkDerivation; - }; - - # patoline requires a rather large ocaml compilation environment. - # this is why it is build as an environment and not just a normal package. - # remark : the emacs mode is also installed, but you have to adjust your load-path. - PatolineEnv = pack: myEnvFun { - name = "patoline"; - buildInputs = [ stdenv ncurses mesa freeglut libzip gcc - pack.ocaml pack.findlib pack.camomile - pack.dypgen pack.ocaml_sqlite3 pack.camlzip - pack.lablgtk pack.camlimages pack.ocaml_cairo - pack.lablgl pack.ocamlnet pack.cryptokit - pack.ocaml_pcre pack.patoline - ]; - # this is to circumvent the bug with libgcc_s.so.1 which is - # not found when using thread - extraCmds = '' - LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${gcc.gcc}/lib - export LD_LIBRARY_PATH - ''; - }; - - patoline = PatolineEnv ocamlPackages_4_00_1; - - znc = callPackage ../applications/networking/znc { }; - - zncModules = recurseIntoAttrs ( - callPackage ../applications/networking/znc/modules.nix { } - ); - - zsnes = callPackage_i686 ../misc/emulators/zsnes { }; - - snes9x-gtk = callPackage ../misc/emulators/snes9x-gtk { }; - - higan = callPackage ../misc/emulators/higan { }; - - misc = import ../misc/misc.nix { inherit pkgs stdenv; }; - - bullet = callPackage ../development/libraries/bullet {}; - - dart = callPackage ../development/interpreters/dart { }; - - httrack = callPackage ../tools/backup/httrack { }; - - mg = callPackage ../applications/editors/mg { }; - - - # Attributes for backward compatibility. - adobeReader = adobe-reader; - asciidocFull = asciidoc-full; # added 2014-06-22 - lttngTools = lttng-tools; # added 2014-07-31 - lttngUst = lttng-ust; # added 2014-07-31 - - -}; in self; in pkgs From e23504c0b2849b50c2463ab935cb6decfc40385c Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 09:58:10 +0200 Subject: [PATCH 215/789] evolution-data-server: update from 3.12.2 to 3.12.5 --- .../gnome-3/3.12/core/evolution-data-server/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix b/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix index b8711f7e563..2cb1fbe90d4 100644 --- a/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { - name = "evolution-data-server-3.12.2"; + name = "evolution-data-server-3.12.5"; src = fetchurl { url = "mirror://gnome/sources/evolution-data-server/3.12/${name}.tar.xz"; - sha256 = "91c95e17a8c1cd1086dafcd99a40bdf8f5993770f251f8b0a10e5395e3f5a3b6"; + sha256 = "d3a2f832f823cb2a41467926dcaec984a15b2cb51ef89cf41267e337ca750811"; }; buildInputs = with gnome3; @@ -28,6 +28,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { platforms = platforms.linux; + maintainers = [ maintainers.lethalman ]; }; } From 1d0c2faf6b42f98d143c5758dfbe6c74b0a01ec5 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 10:01:19 +0200 Subject: [PATCH 216/789] totem: drop upstream patch after update --- .../gnome-3/3.12/core/totem/default.nix | 2 - .../3.12/core/totem/fix_files_loss.patch | 72 ------------------- 2 files changed, 74 deletions(-) delete mode 100644 pkgs/desktops/gnome-3/3.12/core/totem/fix_files_loss.patch diff --git a/pkgs/desktops/gnome-3/3.12/core/totem/default.nix b/pkgs/desktops/gnome-3/3.12/core/totem/default.nix index 1322fdcaae3..49094751983 100644 --- a/pkgs/desktops/gnome-3/3.12/core/totem/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/totem/default.nix @@ -39,8 +39,6 @@ stdenv.mkDerivation rec { rm $out/share/icons/hicolor/icon-theme.cache ''; - patches = [ ./fix_files_loss.patch ]; - meta = with stdenv.lib; { homepage = https://wiki.gnome.org/Apps/Videos; description = "Movie player for the GNOME desktop based on GStreamer"; diff --git a/pkgs/desktops/gnome-3/3.12/core/totem/fix_files_loss.patch b/pkgs/desktops/gnome-3/3.12/core/totem/fix_files_loss.patch deleted file mode 100644 index b85ad1efd00..00000000000 --- a/pkgs/desktops/gnome-3/3.12/core/totem/fix_files_loss.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 524c9e39a0ca6f2d1699e6e6d9ba3db1ea80d9f9 Mon Sep 17 00:00:00 2001 -From: Bastien Nocera -Date: Thu, 15 May 2014 19:28:35 +0200 -Subject: main: Fix potential data loss when removing multiple files - -We were using a list of GtkTreePaths and deleting the items one-by-one -when the user clicked the "Delete" button. But after the first deletion, -the tree model would have changed, and instead of pointing to the 2nd -item we wanted to delete, the GtkTreePath would have pointed to another -item, usually not one that we wanted to delete. - -We now use GtkTreeRowReferences, which will always point to the same -row, as long as it exists. - -https://bugzilla.gnome.org/show_bug.cgi?id=729778 - -diff --git a/src/totem-grilo.c b/src/totem-grilo.c -index 2133d77..0cff0d6 100644 ---- a/src/totem-grilo.c -+++ b/src/totem-grilo.c -@@ -2074,7 +2074,8 @@ static void - delete_foreach (gpointer data, - gpointer user_data) - { -- GtkTreePath *path = data; -+ GtkTreeRowReference *ref = data; -+ GtkTreePath *path; - GtkTreeModel *view_model = user_data; - GtkTreeIter iter; - GrlSource *source; -@@ -2085,8 +2086,11 @@ delete_foreach (gpointer data, - GtkTreeModel *model; - GtkTreeIter real_model_iter; - -- if (!gtk_tree_model_get_iter (view_model, &iter, path)) -+ path = gtk_tree_row_reference_get_path (ref); -+ if (!path || !gtk_tree_model_get_iter (view_model, &iter, path)) { -+ g_warning ("An item that was scheduled for removal isn't available any more"); - return; -+ } - - gtk_tree_model_get (view_model, &iter, - MODEL_RESULTS_CONTENT, &media, -@@ -2151,14 +2155,23 @@ delete_cb (TotemSelectionToolbar *bar, - TotemGrilo *self) - { - GtkTreeModel *model; -- GList *list; -+ GList *list, *l; - - g_signal_handlers_block_by_func (self->priv->browser, "view-selection-changed", self); - - model = gd_main_view_get_model (GD_MAIN_VIEW (self->priv->browser)); - list = gd_main_view_get_selection (GD_MAIN_VIEW (self->priv->browser)); -+ -+ /* GList of GtkTreePaths to a GList of GtkTreeRowReferences */ -+ for (l = list; l != NULL; l = l->next) { -+ GtkTreeRowReference *ref; -+ -+ ref = gtk_tree_row_reference_new (model, l->data); -+ gtk_tree_path_free (l->data); -+ l->data = ref; -+ } - g_list_foreach (list, delete_foreach, model); -- g_list_free_full (list, (GDestroyNotify) gtk_tree_path_free); -+ g_list_free_full (list, (GDestroyNotify) gtk_tree_row_reference_free); - - g_signal_handlers_unblock_by_func (self->priv->browser, "view-selection-changed", self); - --- -cgit v0.10.1 - From 88d270f62e268c4cd36bc6e181ee885e21167376 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 3 Sep 2014 01:06:04 -0700 Subject: [PATCH 217/789] grub2: Add localizations --- pkgs/tools/misc/grub/2.0x.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix index fdb2ae556e8..e5471a6c404 100644 --- a/pkgs/tools/misc/grub/2.0x.nix +++ b/pkgs/tools/misc/grub/2.0x.nix @@ -22,6 +22,13 @@ let url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz"; sha256 = "0s0qfff6n6282q28nwwblp5x295zd6n71kl43xj40vgvdqxv0fxx"; }; + + po_src = fetchurl { + name = "grub-2.02-beta2.tar.gz"; + url = "http://alpha.gnu.org/gnu/grub/grub-2.02~beta2.tar.gz"; + sha256 = "1lr9h3xcx0wwrnkxdnkfjwy08j7g7mdlmmbdip2db4zfgi69h0rm"; + }; + in ( assert efiSupport -> canEfi; @@ -61,7 +68,10 @@ stdenv.mkDerivation rec { ''; prePatch = - '' sh autogen.sh + '' tar zxf ${po_src} grub-2.02~beta2/po + rm -rf po + mv grub-2.02~beta2/po po + sh autogen.sh gunzip < "${unifont_bdf}" > "unifont.bdf" sed -i "configure" \ -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g" From 698170005fe85b993e2acb6f1af46d04153109d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=BCdiger=20Sonderfeld?= Date: Thu, 21 Aug 2014 00:41:41 +0200 Subject: [PATCH 218/789] Add QScintilla. --- .../libraries/qscintilla/default.nix | 47 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++ 2 files changed, 51 insertions(+) create mode 100644 pkgs/development/libraries/qscintilla/default.nix diff --git a/pkgs/development/libraries/qscintilla/default.nix b/pkgs/development/libraries/qscintilla/default.nix new file mode 100644 index 00000000000..c98496e336c --- /dev/null +++ b/pkgs/development/libraries/qscintilla/default.nix @@ -0,0 +1,47 @@ +{ stdenv, fetchurl, qt }: + +stdenv.mkDerivation rec { + pname = "qscintilla"; + version = "2.8.3"; + + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://sourceforge/pyqt/QScintilla2/QScintilla-2.8.3/${name}.tar.gz"; + sha256 = "fb94e6d61c3ccd4bf167d5f092629e619f7069d42207469458998b761a7cf505"; + }; + + buildInputs = [ qt ]; + + preConfigure = '' + cd Qt4Qt5 + sed -i -e "s,\$\$\\[QT_INSTALL_LIBS\\],$out/libs," \ + -e "s,\$\$\\[QT_INSTALL_HEADERS\\],$out/include/," \ + -e "s,\$\$\\[QT_INSTALL_TRANSLATIONS\\],$out/share/qt/translations," \ + -e "s,\$\$\\[QT_INSTALL_DATA\\],$out/share/qt," \ + qscintilla.pro + qmake qscintilla.pro + ''; + + # TODO PyQt Support. + + meta = { + description = "A Qt port of the Scintilla text editing library"; + longDescription = '' + QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ editor + control. + + As well as features found in standard text editing components, + QScintilla includes features especially useful when editing and + debugging source code. These include support for syntax styling, + error indicators, code completion and call tips. The selection + margin can contain markers like those used in debuggers to + indicate breakpoints and the current line. Styling choices are + more open than with many editors, allowing the use of + proportional fonts, bold and italics, multiple foreground and + background colours and multiple fonts. + ''; + homepage = http://www.riverbankcomputing.com/software/qscintilla/intro; + license = stdenv.lib.licenses.gpl2; # and gpl3 and commercial + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 597cc4360de..3cc15a09299 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1979,6 +1979,10 @@ let qjoypad = callPackage ../tools/misc/qjoypad { }; + qscintilla = callPackage ../development/libraries/qscintilla { + qt = qt4; + }; + qshowdiff = callPackage ../tools/text/qshowdiff { }; quilt = callPackage ../development/tools/quilt { }; From 8abe312cde76ee9c201e08ed45a19d8f774b176f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=BCdiger=20Sonderfeld?= Date: Thu, 21 Aug 2014 02:08:19 +0200 Subject: [PATCH 219/789] octave: Add qscintilla support. #3711 --- pkgs/development/interpreters/octave/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index eac067da282..d302a2a6e18 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, gfortran, readline, ncurses, perl, flex, texinfo, qhull , libX11, graphicsmagick, pcre, liblapack, pkgconfig, mesa, fltk , fftw, fftwSinglePrec, zlib, curl, qrupdate -, qt ? null, ghostscript ? null, llvm ? null, hdf5 ? null,glpk ? null +, qt ? null, qscintilla ? null, ghostscript ? null, llvm ? null, hdf5 ? null,glpk ? null , suitesparse ? null, gnuplot ? null, openjdk ? null, python ? null }: @@ -17,6 +17,7 @@ stdenv.mkDerivation rec { graphicsmagick pcre liblapack pkgconfig mesa fltk zlib curl fftw fftwSinglePrec qrupdate ] ++ (stdenv.lib.optional (qt != null) qt) + ++ (stdenv.lib.optional (qscintilla != null) qscintilla) ++ (stdenv.lib.optional (ghostscript != null) ghostscript) ++ (stdenv.lib.optional (llvm != null) llvm) ++ (stdenv.lib.optional (hdf5 != null) hdf5) From 4efc03f46fca7225d7c6063955f9c0768e70a991 Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Wed, 3 Sep 2014 01:09:58 -0700 Subject: [PATCH 220/789] Delete nixos/modules/module-list.nix.orig, extraneous file --- nixos/modules/module-list.nix.orig | 372 ----------------------------- 1 file changed, 372 deletions(-) delete mode 100644 nixos/modules/module-list.nix.orig diff --git a/nixos/modules/module-list.nix.orig b/nixos/modules/module-list.nix.orig deleted file mode 100644 index 3604753c880..00000000000 --- a/nixos/modules/module-list.nix.orig +++ /dev/null @@ -1,372 +0,0 @@ -[ - ./config/fonts/corefonts.nix - ./config/fonts/fontconfig.nix - ./config/fonts/fontdir.nix - ./config/fonts/fonts.nix - ./config/fonts/ghostscript.nix - ./config/gnu.nix - ./config/gtk-exe-env.nix - ./config/i18n.nix - ./config/krb5.nix - ./config/ldap.nix - ./config/networking.nix - ./config/no-x-libs.nix - ./config/nsswitch.nix - ./config/power-management.nix - ./config/pulseaudio.nix - ./config/qt-plugin-env.nix - ./config/shells-environment.nix - ./config/swap.nix - ./config/sysctl.nix - ./config/system-environment.nix - ./config/system-path.nix - ./config/timezone.nix - ./config/vpnc.nix - ./config/unix-odbc-drivers.nix - ./config/users-groups.nix - ./config/zram.nix - ./hardware/all-firmware.nix - ./hardware/cpu/amd-microcode.nix - ./hardware/cpu/intel-microcode.nix - ./hardware/network/b43.nix - ./hardware/network/intel-2100bg.nix - ./hardware/network/intel-2200bg.nix - ./hardware/network/intel-3945abg.nix - ./hardware/network/ralink.nix - ./hardware/network/rtl8192c.nix - ./hardware/opengl.nix - ./hardware/pcmcia.nix - ./hardware/video/bumblebee.nix - ./hardware/video/nvidia.nix - ./installer/tools/nixos-checkout.nix - ./installer/tools/tools.nix - ./misc/assertions.nix - ./misc/check-config.nix - ./misc/crashdump.nix - ./misc/ids.nix - ./misc/lib.nix - ./misc/locate.nix - ./misc/meta.nix - ./misc/nixpkgs.nix - ./misc/passthru.nix - ./misc/version.nix - ./programs/atop.nix - ./programs/bash/bash.nix - ./programs/bash/command-not-found.nix - ./programs/blcr.nix - ./programs/dconf.nix - ./programs/environment.nix - ./programs/info.nix - ./programs/nano.nix - ./programs/screen.nix - ./programs/shadow.nix - ./programs/shell.nix - ./programs/ssh.nix - ./programs/ssmtp.nix - ./programs/uim.nix - ./programs/venus.nix - ./programs/wvdial.nix - ./programs/freetds.nix - ./programs/zsh/zsh.nix - ./rename.nix - ./security/apparmor.nix - ./security/apparmor-suid.nix - ./security/ca.nix - ./security/duosec.nix - ./security/grsecurity.nix - ./security/pam.nix - ./security/pam_usb.nix - ./security/polkit.nix - ./security/prey.nix - ./security/rngd.nix - ./security/rtkit.nix - ./security/setuid-wrappers.nix - ./security/sudo.nix - ./services/amqp/activemq/default.nix - ./services/amqp/rabbitmq.nix - ./services/audio/alsa.nix - ./services/audio/fuppes.nix - ./services/audio/mpd.nix - ./services/audio/mopidy.nix - ./services/backup/almir.nix - ./services/backup/bacula.nix - ./services/backup/mysql-backup.nix - ./services/backup/postgresql-backup.nix - ./services/backup/rsnapshot.nix - ./services/backup/sitecopy-backup.nix - ./services/backup/tarsnap.nix - ./services/continuous-integration/jenkins/default.nix - ./services/continuous-integration/jenkins/slave.nix - ./services/databases/4store-endpoint.nix - ./services/databases/4store.nix - ./services/databases/couchdb.nix - ./services/databases/firebird.nix - ./services/databases/influxdb.nix - ./services/databases/memcached.nix - ./services/databases/monetdb.nix - ./services/databases/mongodb.nix - ./services/databases/mysql.nix - ./services/databases/neo4j.nix - ./services/databases/openldap.nix - ./services/databases/postgresql.nix - ./services/databases/redis.nix - ./services/databases/virtuoso.nix - ./services/desktops/accountsservice.nix - ./services/desktops/geoclue2.nix - ./services/desktops/gnome3/at-spi2-core.nix - ./services/desktops/gnome3/evolution-data-server.nix - ./services/desktops/gnome3/gnome-documents.nix - ./services/desktops/gnome3/gnome-keyring.nix - ./services/desktops/gnome3/gnome-online-accounts.nix - ./services/desktops/gnome3/gnome-online-miners.nix - ./services/desktops/gnome3/gnome-user-share.nix - ./services/desktops/gnome3/gvfs.nix - ./services/desktops/gnome3/seahorse.nix - ./services/desktops/gnome3/sushi.nix - ./services/desktops/gnome3/tracker.nix - ./services/desktops/telepathy.nix - ./services/games/ghost-one.nix - ./services/games/minecraft-server.nix - ./services/hardware/acpid.nix - ./services/hardware/amd-hybrid-graphics.nix - ./services/hardware/bluetooth.nix - ./services/hardware/nvidia-optimus.nix - ./services/hardware/pcscd.nix - ./services/hardware/pommed.nix - ./services/hardware/sane.nix - ./services/hardware/tcsd.nix - ./services/hardware/thinkfan.nix - ./services/hardware/udev.nix - ./services/hardware/udisks2.nix - ./services/hardware/upower.nix - ./services/logging/klogd.nix - ./services/logging/logcheck.nix - ./services/logging/logrotate.nix - ./services/logging/logstash.nix - ./services/logging/rsyslogd.nix - ./services/logging/syslogd.nix - ./services/logging/syslog-ng.nix - ./services/mail/dovecot.nix - ./services/mail/freepops.nix - ./services/mail/mail.nix - ./services/mail/mlmmj.nix - ./services/mail/opensmtpd.nix - ./services/mail/postfix.nix - ./services/mail/spamassassin.nix - #./services/misc/autofs.nix - ./services/misc/cgminer.nix - ./services/misc/dictd.nix - ./services/misc/disnix.nix - ./services/misc/felix.nix - ./services/misc/folding-at-home.nix - ./services/misc/gitolite.nix - ./services/misc/gpsd.nix - ./services/misc/nix-daemon.nix - ./services/misc/nix-gc.nix - ./services/misc/nixos-manual.nix - ./services/misc/nix-ssh-serve.nix - ./services/misc/rippled.nix - ./services/misc/rogue.nix - ./services/misc/siproxd.nix - ./services/misc/svnserve.nix - ./services/misc/synergy.nix - ./services/misc/uhub.nix - ./services/misc/zookeeper.nix - ./services/monitoring/apcupsd.nix - ./services/monitoring/dd-agent.nix - ./services/monitoring/graphite.nix - ./services/monitoring/monit.nix - ./services/monitoring/munin.nix - ./services/monitoring/nagios.nix - ./services/monitoring/riemann.nix - ./services/monitoring/riemann-dash.nix - ./services/monitoring/smartd.nix - ./services/monitoring/statsd.nix - ./services/monitoring/systemhealth.nix - ./services/monitoring/ups.nix - ./services/monitoring/uptime.nix - ./services/monitoring/zabbix-agent.nix - ./services/monitoring/zabbix-server.nix - ./services/network-filesystems/drbd.nix - ./services/network-filesystems/nfsd.nix - ./services/network-filesystems/openafs-client/default.nix - ./services/network-filesystems/rsyncd.nix - ./services/network-filesystems/samba.nix - ./services/network-filesystems/diod.nix - ./services/networking/amuled.nix - ./services/networking/atftpd.nix - ./services/networking/avahi-daemon.nix - ./services/networking/bind.nix - ./services/networking/bitlbee.nix - ./services/networking/btsync.nix - ./services/networking/chrony.nix - ./services/networking/cjdns.nix - ./services/networking/cntlm.nix - ./services/networking/connman.nix - ./services/networking/ddclient.nix - ./services/networking/dhcpcd.nix - ./services/networking/dhcpd.nix - ./services/networking/dnsmasq.nix - ./services/networking/ejabberd.nix - ./services/networking/firewall.nix - ./services/networking/flashpolicyd.nix - ./services/networking/freenet.nix - ./services/networking/git-daemon.nix - ./services/networking/gnunet.nix - ./services/networking/gogoclient.nix - ./services/networking/gvpe.nix - ./services/networking/haproxy.nix - ./services/networking/hostapd.nix - ./services/networking/ifplugd.nix - ./services/networking/iodined.nix - ./services/networking/ircd-hybrid/default.nix - ./services/networking/kippo.nix - ./services/networking/minidlna.nix - ./services/networking/murmur.nix - ./services/networking/nat.nix - ./services/networking/networkmanager.nix - ./services/networking/ngircd.nix - ./services/networking/notbit.nix - ./services/networking/nsd.nix - ./services/networking/ntopng.nix - ./services/networking/ntpd.nix - ./services/networking/oidentd.nix - ./services/networking/openfire.nix - ./services/networking/openntpd.nix - ./services/networking/openvpn.nix - ./services/networking/polipo.nix - ./services/networking/prayer.nix - ./services/networking/privoxy.nix - ./services/networking/quassel.nix - ./services/networking/radicale.nix - ./services/networking/radvd.nix - ./services/networking/rdnssd.nix - ./services/networking/rpcbind.nix - ./services/networking/sabnzbd.nix - ./services/networking/searx.nix - ./services/networking/spiped.nix - ./services/networking/ssh/lshd.nix - ./services/networking/ssh/sshd.nix - ./services/networking/supybot.nix - ./services/networking/syncthing.nix - ./services/networking/tcpcrypt.nix - ./services/networking/teamspeak3.nix - ./services/networking/tftpd.nix - ./services/networking/unbound.nix - ./services/networking/unifi.nix - ./services/networking/vsftpd.nix - ./services/networking/wakeonlan.nix - ./services/networking/websockify.nix - ./services/networking/wicd.nix - ./services/networking/wpa_supplicant.nix - ./services/networking/xinetd.nix - ./services/networking/znc.nix - ./services/printing/cupsd.nix - ./services/scheduling/atd.nix - ./services/scheduling/cron.nix - ./services/scheduling/fcron.nix - ./services/search/elasticsearch.nix - ./services/search/solr.nix - ./services/security/clamav.nix - ./services/security/fail2ban.nix - ./services/security/fprot.nix - ./services/security/frandom.nix - ./services/security/haveged.nix - ./services/security/torify.nix - ./services/security/tor.nix - ./services/security/torsocks.nix - ./services/system/dbus.nix - ./services/system/kerberos.nix - ./services/system/nscd.nix - ./services/system/uptimed.nix - ./services/torrent/deluge.nix - ./services/torrent/transmission.nix - ./services/ttys/agetty.nix - ./services/ttys/gpm.nix - ./services/ttys/kmscon.nix - ./services/web-servers/apache-httpd/default.nix - ./services/web-servers/fcgiwrap.nix - ./services/web-servers/jboss/default.nix - ./services/web-servers/lighttpd/cgit.nix - ./services/web-servers/lighttpd/default.nix - ./services/web-servers/lighttpd/gitweb.nix - ./services/web-servers/nginx/default.nix - ./services/web-servers/phpfpm.nix - ./services/web-servers/tomcat.nix - ./services/web-servers/varnish/default.nix - ./services/web-servers/winstone.nix - ./services/web-servers/zope2.nix - ./services/x11/desktop-managers/default.nix - ./services/x11/display-managers/auto.nix - ./services/x11/display-managers/default.nix - ./services/x11/display-managers/gdm.nix - ./services/x11/display-managers/kdm.nix - ./services/x11/display-managers/lightdm.nix - ./services/x11/display-managers/slim.nix - ./services/x11/hardware/multitouch.nix - ./services/x11/hardware/synaptics.nix - ./services/x11/hardware/wacom.nix - ./services/x11/redshift.nix - ./services/x11/window-managers/awesome.nix - #./services/x11/window-managers/compiz.nix - ./services/x11/window-managers/default.nix - ./services/x11/window-managers/fluxbox.nix - ./services/x11/window-managers/icewm.nix - ./services/x11/window-managers/bspwm.nix - ./services/x11/window-managers/metacity.nix - ./services/x11/window-managers/none.nix - ./services/x11/window-managers/twm.nix - ./services/x11/window-managers/wmii.nix - ./services/x11/window-managers/xmonad.nix - ./services/x11/xfs.nix - ./services/x11/xserver.nix - ./system/activation/activation-script.nix - ./system/activation/top-level.nix - ./system/boot/emergency-mode.nix - ./system/boot/kernel.nix - ./system/boot/kexec.nix - ./system/boot/loader/efi.nix - ./system/boot/loader/generations-dir/generations-dir.nix - ./system/boot/loader/grub/grub.nix - ./system/boot/loader/grub/memtest.nix - ./system/boot/loader/gummiboot/gummiboot.nix - ./system/boot/loader/init-script/init-script.nix - ./system/boot/loader/raspberrypi/raspberrypi.nix - ./system/boot/luksroot.nix - ./system/boot/modprobe.nix - ./system/boot/shutdown.nix - ./system/boot/stage-1.nix - ./system/boot/stage-2.nix - ./system/boot/systemd.nix - ./system/boot/tmp.nix - ./system/etc/etc.nix - ./system/upstart/upstart.nix - ./tasks/cpu-freq.nix - ./tasks/encrypted-devices.nix - ./tasks/filesystems.nix - ./tasks/filesystems/btrfs.nix - ./tasks/filesystems/cifs.nix - ./tasks/filesystems/ext.nix - ./tasks/filesystems/f2fs.nix - ./tasks/filesystems/nfs.nix - ./tasks/filesystems/reiserfs.nix - ./tasks/filesystems/unionfs-fuse.nix - ./tasks/filesystems/vfat.nix - ./tasks/filesystems/xfs.nix - ./tasks/filesystems/zfs.nix - ./tasks/kbd.nix - ./tasks/lvm.nix - ./tasks/network-interfaces.nix - ./tasks/scsi-link-power-management.nix - ./tasks/swraid.nix - ./tasks/trackpoint.nix - ./testing/service-runner.nix - ./virtualisation/container-config.nix - ./virtualisation/containers.nix - ./virtualisation/docker.nix - ./virtualisation/libvirtd.nix - #./virtualisation/nova.nix - ./virtualisation/openvswitch.nix - ./virtualisation/virtualbox-guest.nix - #./virtualisation/xen-dom0.nix -] From 56102642fa957ab1c7c3b22675ae0113303097f4 Mon Sep 17 00:00:00 2001 From: Rickard Nilsson Date: Tue, 2 Sep 2014 13:16:13 +0200 Subject: [PATCH 221/789] pulseaudio: Add pulse-access group, controlling access to the system-wide PA daemon --- nixos/modules/config/pulseaudio.nix | 21 ++++++++++++++------- nixos/modules/misc/ids.nix | 1 + 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix index 1b84bbaf10c..fd29e235768 100644 --- a/nixos/modules/config/pulseaudio.nix +++ b/nixos/modules/config/pulseaudio.nix @@ -10,10 +10,12 @@ let systemWide = cfg.enable && cfg.systemWide; nonSystemWide = cfg.enable && !cfg.systemWide; - uid = config.ids.uids.pulseaudio; - gid = config.ids.gids.pulseaudio; + ids = config.ids; - stateDir = "/run/pulse"; + uid = ids.uids.pulseaudio; + gid = ids.gids.pulseaudio; + + stateDir = "/var/run/pulse"; # Create pulse/client.conf even if PulseAudio is disabled so # that we can disable the autospawn feature in programs that @@ -138,19 +140,24 @@ in { group = "pulse"; extraGroups = [ "audio" ]; description = "PulseAudio system service user"; + home = stateDir; + createHome = true; }; users.extraGroups.pulse.gid = gid; + users.extraGroups.pulse-access = { + gid = ids.gids.pulse-access; + members = with builtins; config.users.extraGroups.audio.members ++ ( + attrNames(filterAttrs (n: u: elem "audio" u.extraGroups) config.users.extraUsers) + ); + }; + systemd.services.pulseaudio = { description = "PulseAudio System-Wide Server"; wantedBy = [ "sound.target" ]; before = [ "sound.target" ]; environment.PULSE_RUNTIME_PATH = stateDir; - preStart = '' - mkdir -p --mode 755 ${stateDir} - chown -R pulse:pulse ${stateDir} - ''; serviceConfig = { ExecStart = "${cfg.package}/bin/pulseaudio -D --log-level=${cfg.daemon.logLevel} --system --use-pid-file -n --file=${cfg.configFile}"; PIDFile = "${stateDir}/pid"; diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index efd8b253cd4..d72649cd33d 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -270,6 +270,7 @@ riemann = 137; riemanndash = 138; uhub = 142; + pulse-access = 143; # When adding a gid, make sure it doesn't match an existing uid. And don't use gids above 399! From 2b72edad9b3c2426600b27e48e70f2e038382313 Mon Sep 17 00:00:00 2001 From: Sergey Mironov Date: Sun, 30 Mar 2014 00:07:31 +0400 Subject: [PATCH 222/789] yandex-disk: fix the url; introduce systemd.service #2228 --- nixos/modules/misc/ids.nix | 1 + nixos/modules/module-list.nix | 1 + .../network-filesystems/yandex-disk.nix | 104 ++++++++++++++++++ .../tools/filesystems/yandex-disk/default.nix | 6 +- 4 files changed, 109 insertions(+), 3 deletions(-) create mode 100644 nixos/modules/services/network-filesystems/yandex-disk.nix diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index d72649cd33d..a535a8d7604 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -150,6 +150,7 @@ zookeeper = 140; dnsmasq = 141; uhub = 142; + yandexdisk=143; # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399! diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 7679d3e6ac4..1135534263c 100755 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -193,6 +193,7 @@ ./services/network-filesystems/rsyncd.nix ./services/network-filesystems/samba.nix ./services/network-filesystems/diod.nix + ./services/network-filesystems/yandex-disk.nix ./services/networking/amuled.nix ./services/networking/atftpd.nix ./services/networking/avahi-daemon.nix diff --git a/nixos/modules/services/network-filesystems/yandex-disk.nix b/nixos/modules/services/network-filesystems/yandex-disk.nix new file mode 100644 index 00000000000..df9626d17c9 --- /dev/null +++ b/nixos/modules/services/network-filesystems/yandex-disk.nix @@ -0,0 +1,104 @@ +{ config, pkgs, ... }: + +with pkgs.lib; + +let + + cfg = config.services.yandex-disk; + + dir = "/var/lib/yandex-disk"; + + u = if cfg.user != null then cfg.user else "yandexdisk"; + +in + +{ + + ###### interface + + options = { + + services.yandex-disk = { + + enable = mkOption { + default = false; + description = " + Whether to enable Yandex-disk client. See https://disk.yandex.ru/ + "; + }; + + username = mkOption { + default = ""; + type = types.string; + description = '' + Your yandex.com login name. + ''; + }; + + password = mkOption { + default = ""; + type = types.string; + description = '' + Your yandex.com password. Warning: it will be world-readable in /nix/store. + ''; + }; + + user = mkOption { + default = null; + description = '' + The user the yandex-disk daemon should run as. + ''; + }; + + directory = mkOption { + default = "/home/Yandex.Disk"; + description = "The directory to use for Yandex.Disk storage"; + }; + + }; + + }; + + + ###### implementation + + config = mkIf cfg.enable { + + users.extraUsers = mkIf (cfg.user == null) [ { + name = u; + uid = config.ids.uids.yandexdisk; + group = "nogroup"; + home = dir; + } ]; + + systemd.services.yandex-disk = { + description = "Yandex-disk server"; + + after = [ "network.target" ]; + + wantedBy = [ "multi-user.target" ]; + + # FIXME: have to specify ${directory} here as well + unitConfig.RequiresMountsFor = dir; + + script = '' + mkdir -p -m 700 ${dir} + chown ${u} ${dir} + + if ! test -d "${cfg.directory}" ; then + mkdir -p -m 755 ${cfg.directory} || + exit 1 + fi + + ${pkgs.su}/bin/su -s ${pkgs.stdenv.shell} ${u} \ + -c '${pkgs.yandex-disk}/bin/yandex-disk token -p ${cfg.password} ${cfg.username} ${dir}/token' + + ${pkgs.su}/bin/su -s ${pkgs.stdenv.shell} ${u} \ + -c '${pkgs.yandex-disk}/bin/yandex-disk start --no-daemon -a ${dir}/token -d ${cfg.directory}' + ''; + + }; + }; + +} + diff --git a/pkgs/tools/filesystems/yandex-disk/default.nix b/pkgs/tools/filesystems/yandex-disk/default.nix index c9078a0cb8b..e33f46ea9cc 100644 --- a/pkgs/tools/filesystems/yandex-disk/default.nix +++ b/pkgs/tools/filesystems/yandex-disk/default.nix @@ -6,17 +6,17 @@ let p = if stdenv.is64bit then { arch = "x86_64"; gcclib = "${stdenv.gcc.gcc}/lib64"; - sha256 = "1fmmlvvh97d60n9k08bn4k6ghwr3yhs8sib82025nwpw1sq08vim"; + sha256 = "09kw7f0qsvx3vx1c1zb117yf3yk7kkz66agspz5xx9b0zh6i82jw"; } else { arch = "i386"; gcclib = "${stdenv.gcc.gcc}/lib"; - sha256 = "3940420bd9d1fe1ecec1a117bfd9d21d545bca59f5e0a4364304ab808c976f7f"; + sha256 = "0f2230c91120f05159281b39c620ab6bad6559ce8a17a0874d0a82350ebba426"; }; in stdenv.mkDerivation rec { - name = "yandex-disk-0.1.2.481"; + name = "yandex-disk-0.1.4.504"; src = fetchurl { url = "http://repo.yandex.ru/yandex-disk/rpm/stable/${p.arch}/${name}-1.fedora.${p.arch}.rpm"; From 468f99e946decd62788a20f6523302c1dee98d38 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 3 Sep 2014 11:05:21 +0200 Subject: [PATCH 223/789] liquidfun: Don't build on Hydra It uses requireFile. --- pkgs/development/libraries/liquidfun/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/liquidfun/default.nix b/pkgs/development/libraries/liquidfun/default.nix index 994c013c631..a4dc7b5e93d 100644 --- a/pkgs/development/libraries/liquidfun/default.nix +++ b/pkgs/development/libraries/liquidfun/default.nix @@ -39,8 +39,8 @@ stdenv.mkDerivation rec { [ qknight ]; - platforms = with stdenv.lib.platforms; - linux; + platforms = stdenv.lib.platforms.linux; + hydraPlatforms = []; license = stdenv.lib.licenses.bsd2; homepage = https://google.github.io/liquidfun/; }; From 428cb0ea7a53f5e6c0bd5eb4206061e24cb49172 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 11:25:57 +0200 Subject: [PATCH 224/789] sphinxsearch: fix evaluation error --- pkgs/servers/search/sphinxsearch/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/search/sphinxsearch/default.nix b/pkgs/servers/search/sphinxsearch/default.nix index 27bbb91fb18..040dace69fb 100644 --- a/pkgs/servers/search/sphinxsearch/default.nix +++ b/pkgs/servers/search/sphinxsearch/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, pkgconfig, mysql, - version = "2.1.9", + version = "2.1.9"; mainSrc = fetchurl { url = "http://sphinxsearch.com/files/sphinx-${version}-release.tar.gz"; sha256 = "00vwxf3zr0g1fq9mls1z2rd8nxw74b76pkl1j466lig1qc5am2b2"; From 0f6d45f6b459a9e198354c636a99747104961a21 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 12:02:25 +0200 Subject: [PATCH 225/789] sphinxsearch: fix again... --- pkgs/servers/search/sphinxsearch/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/search/sphinxsearch/default.nix b/pkgs/servers/search/sphinxsearch/default.nix index 040dace69fb..1979da5b2c0 100644 --- a/pkgs/servers/search/sphinxsearch/default.nix +++ b/pkgs/servers/search/sphinxsearch/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, mysql, - version = "2.1.9"; - mainSrc = fetchurl { + version ? "2.1.9", + mainSrc ? fetchurl { url = "http://sphinxsearch.com/files/sphinx-${version}-release.tar.gz"; sha256 = "00vwxf3zr0g1fq9mls1z2rd8nxw74b76pkl1j466lig1qc5am2b2"; } From b33b05a8786c0acde43e0fc8d825f9e1db278862 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Wed, 3 Sep 2014 12:06:58 +0200 Subject: [PATCH 226/789] ocaml-twt: some fixes --- pkgs/development/ocaml-modules/twt/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/ocaml-modules/twt/default.nix b/pkgs/development/ocaml-modules/twt/default.nix index e2a627aa360..c06449f68b4 100644 --- a/pkgs/development/ocaml-modules/twt/default.nix +++ b/pkgs/development/ocaml-modules/twt/default.nix @@ -16,9 +16,9 @@ stdenv.mkDerivation { mkdir $out/bin ''; - installPhase = '' - make install PREFIX=$out - ''; + dontBuild = true; + + installFlags = "PREFIX=$(out)"; meta = { homepage = http://people.csail.mit.edu/mikelin/ocaml+twt/; From e5b7b97a67c6418ea4d0f9f01324d50916eebee7 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 12:51:10 +0200 Subject: [PATCH 227/789] nixos tested: only build on supportedSystems --- nixos/release-combined.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 0c72bae35bb..3a458f5e860 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -34,7 +34,7 @@ in rec { maintainers = [ pkgs.lib.maintainers.eelco pkgs.lib.maintainers.shlevy ]; }; constituents = - let all = x: [ x.x86_64-linux x.i686-linux ]; in + let all = x: map (p: x.${p}) supportedSystems; in [ nixos.channel (all nixos.manual) From fc434d1f5c12511d48bff5c10a79ca707915b231 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 3 Sep 2014 12:52:08 +0200 Subject: [PATCH 228/789] synergy: Update to new upstream version 1.5.1. Bugfix release, fixing the following bugs: - Configuration file paths containing spaces don't work - Log path needs to be in quotes on windows - Installer fails when Windows Firewall is disabled http://svn.synergy-project.org/tags/1.5.1/ChangeLog Signed-off-by: aszlig --- pkgs/applications/misc/synergy/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix index 8d914c26221..df4c0ea97eb 100644 --- a/pkgs/applications/misc/synergy/default.nix +++ b/pkgs/applications/misc/synergy/default.nix @@ -6,11 +6,11 @@ assert stdenv.isLinux -> cryptopp != null; with stdenv.lib; stdenv.mkDerivation rec { - name = "synergy-1.5.0"; + name = "synergy-1.5.1"; src = fetchurl { - url = "http://synergy-project.org/files/packages/synergy-1.5.0-r2278-Source.tar.gz"; - sha256 = "097hk9v01lwzs7ly6ynadxmjh7ad68l5si7w4qmjn6z7l8b61gv6"; + url = "http://synergy-project.org/files/packages/${name}-r2398-Source.tar.gz"; + sha256 = "19q8ck15f0jgpbzlm34dzp046wf3iiwa21s1qfyj5sj7xjxwa367"; }; patches = optional stdenv.isLinux ./cryptopp.patch; From 46b78bdef4a0701a36d9a48384a2fe4cb0284de7 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 13:02:45 +0200 Subject: [PATCH 229/789] release: do not process broken packages, we induce they don't have platforms at all --- pkgs/top-level/release-lib.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/top-level/release-lib.nix b/pkgs/top-level/release-lib.nix index e2f5309ced3..0a8e7165d66 100644 --- a/pkgs/top-level/release-lib.nix +++ b/pkgs/top-level/release-lib.nix @@ -123,6 +123,8 @@ rec { packagesWithMetaPlatform attrSet else if attrSet.recurseForRelease or false then packagesWithMetaPlatform attrSet + else if attrSet.meta.broken or false then + [] else attrSet.meta.hydraPlatforms or (attrSet.meta.platforms or []); From ef5b30428f06b53f05c41ede361a7dcf4c3ca9d3 Mon Sep 17 00:00:00 2001 From: Nomen Nescio Date: Wed, 3 Sep 2014 11:05:20 +0200 Subject: [PATCH 230/789] baekmuk-ttf: new package baekmuk-ttf: new package --- pkgs/data/fonts/baekmuk-ttf/default.nix | 29 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 pkgs/data/fonts/baekmuk-ttf/default.nix diff --git a/pkgs/data/fonts/baekmuk-ttf/default.nix b/pkgs/data/fonts/baekmuk-ttf/default.nix new file mode 100644 index 00000000000..acd16478fcf --- /dev/null +++ b/pkgs/data/fonts/baekmuk-ttf/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "baekmuk-ttf-2.2"; + + src = fetchurl { + url = "http://kldp.net/frs/download.php/1429/${name}.tar.gz"; + sha256 = "08ab7dffb55d5887cc942ce370f5e33b756a55fbb4eaf0b90f244070e8d51882"; + }; + + dontBuild = true; + + installPhase = let + fonts_dir = "$out/share/fonts"; + doc_dir = "$out/share/doc/${name}"; + in '' + mkdir -pv ${fonts_dir} + mkdir -pv ${doc_dir} + cp ttf/*.ttf ${fonts_dir} + cp COPYRIGHT* ${doc_dir} + ''; + + meta = { + description = "Korean font"; + homepage = "http://kldp.net/projects/baekmuk/"; + license = "BSD-like"; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fa910a06cb8..fb7edbfd389 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8055,6 +8055,8 @@ let aurulent-sans = callPackage ../data/fonts/aurulent-sans { }; + baekmuk-ttf = callPackage ../data/fonts/baekmuk-ttf { }; + bakoma_ttf = callPackage ../data/fonts/bakoma-ttf { }; cacert = callPackage ../data/misc/cacert { }; From 66ee6e03e7963b0de6ae7e35eb334f6a2fd75944 Mon Sep 17 00:00:00 2001 From: Rickard Nilsson Date: Wed, 3 Sep 2014 13:24:47 +0200 Subject: [PATCH 231/789] pulseaudio: Use group audio instead of pulse-access --- nixos/modules/config/pulseaudio.nix | 7 ------- nixos/modules/misc/ids.nix | 1 - pkgs/servers/pulseaudio/default.nix | 13 +++++++++---- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix index fd29e235768..fb5715022b7 100644 --- a/nixos/modules/config/pulseaudio.nix +++ b/nixos/modules/config/pulseaudio.nix @@ -146,13 +146,6 @@ in { users.extraGroups.pulse.gid = gid; - users.extraGroups.pulse-access = { - gid = ids.gids.pulse-access; - members = with builtins; config.users.extraGroups.audio.members ++ ( - attrNames(filterAttrs (n: u: elem "audio" u.extraGroups) config.users.extraUsers) - ); - }; - systemd.services.pulseaudio = { description = "PulseAudio System-Wide Server"; wantedBy = [ "sound.target" ]; diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index a535a8d7604..37531ad1cdf 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -271,7 +271,6 @@ riemann = 137; riemanndash = 138; uhub = 142; - pulse-access = 143; # When adding a gid, make sure it doesn't match an existing uid. And don't use gids above 399! diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix index a918007b47c..de262af095c 100644 --- a/pkgs/servers/pulseaudio/default.nix +++ b/pkgs/servers/pulseaudio/default.nix @@ -45,10 +45,15 @@ stdenv.mkDerivation rec { -e "s|chmod r+s |true |" ''; - configureFlags = - [ "--disable-solaris" "--disable-jack" "--disable-oss-output" - "--disable-oss-wrapper" "--localstatedir=/var" "--sysconfdir=/etc" ] - ++ stdenv.lib.optional jackaudioSupport "--enable-jack" + configureFlags = [ + "--disable-solaris" + "--disable-jack" + "--disable-oss-output" + "--disable-oss-wrapper" + "--localstatedir=/var" + "--sysconfdir=/etc" + "--with-access-group=audio" + ] ++ stdenv.lib.optional jackaudioSupport "--enable-jack" ++ stdenv.lib.optional stdenv.isDarwin "--with-mac-sysroot=/"; enableParallelBuilding = true; From 03ff6450b96f5b7516a86549c86f4d81e605ecc9 Mon Sep 17 00:00:00 2001 From: Tom Fitzhenry Date: Wed, 3 Sep 2014 12:31:01 +0100 Subject: [PATCH 232/789] keepassx: update to 2.0-alpha6 --- pkgs/applications/misc/keepassx/2.0.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/keepassx/2.0.nix b/pkgs/applications/misc/keepassx/2.0.nix index 1a79af7cb57..c39c72398f7 100644 --- a/pkgs/applications/misc/keepassx/2.0.nix +++ b/pkgs/applications/misc/keepassx/2.0.nix @@ -1,10 +1,10 @@ { stdenv, fetchurl, cmake, libgcrypt, qt4, xlibs, ... }: stdenv.mkDerivation { - name = "keepassx2-2.0alpha5"; + name = "keepassx2-2.0alpha6"; src = fetchurl { - url = "https://github.com/keepassx/keepassx/archive/2.0-alpha5.tar.gz"; - sha256 = "1vxj306zhrr38mvsy3vpjlg6d0xwlcvsi3l69nhhwzkccsc4smfm"; + url = "https://github.com/keepassx/keepassx/archive/2.0-alpha6.tar.gz"; + sha256 = "592f9995b13c4f84724fb24a0078162246397eedccd467daaf0fd3608151f2b0"; }; buildInputs = [ cmake libgcrypt qt4 xlibs.libXtst ]; From fe3f7716f0494fd0170f307e1a8a5e00fa3e6d2f Mon Sep 17 00:00:00 2001 From: Strahinja Popovic Date: Thu, 17 Jul 2014 12:51:17 +0200 Subject: [PATCH 233/789] Enabled access to binaries of needed tools, and worker daemons can be enabled for phabricator #3306 --- nixos/modules/module-list.nix | 1 + nixos/modules/services/misc/phd.nix | 52 ++++++++++++++++ .../web-servers/apache-httpd/phabricator.nix | 61 +++++++++++-------- nixos/tests/phabricator.nix | 7 +++ pkgs/misc/phabricator/default.nix | 28 +++++++++ pkgs/top-level/all-packages.nix | 2 + 6 files changed, 125 insertions(+), 26 deletions(-) create mode 100644 nixos/modules/services/misc/phd.nix create mode 100644 pkgs/misc/phabricator/default.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 1135534263c..2d977e38a12 100755 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -165,6 +165,7 @@ ./services/misc/nix-gc.nix ./services/misc/nixos-manual.nix ./services/misc/nix-ssh-serve.nix + ./services/misc/phd.nix ./services/misc/rippled.nix ./services/misc/rogue.nix ./services/misc/siproxd.nix diff --git a/nixos/modules/services/misc/phd.nix b/nixos/modules/services/misc/phd.nix new file mode 100644 index 00000000000..888247275ac --- /dev/null +++ b/nixos/modules/services/misc/phd.nix @@ -0,0 +1,52 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + + cfg = config.services.phd; + +in + +{ + + ###### interface + + options = { + + services.phd = { + + enable = mkOption { + default = false; + description = " + Enable daemons for phabricator. + "; + }; + + }; + + }; + + ###### implementation + + config = mkIf cfg.enable { + + systemd.services.phd = { + path = [ pkgs.phabricator pkgs.php pkgs.mercurial pkgs.git pkgs.subversion ]; + + after = [ "httpd.service" ]; + wantedBy = [ "multi-user.target" ]; + + serviceConfig = { + ExecStart = "${pkgs.phabricator}/phabricator/bin/phd start"; + ExecStop = "${pkgs.phabricator}/phabricator/bin/phd start"; + User = "wwwrun"; + RestartSec = "30s"; + Restart = "always"; + StartLimitInterval = "1m"; + }; + }; + + }; + +} diff --git a/nixos/modules/services/web-servers/apache-httpd/phabricator.nix b/nixos/modules/services/web-servers/apache-httpd/phabricator.nix index c7a9bdf68c5..e4e3aac8d41 100644 --- a/nixos/modules/services/web-servers/apache-httpd/phabricator.nix +++ b/nixos/modules/services/web-servers/apache-httpd/phabricator.nix @@ -1,35 +1,30 @@ { config, lib, pkgs, ... }: + +with lib; + let - phabricatorRoot = pkgs.stdenv.mkDerivation rec { - version = "2014-05-12"; - name = "phabricator-${version}"; - srcLibphutil = pkgs.fetchgit { - url = git://github.com/facebook/libphutil.git; - rev = "2f3b5a1cf6ea464a0250d4b1c653a795a90d2716"; - sha256 = "9598cec400984dc149162f1e648814a54ea0cd34fcd529973dc83f5486fdd9fd"; - }; - srcArcanist = pkgs.fetchgit { - url = git://github.com/facebook/arcanist.git; - rev = "54c377448db8dbc40f0ca86d43c837d30e493485"; - sha256 = "086db3c0d1154fbad23e7c6def31fd913384ee20247b329515838b669c3028e0"; - }; - srcPhabricator = pkgs.fetchgit { - url = git://github.com/facebook/phabricator.git; - rev = "1644ef185ecf1e9fca3eb6b16351ef46b19d110f"; - sha256 = "e1135e4ba76d53f48aad4161563035414ed7e878f39a8a34a875a01b41b2a084"; - }; - - buildCommand = '' - mkdir -p $out - cp -R ${srcLibphutil} $out/libphutil - cp -R ${srcArcanist} $out/arcanist - cp -R ${srcPhabricator} $out/phabricator - ''; - }; + phabricatorRoot = pkgs.phabricator; in { + enablePHP = true; extraApacheModules = [ "mod_rewrite" ]; DocumentRoot = "${phabricatorRoot}/phabricator/webroot"; + + options = { + git = mkOption { + default = true; + description = "Enable git repositories."; + }; + mercurial = mkOption { + default = true; + description = "Enable mercurial repositories."; + }; + subversion = mkOption { + default = true; + description = "Enable subversion repositories."; + }; + }; + extraConfig = '' DocumentRoot ${phabricatorRoot}/phabricator/webroot @@ -38,4 +33,18 @@ in { RewriteRule ^/favicon.ico - [L,QSA] RewriteRule ^(.*)$ /index.php?__path__=$1 [B,L,QSA] ''; + + extraServerPath = [ + "${pkgs.which}" + "${pkgs.diffutils}" + ] ++ + (if config.mercurial then ["${pkgs.mercurial}"] else []) ++ + (if config.subversion then ["${pkgs.subversion}"] else []) ++ + (if config.git then ["${pkgs.git}"] else []); + + startupScript = pkgs.writeScript "activatePhabricator" '' + mkdir -p /var/repo + chown wwwrun /var/repo + ''; + } diff --git a/nixos/tests/phabricator.nix b/nixos/tests/phabricator.nix index 53038474c91..0fe31f66502 100644 --- a/nixos/tests/phabricator.nix +++ b/nixos/tests/phabricator.nix @@ -32,9 +32,16 @@ import ./make-test.nix ({ pkgs, ... }: { }]; }; + phd = { + enable = true; + }; + mysql = { enable = true; package = pkgs.mysql; + extraOptions = '' + sql_mode=STRICT_ALL_TABLES + ''; }; }; diff --git a/pkgs/misc/phabricator/default.nix b/pkgs/misc/phabricator/default.nix new file mode 100644 index 00000000000..3162dd0079d --- /dev/null +++ b/pkgs/misc/phabricator/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchgit, pkgs, ... }: + +stdenv.mkDerivation rec { + version = "2014-07-16"; + name = "phabricator-${version}"; + srcLibphutil = pkgs.fetchgit { + url = git://github.com/facebook/libphutil.git; + rev = "48a04395363d6c1dd9f66057bd11fd70d4665ba9"; + sha256 = "d570d2c1e68471c2eda35b8722d8083bcc13163fbd5c944529464f2c7b55a2e5"; + }; + srcArcanist = pkgs.fetchgit { + url = git://github.com/facebook/arcanist.git; + rev = "97501da16416fbfdc6e84bd60abcbf5ad9506225"; + sha256 = "9031c4ae228bdc986131e0c93c98fb73290bb0e297be1ec32f22ab09cdacafa3"; + }; + srcPhabricator = pkgs.fetchgit { + url = git://github.com/phacility/phabricator.git; + rev = "7ac5abb97934f7399b67762aa98f59f667711bf3"; + sha256 = "6a1d449597ae4432e40a3e6cdb14e3a5a8a40e019f3930493064c35911f2adcc"; + }; + + buildCommand = '' + mkdir -p $out + cp -R ${srcLibphutil} $out/libphutil + cp -R ${srcArcanist} $out/arcanist + cp -R ${srcPhabricator} $out/phabricator + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fb7edbfd389..69ce2d19e58 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11421,6 +11421,8 @@ let pgfplots = callPackage ../tools/typesetting/tex/pgfplots { }; + phabricator = callPackage ../misc/phabricator { }; + pjsip = callPackage ../applications/networking/pjsip { }; polytable = callPackage ../tools/typesetting/tex/polytable { }; From 94a131b95aa79d702ea7bdf82721f2c35f3dd5a5 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 15:47:53 +0400 Subject: [PATCH 234/789] Fix forgotten unit entry --- nixos/modules/services/misc/phd.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/misc/phd.nix b/nixos/modules/services/misc/phd.nix index 888247275ac..e605ce5de16 100644 --- a/nixos/modules/services/misc/phd.nix +++ b/nixos/modules/services/misc/phd.nix @@ -39,7 +39,7 @@ in serviceConfig = { ExecStart = "${pkgs.phabricator}/phabricator/bin/phd start"; - ExecStop = "${pkgs.phabricator}/phabricator/bin/phd start"; + ExecStop = "${pkgs.phabricator}/phabricator/bin/phd stop"; User = "wwwrun"; RestartSec = "30s"; Restart = "always"; From 8c0b08d7050a1f1fbb6c5e3d64354b5c9083a761 Mon Sep 17 00:00:00 2001 From: Danyil Bohdan Date: Sun, 31 Aug 2014 16:43:53 +0300 Subject: [PATCH 235/789] add python package 'jsonwatch' --- pkgs/top-level/python-packages.nix | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a3018b8e15f..df5b694e251 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2263,6 +2263,34 @@ rec { }; }; + jsonwatch = buildPythonPackage rec { + name = "jsonwatch-0.2.0"; + + disabled = isPyPy; + + src = fetchurl { + url = "https://github.com/dbohdan/jsonwatch/archive/v0.2.0.tar.gz"; + sha256 = "04b616ef97b9d8c3887004995420e52b72a4e0480a92dbf60aa6c50317261e06"; + }; + + propagatedBuildInputs = [ six ]; + + meta = { + description = "Like watch -d but for JSON"; + longDescription = '' + jsonwatch is a command line utility with which you can track changes in + JSON data delivered by a shell command or a web (HTTP/HTTPS) API. + jsonwatch requests data from the designated source repeatedly at a set + interval and displays the differences when the data changes. It is + similar in its behavior to how watch(1) with the -d switch works + for plain-text data. + ''; + homepage = "https://github.com/dbohdan/jsonwatch"; + license = stdenv.lib.licenses.mit; + platforms = stdenv.lib.platforms.all; + }; + }; + logilab_astng = buildPythonPackage rec { name = "logilab-astng-0.24.3"; @@ -2752,7 +2780,7 @@ rec { random2 = pythonPackages.buildPythonPackage rec { name = "random2-1.0.1"; - + doCheck = !isPyPy; src = fetchurl { From 24fed22cff76974c62d0699e79fafbd9e8d49cc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Wed, 3 Sep 2014 13:41:16 +0200 Subject: [PATCH 236/789] pypyPackages.jsonwatch: comment why it's disabled --- pkgs/top-level/python-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index df5b694e251..ed334d27e0e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2266,7 +2266,7 @@ rec { jsonwatch = buildPythonPackage rec { name = "jsonwatch-0.2.0"; - disabled = isPyPy; + disabled = isPyPy; # doesn't find setuptools src = fetchurl { url = "https://github.com/dbohdan/jsonwatch/archive/v0.2.0.tar.gz"; From e552fbf521231e13d82f89701bfc9a940be341dd Mon Sep 17 00:00:00 2001 From: "Ricardo M. Correia" Date: Tue, 2 Sep 2014 20:00:35 +0200 Subject: [PATCH 237/789] gcc/gcj: Update antlr dep to 4.4 Version 3.1.3 is no longer available for download. --- pkgs/development/compilers/gcc/4.8/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 2fb8f9d73b5..7101d4e585e 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -84,8 +84,8 @@ let version = "4.8.3"; # Antlr (optional) allows the Java `gjdoc' tool to be built. We want a # binary distribution here to allow the whole chain to be bootstrapped. javaAntlr = fetchurl { - url = http://www.antlr.org/download/antlr-3.1.3.jar; - sha256 = "1f41j0y4kjydl71lqlvr73yagrs2jsg1fjymzjz66mjy7al5lh09"; + url = http://www.antlr.org/download/antlr-4.4-complete.jar; + sha256 = "02lda2imivsvsis8rnzmbrbp8rh1kb8vmq4i67pqhkwz7lf8y6dz"; }; xlibs = [ From a224d1f9baf6344875954fdc40bcbada5d48b717 Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Wed, 3 Sep 2014 03:44:36 +0200 Subject: [PATCH 238/789] Add proggyfonts collection The Proggy Fonts are a font collection intended for fixed-width uses like programming languages. Signed-off-by: Josh Cartwright --- pkgs/data/fonts/proggyfonts/default.nix | 40 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 42 insertions(+) create mode 100644 pkgs/data/fonts/proggyfonts/default.nix diff --git a/pkgs/data/fonts/proggyfonts/default.nix b/pkgs/data/fonts/proggyfonts/default.nix new file mode 100644 index 00000000000..1c41a92bf96 --- /dev/null +++ b/pkgs/data/fonts/proggyfonts/default.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchurl, mkfontdir, mkfontscale }: + +# adapted from https://aur.archlinux.org/packages/proggyfonts/ + +stdenv.mkDerivation rec { + name = "proggyfonts-0.1"; + + src = fetchurl { + url = "http://kaictl.net/software/${name}.tar.gz"; + sha256 = "1plcm1sjpa3hdqhhin48fq6zmz3ndm4md72916hd8ff0w6596q0n"; + }; + + buildInputs = [ mkfontdir mkfontscale ]; + + installPhase = + '' + mkdir -p $out/share/doc/$name $out/share/fonts/misc $out/share/fonts/truetype + + cp Licence.txt $out/share/doc/$name/LICENSE + + for f in *.pcf; do + gzip -c "$f" > $out/share/fonts/misc/"$f".gz + done + cp *.bdf $out/share/fonts/misc + cp *.ttf $out/share/fonts/truetype + + for f in misc truetype; do + cd $out/share/fonts/$f + mkfontscale + mkfontdir + done + ''; + + meta = with stdenv.lib; { + homepage = http://upperbounds.net; + description = "A set of fixed-width screen fonts that are designed for code listings"; + license = licenses.mit; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b58114113bb..c46c1409063 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8115,6 +8115,8 @@ let posix_man_pages = callPackage ../data/documentation/man-pages-posix { }; + proggyfonts = callPackage ../data/fonts/proggyfonts { }; + pthreadmanpages = callPackage ../data/documentation/pthread-man-pages { }; shared_mime_info = callPackage ../data/misc/shared-mime-info { }; From 83c968fa2caf30c7c512d8b18d84bb8edda3114e Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 17:00:13 +0200 Subject: [PATCH 239/789] Add new kgraphviewer and massif-visualizer packages I chose the unstable versions because the stable versions seemed too outdated to me. They work with kde 4.12 anyway. --- .../graphics/kgraphviewer/default.nix | 21 +++++++++++++++++++ .../analysis/massif-visualizer/default.nix | 20 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++++ 3 files changed, 45 insertions(+) create mode 100644 pkgs/applications/graphics/kgraphviewer/default.nix create mode 100644 pkgs/development/tools/analysis/massif-visualizer/default.nix diff --git a/pkgs/applications/graphics/kgraphviewer/default.nix b/pkgs/applications/graphics/kgraphviewer/default.nix new file mode 100644 index 00000000000..21caf8f8002 --- /dev/null +++ b/pkgs/applications/graphics/kgraphviewer/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchurl, kdelibs, automoc4, boost, pkgconfig, graphviz, gettext }: + +stdenv.mkDerivation rec { + name = "kgraphviewer-${version}"; + version = "2.1.90"; + + src = fetchurl { + url = "mirror://kde/unstable/kgraphviewer/${version}/src/${name}.tar.xz"; + sha256 = "13zhjs57xavzrj4nrlqs35n35ihvzij7hgbszf5fhlp2a4d4rrqs"; + }; + + buildInputs = [ kdelibs automoc4 boost pkgconfig graphviz gettext ]; + + meta = with stdenv.lib; { + description = "A Graphviz dot graph viewer for KDE"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = [ maintainers.lethalman ]; + }; +} + diff --git a/pkgs/development/tools/analysis/massif-visualizer/default.nix b/pkgs/development/tools/analysis/massif-visualizer/default.nix new file mode 100644 index 00000000000..e21f5ed15e9 --- /dev/null +++ b/pkgs/development/tools/analysis/massif-visualizer/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, kdelibs, kgraphviewer, gettext }: + +stdenv.mkDerivation rec { + name = "massif-visualizer-${version}"; + version = "0.3.90"; + + src = fetchurl { + url = "mirror://kde/unstable/massif-visualizer/${version}/src/${name}.tar.xz"; + sha256 = "9940fa90137ca5eef08b9ec220825fadbf03db423a670a2c7fe3edab271d9922"; + }; + + buildInputs = [ kdelibs kgraphviewer gettext ]; + + meta = with stdenv.lib; { + description = "Tool that visualizes massif data generated by valgrind"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = [ maintainers.lethalman ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7833a2de1d1..c8ac81b3a5f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10821,6 +10821,8 @@ let kdiff3 = callPackage ../tools/text/kdiff3 { }; + kgraphviewer = callPackage ../applications/graphics/kgraphviewer { }; + kile = callPackage ../applications/editors/kile { }; kmplayer = callPackage ../applications/video/kmplayer { }; @@ -10855,6 +10857,8 @@ let libnm-qt = callPackage ../development/libraries/libnm-qt { }; + massif-visualizer = callPackage ../development/tools/analysis/massif-visualizer { }; + networkmanagement = callPackage ../tools/networking/networkmanagement { }; partitionManager = callPackage ../tools/misc/partition-manager { }; From 46623bfc151449a24d34da8c8d7085910efe5918 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 3 Sep 2014 17:03:37 +0200 Subject: [PATCH 240/789] Remove copy-com.nix from the module list This is proprietary software, and NixOS is intended as a free software distribution. We currently don't have a mechanism like allowUnfree for NixOS modules, so it's better to leave out modules for such packages. Of couse, they can still be activated by doing: imports = [ Date: Wed, 3 Sep 2014 20:03:03 +0400 Subject: [PATCH 241/789] Fixing comment case --- nixos/modules/services/networking/dnsmasq.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/networking/dnsmasq.nix b/nixos/modules/services/networking/dnsmasq.nix index 31d57a648bf..5c68dd89fb1 100644 --- a/nixos/modules/services/networking/dnsmasq.nix +++ b/nixos/modules/services/networking/dnsmasq.nix @@ -46,7 +46,7 @@ in default = []; example = [ "8.8.8.8" "8.8.4.4" ]; description = '' - The dns servers which dnsmasq should query. + The DNS servers which dnsmasq should query. ''; }; From e5194e5aea464e916cd77d4ce935e96f06e73aa0 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Wed, 3 Sep 2014 18:24:51 +0200 Subject: [PATCH 242/789] docker: fix docker not finding dockerinit --- pkgs/applications/virtualization/docker/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index f4d329221ff..37550c2fe1f 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -22,9 +22,9 @@ stdenv.mkDerivation rec { ''; installPhase = '' - install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/bin/docker - install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/bin/dockerinit - wrapProgram $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin" + install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/libexec/docker/docker + install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/libexec/docker/dockerinit + makeWrapper $out/libexec/docker/docker $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin" # systemd install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service From 1b63a1b75e5d7e1f84c3d7222ca504f6394a3a8b Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 3 Sep 2014 09:26:44 -0700 Subject: [PATCH 243/789] nixos/iso-image: Fix grub-mkimage requiring a prefix --- nixos/modules/installer/cd-dvd/iso-image.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix index 623cfdedd26..22f31c46080 100644 --- a/nixos/modules/installer/cd-dvd/iso-image.nix +++ b/nixos/modules/installer/cd-dvd/iso-image.nix @@ -11,7 +11,7 @@ let # The Grub image. grubImage = pkgs.runCommand "grub_eltorito" {} '' - ${pkgs.grub2}/bin/grub-mkimage -O i386-pc -o tmp biosdisk iso9660 help linux linux16 chain png jpeg echo gfxmenu reboot + ${pkgs.grub2}/bin/grub-mkimage -p /boot/grub -O i386-pc -o tmp biosdisk iso9660 help linux linux16 chain png jpeg echo gfxmenu reboot cat ${pkgs.grub2}/lib/grub/*/cdboot.img tmp > $out ''; # */ From eee8fd89b34b40532f90ab6d87214130abfa0e02 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 3 Sep 2014 09:29:22 -0700 Subject: [PATCH 244/789] nixos/install-grub: Correct store path for search --- nixos/modules/system/boot/loader/grub/install-grub.pl | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index 668e74a9722..2dad8b36db3 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -122,7 +122,7 @@ sub GrubFs { # Based on the type pull in the identifier from the system my ($status, @devInfo) = runCommand("blkid -o export @{[$fs->device]}"); if ($status != 0) { - die "Failed to get blkid info for @{[$fs->device]}"; + die "Failed to get blkid info for @{[$fs->mount]} on @{[$fs->device]}"; } my @matches = join("", @devInfo) =~ m/@{[uc $fsIdentifier]}=([^\n]*)/; if ($#matches != 0) { @@ -164,8 +164,7 @@ sub GrubFs { return Grub->new(path => $path, search => $search); } my $grubBoot = GrubFs("/boot"); -# FIXME: Should be /nix/store, but this fails in the installer -my $grubStore = GrubFs("/nix"); +my $grubStore = GrubFs("/nix/store"); # Generate the header. my $conf .= "# Automatically generated. DO NOT EDIT THIS FILE!\n"; @@ -244,7 +243,7 @@ mkpath("/boot/kernels", 0, 0755) if $copyKernels; sub copyToKernelsDir { my ($path) = @_; - return $grubStore->path . substr($path, length("/nix")) unless $copyKernels; + return $grubStore->path . substr($path, length("/nix/store")) unless $copyKernels; $path =~ /\/nix\/store\/(.*)/ or die; my $name = $1; $name =~ s/\//-/g; my $dst = "/boot/kernels/$name"; From 00ad13428416ef2c46d058166ee76c965609065f Mon Sep 17 00:00:00 2001 From: Nathan Bijnens Date: Tue, 26 Aug 2014 20:56:54 +0200 Subject: [PATCH 245/789] Mesos: services --- nixos/modules/module-list.nix | 2 + nixos/modules/services/misc/mesos-master.nix | 103 +++++++++++++++++++ nixos/modules/services/misc/mesos-slave.nix | 93 +++++++++++++++++ 3 files changed, 198 insertions(+) create mode 100644 nixos/modules/services/misc/mesos-master.nix create mode 100644 nixos/modules/services/misc/mesos-slave.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index b39fbcece59..61a98ca12ff 100755 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -161,6 +161,8 @@ ./services/misc/folding-at-home.nix ./services/misc/gitolite.nix ./services/misc/gpsd.nix + ./services/misc/mesos-master.nix + ./services/misc/mesos-slave.nix ./services/misc/nix-daemon.nix ./services/misc/nix-gc.nix ./services/misc/nixos-manual.nix diff --git a/nixos/modules/services/misc/mesos-master.nix b/nixos/modules/services/misc/mesos-master.nix new file mode 100644 index 00000000000..bdf88d427c5 --- /dev/null +++ b/nixos/modules/services/misc/mesos-master.nix @@ -0,0 +1,103 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.mesos.master; + +in { + + options.services.mesos = { + + master = { + enable = mkOption { + description = "Whether to enable the Mesos Master."; + default = false; + type = types.uniq types.bool; + }; + + port = mkOption { + description = "Mesos Master port"; + default = 5050; + type = types.int; + }; + + zk = mkOption { + description = '' + ZooKeeper URL (used for leader election amongst masters). + May be one of: + zk://host1:port1,host2:port2,.../mesos + zk://username:password@host1:port1,host2:port2,.../mesos + ''; + type = types.str; + }; + + workDir = mkOption { + description = "The Mesos work directory."; + default = "/var/lib/mesos/master"; + type = types.str; + }; + + extraCmdLineOptions = mkOption { + description = '' + Extra command line options for Mesos Master. + + See https://mesos.apache.org/documentation/latest/configuration/ + ''; + default = [ "" ]; + type = types.listOf types.string; + example = [ "--credentials=VALUE" ]; + }; + + quorum = mkOption { + description = '' + The size of the quorum of replicas when using 'replicated_log' based + registry. It is imperative to set this value to be a majority of + masters i.e., quorum > (number of masters)/2. + + If 0 will fall back to --registry=in_memory. + ''; + default = 0; + type = types.int; + }; + + logLevel = mkOption { + description = '' + The logging level used. Possible values: + 'INFO', 'WARNING', 'ERROR' + ''; + default = "INFO"; + type = types.str; + }; + + }; + + + }; + + + config = mkIf cfg.enable { + systemd.services.mesos-master = { + description = "Mesos Master"; + wantedBy = [ "multi-user.target" ]; + after = [ "network-interfaces.target" ]; + serviceConfig = { + ExecStart = '' + ${pkgs.mesos}/bin/mesos-master \ + --port=${toString cfg.port} \ + --zk=${cfg.zk} \ + ${if cfg.quorum == 0 then "--registry=in_memory" else "--registry=replicated_log --quorum=${cfg.quorum}"} \ + --work_dir=${cfg.workDir} \ + --logging_level=${cfg.logLevel} \ + ${toString cfg.extraCmdLineOptions} + ''; + PermissionsStartOnly = true; + }; + preStart = '' + mkdir -m 0700 -p ${cfg.workDir} + ''; + }; + }; + +} + diff --git a/nixos/modules/services/misc/mesos-slave.nix b/nixos/modules/services/misc/mesos-slave.nix new file mode 100644 index 00000000000..e9a89816716 --- /dev/null +++ b/nixos/modules/services/misc/mesos-slave.nix @@ -0,0 +1,93 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.mesos.slave; + +in { + + options.services.mesos = { + slave = { + enable = mkOption { + description = "Whether to enable the Mesos Slave."; + default = false; + type = types.uniq types.bool; + }; + + port = mkOption { + description = "Mesos Slave port"; + default = 5051; + type = types.int; + }; + + master = mkOption { + description = '' + May be one of: + zk://host1:port1,host2:port2,.../path + zk://username:password@host1:port1,host2:port2,.../path + ''; + type = types.str; + }; + + withHadoop = mkOption { + description = "Add the HADOOP_HOME to the slave."; + default = false; + type = types.bool; + }; + + workDir = mkOption { + description = "The Mesos work directory."; + default = "/var/lib/mesos/slave"; + type = types.str; + }; + + extraCmdLineOptions = mkOption { + description = '' + Extra command line options for Mesos Slave. + + See https://mesos.apache.org/documentation/latest/configuration/ + ''; + default = [ "" ]; + type = types.listOf types.string; + example = [ "--gc_delay=3days" ]; + }; + + logLevel = mkOption { + description = '' + The logging level used. Possible values: + 'INFO', 'WARNING', 'ERROR' + ''; + default = "INFO"; + type = types.str; + }; + + }; + + }; + + + config = mkIf cfg.enable { + systemd.services.mesos-slave = { + description = "Mesos Slave"; + wantedBy = [ "multi-user.target" ]; + after = [ "network-interfaces.target" ]; + serviceConfig = { + ExecStart = '' + ${pkgs.mesos}/bin/mesos-slave \ + --port=${toString cfg.port} \ + --master=${cfg.master} \ + ${optionalString cfg.withHadoop "--hadoop-home=${pkgs.hadoop}"} \ + --work_dir=${cfg.workDir} \ + --logging_level=${cfg.logLevel} \ + ${toString cfg.extraCmdLineOptions} + ''; + PermissionsStartOnly = true; + }; + preStart = '' + mkdir -m 0700 -p ${cfg.workDir} + ''; + }; + }; + +} \ No newline at end of file From 46cdc2e017fed885a453abd36b289b767e943759 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 21:48:15 +0400 Subject: [PATCH 246/789] Allow git checkouts to have custom name --- pkgs/build-support/fetchgit/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/build-support/fetchgit/default.nix b/pkgs/build-support/fetchgit/default.nix index a17daf9a2c5..c52a26b7165 100644 --- a/pkgs/build-support/fetchgit/default.nix +++ b/pkgs/build-support/fetchgit/default.nix @@ -1,5 +1,7 @@ {stdenv, git, cacert}: -{url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? false, fetchSubmodules ? true}: +{url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? false, fetchSubmodules ? true +, name ? "git-export" +}: /* NOTE: fetchgit has one problem: git fetch only works for refs. @@ -26,7 +28,7 @@ assert md5 != "" || sha256 != ""; stdenv.mkDerivation { - name = "git-export"; + inherit name; builder = ./builder.sh; fetcher = ./nix-prefetch-git; buildInputs = [git]; From b37af08c3d60a17f19a1799033150fad7109601e Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 21:54:15 +0400 Subject: [PATCH 247/789] Update mdbtools-git to latest --- pkgs/tools/misc/mdbtools/git.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/mdbtools/git.nix b/pkgs/tools/misc/mdbtools/git.nix index 2805514965e..b97af331093 100644 --- a/pkgs/tools/misc/mdbtools/git.nix +++ b/pkgs/tools/misc/mdbtools/git.nix @@ -3,12 +3,13 @@ scrollkeeper}: stdenv.mkDerivation { - name = "mdbtools-git"; + name = "mdbtools-git-2014-07-25"; src = fetchgit { url = "http://github.com/brianb/mdbtools.git"; - rev = "dfd752ec022097ee1e0999173aa604d8a0c0ca8b"; - sha256 = "0ibj36yxlhwjgi7cj170lwpbzdbgidkq5p8raa59v76bdrxwmb0n"; + rev = "9ab40e83e6789015c965c92bdb62f92f8cdd0dbd"; + sha256 = "18j1a9y9xhl7hhx30zvmx2n4w7dc8c7sdr6722sf3mh5230mvv59"; + name = "mdbtools-git-export"; }; buildInputs = [glib readline bison flex pkgconfig libiconv autoconf automake From 71086542eee808093db5bc7be5c45a6c46a4409f Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 22:49:09 +0400 Subject: [PATCH 248/789] Fix radre for now by not using libewf and update it to latest --- pkgs/development/tools/analysis/radare/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/analysis/radare/default.nix b/pkgs/development/tools/analysis/radare/default.nix index 2ab8c05ebf8..3c83f0e9d49 100644 --- a/pkgs/development/tools/analysis/radare/default.nix +++ b/pkgs/development/tools/analysis/radare/default.nix @@ -12,15 +12,15 @@ let optional = stdenv.lib.optional; in stdenv.mkDerivation rec { - name = "radare-1.5"; + name = "radare-1.5.2"; src = fetchurl { url = "http://radare.org/get/${name}.tar.gz"; - sha256 = "1r0c9cc7z9likma8zicp2pbv2y85vjjmnk0k45wdhbvhgqh6il1h"; + sha256 = "1qdrmcnzfvfvqb27c7pknwm8jl2hqa6c4l66wzyddwlb8yjm46hd"; }; - buildInputs = [pkgconfig readline libusb libewf perl] + buildInputs = [pkgconfig readline libusb perl] ++ optional useX11 [gtkdialog vte gtk] ++ optional rubyBindings [ruby] ++ optional pythonBindings [python] From 068d1696df9944fcae50cc333dfff7a8f26a4e1b Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 3 Sep 2014 23:01:39 +0400 Subject: [PATCH 249/789] Add radare2 --- .../tools/analysis/radare2/default.nix | 39 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 9 +++++ 2 files changed, 48 insertions(+) create mode 100644 pkgs/development/tools/analysis/radare2/default.nix diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix new file mode 100644 index 00000000000..7e199c29aed --- /dev/null +++ b/pkgs/development/tools/analysis/radare2/default.nix @@ -0,0 +1,39 @@ +{stdenv, fetchurl, pkgconfig, libusb, readline, libewf, perl, zlib, openssl, +gtk ? null, vte ? null, gtkdialog ? null, +python ? null, +ruby ? null, +lua ? null, +useX11, rubyBindings, pythonBindings, luaBindings}: + +assert useX11 -> (gtk != null && vte != null && gtkdialog != null); +assert rubyBindings -> ruby != null; +assert pythonBindings -> python != null; + +let + optional = stdenv.lib.optional; +in +stdenv.mkDerivation rec { + version = "0.9.7"; + name = "radare2-${version}"; + + src = fetchurl { + url = "http://radare.org/get/${name}.tar.xz"; + sha256 = "01sdsnbvx1qzyradj03sg24rk2bi9x58m40r0aqj8skv92c87s7l"; + }; + + + buildInputs = [pkgconfig readline libusb libewf perl zlib openssl] + ++ optional useX11 [gtkdialog vte gtk] + ++ optional rubyBindings [ruby] + ++ optional pythonBindings [python] + ++ optional luaBindings [lua]; + + meta = { + description = "Free advanced command line hexadecimal editor"; + homepage = http://radare.org/; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = with stdenv.lib.maintainers; [raskin]; + platforms = with stdenv.lib.platforms; linux; + inherit version; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e27c19dd0e4..6561ef69d9e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4242,6 +4242,15 @@ let rubyBindings = config.radare.rubyBindings or false; luaBindings = config.radare.luaBindings or false; }; + radare2 = callPackage ../development/tools/analysis/radare2 { + inherit (gnome) vte; + lua = lua5; + useX11 = config.radare.useX11 or false; + pythonBindings = config.radare.pythonBindings or false; + rubyBindings = config.radare.rubyBindings or false; + luaBindings = config.radare.luaBindings or false; + }; + ragel = callPackage ../development/tools/parsing/ragel { }; From 9a30ea90f0a9ffd56b75134a2fe5f0e95530eae5 Mon Sep 17 00:00:00 2001 From: William Roe Date: Wed, 3 Sep 2014 20:14:57 +0100 Subject: [PATCH 250/789] Elixir and rebar aren't Linux-specific tools Widen platform support to all unix --- pkgs/development/interpreters/elixir/default.nix | 2 +- pkgs/development/tools/build-managers/rebar/default.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/elixir/default.nix b/pkgs/development/interpreters/elixir/default.nix index 59629eb2f59..0e4b5a6d9b6 100644 --- a/pkgs/development/interpreters/elixir/default.nix +++ b/pkgs/development/interpreters/elixir/default.nix @@ -46,7 +46,7 @@ stdenv.mkDerivation { ''; license = licenses.epl10; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = [ maintainers.the-kenny ]; }; } diff --git a/pkgs/development/tools/build-managers/rebar/default.nix b/pkgs/development/tools/build-managers/rebar/default.nix index d10d9d6d1a3..d62ae35b854 100644 --- a/pkgs/development/tools/build-managers/rebar/default.nix +++ b/pkgs/development/tools/build-managers/rebar/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation { variety of locations (git, hg, etc). ''; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; maintainers = [ stdenv.lib.maintainers.the-kenny ]; }; } From 43d9f92c82826446619a988b690f9314672b7945 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Wed, 3 Sep 2014 21:22:20 +0200 Subject: [PATCH 251/789] nixos: docker, create docker group --- nixos/modules/virtualisation/docker.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/modules/virtualisation/docker.nix b/nixos/modules/virtualisation/docker.nix index a0aa6135326..1ce066cdc73 100644 --- a/nixos/modules/virtualisation/docker.nix +++ b/nixos/modules/virtualisation/docker.nix @@ -59,6 +59,7 @@ in config = mkIf cfg.enable (mkMerge [ { environment.systemPackages = [ pkgs.docker ]; + users.extraGroups.docker.gid = config.ids.gids.docker; } (mkIf cfg.socketActivation { From b8a88ce472dbd40e2c4e8f53698dc1b00d7cb809 Mon Sep 17 00:00:00 2001 From: Paul Koerbitz Date: Wed, 3 Sep 2014 21:30:31 +0200 Subject: [PATCH 252/789] Update oraclejdk-7 patch version from 65 to 67 --- pkgs/development/compilers/oraclejdk/jdk7-linux.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/oraclejdk/jdk7-linux.nix b/pkgs/development/compilers/oraclejdk/jdk7-linux.nix index 55e8ad45085..cf4990c33b5 100644 --- a/pkgs/development/compilers/oraclejdk/jdk7-linux.nix +++ b/pkgs/development/compilers/oraclejdk/jdk7-linux.nix @@ -1,9 +1,9 @@ import ./jdk-linux-base.nix { productVersion = "7"; - patchVersion = "65"; + patchVersion = "67"; downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html; - sha256_i686 = "e3032c561deb237c033b485a358cc429ec83b621303bc6b31768855778a9eaa0"; - sha256_x86_64 = "33fac9630ca8c2d374247abc5c010ac8d2875a3384968aa3e74448361808e4b7"; + sha256_i686 = "0p58pag1x85r911lxhmr4blk687ivjqigflx175vp7rcmmj108xn"; + sha256_x86_64 = "0db36jg08qy8712qy6lgyifdqlqb468rrnjm3aa6937ixl9ixpal"; jceName = "UnlimitedJCEPolicyJDK7.zip"; jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html; sha256JCE = "7a8d790e7bd9c2f82a83baddfae765797a4a56ea603c9150c87b7cdb7800194d"; From f50c5602e9c0519c9fe4cd0ea34696028332f99b Mon Sep 17 00:00:00 2001 From: Andreas Herrmann Date: Wed, 3 Sep 2014 21:31:00 +0200 Subject: [PATCH 253/789] mpi4py: Adhere to package description convention --- pkgs/development/python-modules/mpi4py/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/mpi4py/default.nix b/pkgs/development/python-modules/mpi4py/default.nix index 6c487dc07ad..4422c4e9f37 100644 --- a/pkgs/development/python-modules/mpi4py/default.nix +++ b/pkgs/development/python-modules/mpi4py/default.nix @@ -46,9 +46,8 @@ buildPythonPackage rec { propagatedBuildInputs = [ openssh ]; meta = { - description = " - Provides Python bindings for the Message Passing Interface standard. - "; + description = + "Provides Python bindings for the Message Passing Interface standard"; homepage = "http://code.google.com/p/mpi4py/"; license = stdenv.lib.licenses.bsd3; }; From 9ac9a06f13a1126c16df95f4f727eee5ea51396e Mon Sep 17 00:00:00 2001 From: Andreas Herrmann Date: Wed, 3 Sep 2014 21:31:13 +0200 Subject: [PATCH 254/789] h5py: Adhere to package description convention --- pkgs/development/python-modules/h5py/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/h5py/default.nix b/pkgs/development/python-modules/h5py/default.nix index 9ab68ac4cd2..f4df05fa595 100644 --- a/pkgs/development/python-modules/h5py/default.nix +++ b/pkgs/development/python-modules/h5py/default.nix @@ -34,9 +34,8 @@ buildPythonPackage rec { ; meta = { - description = " - The h5py package is a Pythonic interface to the HDF5 binary data format. - "; + description = + "Provides a Pythonic interface to the HDF5 binary data format"; homepage = "http://www.h5py.org/"; license = stdenv.lib.licenses.bsd2; }; From ebbd54e9f0aa8d77ba0f72eac0b032dd4fd4f60a Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Wed, 3 Sep 2014 21:59:29 +0200 Subject: [PATCH 255/789] ocaml-javalib, ocaml-sawja: uses patchShebangs rather than ad-hoc patches --- pkgs/development/ocaml-modules/javalib/configure.sh.patch | 6 ------ pkgs/development/ocaml-modules/javalib/default.nix | 2 ++ pkgs/development/ocaml-modules/sawja/configure.sh.patch | 6 ------ pkgs/development/ocaml-modules/sawja/default.nix | 2 ++ 4 files changed, 4 insertions(+), 12 deletions(-) diff --git a/pkgs/development/ocaml-modules/javalib/configure.sh.patch b/pkgs/development/ocaml-modules/javalib/configure.sh.patch index 77a2a5ba4ae..67e019b277a 100644 --- a/pkgs/development/ocaml-modules/javalib/configure.sh.patch +++ b/pkgs/development/ocaml-modules/javalib/configure.sh.patch @@ -1,11 +1,5 @@ --- javalib-2.3-orig/configure.sh 2013-10-30 08:35:30.000000000 +0100 +++ javalib-2.3/configure.sh 2014-07-06 17:28:39.025066199 +0200 -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - - ### - ### A configuration script for Javalib @@ -44,7 +44,7 @@ DESTDIR= # The ocamlpath variable for the compiler to locate the locally-installed diff --git a/pkgs/development/ocaml-modules/javalib/default.nix b/pkgs/development/ocaml-modules/javalib/default.nix index 2fa72dcf07f..365fcc677cc 100644 --- a/pkgs/development/ocaml-modules/javalib/default.nix +++ b/pkgs/development/ocaml-modules/javalib/default.nix @@ -20,6 +20,8 @@ stdenv.mkDerivation rec { createFindlibDestdir = true; + preConfigure = "patchShebangs ./configure.sh"; + configureScript = "./configure.sh"; dontAddPrefix = "true"; diff --git a/pkgs/development/ocaml-modules/sawja/configure.sh.patch b/pkgs/development/ocaml-modules/sawja/configure.sh.patch index e01df32bbde..8165de242f5 100644 --- a/pkgs/development/ocaml-modules/sawja/configure.sh.patch +++ b/pkgs/development/ocaml-modules/sawja/configure.sh.patch @@ -1,11 +1,5 @@ --- sawja-1.5-orig/configure.sh 2013-10-30 08:35:29.000000000 +0100 +++ sawja-1.5/configure.sh 2014-07-05 18:50:26.833798254 +0200 -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - - ### - ### A configuration script for Sawja @@ -39,7 +39,7 @@ DESTDIR= # The ocamlpath variable for the compiler to locate the locally-installed diff --git a/pkgs/development/ocaml-modules/sawja/default.nix b/pkgs/development/ocaml-modules/sawja/default.nix index bed87a50f81..ef3ab9a46b9 100644 --- a/pkgs/development/ocaml-modules/sawja/default.nix +++ b/pkgs/development/ocaml-modules/sawja/default.nix @@ -19,6 +19,8 @@ stdenv.mkDerivation rec { createFindlibDestdir = true; + preConfigure = "patchShebangs ./configure.sh"; + configureScript = "./configure.sh"; dontAddPrefix = "true"; From 2e97c06999db2a5dd56b3e105d8f57ad2013ff51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Wed, 3 Sep 2014 22:06:54 +0200 Subject: [PATCH 256/789] nixos-option: enable all flags by default and make output a bit readable cc @nbp --- nixos/doc/manual/man-nixos-option.xml | 66 +++-------------- nixos/modules/installer/tools/nixos-option.sh | 74 +++++++------------ 2 files changed, 36 insertions(+), 104 deletions(-) diff --git a/nixos/doc/manual/man-nixos-option.xml b/nixos/doc/manual/man-nixos-option.xml index 7952847d4db..554b2969180 100644 --- a/nixos/doc/manual/man-nixos-option.xml +++ b/nixos/doc/manual/man-nixos-option.xml @@ -17,11 +17,6 @@ nixos-option - - - - - option.name @@ -31,50 +26,13 @@ This command evaluates the configuration specified in /etc/nixos/configuration.nix and returns the properties -of the option name given as argument. By default, it returns the value of -the option. +of the option name given as argument.
When the option name is not an option, the command prints the list of attributes contained in the attribute set. -Options - -This command accepts the following options: - - - - - , - - Returns the value of the option. This is the default operation - if no other options are defined. - - - - - , - - Return the default value, the example and the description of the - option when available. - - - - - , - - Return the locations where the option is declared and where it - is defined. This is extremely useful to find sources of errors in - your configuration. - - - - - - - - Environment @@ -103,27 +61,21 @@ grub initScript $ nixos-option boot.loader.grub.enable -true +Value: +true -Prints option information: +Default: +true -$ nixos-option -d networking.hostName -Default: "nixos" Description: -The name of the machine. Leave it empty if you want to obtain -it from a DHCP server (if using DHCP). +Whether to enable the GNU GRUB boot loader. -Find the locations which are declaring and defining an option: - -$ nixos-option -l hardware.firmware Declared by: - /mnt/data/nix-sources/nixos/modules/services/hardware/udev.nix + "/path/to/nixpkgs/nixos/modules/system/boot/loader/grub/grub.nix" Defined by: - /path/to/nixpkgs/nixos/modules/system/boot/kernel.nix - /path/to/nixpkgs/nixos/modules/hardware/network/rt73.nix - /path/to/nixpkgs/nixos/modules/hardware/network/intel-3945abg.nix - /path/to/nixpkgs/nixos/modules/hardware/network/intel-2200bg.nix + "/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/nixos/modules/system/boot/loader/grub/grub.nix" + diff --git a/nixos/modules/installer/tools/nixos-option.sh b/nixos/modules/installer/tools/nixos-option.sh index edc94d73208..d995787c76f 100644 --- a/nixos/modules/installer/tools/nixos-option.sh +++ b/nixos/modules/installer/tools/nixos-option.sh @@ -11,9 +11,6 @@ usage () { # Process Arguments # ##################### -desc=false -defs=false -value=false xml=false verbose=false @@ -24,14 +21,11 @@ for arg; do if test -z "$argfun"; then case $arg in -*) - longarg="" sarg="$arg" + longarg="" while test "$sarg" != "-"; do case $sarg in --*) longarg=$arg; sarg="--";; - -d*) longarg="$longarg --description";; - -v*) longarg="$longarg --value";; - -l*) longarg="$longarg --lookup";; -*) usage;; esac # remove the first letter option @@ -42,9 +36,6 @@ for arg; do esac for larg in $longarg; do case $larg in - --description) desc=true;; - --value) value=true;; - --lookup) defs=true;; --xml) xml=true;; --verbose) verbose=true;; --help) usage;; @@ -67,16 +58,6 @@ for arg; do fi done -if $xml; then - value=true - desc=true - defs=true -fi - -if ! $defs && ! $desc; then - value=true -fi - if $verbose; then set -x else @@ -95,8 +76,7 @@ evalAttr(){ local prefix="$1" local strict="$2" local suffix="$3" - echo "(import {}).$prefix${option:+.$option}${suffix:+.$suffix}" | - evalNix ${strict:+--strict} + echo "(import {}).$prefix${option:+.$option}${suffix:+.$suffix}" | evalNix ${strict:+--strict} } evalOpt(){ @@ -189,35 +169,35 @@ EOF fi if test "$(evalOpt "_type" 2> /dev/null)" = '"option"'; then - $value && evalCfg 1 + echo "Value:" + evalCfg 1 - if $desc; then - $value && echo; + echo - if default=$(evalOpt "default" - 2> /dev/null); then - echo "Default: $default" - else - echo "Default: " - fi - if example=$(evalOpt "example" - 2> /dev/null); then - echo "Example: $example" - fi - echo "Description:" - eval printf $(evalOpt "description") + echo "Default:" + if default=$(evalOpt "default" - 2> /dev/null); then + echo "$default" + else + echo "" fi - - if $defs; then - $desc || $value && echo; - - printPath () { echo " $1"; } - - echo "Declared by:" - nixMap printPath "$(findSources "declarations")" - echo "" - echo "Defined by:" - nixMap printPath "$(findSources "files")" - echo "" + echo + if example=$(evalOpt "example" - 2> /dev/null); then + echo "Example: $example" fi + echo "Description:" + echo + eval printf $(evalOpt "description") + + echo $desc; + + printPath () { echo " $1"; } + + echo "Declared by:" + nixMap printPath "$(findSources "declarations")" + echo + echo "Defined by:" + nixMap printPath "$(findSources "files")" + echo else # echo 1>&2 "Warning: This value is not an option." From 1568dcd4dcbb02759c1320f863c6b1a979ceee90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Wed, 3 Sep 2014 22:31:26 +0200 Subject: [PATCH 257/789] move ike to applications/networking folder --- pkgs/applications/{ => networking}/ike/default.nix | 0 pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/applications/{ => networking}/ike/default.nix (100%) diff --git a/pkgs/applications/ike/default.nix b/pkgs/applications/networking/ike/default.nix similarity index 100% rename from pkgs/applications/ike/default.nix rename to pkgs/applications/networking/ike/default.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6561ef69d9e..81d46566877 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9114,7 +9114,7 @@ let ii = callPackage ../applications/networking/irc/ii { }; - ike = callPackage ../applications/ike { }; + ike = callPackage ../applications/networking/ike { }; ikiwiki = callPackage ../applications/misc/ikiwiki { inherit (perlPackages) TextMarkdown URI HTMLParser HTMLScrubber From 0dbdc857d75d9dc82dc3d7a37014ef0ae484b0ec Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 3 Sep 2014 22:19:38 +0200 Subject: [PATCH 258/789] nspr: Update to 4.10.7 --- pkgs/development/libraries/nspr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix index 0355ce25c62..01967718c40 100644 --- a/pkgs/development/libraries/nspr/default.nix +++ b/pkgs/development/libraries/nspr/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl }: -let version = "4.10.6"; in +let version = "4.10.7"; in stdenv.mkDerivation { name = "nspr-${version}"; src = fetchurl { url = "http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${version}/src/nspr-${version}.tar.gz"; - sha1 = "3hzcslcfql1rg7drvcn4nmrigy7jfgwz"; + sha256 = "389af5cfa863ea9bc6de7b30c15f8a4f9bddd8002f8c6fdc8b33caef43893938"; }; preConfigure = "cd nspr"; From b3b06af89a0179e023c69808fd00b36b57d27316 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 3 Sep 2014 22:48:52 +0200 Subject: [PATCH 259/789] nss: Update to 3.16.4 --- pkgs/development/libraries/nss/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix index 447030f5fcc..38eb4a93f24 100644 --- a/pkgs/development/libraries/nss/default.nix +++ b/pkgs/development/libraries/nss/default.nix @@ -11,11 +11,11 @@ let in stdenv.mkDerivation rec { name = "nss-${version}"; - version = "3.16.3"; + version = "3.16.4"; src = fetchurl { - url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_16_3_RTM/src/${name}.tar.gz"; - sha256 = "657711ff7a4058043b69019a66f44101d0234eae2b6b80ab900439dbf02add60"; + url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_16_4_RTM/src/${name}.tar.gz"; + sha256 = "adcd1e655fd9508e7f13847452fd5887a835eff882e3f0d3c42dfcd651650b77"; }; buildInputs = [ nspr perl zlib sqlite ]; From 88964f37a0f024b71326c3b0c99a2beccabe41d1 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 3 Sep 2014 22:48:58 +0200 Subject: [PATCH 260/789] firefox: Update to 32.0 --- pkgs/applications/networking/browsers/firefox/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix index e23a6d94ec1..4f4a88f01c8 100644 --- a/pkgs/applications/networking/browsers/firefox/default.nix +++ b/pkgs/applications/networking/browsers/firefox/default.nix @@ -15,14 +15,14 @@ assert stdenv.gcc ? libc && stdenv.gcc.libc != null; -let version = "31.0"; in +let version = "32.0"; in stdenv.mkDerivation rec { name = "firefox-${version}"; src = fetchurl { url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2"; - sha1 = "a6c3e25ee3aeb7da42db2aaeb50a385d63532beb"; + sha1 = "5cb7644af9741ebcdb3a21b777362913908c8f41"; }; buildInputs = From 59ad713288134ba5441edfa941792a6652a1e5c2 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 23:10:40 +0200 Subject: [PATCH 261/789] nixos-install: set umask 0022 --- nixos/modules/installer/tools/nixos-install.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/modules/installer/tools/nixos-install.sh b/nixos/modules/installer/tools/nixos-install.sh index 86952486ade..c633cf4a839 100644 --- a/nixos/modules/installer/tools/nixos-install.sh +++ b/nixos/modules/installer/tools/nixos-install.sh @@ -7,6 +7,9 @@ # * nix-env -p /nix/var/nix/profiles/system -i # * install the boot loader +# Ensure a consistent umask. +umask 0022 + # Re-exec ourselves in a private mount namespace so that our bind # mounts get cleaned up automatically. if [ "$(id -u)" = 0 ]; then From a1ded5c20e42c463686aa39ed8f0a3e7de8858d9 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 3 Sep 2014 23:11:37 +0200 Subject: [PATCH 262/789] nixos-install: use absolute path when running passwd in chroot --- nixos/modules/installer/tools/nixos-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/installer/tools/nixos-install.sh b/nixos/modules/installer/tools/nixos-install.sh index c633cf4a839..bd334c2a3cb 100644 --- a/nixos/modules/installer/tools/nixos-install.sh +++ b/nixos/modules/installer/tools/nixos-install.sh @@ -246,7 +246,7 @@ chroot $mountPoint /nix/var/nix/profiles/system/activate # Ask the user to set a root password. if [ -t 0 ] ; then echo "setting root password..." - chroot $mountPoint passwd + chroot $mountPoint /var/setuid-wrappers/passwd fi From e510a2769699342251704a7c4da09cfc933af90b Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Wed, 3 Sep 2014 23:57:34 +0200 Subject: [PATCH 263/789] bsd-games: fixed path to dictionary due to the update of miscfiles, see 4cf191a42530cce961b445b40243c3deb9fc4a7c --- pkgs/games/bsdgames/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/games/bsdgames/default.nix b/pkgs/games/bsdgames/default.nix index 59423d7a5a6..882f5f3cde6 100644 --- a/pkgs/games/bsdgames/default.nix +++ b/pkgs/games/bsdgames/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation { bsd_games_cfg_varlibdir=. bsd_games_cfg_non_interactive=y bsd_games_cfg_no_build_dirs="dab hack phantasia sail" - bsd_games_cfg_dictionary_src=${miscfiles}/share/dict/words + bsd_games_cfg_dictionary_src=${miscfiles}/share/web2 bsd_games_cfg_pager=${less} EOF From 98778c4c2779d9e3c52003358a1978eb0bf0b2aa Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Thu, 4 Sep 2014 01:30:04 +0200 Subject: [PATCH 264/789] Add JohnTheRipper, a fast password cracker --- pkgs/tools/security/john/default.nix | 28 ++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/tools/security/john/default.nix diff --git a/pkgs/tools/security/john/default.nix b/pkgs/tools/security/john/default.nix new file mode 100644 index 00000000000..97f67dfbd71 --- /dev/null +++ b/pkgs/tools/security/john/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchgit, openssl, nss, nspr, krb5, gmp, zlib, libpcap, re2 }: + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "JohnTheRipper-${version}"; + version = "8a3e3c1d"; + buildInputs = [ openssl nss nspr krb5 gmp zlib libpcap re2 ]; + preConfigure = ''cd src''; + installPhase = '' + ensureDir $out/share/john/ + ensureDir $out/bin + cp -R ../run/* $out/share/john + ln -s $out/share/john/john $out/bin/john + ''; + src = fetchgit { + url = https://github.com/magnumripper/JohnTheRipper.git; + rev = "93f061bc41652c94ae049b52572aac709d18aa4c"; + sha256 = "1rnfi09830n34jcqaxmsam54p4zsq9a49ic2ljh44lahcipympvy"; + }; + meta = { + description = "John the Ripper password cracker"; + license = licenses.gpl2; + homepage = https://github.com/magnumripper/JohnTheRipper/; + maintainers = with maintainers; [offline]; + platforms = with platforms; unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4fe7a5cd355..e30d149c95e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1394,6 +1394,8 @@ let jnettop = callPackage ../tools/networking/jnettop { }; + john = callPackage ../tools/security/john { }; + jq = callPackage ../development/tools/jq {}; jscoverage = callPackage ../development/tools/misc/jscoverage { }; From 0c398f60405090743fbdcf14faf1193c642b6328 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Thu, 4 Sep 2014 01:30:59 +0200 Subject: [PATCH 265/789] docker: add xz to PATH, make importing from archives work --- pkgs/applications/virtualization/docker/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index 37550c2fe1f..dafc093bf05 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, makeWrapper, go, lxc, sqlite, iproute, bridge_utils, devicemapper, -btrfsProgs, iptables, bash, e2fsprogs}: +btrfsProgs, iptables, bash, e2fsprogs, xz}: stdenv.mkDerivation rec { name = "docker-${version}"; @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { installPhase = '' install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/libexec/docker/docker install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/libexec/docker/dockerinit - makeWrapper $out/libexec/docker/docker $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin" + makeWrapper $out/libexec/docker/docker $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin:${xz}/bin" # systemd install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service From 2de0cf2549e79427fd23f0ce2f2b0021247ba07e Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 3 Sep 2014 18:40:05 -0700 Subject: [PATCH 266/789] nixos/utils: Don't remove first character if not a / --- nixos/lib/utils.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/lib/utils.nix b/nixos/lib/utils.nix index 35c56e8c32b..7b8be2050c1 100644 --- a/nixos/lib/utils.nix +++ b/nixos/lib/utils.nix @@ -5,6 +5,7 @@ rec { # Escape a path according to the systemd rules, e.g. /dev/xyzzy # becomes dev-xyzzy. FIXME: slow. escapeSystemdPath = s: - replaceChars ["/" "-" " "] ["-" "\\x2d" "\\x20"] (substring 1 (stringLength s) s); + replaceChars ["/" "-" " "] ["-" "\\x2d" "\\x20"] + (if hasPrefix "/" s then substring 1 (stringLength s) s else s); } From e6ab680cbfb8165b51c829303b63eb44a905e751 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Thu, 4 Sep 2014 10:25:56 +0200 Subject: [PATCH 267/789] nixos nat: add type for sourcePort and destination of forwardPorts --- nixos/modules/services/networking/nat.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/networking/nat.nix b/nixos/modules/services/networking/nat.nix index b6fa3b79eb2..9ddd830a04a 100644 --- a/nixos/modules/services/networking/nat.nix +++ b/nixos/modules/services/networking/nat.nix @@ -76,9 +76,19 @@ in }; networking.nat.forwardPorts = mkOption { - type = types.listOf types.attrs; + type = types.listOf types.optionSet; default = []; example = [ { sourcePort = 8080; destination = "10.0.0.1:80"; } ]; + options = { + sourcePort = mkOption { + type = types.int; + }; + + destination = mkOption { + type = types.str; + }; + }; + description = '' List of forwarded ports from the external interface to From 467aa737a0d4012f94eb448df3e04fe64a872203 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Thu, 4 Sep 2014 13:01:23 +0400 Subject: [PATCH 268/789] Fix QScintilla source --- pkgs/development/libraries/qscintilla/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/qscintilla/default.nix b/pkgs/development/libraries/qscintilla/default.nix index c98496e336c..52736ba5d34 100644 --- a/pkgs/development/libraries/qscintilla/default.nix +++ b/pkgs/development/libraries/qscintilla/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { name = "${pname}-${version}"; src = fetchurl { - url = "mirror://sourceforge/pyqt/QScintilla2/QScintilla-2.8.3/${name}.tar.gz"; + url = "mirror://sourceforge/pyqt/QScintilla2/QScintilla-${version}/QScintilla-gpl-${version}.tar.gz"; sha256 = "fb94e6d61c3ccd4bf167d5f092629e619f7069d42207469458998b761a7cf505"; }; From 2ba523df244d9a3eefec9e2303080f93108254fe Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Thu, 4 Sep 2014 11:32:40 +0200 Subject: [PATCH 269/789] nixos nat: add description to forwardPorts --- nixos/modules/services/networking/nat.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nixos/modules/services/networking/nat.nix b/nixos/modules/services/networking/nat.nix index 9ddd830a04a..4a4c06503c2 100644 --- a/nixos/modules/services/networking/nat.nix +++ b/nixos/modules/services/networking/nat.nix @@ -82,10 +82,14 @@ in options = { sourcePort = mkOption { type = types.int; + example = 8080; + description = "Source port of the external interface"; }; destination = mkOption { type = types.str; + example = "10.0.0.1:80"; + description = "Forward tcp connection to destination ip:port"; }; }; From 3ccd8af29d33052a3377f7ff5fe6138fe0512c2f Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Thu, 4 Sep 2014 12:08:34 +0200 Subject: [PATCH 270/789] Add curl-unix-socket, Run HTTP requests over UNIX socket --- .../networking/curl-unix-socket/default.nix | 24 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/tools/networking/curl-unix-socket/default.nix diff --git a/pkgs/tools/networking/curl-unix-socket/default.nix b/pkgs/tools/networking/curl-unix-socket/default.nix new file mode 100644 index 00000000000..88d75ba570e --- /dev/null +++ b/pkgs/tools/networking/curl-unix-socket/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchFromGitHub, go }: + +stdenv.mkDerivation { + name = "curl-unix-socket"; + + src = fetchFromGitHub { + owner = "Soulou"; + repo = "curl-unix-socket"; + rev = "e926dca77ba7d4a1eeae073918fdd3db92f1a350"; + sha256 = "1ynrrav90y3dhk8jq2fxm3jswj5nvrffwslgykj429hk6n0czb3d"; + }; + + buildInputs = [ go ]; + buildPhase = "go build"; + installPhase = "install -D curl-unix-socket* $out/bin/curl-unix-socket"; + + meta = with stdenv.lib; { + description = "Run HTTP requests over UNIX socket"; + license = licenses.mit; + homepage = https://github.com/Soulou/curl-unix-socket; + maintainers = with maintainers; [offline]; + platforms = with platforms; unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 092f18da60e..b2063fe7206 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -855,6 +855,8 @@ let sslSupport = zlibSupport; }; + curl_unix_socket = callPackage ../tools/networking/curl-unix-socket rec { }; + cunit = callPackage ../tools/misc/cunit { }; curlftpfs = callPackage ../tools/filesystems/curlftpfs { }; From a517dfcf71fa643b55ab29f09cfef94c5e89ba02 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Thu, 4 Sep 2014 14:41:23 +0400 Subject: [PATCH 271/789] Fix ACL2 --- pkgs/development/compilers/sbcl/1.2.0.nix | 78 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 6 +- 2 files changed, 83 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/compilers/sbcl/1.2.0.nix diff --git a/pkgs/development/compilers/sbcl/1.2.0.nix b/pkgs/development/compilers/sbcl/1.2.0.nix new file mode 100644 index 00000000000..c9d360f0ec5 --- /dev/null +++ b/pkgs/development/compilers/sbcl/1.2.0.nix @@ -0,0 +1,78 @@ +{ stdenv, fetchurl, sbclBootstrap, clisp}: + +stdenv.mkDerivation rec { + name = "sbcl-${version}"; + version = "1.2.0"; + + src = fetchurl { + url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2"; + sha256 = "13k20sys1v4lvgis8cnbczww6zs93rw176vz07g4jx06418k53x2"; + }; + + buildInputs = [ ] + ++ (stdenv.lib.optional stdenv.isDarwin sbclBootstrap) + ++ (stdenv.lib.optional stdenv.isLinux clisp) + ; + + patchPhase = '' + echo '"${version}.nixos"' > version.lisp-expr + echo " + (lambda (features) + (flet ((enable (x) + (pushnew x features)) + (disable (x) + (setf features (remove x features)))) + (enable :sb-thread))) " > customize-target-features.lisp + + pwd + + # SBCL checks whether files are up-to-date in many places.. + # Unfortunately, same timestamp is not good enough + sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp + sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp + sed -i src/cold/slam.lisp -e \ + '/file-write-date input/a)' + sed -i src/cold/slam.lisp -e \ + '/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))' + sed -i src/code/target-load.lisp -e \ + '/date defaulted-fasl/a)' + sed -i src/code/target-load.lisp -e \ + '/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))' + + # Fix the tests + sed -e '/deftest pwent/inil' -i contrib/sb-posix/posix-tests.lisp + sed -e '/deftest grent/inil' -i contrib/sb-posix/posix-tests.lisp + sed -e '/deftest .*ent.non-existing/,+5d' -i contrib/sb-posix/posix-tests.lisp + sed -e '/deftest \(pw\|gr\)ent/,+3d' -i contrib/sb-posix/posix-tests.lisp + + sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp + sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp + ''; + + preBuild = '' + export INSTALL_ROOT=$out + mkdir -p test-home + export HOME=$PWD/test-home + ''; + + buildPhase = if stdenv.isLinux + then '' + sh make.sh clisp --prefix=$out + '' + else '' + sh make.sh --prefix=$out --xc-host='${sbclBootstrap}/bin/sbcl --core ${sbclBootstrap}/share/sbcl/sbcl.core --disable-debugger --no-userinit --no-sysinit' + ''; + + installPhase = '' + INSTALL_ROOT=$out sh install.sh + ''; + + meta = { + description = "Lisp compiler"; + homepage = http://www.sbcl.org; + license = stdenv.lib.licenses.bsd3; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.all; + inherit version; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b2063fe7206..a7af80dbf71 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3462,6 +3462,10 @@ let sbcl = callPackage ../development/compilers/sbcl { clisp = clisp; }; + # For ACL2 + sbcl_1_2_0 = callPackage ../development/compilers/sbcl/1.2.0.nix { + clisp = clisp; + }; scala_2_9 = callPackage ../development/compilers/scala/2.9.nix { }; scala_2_10 = callPackage ../development/compilers/scala/2.10.nix { }; @@ -3553,7 +3557,7 @@ let ### DEVELOPMENT / INTERPRETERS acl2 = builderDefsPackage ../development/interpreters/acl2 { - inherit sbcl; + sbcl = sbcl_1_2_0; }; angelscript = callPackage ../development/interpreters/angelscript {}; From 89eccb7fb0d10ae208df9b1c6eead8cbc654b32f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Thu, 4 Sep 2014 13:37:03 +0200 Subject: [PATCH 272/789] sudo: add sendmailPath option (defaults to /var/setuid-wrappers/sendmail) It currently seems impossible to make sudo send emails. No matter how much debugging I enable, sudo continues to be silent about sendmail. I tried setting "Defaults mailerpath=/var/setuid-wrappers/sendmail" but that too was completely ignored (except for logging that the variable mailerpath exists with the value I assigned to it...). This enables sendmail support and sets a default value that works on NixOS. --- pkgs/tools/security/sudo/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix index ab46af5a1cd..23b7241ace0 100644 --- a/pkgs/tools/security/sudo/default.nix +++ b/pkgs/tools/security/sudo/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, coreutils, pam, groff }: +{ stdenv, fetchurl, coreutils, pam, groff +, sendmailPath ? "/var/setuid-wrappers/sendmail" +}: stdenv.mkDerivation rec { name = "sudo-1.8.10p3"; @@ -17,6 +19,7 @@ stdenv.mkDerivation rec { "--with-rundir=/var/run" "--with-vardir=/var/db/sudo" "--with-logpath=/var/log/sudo.log" + "--with-sendmail=${sendmailPath}" ]; postConfigure = From 82b4965b083383126c5a8653cc5031c6ecea72bb Mon Sep 17 00:00:00 2001 From: Matthew Brown Date: Thu, 4 Sep 2014 13:21:28 +0100 Subject: [PATCH 273/789] Removed mysql dependency as it does not pick up the header files on Linux, even when specified explicitly in the config params. --- pkgs/servers/search/sphinxsearch/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/search/sphinxsearch/default.nix b/pkgs/servers/search/sphinxsearch/default.nix index 1979da5b2c0..a72240064f2 100644 --- a/pkgs/servers/search/sphinxsearch/default.nix +++ b/pkgs/servers/search/sphinxsearch/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, mysql, +{ stdenv, fetchurl, pkgconfig, version ? "2.1.9", mainSrc ? fetchurl { url = "http://sphinxsearch.com/files/sphinx-${version}-release.tar.gz"; @@ -12,11 +12,12 @@ stdenv.mkDerivation rec { configureFlags = [ "--program-prefix=sphinxsearch-" + "--without-mysql" + "--enable-id64" ]; - buildInputs = [ + buildInputs = [ pkgconfig - mysql ]; meta = { From 7f9609756d3a11ea0551b43dcfca91f969ee1d51 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:14 +0200 Subject: [PATCH 274/789] haskell-MFlow: update to version 0.4.5.9 --- pkgs/development/libraries/haskell/MFlow/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/MFlow/default.nix b/pkgs/development/libraries/haskell/MFlow/default.nix index f5e088a4238..aaf84a84187 100644 --- a/pkgs/development/libraries/haskell/MFlow/default.nix +++ b/pkgs/development/libraries/haskell/MFlow/default.nix @@ -9,8 +9,8 @@ cabal.mkDerivation (self: { pname = "MFlow"; - version = "0.4.5.8"; - sha256 = "1gfv5ky68dyn8gjjg60c5s9x3dl9xn6j9q43w7vaj9sd1q12wk3c"; + version = "0.4.5.9"; + sha256 = "0mqsyx7wkfgvpppqgpjpvzwx79vj7lh4c8afzzj1hgh8z0ilb4ik"; buildDepends = [ blazeHtml blazeMarkup caseInsensitive clientsession conduit conduitExtra extensibleExceptions httpTypes monadloc mtl parsec From cbe7451b5e9f3b29292482a110eaa0efb206dfad Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:17 +0200 Subject: [PATCH 275/789] haskell-crypto-random: update to version 0.0.8 --- pkgs/development/libraries/haskell/crypto-random/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/crypto-random/default.nix b/pkgs/development/libraries/haskell/crypto-random/default.nix index 878eb3d2c71..c7053cbf1e3 100644 --- a/pkgs/development/libraries/haskell/crypto-random/default.nix +++ b/pkgs/development/libraries/haskell/crypto-random/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "crypto-random"; - version = "0.0.7"; - sha256 = "1dj63y85l3f1x7fw8j7hykz56ajd38iikl3f8ygaz8r95pd1zjxw"; + version = "0.0.8"; + sha256 = "058ilm05ni5ribggx25cfrhsv1z0abvgxzf3wd3d6qqq58p5wbkv"; buildDepends = [ securemem vector ]; meta = { homepage = "http://github.com/vincenthz/hs-crypto-random"; From 1ba291edc6cdea8242a336eb51535cd58649ab7a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:20 +0200 Subject: [PATCH 276/789] haskell-digestive-functors-heist: update to version 0.8.6.0 --- .../libraries/haskell/digestive-functors-heist/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/digestive-functors-heist/default.nix b/pkgs/development/libraries/haskell/digestive-functors-heist/default.nix index aae120d5681..4c1ca9cd9ae 100644 --- a/pkgs/development/libraries/haskell/digestive-functors-heist/default.nix +++ b/pkgs/development/libraries/haskell/digestive-functors-heist/default.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "digestive-functors-heist"; - version = "0.8.5.0"; - sha256 = "0pjjr3b1zm23wpqnmcbr8ly08bp63sz3c9vbxcani4mwgx05qp87"; + version = "0.8.6.0"; + sha256 = "0n73hw8xl70x7c3hn4hz1qqijvvhv0qk30q0c22lnbjaf4n8dki2"; buildDepends = [ blazeBuilder digestiveFunctors heist mtl text xmlhtml ]; From cd5f33affd00133fc663179e46ff5051a898e47e Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:22 +0200 Subject: [PATCH 277/789] haskell-entropy: update to version 0.3.3 --- pkgs/development/libraries/haskell/entropy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/entropy/default.nix b/pkgs/development/libraries/haskell/entropy/default.nix index 881a9cd9a0a..207cc0ea5da 100644 --- a/pkgs/development/libraries/haskell/entropy/default.nix +++ b/pkgs/development/libraries/haskell/entropy/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "entropy"; - version = "0.3.2"; - sha256 = "1kk0vmfmfqcsw0pzbii9rvz32fvhvxqpn6p6jw6q2x33z6gm5f9x"; + version = "0.3.3"; + sha256 = "0px97mims7pbxyh8jqckc14ahdjj7r3hhckzpjqnxpkcisb2c738"; meta = { homepage = "https://github.com/TomMD/entropy"; description = "A platform independent entropy source"; From 4ff583358edb56112e2541efcbefe9d1b7afdb2a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:25 +0200 Subject: [PATCH 278/789] haskell-hplayground: update to version 0.1.0.4 --- pkgs/development/libraries/haskell/hplayground/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/hplayground/default.nix b/pkgs/development/libraries/haskell/hplayground/default.nix index db38dbc2399..4f71d28010a 100644 --- a/pkgs/development/libraries/haskell/hplayground/default.nix +++ b/pkgs/development/libraries/haskell/hplayground/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "hplayground"; - version = "0.1.0.3"; - sha256 = "1k46b94n9wkbh7374mjyg5jnwxxrhj8ai53q3r4lysx1rzgw7ak6"; + version = "0.1.0.4"; + sha256 = "12xqj7f9vqj2zsv3ipfmpkdnqagh2g0x4i4jsj98q91ynwhzg1am"; buildDepends = [ dataDefault hasteCompiler hastePerch monadsTf transformers ]; From fd9aed1a779ccf67c193abac49b66b37726da8ef Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:28 +0200 Subject: [PATCH 279/789] haskell-monad-journal: update to version 0.2.3.2 --- pkgs/development/libraries/haskell/monad-journal/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/monad-journal/default.nix b/pkgs/development/libraries/haskell/monad-journal/default.nix index 5cbfed976d1..f7c48f691ed 100644 --- a/pkgs/development/libraries/haskell/monad-journal/default.nix +++ b/pkgs/development/libraries/haskell/monad-journal/default.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "monad-journal"; - version = "0.2.3.1"; - sha256 = "11p7qdga26wz82x6a1fl57iij4swsr1d1aly76sjrlvl8maqlf7d"; + version = "0.2.3.2"; + sha256 = "02356yapx5g6lam72kdyhndq5lcyhd2zsjvvcndiyhqik6csi457"; buildDepends = [ either monadControl mtl transformers transformersBase ]; From 84b1072604b41901e9bc0dcd9a25a47d92fcfb6b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:30 +0200 Subject: [PATCH 280/789] haskell-network-uri: update to version 2.6.0.1 --- pkgs/development/libraries/haskell/network-uri/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/network-uri/default.nix b/pkgs/development/libraries/haskell/network-uri/default.nix index e6259b09c24..e42d6d28599 100644 --- a/pkgs/development/libraries/haskell/network-uri/default.nix +++ b/pkgs/development/libraries/haskell/network-uri/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "network-uri"; - version = "2.6.0.0"; - sha256 = "0dnprscb5nxidg56i7j6q783nwsrn3dabfsij3vjlvjn4f0sg11l"; + version = "2.6.0.1"; + sha256 = "09ymamb128jgqghpda4nixncr73all8qc6q53976aricm6a27p37"; buildDepends = [ parsec ]; testDepends = [ HUnit network testFramework testFrameworkHunit From dcd580b9d2b67f2a99cbf4e7f7fa1b6ece2b3fa6 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:36 +0200 Subject: [PATCH 281/789] haskell-purescript: update to version 0.5.5 --- pkgs/development/libraries/haskell/purescript/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/purescript/default.nix b/pkgs/development/libraries/haskell/purescript/default.nix index c5087a692f9..f8bb4d4a6db 100644 --- a/pkgs/development/libraries/haskell/purescript/default.nix +++ b/pkgs/development/libraries/haskell/purescript/default.nix @@ -7,8 +7,8 @@ cabal.mkDerivation (self: { pname = "purescript"; - version = "0.5.4.1"; - sha256 = "1d2i2sspr1dbzjznk70flvnik0b2m226a3z0rkqwrjjbl92bhgwb"; + version = "0.5.5"; + sha256 = "19a2ra37cxh56gd1k43y9fg2cdp848yimybsx8728in39m8cjbxw"; isLibrary = true; isExecutable = true; buildDepends = [ From 93778f97e2d84710c8d43c7bc81316a5e025c380 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:38 +0200 Subject: [PATCH 282/789] haskell-rest-gen: update to version 0.15 --- pkgs/development/libraries/haskell/rest-gen/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/rest-gen/default.nix b/pkgs/development/libraries/haskell/rest-gen/default.nix index 012f6db8bf2..148e8f1cc1f 100644 --- a/pkgs/development/libraries/haskell/rest-gen/default.nix +++ b/pkgs/development/libraries/haskell/rest-gen/default.nix @@ -9,8 +9,8 @@ cabal.mkDerivation (self: { pname = "rest-gen"; - version = "0.14.2.1"; - sha256 = "1dvcs25ndmzwdann5yq4567zjirirzskf9v31gkrki0im8mi9x14"; + version = "0.15"; + sha256 = "004rcxaw4xjsa1grz84wgik6nabd9c3nyp8s6ylfgwgcrvcc8li2"; buildDepends = [ aeson blazeHtml Cabal codeBuilder fclabels filepath hashable haskellSrcExts hslogger HStringTemplate hxt jsonSchema restCore From a64103179f6ccbe4edc95a1cecc2c9c728854e23 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:41 +0200 Subject: [PATCH 283/789] haskell-rest-happstack: update to version 0.2.10.2 --- pkgs/development/libraries/haskell/rest-happstack/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/rest-happstack/default.nix b/pkgs/development/libraries/haskell/rest-happstack/default.nix index 4c79bc58c06..93397e82363 100644 --- a/pkgs/development/libraries/haskell/rest-happstack/default.nix +++ b/pkgs/development/libraries/haskell/rest-happstack/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "rest-happstack"; - version = "0.2.10.1"; - sha256 = "0p4km3l8n50flj9cnxvjl34pp3msxz2yq4d91r318di8pacrgnxc"; + version = "0.2.10.2"; + sha256 = "18i2q3kvsyrh41gdclrzpnsjy1p9cgl3d9jsvcqqnzrv519vzdig"; buildDepends = [ happstackServer mtl restCore restGen utf8String ]; meta = { description = "Rest driver for Happstack"; From 01760e9110ca780049ae9f1e4761e55b730873f2 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:43 +0200 Subject: [PATCH 284/789] haskell-retry: update to version 0.5.1 --- pkgs/development/libraries/haskell/retry/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/retry/default.nix b/pkgs/development/libraries/haskell/retry/default.nix index 9a0a994cf77..0df453d10bb 100644 --- a/pkgs/development/libraries/haskell/retry/default.nix +++ b/pkgs/development/libraries/haskell/retry/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "retry"; - version = "0.5"; - sha256 = "1qp949w8pisgki06j5qgaxw1761q3gfccc7bqnhqpchazl4p6p6n"; + version = "0.5.1"; + sha256 = "1k5qv7c960dayhddvra1gpy1zv90rdjcrzpg8nzar9bpcxapczvj"; buildDepends = [ dataDefaultClass exceptions transformers ]; testDepends = [ dataDefaultClass exceptions hspec HUnit QuickCheck time From 6139f0f5ab1debd330393a81302207f9813ec50c Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:48 +0200 Subject: [PATCH 285/789] haskell-setlocale: update to version 1.0.0 --- .../libraries/haskell/setlocale/default.nix | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/haskell/setlocale/default.nix b/pkgs/development/libraries/haskell/setlocale/default.nix index fcfd2d34d58..ef00effcfe6 100644 --- a/pkgs/development/libraries/haskell/setlocale/default.nix +++ b/pkgs/development/libraries/haskell/setlocale/default.nix @@ -4,13 +4,11 @@ cabal.mkDerivation (self: { pname = "setlocale"; - version = "0.0.3"; - sha256 = "08pd20ibmslr94p52rn6x9w3swn9jy7vjlvxzw29h8dlqgmvcrjl"; + version = "1.0.0"; + sha256 = "1bnxh09jjac8gyjl87w6v86dqc1xr398l28ili8283im141anpzi"; meta = { - description = "A Haskell interface to setlocale()"; - license = self.stdenv.lib.licenses.publicDomain; + description = "Haskell bindings to setlocale"; + license = self.stdenv.lib.licenses.bsd3; platforms = self.ghc.meta.platforms; - hydraPlatforms = self.stdenv.lib.platforms.none; - broken = true; }; }) From 061b9b148c81f5c78af462618161ecd9b1ef7f9d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:51 +0200 Subject: [PATCH 286/789] haskell-x509: update to version 1.4.12 --- pkgs/development/libraries/haskell/x509/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/x509/default.nix b/pkgs/development/libraries/haskell/x509/default.nix index 4c8eb53c995..71601c9306d 100644 --- a/pkgs/development/libraries/haskell/x509/default.nix +++ b/pkgs/development/libraries/haskell/x509/default.nix @@ -7,8 +7,8 @@ cabal.mkDerivation (self: { pname = "x509"; - version = "1.4.11"; - sha256 = "1ax56jps640cj1swy08y4k75vx908ckwkg2hi7y2s3bhnvpz49ga"; + version = "1.4.12"; + sha256 = "0bfsmmngpvghbfljxa2gymf6hvsw04snw6fr2r6hpaw40njxfxxj"; buildDepends = [ asn1Encoding asn1Parse asn1Types cryptohash cryptoPubkeyTypes filepath mtl pem time From a6bb94573059b5e0d96e2cd1ef5a09cf88ecf024 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:35:00 +0200 Subject: [PATCH 287/789] haskell-network: update to version 2.6.0.2 --- .../libraries/haskell/network/{2.6.0.1.nix => 2.6.0.2.nix} | 4 ++-- pkgs/top-level/haskell-packages.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) rename pkgs/development/libraries/haskell/network/{2.6.0.1.nix => 2.6.0.2.nix} (83%) diff --git a/pkgs/development/libraries/haskell/network/2.6.0.1.nix b/pkgs/development/libraries/haskell/network/2.6.0.2.nix similarity index 83% rename from pkgs/development/libraries/haskell/network/2.6.0.1.nix rename to pkgs/development/libraries/haskell/network/2.6.0.2.nix index d5d302fbd8e..37540ad323e 100644 --- a/pkgs/development/libraries/haskell/network/2.6.0.1.nix +++ b/pkgs/development/libraries/haskell/network/2.6.0.2.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "network"; - version = "2.6.0.1"; - sha256 = "0qfffsdbvrf9gs8wr9ps7iv5h6drz4vb2ja9rprmc7ypswsacxsq"; + version = "2.6.0.2"; + sha256 = "12b7saam5ga6l4cplgkad49xa4vkynz2ri9jxidx1cxiqjcl0vc4"; testDepends = [ HUnit testFramework testFrameworkHunit ]; meta = { homepage = "https://github.com/haskell/network"; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index c09cf8b1182..8730ac6d160 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -1721,8 +1721,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in network_2_3_1_0 = callPackage ../development/libraries/haskell/network/2.3.1.0.nix {}; network_2_4_1_2 = callPackage ../development/libraries/haskell/network/2.4.1.2.nix {}; network_2_5_0_0 = callPackage ../development/libraries/haskell/network/2.5.0.0.nix {}; - network_2_6_0_1 = callPackage ../development/libraries/haskell/network/2.6.0.1.nix {}; - network = self.network_2_5_0_0; # the latest version break HTTP on all platforms + network_2_6_0_2 = callPackage ../development/libraries/haskell/network/2.6.0.2.nix {}; + network = self.network_2_5_0_0; networkCarbon = callPackage ../development/libraries/haskell/network-carbon {}; From 064c3d3e545de2d050598546b79c9d1956b27409 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:35:41 +0200 Subject: [PATCH 288/789] haskell-ghc-mod: update to version 5.0.1.2 --- .../libraries/haskell/ghc-mod/{5.0.1.1.nix => 5.0.1.2.nix} | 4 ++-- pkgs/top-level/haskell-packages.nix | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) rename pkgs/development/libraries/haskell/ghc-mod/{5.0.1.1.nix => 5.0.1.2.nix} (95%) diff --git a/pkgs/development/libraries/haskell/ghc-mod/5.0.1.1.nix b/pkgs/development/libraries/haskell/ghc-mod/5.0.1.2.nix similarity index 95% rename from pkgs/development/libraries/haskell/ghc-mod/5.0.1.1.nix rename to pkgs/development/libraries/haskell/ghc-mod/5.0.1.2.nix index 3eefe056218..1a4ada4d3dc 100644 --- a/pkgs/development/libraries/haskell/ghc-mod/5.0.1.1.nix +++ b/pkgs/development/libraries/haskell/ghc-mod/5.0.1.2.nix @@ -8,8 +8,8 @@ cabal.mkDerivation (self: { pname = "ghc-mod"; - version = "5.0.1.1"; - sha256 = "0qyl1653dj14ap3035kjj7xl8rsmgpwh32bj2lnwrmdm2223m8a3"; + version = "5.0.1.2"; + sha256 = "0hs2d6h3g077prm2mdr40k7m1cdc0h01agbcvs4h6y27nls3kyjx"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 8730ac6d160..15575967f30 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -906,7 +906,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in ghcjsCodemirror = callPackage ../development/libraries/haskell/ghcjs-codemirror {}; ghcMod_4_1_6 = callPackage ../development/libraries/haskell/ghc-mod/4.1.6.nix { inherit (pkgs) emacs; }; - ghcMod_5_0_1_1 = callPackage ../development/libraries/haskell/ghc-mod/5.0.1.1.nix { inherit (pkgs) emacs; }; + ghcMod_5_0_1_2 = callPackage ../development/libraries/haskell/ghc-mod/5.0.1.2.nix { inherit (pkgs) emacs; }; ghcMod = self.ghcMod_4_1_6; ghcMtl = callPackage ../development/libraries/haskell/ghc-mtl {}; From f82bf82465477c07a6aded38344b62c500f66adf Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:37:02 +0200 Subject: [PATCH 289/789] haskell-tls: update to version 1.2.9 (and drop obsolete tls-extra) --- .../libraries/haskell/tls-extra/default.nix | 23 ---------------- .../libraries/haskell/tls/1.1.5.nix | 27 ------------------- .../haskell/tls/{1.2.8.nix => default.nix} | 4 +-- pkgs/top-level/haskell-packages.nix | 8 +----- 4 files changed, 3 insertions(+), 59 deletions(-) delete mode 100644 pkgs/development/libraries/haskell/tls-extra/default.nix delete mode 100644 pkgs/development/libraries/haskell/tls/1.1.5.nix rename pkgs/development/libraries/haskell/tls/{1.2.8.nix => default.nix} (92%) diff --git a/pkgs/development/libraries/haskell/tls-extra/default.nix b/pkgs/development/libraries/haskell/tls-extra/default.nix deleted file mode 100644 index 0d5c97433b2..00000000000 --- a/pkgs/development/libraries/haskell/tls-extra/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -# This file was auto-generated by cabal2nix. Please do NOT edit manually! - -{ cabal, certificate, cipherAes, cipherRc4, cryptohash -, cryptoPubkey, cryptoRandom, mtl, network, pem, time, tls, vector -}: - -cabal.mkDerivation (self: { - pname = "tls-extra"; - version = "0.6.6"; - sha256 = "0k0sj3nq1lrvbmd582mjj8cxbxigivz1hm8hhij1ncl2pgnq5xyv"; - isLibrary = true; - isExecutable = true; - buildDepends = [ - certificate cipherAes cipherRc4 cryptohash cryptoPubkey - cryptoRandom mtl network pem time tls vector - ]; - meta = { - homepage = "http://github.com/vincenthz/hs-tls"; - description = "TLS extra default values and helpers"; - license = self.stdenv.lib.licenses.bsd3; - platforms = self.ghc.meta.platforms; - }; -}) diff --git a/pkgs/development/libraries/haskell/tls/1.1.5.nix b/pkgs/development/libraries/haskell/tls/1.1.5.nix deleted file mode 100644 index ddb1651fd10..00000000000 --- a/pkgs/development/libraries/haskell/tls/1.1.5.nix +++ /dev/null @@ -1,27 +0,0 @@ -# This file was auto-generated by cabal2nix. Please do NOT edit manually! - -{ cabal, cereal, certificate, cprngAes, cryptohash, cryptoPubkey -, cryptoRandom, mtl, network, QuickCheck, testFramework -, testFrameworkQuickcheck2, time -}: - -cabal.mkDerivation (self: { - pname = "tls"; - version = "1.1.5"; - sha256 = "1ja03x3i7dgjpy22h4shnni1xslph8i8q4accqq8njpqpz54c84c"; - buildDepends = [ - cereal certificate cryptohash cryptoPubkey cryptoRandom mtl network - ]; - testDepends = [ - cereal certificate cprngAes cryptoPubkey cryptoRandom mtl - QuickCheck testFramework testFrameworkQuickcheck2 time - ]; - doCheck = false; - meta = { - homepage = "http://github.com/vincenthz/hs-tls"; - description = "TLS/SSL protocol native implementation (Server and Client)"; - license = self.stdenv.lib.licenses.bsd3; - platforms = self.ghc.meta.platforms; - hydraPlatforms = self.stdenv.lib.platforms.none; - }; -}) diff --git a/pkgs/development/libraries/haskell/tls/1.2.8.nix b/pkgs/development/libraries/haskell/tls/default.nix similarity index 92% rename from pkgs/development/libraries/haskell/tls/1.2.8.nix rename to pkgs/development/libraries/haskell/tls/default.nix index 22eb615a657..45cb3c69394 100644 --- a/pkgs/development/libraries/haskell/tls/1.2.8.nix +++ b/pkgs/development/libraries/haskell/tls/default.nix @@ -9,8 +9,8 @@ cabal.mkDerivation (self: { pname = "tls"; - version = "1.2.8"; - sha256 = "0fm36jn2yri3fn6wadl5v4k0cpnansqlid4fhavgnp6mazf0q5ha"; + version = "1.2.9"; + sha256 = "1cwhwxpsxx9x5hv2c66d3yvbs84lrgaxmaz18skidmhqhs4i0sjy"; buildDepends = [ asn1Encoding asn1Types byteable cereal cipherAes cipherDes cipherRc4 cryptoCipherTypes cryptohash cryptoNumbers cryptoPubkey diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 15575967f30..c32a80c0e4b 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -2543,13 +2543,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in timeCompat = callPackage ../development/libraries/haskell/time-compat {}; - tls_1_1_5 = callPackage ../development/libraries/haskell/tls/1.1.5.nix {}; - tls_1_2_8 = callPackage ../development/libraries/haskell/tls/1.2.8.nix {}; - tls = self.tls_1_2_8; - - tlsExtra = callPackage ../development/libraries/haskell/tls-extra { - tls = self.tls_1_1_5; - }; + tls = callPackage ../development/libraries/haskell/tls {}; tostring = callPackage ../development/libraries/haskell/tostring {}; From 9f22ed986bff10e0901c81a96d8b070b2e4e7c7b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 11:05:07 +0200 Subject: [PATCH 290/789] haskell-network-uri: disable test suite to fix the build https://github.com/haskell/network-uri/issues/4 --- pkgs/development/libraries/haskell/network-uri/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/haskell/network-uri/default.nix b/pkgs/development/libraries/haskell/network-uri/default.nix index e42d6d28599..6cfd4dca161 100644 --- a/pkgs/development/libraries/haskell/network-uri/default.nix +++ b/pkgs/development/libraries/haskell/network-uri/default.nix @@ -13,6 +13,7 @@ cabal.mkDerivation (self: { HUnit network testFramework testFrameworkHunit testFrameworkQuickcheck2 ]; + doCheck = false; meta = { homepage = "https://github.com/haskell/network-uri"; description = "URI manipulation"; From 87bb484b9e34c8c8d0795fc1b2d2136ac2766376 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 4 Sep 2014 11:02:44 +0200 Subject: [PATCH 291/789] haskell-setlocale: jailbreak to fix build with GHC 7.8.3 --- pkgs/development/libraries/haskell/setlocale/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/haskell/setlocale/default.nix b/pkgs/development/libraries/haskell/setlocale/default.nix index ef00effcfe6..05696176d90 100644 --- a/pkgs/development/libraries/haskell/setlocale/default.nix +++ b/pkgs/development/libraries/haskell/setlocale/default.nix @@ -6,6 +6,7 @@ cabal.mkDerivation (self: { pname = "setlocale"; version = "1.0.0"; sha256 = "1bnxh09jjac8gyjl87w6v86dqc1xr398l28ili8283im141anpzi"; + jailbreak = true; meta = { description = "Haskell bindings to setlocale"; license = self.stdenv.lib.licenses.bsd3; From 381ce7ef9489a1ddf09c037001d418018c28a9ee Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 4 Sep 2014 11:06:07 +0200 Subject: [PATCH 292/789] haskell-optparse-applicative: add version 0.10.0 --- .../haskell/optparse-applicative/0.10.0.nix | 17 +++++++++++++++++ .../{default.nix => 0.9.1.1.nix} | 0 pkgs/top-level/haskell-packages.nix | 4 +++- 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix rename pkgs/development/libraries/haskell/optparse-applicative/{default.nix => 0.9.1.1.nix} (100%) diff --git a/pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix b/pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix new file mode 100644 index 00000000000..ff546c76eae --- /dev/null +++ b/pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix @@ -0,0 +1,17 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, ansiWlPprint, transformers, transformersCompat }: + +cabal.mkDerivation (self: { + pname = "optparse-applicative"; + version = "0.10.0"; + sha256 = "04hr6rzgc8h0c8fy748as3q7sc8vm94gvk0rw4gdj605z8hvaxcb"; + buildDepends = [ ansiWlPprint transformers transformersCompat ]; + jailbreak = true; + meta = { + homepage = "https://github.com/pcapriotti/optparse-applicative"; + description = "Utilities and combinators for parsing command line options"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/optparse-applicative/default.nix b/pkgs/development/libraries/haskell/optparse-applicative/0.9.1.1.nix similarity index 100% rename from pkgs/development/libraries/haskell/optparse-applicative/default.nix rename to pkgs/development/libraries/haskell/optparse-applicative/0.9.1.1.nix diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index c32a80c0e4b..25543d752df 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -1795,7 +1795,9 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in options = callPackage ../development/libraries/haskell/options {}; - optparseApplicative = callPackage ../development/libraries/haskell/optparse-applicative {}; + optparseApplicative_0_9_1_1 = callPackage ../development/libraries/haskell/optparse-applicative/0.9.1.1.nix {}; + optparseApplicative_0_10_0 = callPackage ../development/libraries/haskell/optparse-applicative/0.10.0.nix {}; + optparseApplicative = self.optparseApplicative_0_9_1_1; # version 0.10.0 breaks too many builds pathPieces = callPackage ../development/libraries/haskell/path-pieces {}; From 0a6ad143959f350be0970d85d6a27420708ee9c9 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 3 Sep 2014 08:33:12 +0200 Subject: [PATCH 293/789] haskell-idris: update to version 0.9.14.3 --- pkgs/development/compilers/idris/default.nix | 4 ++-- pkgs/top-level/haskell-packages.nix | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/idris/default.nix b/pkgs/development/compilers/idris/default.nix index 0761f189bc8..7ff88017c05 100644 --- a/pkgs/development/compilers/idris/default.nix +++ b/pkgs/development/compilers/idris/default.nix @@ -11,8 +11,8 @@ cabal.mkDerivation (self: { pname = "idris"; - version = "0.9.14.2"; - sha256 = "0j64kx357l16z9y9j20i7mvxgqff94bfssbhh1shb13c0pk5lmi6"; + version = "0.9.14.3"; + sha256 = "03zppfqjamy4mdwcfx3x1wzxav67ha1zgnynrxhvdqw3zcsrwnlr"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 25543d752df..7e628308eb7 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -2994,6 +2994,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in idris_plain = callPackage ../development/compilers/idris { llvmGeneral = self.llvmGeneral_3_3_8_2; llvmGeneralPure = self.llvmGeneralPure_3_3_8_2; + optparseApplicative = self.optparseApplicative_0_10_0; }; idris = callPackage ../development/compilers/idris/wrapper.nix {}; From 3d8a3e97bdc91c07d3e29c55d4090ab86eb6e38e Mon Sep 17 00:00:00 2001 From: Igor Pashev Date: Wed, 3 Sep 2014 22:20:31 +0200 Subject: [PATCH 294/789] Fixed buildLocalCabal by defining temporary $HOME MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes build error: building path(s) ‘/nix/store/c8i7gm134aij9330h77l4sdna635yj0a-foo.nix’ building /nix/store/c8i7gm134aij9330h77l4sdna635yj0a-foo.nix cabal2nix: /homeless-shelter/.cache: createDirectory: does not exist (No such file or directory) error: syntax error, unexpected $end, at /nix/store/c8i7gm134aij9330h77l4sdna635yj0a-foo.nix:1:1 (use ‘--show-trace’ to show detailed location information)… --- pkgs/top-level/haskell-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index cb235361783..3bbee1d6fe5 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -3037,6 +3037,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in name = "${name}.nix"; buildCommand = '' + export HOME="$TMPDIR" ${self.cabal2nix}/bin/cabal2nix ${src + "/${name}.cabal"} --sha256=FILTERME \ | grep -v FILTERME | sed \ -e 's/licenses.proprietary/licenses.unfree/' \ From c3436c0c4a683e9a57d91e7f6206d5f3b6530fbf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Thu, 4 Sep 2014 15:34:36 +0200 Subject: [PATCH 295/789] sudo: change password prompt The current sudo password prompt is "Password: ", while distros like e.g. Ubuntu and Arch Linux use "[sudo] password for %p: ", where "%p" expands to the username of the user running sudo. Adopt the prompt from other distros because it makes it less confusing when running commands with sudo that themselves ask for a password. --- pkgs/tools/security/sudo/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix index 23b7241ace0..167c369e3bb 100644 --- a/pkgs/tools/security/sudo/default.nix +++ b/pkgs/tools/security/sudo/default.nix @@ -22,6 +22,10 @@ stdenv.mkDerivation rec { "--with-sendmail=${sendmailPath}" ]; + configureFlagsArray = [ + "--with-passprompt=[sudo] password for %p: " # intentional trailing space + ]; + postConfigure = '' cat >> pathnames.h <<'EOF' From 762c03ef6427a8eb20ea810099b40e576e34bb7a Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 15:33:22 +0200 Subject: [PATCH 296/789] openttd: update from 1.4.1 to 1.4.2 --- pkgs/games/openttd/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix index ff96622cb59..c26c27aaf02 100644 --- a/pkgs/games/openttd/default.nix +++ b/pkgs/games/openttd/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "openttd-${version}"; - version = "1.4.1"; + version = "1.4.2"; src = fetchurl { url = "http://binaries.openttd.org/releases/${version}/${name}-source.tar.xz"; - sha256 = "0gkmf2jj1rab81y10dp8cirr90kv9dpr3ww4wb06j8cvgapy7b0z"; + sha256 = "1kzca8nxz9isb2r5q5pdxhkzy92rdibapzq256sxbaf55zlcg1p2"; }; buildInputs = [ SDL libpng pkgconfig xz zlib freetype fontconfig ]; From 484dc89a21e9bdb82f7f003ccfae43e0d02d5ba9 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 15:34:42 +0200 Subject: [PATCH 297/789] pngcrush: update from 1.7.76 to 1.7.77 --- pkgs/tools/graphics/pngcrush/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/graphics/pngcrush/default.nix b/pkgs/tools/graphics/pngcrush/default.nix index b27e5132804..0419732949d 100644 --- a/pkgs/tools/graphics/pngcrush/default.nix +++ b/pkgs/tools/graphics/pngcrush/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, libpng }: stdenv.mkDerivation rec { - name = "pngcrush-1.7.76"; + name = "pngcrush-1.7.77"; src = fetchurl { url = "mirror://sourceforge/pmt/${name}-nolib.tar.xz"; - sha256 = "0jbv3ijc0nfhy6pkhv4dwbk2v488rwixd8rv1c7lfs59wblb44hv"; + sha256 = "0404275rb6934aiwrysgapg0irbimcb2y8giqlc63gfspnvy67fa"; }; configurePhase = '' From 4678ddc1c03af307b46dee0fe61273a4f9a85e93 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 15:36:31 +0200 Subject: [PATCH 298/789] gitAndTools.svn2git: update from 2.2.5 to 2.3.2 --- .../version-management/git-and-tools/svn2git/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix index b0cfcaeb110..f30a47a78b9 100644 --- a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchurl, ruby, makeWrapper, git }: let - version = "2.2.5"; + version = "2.3.2"; in stdenv.mkDerivation { name = "svn2git-${version}"; src = fetchurl { url = "https://github.com/nirvdrum/svn2git/archive/v${version}.tar.gz"; - sha256 = "1afmrr80357pg3kawyghhc55z1pszaq8fyrrjmxa6nr9dcrqjwwh"; + sha256 = "1484mpcabqf9kr6xdpdgb1npkqav1bcah3w5lxj2djjx4bjf2g3y"; }; buildInputs = [ ruby makeWrapper ]; From 6f682f9afbc8dce081cbda8b8a529c7e49ae000f Mon Sep 17 00:00:00 2001 From: Moritz Heidkamp Date: Thu, 4 Sep 2014 15:48:49 +0200 Subject: [PATCH 299/789] Add Chibi-Scheme expression --- lib/maintainers.nix | 1 + .../interpreters/chibi/default.nix | 36 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 39 insertions(+) create mode 100644 pkgs/development/interpreters/chibi/default.nix diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 9ff9f7ea27a..b616e30a858 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -38,6 +38,7 @@ coroa = "Jonas Hörsch "; cstrahan = "Charles Strahan "; DamienCassou = "Damien Cassou "; + DerGuteMoritz = "Moritz Heidkamp "; doublec = "Chris Double "; ederoyd46 = "Matthew Brown "; edwtjo = "Edward Tjörnhammar "; diff --git a/pkgs/development/interpreters/chibi/default.nix b/pkgs/development/interpreters/chibi/default.nix new file mode 100644 index 00000000000..89ec6097cc9 --- /dev/null +++ b/pkgs/development/interpreters/chibi/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, makeWrapper }: +let + version = "0.7"; + name = "chibi-scheme-${version}"; +in +stdenv.mkDerivation { + inherit name; + + meta = { + homepage = "https://code.google.com/p/chibi-scheme/"; + description = "Small Footprint Scheme for use as a C Extension Language"; + platforms = stdenv.lib.platforms.all; + maintainers = [ stdenv.lib.maintainers.DerGuteMoritz ]; + }; + + src = fetchurl { + url = "http://abrek.synthcode.com/${name}.tgz"; + sha256 = "1hhkq0khgi8i24xv66y7r6pgk1issn1i2bf7rv91rbk0wm0kv7qm"; + }; + + buildInputs = [ makeWrapper ]; + + installPhase = '' + make install PREFIX="$out" + ''; + + fixupPhase = '' + wrapProgram "$out/bin/chibi-scheme" \ + --prefix CHIBI_MODULE_PATH : "$out/share/chibi:$out/lib/chibi" + + for f in chibi-doc chibi-ffi snow-chibi; do + substituteInPlace "$out/bin/$f" \ + --replace "/usr/bin/env chibi-scheme" "$out/bin/chibi-scheme" + done + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a7af80dbf71..1003bf4652c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3562,6 +3562,8 @@ let angelscript = callPackage ../development/interpreters/angelscript {}; + chibi = callPackage ../development/interpreters/chibi { }; + clisp = callPackage ../development/interpreters/clisp { }; # compatibility issues in 2.47 - at list 2.44.1 is known good From cce6dd11b620a63b93d83281fbf99a60ea0b3aeb Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:00:52 +0200 Subject: [PATCH 300/789] subversionClient: update from 1.8.9 to 1.8.10, potentially fixes CVE-2014-3504, CVE-2014-3522, CVE-2014-3528 --- pkgs/applications/version-management/subversion/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix index 7526bb5f043..283ea759153 100644 --- a/pkgs/applications/version-management/subversion/default.nix +++ b/pkgs/applications/version-management/subversion/default.nix @@ -17,13 +17,13 @@ assert javahlBindings -> jdk != null && perl != null; stdenv.mkDerivation rec { - version = "1.8.9"; + version = "1.8.10"; name = "subversion-${version}"; src = fetchurl { url = "mirror://apache/subversion/${name}.tar.bz2"; - sha1 = "424ee12708f39a126efd905886666083dcc4eeaf"; + sha256 = "1k3xskg2kjfp3zipl46lqx4fq4lhqnswd79qxp1kfhwplz401j8w"; }; buildInputs = [ zlib apr aprutil sqlite ] From e5878fa70b0720ff3dee575f38dcfd45fce91aa3 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 4 Sep 2014 14:42:54 +0200 Subject: [PATCH 301/789] git-annex: re-build expression with latest cabal2nix --- .../version-management/git-and-tools/git-annex/default.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) 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 7224d8c6900..f00ca9da046 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 @@ -35,10 +35,7 @@ cabal.mkDerivation (self: { ]; buildTools = [ bup curl git gnupg1 lsof openssh perl rsync which ]; configureFlags = "-fAssistant -fProduction"; - preConfigure = '' - export HOME="$NIX_BUILD_TOP/tmp" - mkdir "$HOME" - ''; + preConfigure = "export HOME=$TEMPDIR"; installPhase = "./Setup install"; checkPhase = '' cp dist/build/git-annex/git-annex git-annex From 83683c414024e3575e9734fab1717971a33f9a3b Mon Sep 17 00:00:00 2001 From: Michel Kuhlmann Date: Thu, 4 Sep 2014 12:17:15 +0200 Subject: [PATCH 302/789] haskell-ghc-server: initial expression --- .../libraries/haskell/ghc-server/default.nix | 22 +++++++++++++++++++ pkgs/top-level/haskell-packages.nix | 3 +++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/development/libraries/haskell/ghc-server/default.nix diff --git a/pkgs/development/libraries/haskell/ghc-server/default.nix b/pkgs/development/libraries/haskell/ghc-server/default.nix new file mode 100644 index 00000000000..ac9cb852704 --- /dev/null +++ b/pkgs/development/libraries/haskell/ghc-server/default.nix @@ -0,0 +1,22 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, async, attoLisp, attoparsec, conduit, conduitExtra +, ghcPaths, mtl, network, syb, text +}: + +cabal.mkDerivation (self: { + pname = "ghc-server"; + version = "1.1"; + sha256 = "1rgrgx9xakq6vy6nanvwzwfvzbfg287pmm8pdm9lbd7kf7ls5ml4"; + isLibrary = true; + isExecutable = true; + buildDepends = [ + async attoLisp attoparsec conduit conduitExtra ghcPaths mtl network + syb text + ]; + meta = { + description = "A server interface to GHC"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 601e6f30ea3..c692800810e 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -901,6 +901,9 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in cabal = self.cabal.override { enableLibraryProfiling = false; }; # pkg cannot be built with profiling enabled }; + + ghcServer = callPackage ../development/libraries/haskell/ghc-server {}; + ghcjsDom = callPackage ../development/libraries/haskell/ghcjs-codemirror {}; ghcjsCodemirror = callPackage ../development/libraries/haskell/ghcjs-codemirror {}; From 439ebda62a7eac0eba4051f72591be830d1400e1 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:16:41 +0200 Subject: [PATCH 303/789] ffmpeg_1: update from 1.2.7 to 1.2.8 --- pkgs/development/libraries/ffmpeg/1.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/1.x.nix b/pkgs/development/libraries/ffmpeg/1.x.nix index a0dcf52dcce..e2aa336d5d2 100644 --- a/pkgs/development/libraries/ffmpeg/1.x.nix +++ b/pkgs/development/libraries/ffmpeg/1.x.nix @@ -31,11 +31,11 @@ assert playSupport -> SDL != null; assert freetypeSupport -> freetype != null; stdenv.mkDerivation rec { - name = "ffmpeg-1.2.7"; + name = "ffmpeg-1.2.8"; src = fetchurl { url = "http://www.ffmpeg.org/releases/${name}.tar.bz2"; - sha256 = "13nj5q5ad0kcrid8r5x6x8lqfhk8kms14pmncf6vbdbk6x45k6v6"; + sha256 = "0n9fklr8zqkd60dc5ai161l6k4dbiac5hqy0pi1w82yamc25k6s2"; }; # `--enable-gpl' (as well as the `postproc' and `swscale') mean that From ff3ba4829471e51a72359b4f461fbe727f891d47 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:18:11 +0200 Subject: [PATCH 304/789] fping: update from 3.8 to 3.10 --- pkgs/tools/networking/fping/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/fping/default.nix b/pkgs/tools/networking/fping/default.nix index 10f31fb8297..03776c636b8 100644 --- a/pkgs/tools/networking/fping/default.nix +++ b/pkgs/tools/networking/fping/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "fping-3.8"; + name = "fping-3.10"; src = fetchurl { url = "http://www.fping.org/dist/${name}.tar.gz"; - sha256 = "04iwj4x3wns09wp777mb3kwfi7ypb4m9m73p0s2y699px77hcx67"; + sha256 = "1n2psfxgww6wg5rz8rly06xkghgp8lshx2lx6rramrigyd1fhiyd"; }; meta = { From 0863bcb68373063ab52f07dddc64fcae0fe96e24 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:20:40 +0200 Subject: [PATCH 305/789] gitAndTools.hub: update from 1.12.0 to 1.12.2, potentially fixes CVE-2014-0177 --- .../version-management/git-and-tools/hub/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/git-and-tools/hub/default.nix b/pkgs/applications/version-management/git-and-tools/hub/default.nix index 28484322d35..d41b175af9b 100644 --- a/pkgs/applications/version-management/git-and-tools/hub/default.nix +++ b/pkgs/applications/version-management/git-and-tools/hub/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "hub-${version}"; - version = "1.12.0"; + version = "1.12.2"; src = fetchurl { url = "https://github.com/github/hub/archive/v${version}.tar.gz"; - sha256 = "1lbl4dl7483q320qw4jm6mqq4dbbk3xncypxgg86zcdigxvw6igv"; + sha256 = "112yfv9xklsmwv859kypv7hz0a6dj5hkrmjp7z1h40nrljc9mi79"; }; buildInputs = [ rake makeWrapper ]; From d788060cc73773a4a83c50b4b7d16c18ee42d987 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:25:04 +0200 Subject: [PATCH 306/789] httrack: update from 3.48.17 to 3.48.19 --- pkgs/tools/backup/httrack/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/backup/httrack/default.nix b/pkgs/tools/backup/httrack/default.nix index 4df142afe3a..02ab79bf2bb 100644 --- a/pkgs/tools/backup/httrack/default.nix +++ b/pkgs/tools/backup/httrack/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, zlib, openssl }: stdenv.mkDerivation rec { - version = "3.48.17"; + version = "3.48.19"; name = "httrack-${version}"; src = fetchurl { url = "http://mirror.httrack.com/httrack-${version}.tar.gz"; - sha256 = "03q8sk7qihw9x4bfgfhv6523khgj13nilqps28qy7ndpzpggw9vn"; + sha256 = "1zlayvl6x0ck1g5rvmj7cc88w0an5f4y93r3g5l10hhhl87cvw0n"; }; buildInputs = [ zlib openssl ]; From dcf3ad6a2aa6103d5108f550a49b80101257cb2b Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:28:23 +0200 Subject: [PATCH 307/789] chibi: Add missing meta.license field. --- pkgs/development/interpreters/chibi/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/interpreters/chibi/default.nix b/pkgs/development/interpreters/chibi/default.nix index 89ec6097cc9..b4a0b77e705 100644 --- a/pkgs/development/interpreters/chibi/default.nix +++ b/pkgs/development/interpreters/chibi/default.nix @@ -10,6 +10,7 @@ stdenv.mkDerivation { homepage = "https://code.google.com/p/chibi-scheme/"; description = "Small Footprint Scheme for use as a C Extension Language"; platforms = stdenv.lib.platforms.all; + license = stdenv.lib.licenses.bsd3; maintainers = [ stdenv.lib.maintainers.DerGuteMoritz ]; }; From c30b23166bba220560e2cef09db203645f8f5674 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:29:58 +0200 Subject: [PATCH 308/789] scheme48: update from 1.9 to 1.9.2 --- pkgs/development/interpreters/scheme48/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/interpreters/scheme48/default.nix b/pkgs/development/interpreters/scheme48/default.nix index 39056717597..1436f260a44 100644 --- a/pkgs/development/interpreters/scheme48/default.nix +++ b/pkgs/development/interpreters/scheme48/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl }: stdenv.mkDerivation { - name = "scheme48-1.9"; + name = "scheme48-1.9.2"; meta = { homepage = http://s48.org/; @@ -9,7 +9,7 @@ stdenv.mkDerivation { }; src = fetchurl { - url = http://s48.org/1.9/scheme48-1.9.tgz; - md5 = "b4c20057f92191d05a61fac1372878ad"; + url = http://s48.org/1.9.2/scheme48-1.9.2.tgz; + sha256 = "1x4xfm3lyz2piqcw1h01vbs1iq89zq7wrsfjgh3fxnlm1slj2jcw"; }; } From 332395b26295f7159ef1f7e606100d7ff3089fb9 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 16:33:50 +0200 Subject: [PATCH 309/789] Add myself as a maintainer to a bunch of packages. --- .../version-management/git-and-tools/hub/default.nix | 1 + pkgs/development/interpreters/scheme48/default.nix | 1 + pkgs/development/libraries/ffmpeg/1.x.nix | 1 + pkgs/tools/backup/httrack/default.nix | 1 + pkgs/tools/networking/fping/default.nix | 1 + 5 files changed, 5 insertions(+) diff --git a/pkgs/applications/version-management/git-and-tools/hub/default.nix b/pkgs/applications/version-management/git-and-tools/hub/default.nix index d41b175af9b..8d578c2b466 100644 --- a/pkgs/applications/version-management/git-and-tools/hub/default.nix +++ b/pkgs/applications/version-management/git-and-tools/hub/default.nix @@ -23,5 +23,6 @@ stdenv.mkDerivation rec { description = "A GitHub specific wrapper for git"; homepage = "http://defunkt.io/hub/"; license = stdenv.lib.licenses.mit; + maintainers = with stdenv.lib.maintainers; [ the-kenny ]; }; } diff --git a/pkgs/development/interpreters/scheme48/default.nix b/pkgs/development/interpreters/scheme48/default.nix index 1436f260a44..4630828fe87 100644 --- a/pkgs/development/interpreters/scheme48/default.nix +++ b/pkgs/development/interpreters/scheme48/default.nix @@ -6,6 +6,7 @@ stdenv.mkDerivation { meta = { homepage = http://s48.org/; description = "Scheme 48"; + maintainers = with stdenv.lib.maintainers; [ the-kenny ]; }; src = fetchurl { diff --git a/pkgs/development/libraries/ffmpeg/1.x.nix b/pkgs/development/libraries/ffmpeg/1.x.nix index e2aa336d5d2..e9488530b5c 100644 --- a/pkgs/development/libraries/ffmpeg/1.x.nix +++ b/pkgs/development/libraries/ffmpeg/1.x.nix @@ -100,5 +100,6 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.ffmpeg.org/; description = "A complete, cross-platform solution to record, convert and stream audio and video"; + maintainers = with stdenv.lib.maintainers; [ the-kenny ]; }; } diff --git a/pkgs/tools/backup/httrack/default.nix b/pkgs/tools/backup/httrack/default.nix index 02ab79bf2bb..fc5b8330522 100644 --- a/pkgs/tools/backup/httrack/default.nix +++ b/pkgs/tools/backup/httrack/default.nix @@ -15,5 +15,6 @@ stdenv.mkDerivation rec { homepage = "http://www.httrack.com"; description = "Easy-to-use offline browser utility"; license = stdenv.lib.licenses.gpl3; + maintainers = with stdenv.lib.maintainers; [ the-kenny ]; }; } diff --git a/pkgs/tools/networking/fping/default.nix b/pkgs/tools/networking/fping/default.nix index 03776c636b8..c71f6b04084 100644 --- a/pkgs/tools/networking/fping/default.nix +++ b/pkgs/tools/networking/fping/default.nix @@ -11,5 +11,6 @@ stdenv.mkDerivation rec { meta = { homepage = "http://fping.org/"; description = "Send ICMP echo probes to network hosts"; + maintainers = with stdenv.lib.maintainers; [ the-kenny ]; }; } From 963a554b31d169be83003e6dd64a9c18fd7aae56 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 17:04:53 +0200 Subject: [PATCH 310/789] cura(engine): update to 14.0{7,3}. --- pkgs/applications/misc/cura/default.nix | 12 +++--- pkgs/applications/misc/curaengine/default.nix | 37 ++++++++++--------- 2 files changed, 26 insertions(+), 23 deletions(-) diff --git a/pkgs/applications/misc/cura/default.nix b/pkgs/applications/misc/cura/default.nix index 937025c0840..5c12ebcbfeb 100644 --- a/pkgs/applications/misc/cura/default.nix +++ b/pkgs/applications/misc/cura/default.nix @@ -1,15 +1,14 @@ -{ stdenv, python27Packages, curaengine, makeDesktopItem, fetchgit }: +{ stdenv, python27Packages, curaengine, makeDesktopItem, fetchurl }: let py = python27Packages; + version = "14.07"; in stdenv.mkDerivation rec { name = "cura"; - src = fetchgit { - url = "https://github.com/daid/Cura"; - rev = "58414695269d60ca9b165e8cbc3424933ed79403"; - sha256 = "1nxrrz8sjjx9i9cyvz15vay6yarnywp3vlk7qzr65sw88lzxgq23"; - fetchSubmodules = false; + src = fetchurl { + url = "https://github.com/daid/Cura/archive/${version}.tar.gz"; + sha256 = "1jfgkb2qh1syakcssk66yhnfjm9p9qcx48v34bbza9nryrdlmxdb"; }; desktopItem = makeDesktopItem { @@ -67,5 +66,6 @@ stdenv.mkDerivation rec { homepage = https://github.com/daid/Cura; license = licenses.agpl3; platforms = platforms.linux; + maintainers = with stdenv.lib.maintainers; [ the-kenny ]; }; } diff --git a/pkgs/applications/misc/curaengine/default.nix b/pkgs/applications/misc/curaengine/default.nix index 256d337f679..e004b7db336 100644 --- a/pkgs/applications/misc/curaengine/default.nix +++ b/pkgs/applications/misc/curaengine/default.nix @@ -1,22 +1,25 @@ -{ stdenv, fetchgit }: +{ stdenv, fetchurl }: +let + version = "14.03"; +in stdenv.mkDerivation { - name = "curaengine"; + name = "curaengine"; - src = fetchgit { - url = "https://github.com/Ultimaker/CuraEngine"; - rev = "62667ff2e7479b55d75e3d1dc9136242adf4a6a0"; - sha256 = "0c68xmnq4c49vzg2cyqb375kc72rcnghj21wp3919w8sfwil00vr"; - }; + src = fetchurl { + url = "https://github.com/Ultimaker/CuraEngine/archive/${version}.tar.gz"; + sha256 = "0f37jk6w3zd9x29c1rydqmfdzybx9nbmwdi3y3nzynq1vq7zmxcc"; + }; - installPhase = '' - mkdir -p $out/bin - cp CuraEngine $out/bin/ - ''; + installPhase = '' + mkdir -p $out/bin + cp CuraEngine $out/bin/ + ''; - meta = with stdenv.lib; { - description = "Engine for processing 3D models into 3D printing instructions"; - homepage = https://github.com/Ultimaker/CuraEngine; - license = licenses.agpl3; - platforms = platforms.linux; - }; + meta = with stdenv.lib; { + description = "Engine for processing 3D models into 3D printing instructions"; + homepage = https://github.com/Ultimaker/CuraEngine; + license = licenses.agpl3; + platforms = platforms.linux; + maintainers = with stdenv.lib.maintainers; [ the-kenny ]; + }; } From 40b13e798b9bdeb614865f67f961af1b825c2325 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sat, 9 Aug 2014 17:13:21 -0300 Subject: [PATCH 311/789] CImg and WxCam - New Packages #3519 In this commit, I'm including two new softwares * CImg: A small, simple image toolkit library * WxCam: a small, simple, wxGTK-based webcam application --- pkgs/applications/video/wxcam/default.nix | 52 +++++++++++++++++++++ pkgs/development/libraries/cimg/builder.sh | 12 +++++ pkgs/development/libraries/cimg/default.nix | 27 +++++++++++ pkgs/top-level/all-packages.nix | 9 ++++ 4 files changed, 100 insertions(+) create mode 100644 pkgs/applications/video/wxcam/default.nix create mode 100644 pkgs/development/libraries/cimg/builder.sh create mode 100644 pkgs/development/libraries/cimg/default.nix diff --git a/pkgs/applications/video/wxcam/default.nix b/pkgs/applications/video/wxcam/default.nix new file mode 100644 index 00000000000..1f66d9a589b --- /dev/null +++ b/pkgs/applications/video/wxcam/default.nix @@ -0,0 +1,52 @@ +{ stdenv, fetchurl +, pkgconfig +, intltool +, libX11, libXv, libSM +, gtk, libglade +, wxGTK +, perlXMLParser +, xvidcore +, mjpegtools +, alsaLib +, libv4l +, cimg +}: + +stdenv.mkDerivation rec { + + name = "wxcam-${version}"; + version = "1.1"; + + src = fetchurl { + url = "http://downloads.sourceforge.net/project/wxcam/wxcam/${version}/${name}.tar.gz"; + sha256 = "1765bvc65fpzn9ycnnj5hais9xkx9v0sm6a878d35x54bpanr859"; + }; + + buildInputs = with stdenv.lib; + [ pkgconfig intltool libX11 libXv libSM gtk libglade wxGTK perlXMLParser xvidcore mjpegtools alsaLib libv4l cimg ]; + + NIX_CFLAGS_COMPILE="-I ${cimg}/include/cimg"; + + postUnpack = '' + sed -ie 's|/usr/share/|'"$out/share/"'|g' $sourceRoot/Makefile.in + ''; + + installPhase = '' + make install prefix="$out" wxcamdocdir="$out/share/doc/wxcam" + ''; + + meta = { + description = "An open-source, wxGTK-based webcam app for Linux"; + longDescription = '' + wxCam is a webcam application for linux. It supports video recording + (avi uncompressed and Xvid formats), snapshot taking, and some special + commands for philips webcams, so you can also use it for astronomy purposes. + It supports both video4linux 1 and 2 drivers, + so it should work on a very large number of devices. + ''; + homepage = http://wxcam.sourceforge.net/; + license = stdenv.lib.licenses.gpl3Plus; + maintainers = [ stdenv.lib.maintainers.AndersonTorres ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/cimg/builder.sh b/pkgs/development/libraries/cimg/builder.sh new file mode 100644 index 00000000000..bbd5f712551 --- /dev/null +++ b/pkgs/development/libraries/cimg/builder.sh @@ -0,0 +1,12 @@ + +source $stdenv/setup + +unpackPhase +cd $sourceRoot + +install -dm 755 $out/include/cimg $out/share/doc/cimg/html $out/share/cimg/examples $out/share/cimg/plugins + +install -m 644 CImg.h $out/include/cimg +cp -dr --no-preserve=ownership html/* $out/share/doc/cimg/html/ +cp -dr --no-preserve=ownership examples/* $out/share/cimg/examples/ +cp -dr --no-preserve=ownership plugins/* $out/share/cimg/plugins/ diff --git a/pkgs/development/libraries/cimg/default.nix b/pkgs/development/libraries/cimg/default.nix new file mode 100644 index 00000000000..17b18e8f0be --- /dev/null +++ b/pkgs/development/libraries/cimg/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchurl +, unzip +}: + +stdenv.mkDerivation rec { + + name = "cimg-${version}"; + version = "1.5.9"; + + src = fetchurl { + url = "http://downloads.sourceforge.net/project/cimg/CImg-${version}.zip"; + sha256 = "1xn20643gcbl76kvy9ajhwbyjjb73mg65q32ma8mdkwn1qhn7f7c"; + }; + + buildInputs = with stdenv.lib; + [ unzip ]; + + builder = ./builder.sh; + + meta = with stdenv.lib; { + description = "A small, open source, C++ toolkit for image processing"; + homepage = http://cimg.sourceforge.net/; + license = licenses.cecill-c; + maintainers = [ maintainers.AndersonTorres ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1003bf4652c..2686936fe68 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4481,6 +4481,8 @@ let capnproto = callPackage ../development/libraries/capnproto { }; + cimg = callPackage ../development/libraries/cimg { }; + scmccid = callPackage ../development/libraries/scmccid { }; ccrtp = callPackage ../development/libraries/ccrtp { }; @@ -10221,6 +10223,13 @@ let wxhexeditor = callPackage ../applications/editors/wxhexeditor { }; + wxcam = callPackage ../applications/video/wxcam { + inherit (gnome) libglade; + inherit intltool; + wxGTK = wxGTK28; + gtk = gtk2; + }; + x11vnc = callPackage ../tools/X11/x11vnc { }; x2vnc = callPackage ../tools/X11/x2vnc { }; From 476ca07d8e43c8a43b738f3e085424e1c47f453e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Thu, 4 Sep 2014 18:43:57 +0200 Subject: [PATCH 312/789] require Nix 1.7 for nixpkgs, since we're using antiquotation inside quoted attribute sets --- default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/default.nix b/default.nix index c1b9bfd39f9..e0df520721c 100644 --- a/default.nix +++ b/default.nix @@ -1,6 +1,6 @@ -if ! builtins ? nixVersion || builtins.compareVersions "1.6" builtins.nixVersion == 1 then +if ! builtins ? nixVersion || builtins.compareVersions "1.7" builtins.nixVersion == 1 then - abort "This version of Nixpkgs requires Nix >= 1.6, please upgrade!" + abort "This version of Nixpkgs requires Nix >= 1.7, please upgrade!" else From 3a38a9b127fd36db20e1a9b1f0eab2a5fd5086d9 Mon Sep 17 00:00:00 2001 From: Andreas Herrmann Date: Thu, 4 Sep 2014 18:47:57 +0200 Subject: [PATCH 313/789] mpi4py: Change description --- pkgs/development/python-modules/mpi4py/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/mpi4py/default.nix b/pkgs/development/python-modules/mpi4py/default.nix index 4422c4e9f37..ec181652da6 100644 --- a/pkgs/development/python-modules/mpi4py/default.nix +++ b/pkgs/development/python-modules/mpi4py/default.nix @@ -47,7 +47,7 @@ buildPythonPackage rec { meta = { description = - "Provides Python bindings for the Message Passing Interface standard"; + "Python bindings for the Message Passing Interface standard"; homepage = "http://code.google.com/p/mpi4py/"; license = stdenv.lib.licenses.bsd3; }; From f41e336cc00cc513e0d7ab67030ceb939ac46984 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 3 Sep 2014 18:31:22 +0200 Subject: [PATCH 314/789] python-path: new package path is a module wrapper for os.path. It's a dependency of moretools (which is a dependency of robotframework-tools, which is what I want to package). --- pkgs/top-level/python-packages.nix | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ed334d27e0e..26a0a61d9bb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5583,6 +5583,22 @@ rec { }; }; + pathpy = buildPythonPackage rec { + name = "path.py-5.2"; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/p/path.py/${name}.zip"; + sha256 = "0n1kpbbm1dg5f484yzxr7gb3ak6vjp92j70nw3bgjzsj9fh26afq"; + }; + + meta = with stdenv.lib; { + description = "A module wrapper for os.path"; + homepage = http://github.com/jaraco/path.py; + license = licenses.mit; + platforms = platforms.linux; + }; + }; + paypalrestsdk = buildPythonPackage rec { name = "paypalrestsdk-0.7.0"; From c1614ab180a393a11f3b14fb3544b8ab03d9e1c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 3 Sep 2014 18:32:03 +0200 Subject: [PATCH 315/789] python-moretools: new package It provides "Many more basic tools for python 2/3 extending itertools, functools, operator and collections". It's a dependency of robotframework-tools, which I want to package. --- pkgs/top-level/python-packages.nix | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 26a0a61d9bb..b4b4520a8c5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4734,6 +4734,25 @@ rec { }; }); + moretools = buildPythonPackage rec { + name = "moretools-0.1a41"; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/m/moretools/${name}.tar.gz"; + sha256 = "1n442wprbl3cmg08233m1sr3g4z0i8hv9g6bhch7kzdmbl21399f"; + }; + + buildInputs = [ six pathpy setuptools ]; + propagatedBuildInputs = [ decorator ]; + + meta = with stdenv.lib; { + description = "Many more basic tools for python 2/3 extending itertools, functools, operator and collections"; + homepage = https://bitbucket.org/userzimmermann/python-moretools; + license = licenses.gpl3Plus; + platforms = platforms.linux; + }; + }; + mox = buildPythonPackage rec { name = "mox-0.5.3"; From 53732eac2a66ce7a30c4eea5a27cbe04509dc00b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 3 Sep 2014 18:32:26 +0200 Subject: [PATCH 316/789] python-robotframework-tools: new package This package provides "Python Tools for Robot Framework and Test Libraries". In particular, I'm interested in the 'robotshell' extension for IPython. --- pkgs/top-level/python-packages.nix | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b4b4520a8c5..52927fa5f31 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7280,6 +7280,26 @@ rec { }; + robotframework-tools = buildPythonPackage rec { + version = "0.1a115"; + name = "robotframework-tools-${version}"; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/r/robotframework-tools/${name}.tar.gz"; + sha256 = "04gkn1zpf3rsvbqdxrrjqqi8sa0md9gqwh6n5w2m03fdwjg4lc7q"; + }; + + propagatedBuildInputs = [ robotframework moretools pathpy six setuptools ]; + + meta = with stdenv.lib; { + description = "Python Tools for Robot Framework and Test Libraries"; + homepage = http://bitbucket.org/userzimmermann/robotframework-tools; + license = licenses.gpl3; + platforms = platforms.linux; + }; + }; + + robotsuite = buildPythonPackage rec { version = "1.4.2"; name = "robotsuite-${version}"; From 4cae816420c9b9838b52983bb63cd96c1c1ae5e4 Mon Sep 17 00:00:00 2001 From: Andreas Herrmann Date: Thu, 4 Sep 2014 18:48:08 +0200 Subject: [PATCH 317/789] h5py: Change description --- pkgs/development/python-modules/h5py/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/h5py/default.nix b/pkgs/development/python-modules/h5py/default.nix index f4df05fa595..39a35ad49c6 100644 --- a/pkgs/development/python-modules/h5py/default.nix +++ b/pkgs/development/python-modules/h5py/default.nix @@ -35,7 +35,7 @@ buildPythonPackage rec { meta = { description = - "Provides a Pythonic interface to the HDF5 binary data format"; + "Pythonic interface to the HDF5 binary data format"; homepage = "http://www.h5py.org/"; license = stdenv.lib.licenses.bsd2; }; From ad83a961ae37bfd1029c335ccfa3ebdd7816a894 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Thu, 4 Sep 2014 11:35:48 -0500 Subject: [PATCH 318/789] zotero: update to 4.0.22 Drop firefox-30.0, which we were only keeping around for xulrunner-30.0. New Zotero version is compatible up to firefox-32.0. --- .../networking/browsers/firefox/30.nix | 211 ------------------ pkgs/applications/office/zotero/default.nix | 6 +- pkgs/top-level/all-packages.nix | 12 +- 3 files changed, 4 insertions(+), 225 deletions(-) delete mode 100644 pkgs/applications/networking/browsers/firefox/30.nix diff --git a/pkgs/applications/networking/browsers/firefox/30.nix b/pkgs/applications/networking/browsers/firefox/30.nix deleted file mode 100644 index 1e2c3e2cfb1..00000000000 --- a/pkgs/applications/networking/browsers/firefox/30.nix +++ /dev/null @@ -1,211 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, gtk, pango, perl, python, zip, libIDL -, libjpeg, libpng, zlib, dbus, dbus_glib, bzip2, xlibs -, freetype, fontconfig, file, alsaLib, nspr, nss, libnotify -, yasm, mesa, sqlite, unzip, makeWrapper, pysqlite -, hunspell, libevent, libstartup_notification, libvpx -, cairo, gstreamer, gst_plugins_base, icu -, debugBuild ? false -, # If you want the resulting program to call itself "Firefox" instead - # of "Shiretoko" or whatever, enable this option. However, those - # binaries may not be distributed without permission from the - # Mozilla Foundation, see - # http://www.mozilla.org/foundation/trademarks/. - enableOfficialBranding ? false -}: - -assert stdenv.gcc ? libc && stdenv.gcc.libc != null; - -rec { - - firefoxVersion = "30.0"; - - xulVersion = "30.0"; # this attribute is used by other packages - - - src = fetchurl { - url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; - sha1 = "bll9hxf31gvg9db6gxgmq25qsjif3p11"; - }; - - commonConfigureFlags = - [ "--with-system-jpeg" - "--with-system-zlib" - "--with-system-bz2" - "--with-system-nspr" - "--with-system-nss" - "--with-system-libevent" - "--with-system-libvpx" - "--with-system-png" - # "--with-system-icu" # causes ‘ar: invalid option -- 'L'’ in Firefox 28.0 - "--enable-system-ffi" - "--enable-system-hunspell" - "--enable-system-pixman" - "--enable-system-sqlite" - "--enable-system-cairo" - "--enable-gstreamer" - "--enable-startup-notification" - # "--enable-content-sandbox" # available since 26.0, but not much info available - # "--enable-content-sandbox-reporter" # keeping disabled for now - "--disable-crashreporter" - "--disable-tests" - "--disable-necko-wifi" # maybe we want to enable this at some point - "--disable-installer" - "--disable-updater" - "--disable-pulseaudio" - ] ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"] - else [ "--disable-debug" "--enable-release" - "--enable-optimize" "--enable-strip" ]); - - - xulrunner = stdenv.mkDerivation rec { - name = "xulrunner-${xulVersion}"; - - inherit src; - - buildInputs = - [ pkgconfig libpng gtk perl zip libIDL libjpeg zlib bzip2 - python dbus dbus_glib pango freetype fontconfig xlibs.libXi - xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file - alsaLib nspr nss libnotify xlibs.pixman yasm mesa - xlibs.libXScrnSaver xlibs.scrnsaverproto pysqlite - xlibs.libXext xlibs.xextproto sqlite unzip makeWrapper - hunspell libevent libstartup_notification libvpx cairo - gstreamer gst_plugins_base icu - ]; - - configureFlags = - [ "--enable-application=xulrunner" - "--disable-javaxpcom" - ] ++ commonConfigureFlags; - - #enableParallelBuilding = true; # cf. https://github.com/NixOS/nixpkgs/pull/1699#issuecomment-35196282 - - preConfigure = - '' - export NIX_LDFLAGS="$NIX_LDFLAGS -L$out/lib/xulrunner-${xulVersion}" - - mkdir ../objdir - cd ../objdir - configureScript=../mozilla-release/configure - ''; # */ - - #installFlags = "SKIP_GRE_REGISTRATION=1"; - - preInstall = '' - # The following is needed for startup cache creation on grsecurity kernels - paxmark m ../objdir/dist/bin/xpcshell - ''; - - postInstall = '' - # Fix run-mozilla.sh search - libDir=$(cd $out/lib && ls -d xulrunner-[0-9]*) - echo libDir: $libDir - test -n "$libDir" - cd $out/bin - rm xulrunner - - for i in $out/lib/$libDir/*; do - file $i; - if file $i | grep executable &>/dev/null; then - echo -e '#! /bin/sh\nexec "'"$i"'" "$@"' > "$out/bin/$(basename "$i")"; - chmod a+x "$out/bin/$(basename "$i")"; - fi; - done - for i in $out/lib/$libDir/*.so; do - patchelf --set-rpath "$(patchelf --print-rpath "$i"):$out/lib/$libDir" $i || true - done - - # For grsecurity kernels - paxmark m $out/lib/$libDir/{plugin-container,xulrunner} - - for i in $out/lib/$libDir/{plugin-container,xulrunner,xulrunner-stub}; do - wrapProgram $i --prefix LD_LIBRARY_PATH ':' "$out/lib/$libDir" - done - - rm -f $out/bin/run-mozilla.sh - ''; # */ - - meta = { - description = "Mozilla Firefox XUL runner"; - homepage = http://www.mozilla.com/en-US/firefox/; - }; - - passthru = { inherit gtk; version = xulVersion; }; - }; - - - firefox = stdenv.mkDerivation rec { - name = "firefox-${firefoxVersion}"; - - inherit src; - - enableParallelBuilding = true; - - buildInputs = - [ pkgconfig libpng gtk perl zip libIDL libjpeg zlib bzip2 python - dbus dbus_glib pango freetype fontconfig alsaLib nspr nss libnotify - xlibs.pixman yasm mesa sqlite file unzip pysqlite - hunspell libevent libstartup_notification libvpx cairo - gstreamer gst_plugins_base icu - ]; - - patches = [ - ./disable-reporter.patch # fixes "search box not working when built on xulrunner" - ./xpidl.patch - ]; - - propagatedBuildInputs = [xulrunner]; - - configureFlags = - [ "--enable-application=browser" - "--with-libxul-sdk=${xulrunner}/lib/xulrunner-devel-${xulrunner.version}" - "--enable-chrome-format=jar" - ] - ++ commonConfigureFlags - ++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding"; - - makeFlags = [ - "SYSTEM_LIBXUL=1" - ]; - - # Because preConfigure runs configure from a subdirectory. - configureScript = "../configure"; - - preConfigure = - '' - # Hack to work around make's idea of -lbz2 dependency - find . -name Makefile.in -execdir sed -i '{}' -e '1ivpath %.so ${ - stdenv.lib.concatStringsSep ":" - (map (s : s + "/lib") (buildInputs ++ [stdenv.gcc.libc])) - }' ';' - - # Building directly in the main source directory is not allowed. - mkdir obj_dir - cd obj_dir - ''; - - postInstall = - '' - ln -s ${xulrunner}/lib/xulrunner-${xulrunner.version} $(echo $out/lib/firefox-*)/xulrunner - cd "$out/lib/"firefox-* - rm firefox - echo -e '#!${stdenv.shell}\nexec ${xulrunner}/bin/xulrunner "'"$PWD"'/application.ini" "$@"' > firefox - chmod a+x firefox - - # Put chrome.manifest etc. in the right place. - mv browser/* . - rmdir browser - ''; # */ - - meta = { - description = "Mozilla Firefox - the browser, reloaded"; - homepage = http://www.mozilla.com/en-US/firefox/; - maintainers = with stdenv.lib.maintainers; [ eelco wizeman ]; - }; - - passthru = { - inherit gtk xulrunner nspr; - isFirefox3Like = true; - }; - }; -} diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix index 0a5ef909904..00fda8bf1c4 100644 --- a/pkgs/applications/office/zotero/default.nix +++ b/pkgs/applications/office/zotero/default.nix @@ -3,7 +3,7 @@ assert (stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux"); let - version = "4.0.21.2"; + version = "4.0.22"; arch = if stdenv.system == "x86_64-linux" then "linux-x86_64" else "linux-i686"; @@ -14,8 +14,8 @@ stdenv.mkDerivation { src = fetchurl { url = "https://download.zotero.org/standalone/${version}/Zotero-${version}_${arch}.tar.bz2"; sha256 = if stdenv.system == "x86_64-linux" - then "1df101j2qwdp001m8x3ihbzz2j23x43804k8ww749y09d1ydb4dx" - else "1bcrpl6gdxlygd5ppyrhw42q24kjcakma3qv6mpzgp91phkf6g30"; + then "0dq4x1cc0lnhs7g6w85qjdlb7sajr13mr2zcf4yvrciwhwy3r1i1" + else "0s4j2karaq85fwnd1niz8hzx5k71cqs493g38pg337i3iwxad9hg"; }; # Strip the bundled xulrunner diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2686936fe68..4415e35ee55 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3822,8 +3822,6 @@ let inherit (pythonPackages) pysqlite; }; - xulrunner_30 = firefox30Pkgs.xulrunner; - ### DEVELOPMENT / MISC @@ -8869,12 +8867,6 @@ let firefox13Wrapper = wrapFirefox { browser = firefox13Pkgs.firefox; }; - firefox30Pkgs = callPackage ../applications/networking/browsers/firefox/30.nix { - inherit (gnome) libIDL; - inherit (pythonPackages) pysqlite; - libpng = libpng_apng; - }; - firefox = callPackage ../applications/networking/browsers/firefox { inherit (gnome) libIDL; inherit (pythonPackages) pysqlite; @@ -10383,9 +10375,7 @@ let pygtk = pyGtkGlade; }; - zotero = callPackage ../applications/office/zotero { - xulrunner = xulrunner_30; - }; + zotero = callPackage ../applications/office/zotero { }; zynaddsubfx = callPackage ../applications/audio/zynaddsubfx { }; From 4d104542e987533f61cf6fb70cb970fc94e367b9 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Thu, 4 Sep 2014 19:10:46 +0200 Subject: [PATCH 319/789] Add keylogs, a GNU/Linux keylogger that works --- pkgs/tools/security/logkeys/default.nix | 27 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 pkgs/tools/security/logkeys/default.nix diff --git a/pkgs/tools/security/logkeys/default.nix b/pkgs/tools/security/logkeys/default.nix new file mode 100644 index 00000000000..ae7fa2316bc --- /dev/null +++ b/pkgs/tools/security/logkeys/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchgit, which, procps, kbd }: + +stdenv.mkDerivation rec { + name = "logkeys-${version}"; + version = "5ef6b0dcb9e3"; + + src = fetchgit { + url = "https://code.google.com/p/logkeys/"; + rev = "5ef6b0dcb9e38e6137ad1579d624ec12107c56c3"; + sha256 = "02p0l92l0fq069g31ks6xbqavzxa9njj9460vw2jsa7livcn2z9d"; + }; + + buildInputs = [ which procps kbd ]; + + postPatch = '' + substituteInPlace src/Makefile.in --replace 'root' '$(id -u)' + substituteInPlace configure --replace '/dev/input' '/tmp' + ''; + + meta = with stdenv.lib; { + description = "A GNU/Linux keylogger that works!"; + license = licenses.gpl3; + homepage = http://code.google.com/p/logkeys/; + maintainers = with maintainers; [offline]; + platforms = with platforms; linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4415e35ee55..6e5e6d92a4b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1480,6 +1480,8 @@ let inherit (perlPackages) mimeConstruct; }; + logkeys = callPackage ../tools/security/logkeys { }; + logrotate = callPackage ../tools/system/logrotate { }; logstalgia = callPackage ../tools/graphics/logstalgia {}; From af8a91b0b2a41a3b53eaf153d672bb66edd2a057 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:44:14 +0200 Subject: [PATCH 320/789] ant: update from 1.9.3 to 1.9.4 --- pkgs/development/tools/build-managers/apache-ant/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/build-managers/apache-ant/default.nix b/pkgs/development/tools/build-managers/apache-ant/default.nix index 0dfb634c594..751b40e714e 100644 --- a/pkgs/development/tools/build-managers/apache-ant/default.nix +++ b/pkgs/development/tools/build-managers/apache-ant/default.nix @@ -1,6 +1,6 @@ { fetchurl, stdenv, makeWrapper }: -let version = "1.9.3"; in +let version = "1.9.4"; in stdenv.mkDerivation { name = "ant-${version}"; @@ -9,7 +9,7 @@ stdenv.mkDerivation { src = fetchurl { url = "mirror://apache/ant/binaries/apache-ant-${version}-bin.tar.bz2"; - sha1 = "efcf206e24b0dd1583c501182ad163af277951a4"; + sha256 = "1kw801p8h5x4f0g8i5yknppssrj5a3xy1aqrkpfnk22bd1snbh90"; }; contrib = fetchurl { From 32a3b655712091a589cd97905d8e762b4ebbdda2 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:45:13 +0200 Subject: [PATCH 321/789] cgit: update from 0.10.1 to 0.10.2 --- .../version-management/git-and-tools/cgit/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/git-and-tools/cgit/default.nix b/pkgs/applications/version-management/git-and-tools/cgit/default.nix index fb7232794c5..383114f1c3c 100644 --- a/pkgs/applications/version-management/git-and-tools/cgit/default.nix +++ b/pkgs/applications/version-management/git-and-tools/cgit/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { name = "cgit-${version}"; - version = "0.10.1"; + version = "0.10.2"; src = fetchurl { url = "http://git.zx2c4.com/cgit/snapshot/${name}.tar.xz"; - sha256 = "0bci1p9spf79wirc4lk36cndcx2b9wj0fq1l58rlp6r563is77l3"; + sha256 = "13ac4rqmxc87ymh78ff8kbw1s252nbid71l0ircmj9kmh9jqwncl"; }; # cgit is tightly coupled with git and needs a git source tree to build. From e30baf653e1a2780c3453a65805b2c48e9a3bb4a Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:45:51 +0200 Subject: [PATCH 322/789] cppcheck: update from 1.65 to 1.66 --- pkgs/development/tools/analysis/cppcheck/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/analysis/cppcheck/default.nix b/pkgs/development/tools/analysis/cppcheck/default.nix index ca4176dbe1e..094cabb7306 100644 --- a/pkgs/development/tools/analysis/cppcheck/default.nix +++ b/pkgs/development/tools/analysis/cppcheck/default.nix @@ -4,14 +4,14 @@ let name = "cppcheck"; - version = "1.65"; + version = "1.66"; in stdenv.mkDerivation { name = "${name}-${version}"; src = fetchurl { url = "mirror://sourceforge/${name}/${name}-${version}.tar.bz2"; - sha256 = "0rsxnqvjyiviqsq4y5x4p1jpvcmhf8hh7d710rsvnv5d4cj7lmqn"; + sha256 = "1dy1jd9ckqs565iwcv281pc3xmp9fnfw5ydh3wq06pyz74yw4scl"; }; configurePhase = '' From f54f5539aa1d612446753bd52b0fedced7695042 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:47:48 +0200 Subject: [PATCH 323/789] dhcpcd: update from 6.4.2 to 6.4.3 --- pkgs/tools/networking/dhcpcd/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/dhcpcd/default.nix b/pkgs/tools/networking/dhcpcd/default.nix index 8e93c424cb1..451e2954f40 100644 --- a/pkgs/tools/networking/dhcpcd/default.nix +++ b/pkgs/tools/networking/dhcpcd/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, udev }: stdenv.mkDerivation rec { - name = "dhcpcd-6.4.2"; + name = "dhcpcd-6.4.3"; src = fetchurl { url = "http://roy.marples.name/downloads/dhcpcd/${name}.tar.bz2"; - sha256 = "1dr08aqvazg4ncq5p93v6givwh7naj75dn2npgplf3dl2fg9zfzf"; + sha256 = "175bsmif76vigzljc4rpcjs5skx171y1bl37aj0w66p8krhh3b9n"; }; patches = [ /* ./lxc_ro_promote_secondaries.patch */ ]; From 14fd86307fe653c30fae933486e402a90d75d5b1 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:48:42 +0200 Subject: [PATCH 324/789] diffstat: update from 1.58 to 1.59 --- pkgs/tools/text/diffstat/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/diffstat/default.nix b/pkgs/tools/text/diffstat/default.nix index e70dfaedddf..62b696715d9 100644 --- a/pkgs/tools/text/diffstat/default.nix +++ b/pkgs/tools/text/diffstat/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv }: stdenv.mkDerivation rec { - name = "diffstat-1.58"; + name = "diffstat-1.59"; src = fetchurl { url = "ftp://invisible-island.net/diffstat/${name}.tgz"; - sha256 = "14rpf5c05ff30f6vn6pn6pzy0k4g4is5im656ahsxff3k58i7mgs"; + sha256 = "0w7jvfilbnfa9v3h8j8ipirvrj7n2x5gszfanzxvx748p10i8z96"; }; meta = with stdenv.lib; { From c5697874c23d37cc1f1d77241e6028170cb5e418 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:49:07 +0200 Subject: [PATCH 325/789] diffuse: update from 0.4.7 to 0.4.8 --- pkgs/applications/version-management/diffuse/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/diffuse/default.nix b/pkgs/applications/version-management/diffuse/default.nix index 92cdddd8dcb..2bd4b584724 100644 --- a/pkgs/applications/version-management/diffuse/default.nix +++ b/pkgs/applications/version-management/diffuse/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, python, pygtk, makeWrapper }: stdenv.mkDerivation rec { - version = "0.4.7"; + version = "0.4.8"; name = "diffuse-${version}"; src = fetchurl { url = "mirror://sourceforge/project/diffuse/diffuse/${version}/${name}.tar.bz2"; - sha256 = "1b1riy9wix2gby78v9i30ijycjhkcyqsllggjakbkx26sb5nmxdh"; + sha256 = "0ayz8bywmk1z3zicb0a7hbxliqpc7xym60s0mawzqllkpadvgly1"; }; buildInputs = [ python pygtk makeWrapper ]; From 2bfd7ae15c2c067a7a367ba4db8255a489e8016a Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:50:07 +0200 Subject: [PATCH 326/789] dos2unix: update from 6.0.5 to 6.0.6 --- pkgs/tools/text/dos2unix/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/text/dos2unix/default.nix b/pkgs/tools/text/dos2unix/default.nix index a87901eb5eb..6851ca89678 100644 --- a/pkgs/tools/text/dos2unix/default.nix +++ b/pkgs/tools/text/dos2unix/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, perl, gettext }: stdenv.mkDerivation { - name = "dos2unix-6.0.5"; + name = "dos2unix-6.0.6"; src = fetchurl { - url = http://waterlan.home.xs4all.nl/dos2unix/dos2unix-6.0.5.tar.gz; - sha256 = "13w5blhv0i473y9lyrxh4axz4niyrxcpj4v2qiq3w5kamyp20czx"; + url = http://waterlan.home.xs4all.nl/dos2unix/dos2unix-6.0.6.tar.gz; + sha256 = "0xnj4gmav1ypkgwmqldnq41b6l3cg08dyngkbygn9vrhlvlx9fwa"; }; configurePhase = '' From f2779233db4b7a8918838eb9fd296a4fcde477e3 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:51:21 +0200 Subject: [PATCH 327/789] ethtool: update from 3.14 to 3.15 --- pkgs/tools/misc/ethtool/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/ethtool/default.nix b/pkgs/tools/misc/ethtool/default.nix index 1b6205db7ce..36d49ce9b23 100644 --- a/pkgs/tools/misc/ethtool/default.nix +++ b/pkgs/tools/misc/ethtool/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "ethtool-3.14"; + name = "ethtool-3.15"; src = fetchurl { url = "mirror://kernel/software/network/ethtool/${name}.tar.xz"; - sha256 = "01v7a757757bk68vvap2x0v6jbqicchnjxvh52w8dccixxq2nkj3"; + sha256 = "16kgw9y4fisldf1z6zpw3v965cc8nram0dycacwkc0js4l76klw8"; }; meta = with stdenv.lib; { From 1e543f02dfc2be80c174a1279e099e2b02418d62 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:55:20 +0200 Subject: [PATCH 328/789] fldigi: update from 3.21.82 to 3.21.83 --- pkgs/applications/audio/fldigi/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/fldigi/default.nix b/pkgs/applications/audio/fldigi/default.nix index e78095a9c5d..e0250055ccd 100644 --- a/pkgs/applications/audio/fldigi/default.nix +++ b/pkgs/applications/audio/fldigi/default.nix @@ -2,13 +2,13 @@ libsamplerate, pulseaudio, libXinerama, gettext, pkgconfig, alsaLib }: stdenv.mkDerivation rec { - version = "3.21.82"; + version = "3.21.83"; pname = "fldigi"; name = "${pname}-${version}"; src = fetchurl { url = "http://www.w1hkj.com/downloads/${pname}/${name}.tar.gz"; - sha256 = "1q2fc1zm9kfsjir4g6fh95vmjdq984iyxfcs6q4gjqy1znhqcyqs"; + sha256 = "1fyg6dc6xnxb620rrhws60wj10lsgbwsmnhz8vc6ncspx8mx7019"; }; buildInputs = [ libXinerama gettext hamlib fltk13 libjpeg libpng portaudio From bff6e8de3c8e4f2365a6dbf3a6b9b1beb52d989f Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:57:51 +0200 Subject: [PATCH 329/789] gnuradio: update from 3.7.3 to 3.7.5 --- pkgs/applications/misc/gnuradio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/gnuradio/default.nix b/pkgs/applications/misc/gnuradio/default.nix index 1a0dea586d0..19455f972a5 100644 --- a/pkgs/applications/misc/gnuradio/default.nix +++ b/pkgs/applications/misc/gnuradio/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { name = "gnuradio-${version}"; - version = "3.7.3"; + version = "3.7.5"; src = fetchurl { url = "http://gnuradio.org/releases/gnuradio/${name}.tar.gz"; - sha256 = "0caj7dqppav53nhn0ima106hpsn0sakw57v1ihac9fk7ka0x2w8w"; + sha256 = "0hv2nyz2hp1mjinin2q7jimh9mr81rjqvghqmaglz8w70qcn4zs6"; }; buildInputs = [ From 8c2384a7cf4d77a6069c90d98ac61f9d2db9fa6e Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 18:59:27 +0200 Subject: [PATCH 330/789] gparted: update from 0.18.0 to 0.19.1 --- pkgs/tools/misc/gparted/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/gparted/default.nix b/pkgs/tools/misc/gparted/default.nix index 16c7f652dec..cc07ac95db8 100644 --- a/pkgs/tools/misc/gparted/default.nix +++ b/pkgs/tools/misc/gparted/default.nix @@ -2,11 +2,11 @@ , pkgconfig, gtkmm, libxml2 }: stdenv.mkDerivation rec { - name = "gparted-0.18.0"; + name = "gparted-0.19.1"; src = fetchurl { url = "mirror://sourceforge/gparted/${name}.tar.bz2"; - sha256 = "0slyf0sbv7a7xvdcpn9ibnixpy0w4s6zwpz6sklkxcyfybw1j7xz"; + sha256 = "1x0mbks94jpzphb8hm8w0iqjrn665jkdm4qnzrvxrnvy0x3m2fwd"; }; configureFlags = "--disable-doc"; From 0fe866c3a15a62e800ac85f0c2925cc2d25eda97 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 4 Sep 2014 19:00:59 +0200 Subject: [PATCH 331/789] gtkwave: update from 3.3.53 to 3.3.61 --- pkgs/applications/science/electronics/gtkwave/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix index c761f619642..a2f07bfe43d 100644 --- a/pkgs/applications/science/electronics/gtkwave/default.nix +++ b/pkgs/applications/science/electronics/gtkwave/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, gtk, gperf, pkgconfig, bzip2, tcl, tk, judy, xz}: stdenv.mkDerivation rec { - name = "gtkwave-3.3.53"; + name = "gtkwave-3.3.61"; src = fetchurl { url = "mirror://sourceforge/gtkwave/${name}.tar.gz"; - sha256 = "1jmrk2p2azjca250h2bi4c8v0cp1gqd3c027dx18sxy3cgw1fsp1"; + sha256 = "1f8cw7xfr83mc5j6vq53jzzyw3n6pqdmrj4a7pm53m1wvjgk4w3v"; }; buildInputs = [ gtk gperf pkgconfig bzip2 tcl tk judy xz ]; From f73f7ccc6e0b17d08d2ef689b76755769d3663b4 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 3 Sep 2014 14:40:27 -0700 Subject: [PATCH 332/789] nixos/install-grub: Read correct mountpoints --- .../modules/system/boot/loader/grub/grub.nix | 2 +- .../system/boot/loader/grub/install-grub.pl | 45 ++++++++++++++++--- 2 files changed, 41 insertions(+), 6 deletions(-) diff --git a/nixos/modules/system/boot/loader/grub/grub.nix b/nixos/modules/system/boot/loader/grub/grub.nix index bc9a155ac95..892cd995a51 100644 --- a/nixos/modules/system/boot/loader/grub/grub.nix +++ b/nixos/modules/system/boot/loader/grub/grub.nix @@ -260,7 +260,7 @@ in if cfg.devices == [] then throw "You must set the option ‘boot.loader.grub.device’ to make the system bootable." else - "PERL5LIB=${makePerlPath [ pkgs.perlPackages.XMLLibXML pkgs.perlPackages.XMLSAX ]} " + + "PERL5LIB=${makePerlPath (with pkgs.perlPackages; [ FileSlurp XMLLibXML XMLSAX ])} " + "${pkgs.perl}/bin/perl ${./install-grub.pl} ${grubConfig}"; system.build.grub = grub; diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index 2dad8b36db3..eef81d81484 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -6,6 +6,7 @@ use File::Basename; use File::Path; use File::stat; use File::Copy; +use File::Slurp; use POSIX; use Cwd; @@ -70,14 +71,48 @@ struct(Fs => { type => '$', mount => '$', }); +sub PathInMount { + my ($path, $mount) = @_; + my @splitMount = split /\//, $mount; + my @splitPath = split /\//, $path; + if ($#splitPath < $#splitMount) { + return 0; + } + for (my $i = 0; $i <= $#splitMount; $i++) { + if ($splitMount[$i] ne $splitPath[$i]) { + return 0; + } + } + return 1; +} sub GetFs { my ($dir) = @_; - my ($status, @dfOut) = runCommand("df -T $dir"); - if ($status != 0 || $#dfOut != 1) { - die "Failed to retrieve output about $dir from `df`"; + my $bestFs = Fs->new(device => "", type => "", mount => ""); + foreach my $fs (read_file("/proc/self/mountinfo")) { + chomp $fs; + my @fields = split / /, $fs; + my $mountPoint = $fields[4]; + next unless -d $mountPoint; + my @mountOptions = split /,/, $fields[5]; + + # Skip the optional fields. + my $n = 6; $n++ while $fields[$n] ne "-"; $n++; + my $fsType = $fields[$n]; + my $device = $fields[$n + 1]; + my @superOptions = split /,/, $fields[$n + 2]; + + # Skip the read-only bind-mount on /nix/store. + next if $mountPoint eq "/nix/store" && (grep { $_ eq "rw" } @superOptions) && (grep { $_ eq "ro" } @mountOptions); + + # Ensure this matches the intended directory + next unless PathInMount($dir, $mountPoint); + + # Is it better than our current match? + if (length($mountPoint) > length($bestFs->mount)) { + $bestFs = Fs->new(device => $device, type => $fsType, mount => $mountPoint); + } } - my @boot = split(/[ \n\t]+/, $dfOut[1]); - return Fs->new(device => $boot[0], type => $boot[1], mount => $boot[6]); + return $bestFs; } struct (Grub => { path => '$', From c6bd6d6d89abee84d08f12786086ef9e4ccd0860 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 4 Sep 2014 09:15:59 -0700 Subject: [PATCH 333/789] nixos/grub: Assert devices should be absolute paths --- nixos/modules/system/boot/loader/grub/grub.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/loader/grub/grub.nix b/nixos/modules/system/boot/loader/grub/grub.nix index 892cd995a51..0269b95ae1d 100644 --- a/nixos/modules/system/boot/loader/grub/grub.nix +++ b/nixos/modules/system/boot/loader/grub/grub.nix @@ -277,7 +277,11 @@ in '') config.boot.loader.grub.extraFiles); assertions = [{ assertion = !cfg.zfsSupport || cfg.version == 2; - message = "Only grub version 2 provides zfs support";}]; + message = "Only grub version 2 provides zfs support";}] + ++ flip map cfg.devices (dev: { + assertion = hasPrefix "/" dev; + message = "Grub devices must be absolute paths, not ${dev}"; + }); }) From 6fcab9baca7711255be2615f490c3bf522334859 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Tue, 26 Aug 2014 19:32:35 +0200 Subject: [PATCH 334/789] libretro-cores: - adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm, snes9x, stella, picodrive, ppsspp and vba retroarch: - added retroarch wrapper for configured cores - changed attributes, old retroarch is now retroarchBare* --- pkgs/misc/emulators/retroarch/cores.nix | 170 ++++++++++++++++++++++ pkgs/misc/emulators/retroarch/default.nix | 4 +- pkgs/misc/emulators/retroarch/master.nix | 17 ++- pkgs/misc/emulators/retroarch/wrapper.nix | 36 +++++ pkgs/top-level/all-packages.nix | 45 ++++-- 5 files changed, 254 insertions(+), 18 deletions(-) create mode 100644 pkgs/misc/emulators/retroarch/cores.nix create mode 100644 pkgs/misc/emulators/retroarch/wrapper.nix diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix new file mode 100644 index 00000000000..f1cef0acc1c --- /dev/null +++ b/pkgs/misc/emulators/retroarch/cores.nix @@ -0,0 +1,170 @@ +{ stdenv, fetchgit, pkgconfig, makeWrapper, python27 +, retroarch, fluidsynth, mesa, SDL, libpng, libjpeg, libvorbis, zlib }: + +let + + d2u = stdenv.lib.replaceChars ["-"] ["_"]; + + mkLibRetroCore = ({ core, src, description, ... }@a: + stdenv.lib.makeOverridable stdenv.mkDerivation rec { + + name = "libretro-${core}-${version}"; + version = "20140902"; + inherit src; + + buildInputs = [ makeWrapper retroarch zlib ] ++ a.extraBuildInputs or []; + + buildPhase = "make -f Makefile.libretro"; + installPhase = '' + COREDIR="$out/lib/retroarch/cores" + mkdir -p $out/bin + mkdir -p $COREDIR + mv ${d2u core}_libretro.so $COREDIR/. + makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \ + --add-flags "-L $COREDIR/${d2u core}_libretro.so $@" + ''; + + passthru.libretroCore = "/lib/retroarch/cores"; + + meta = with stdenv.lib; { + inherit description; + homepage = "http://www.libretro.com/"; + license = licenses.gpl3Plus; + maintainers = [ maintainers.edwtjo ]; + platforms = platforms.linux; + }; + } // a); + + fetchRetro = { repo, rev, sha256 }: + fetchgit { + inherit rev sha256; + url = "https://github.com/libretro/${repo}.git"; + fetchSubmodules = true; + }; + +in + +{ + + _4do = (mkLibRetroCore rec { + core = "4do"; + src = fetchRetro { + repo = core + "-libretro"; + rev = "961812bc421f3fbfd83ea211783bb511a0b6d31c"; + sha256 = "0217iq8sj8gn161c3mj632csl1da8ir2ffxxdillpcddv6ppsayl"; + }; + description = "Port of 4DO/libfreedo to libretro"; + }).override { + buildPhase = "make"; + }; + + desmume = mkLibRetroCore rec { + core = "desmume"; + src = fetchRetro { + repo = core + "-libretro"; + rev = "1dd58e4a9fa375b6909cd8718165a429d4b8bd6d"; + sha256 = "137bw9316qxm8s6p0bzyvk39dv5b5bn60fgllmyj9z5y8x5lrc9l"; + }; + description = "libretro wrapper for desmume NDS emulator"; + }; + + fceumm = mkLibRetroCore rec { + core = "fceumm"; + src = fetchRetro { + repo = "libretro-" + core; + rev = "17e081541c9d36d0658e7139afa5b085aa0316c9"; + sha256 = "0cn74z976rgjh7hf0yb1sdjlm347157893s2z397rgjvks8xssb0"; + }; + description = "FCEUmm libretro port"; + }; + + mupen64plus = (mkLibRetroCore rec { + core = "mupen64plus"; + src = fetchRetro { + repo = core + "-libretro"; + rev = "2251b3aba2a5bb233ff49dd9b6472f2c0feb9b83"; + sha256 = "04g93kj6n5vddbzfb30d8n711kg0yxfnl5v567aa854misn6gfxd"; + }; + description = "Libretro port of Mupen64 Plus, GL only"; + + extraBuildInputs = [ mesa ]; + }).override { + buildPhase = "make WITH_DYNAREC=${if stdenv.system == "x86_64-linux" then "x86_64" else "x86"}"; + }; + + scummvm = (mkLibRetroCore rec { + core = "scummvm"; + src = fetchRetro { + repo = core; + rev = "c00247171ba8201614e85556c638b8825dc9f225"; + sha256 = "1wir3x928b37va6gn14bmwsydkpk4afma5hppmbivw4qp8mj25pa"; + }; + description = "Libretro port of ScummVM"; + + extraBuildInputs = [ fluidsynth libjpeg libvorbis mesa SDL ]; + }).override { + buildPhase = "cd backends/platform/libretro/build/;make"; + }; + + snes9x-next = mkLibRetroCore rec { + core = "snes9x-next"; + src = fetchRetro { + repo = core; + rev = "461d92be09e1857d215f51aeea448a8e180bbfdd"; + sha256 = "0ci453qsyrv3brmy2szngis2xyvxilcv9yhc2qjz285mirg6fj57"; + }; + description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro"; + }; + + stella = (mkLibRetroCore rec { + core = "stella"; + src = fetchRetro { + repo = core + "-libretro"; + rev = "c7ee7ca7e8a29c986f49306c75832972f5749f72"; + sha256 = "15wy9h3a2qk66lh8x40b3a9il0zkdflqil1h51zjmhq2zzsq8p95"; + }; + description = "Port of Stella to libretro"; + }).override { + buildPhase = "make"; + }; + + picodrive = (mkLibRetroCore rec { + core = "picodrive"; + src = fetchRetro { + repo = core; + rev = "d84817550ac064fbba7ee718fb3baeda7d5546da"; + sha256 = "17zh9m2v7h1cifzz8dcwqm4wn94zyhz6g85gf0aw6xylxahza627"; + }; + description = "Fast MegaDrive/MegaCD/32X emulator"; + + extraBuildInputs = [ libpng SDL ]; + }).override { + patchPhase = "sed -i -e 's,SDL_CONFIG=\".*\",SDL_CONFIG=\"${SDL}/bin/sdl-config\",' configure"; + configurePhase = "./configure"; + }; + + ppsspp = (mkLibRetroCore rec { + core = "ppsspp"; + src = fetchRetro { + repo = "libretro-" + core; + rev = "6ee828171218b26e124c5e8fa7877e6ee1d5ff79"; + sha256 = "1559d4k3h0a2dv3684j4w924p2dg8z2j1fwhy7w9mhb5z4kddjhk"; + }; + description = "ppsspp libretro port"; + + extraBuildInputs = [ mesa ]; + }).override{ + buildPhase = "cd libretro && make"; + }; + + vba-next = mkLibRetroCore rec { + core = "vba-next"; + src = fetchRetro { + repo = core; + rev = "fb095107f83df5f93b8ba4833eaf43901f42c0c0"; + sha256 = "0fvq1dfll27vjbmyh4qsp2nw166jsd91sjmf1sl84z56ab3q3iw8"; + }; + description = "VBA-M libretro port"; + }; + +} \ No newline at end of file diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix index 8bc53da8f0c..d110f2b789e 100644 --- a/pkgs/misc/emulators/retroarch/default.nix +++ b/pkgs/misc/emulators/retroarch/default.nix @@ -4,7 +4,7 @@ }: stdenv.mkDerivation rec { - name = "retroarch-0.9.9.7"; + name = "retroarch-bare-0.9.9.7"; src = fetchgit { url = "https://github.com/libretro/RetroArch.git"; @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { preConfigure = '' configureFlags="--global-config-dir=$out/etc" ''; - + meta = { description = "Modular multi-system game/emulator system"; homepage = "http://www.libretro.com/"; diff --git a/pkgs/misc/emulators/retroarch/master.nix b/pkgs/misc/emulators/retroarch/master.nix index 44bd6649045..2efb43e5d5e 100644 --- a/pkgs/misc/emulators/retroarch/master.nix +++ b/pkgs/misc/emulators/retroarch/master.nix @@ -1,8 +1,11 @@ -{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit, freetype, libxml2, libv4l -, coreutils, python34, which, udev, alsaLib, libX11, libXext, libXxf86vm, libXdmcp, SDL -, pulseaudio ? null }: +{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit +, freetype, libxml2, libv4l, coreutils, python34, which, udev, alsaLib +, libX11, libXext, libXxf86vm, libXdmcp, SDL, pulseaudio ? null }: + stdenv.mkDerivation rec { - name = "retroarch-20140902"; + name = "retroarch-bare-${version}"; + version = "20140902"; + src = fetchgit { url = git://github.com/libretro/RetroArch.git; rev = "0856091296c2e47409f36e13007805d71db69483"; @@ -19,10 +22,10 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - meta = { + meta = with stdenv.lib; { homepage = http://libretro.org/; description = "Multi-platform emulator frontend for libretro cores"; - license = stdenv.lib.licenses.gpl3; - maintainers = with stdenv.lib.maintainers; [ MP2E ]; + license = licenses.gpl3; + maintainers = with maintainers; [ MP2E ]; }; } diff --git a/pkgs/misc/emulators/retroarch/wrapper.nix b/pkgs/misc/emulators/retroarch/wrapper.nix new file mode 100644 index 00000000000..f7e903ef529 --- /dev/null +++ b/pkgs/misc/emulators/retroarch/wrapper.nix @@ -0,0 +1,36 @@ +{ stdenv, lib, makeWrapper, retroarch, cores }: + +let + + p = builtins.parseDrvName retroarch.name; + +in + +stdenv.mkDerivation { + name = "retroarch-" + p.version; + version = p.version; + + buildInputs = [ makeWrapper ]; + + buildCommand = '' + mkdir -p $out/lib + $(for coreDir in $cores + do + $(ln -s $coreDir/*.so $out/lib/.) + done) + makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch \ + --suffix-each LD_LIBRARY_PATH ':' "$cores" \ + --add-flags "-L $out/lib/ --menu" \ + ''; + + cores = map (x: x + x.libretroCore) cores; + preferLocalBuild = true; + + meta = with retroarch.meta; { + inherit license homepage; + description = description + + " (with cores: " + + lib.concatStrings (lib.intersperse ", " (map (x: ""+x.name) cores)) + + ")"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6e5e6d92a4b..af3980aff7e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1220,7 +1220,7 @@ let * objections before removal. The feature is integer coordinates */ graphviz_2_0 = callPackage ../tools/graphics/graphviz/2.0.nix { }; - + /* Readded by Michael Raskin. There are programs in the wild * that do want 2.32 but not 2.0 or 2.36. Please give a day's notice for * objections before removal. The feature is libgraph. @@ -7169,7 +7169,7 @@ let tomcat6 = callPackage ../servers/http/tomcat/6.0.nix { }; tomcat7 = callPackage ../servers/http/tomcat/7.0.nix { }; - + tomcat8 = callPackage ../servers/http/tomcat/8.0.nix { }; tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; @@ -9819,7 +9819,7 @@ let }; stella = callPackage ../misc/emulators/stella { }; - + linuxstopmotion = callPackage ../applications/video/linuxstopmotion { }; sweethome3d = recurseIntoAttrs ( (callPackage ../applications/misc/sweethome3d { }) @@ -10215,6 +10215,27 @@ let gtk_modules = [ libcanberra ]; }; + wrapRetroArch = { retroarch }: + let + cfg = stdenv.lib.attrByPath [ "retroarch" ] {} config; + in + import ../misc/emulators/retroarch/wrapper.nix { + inherit stdenv lib makeWrapper retroarch; + cores = with libretro; + ([ ] + ++ lib.optional (cfg.enable4do or false) _4do + ++ lib.optional (cfg.enableDesmume or false) desmume + ++ lib.optional (cfg.enableFceumm or false) fceumm + ++ lib.optional (cfg.enableMupen64Plus or false) mupen64plus + ++ lib.optional (cfg.enablePicodrive or false) picodrive + ++ lib.optional (cfg.enablePPSSPP or false) ppsspp + ++ lib.optional (cfg.enableScummVM or false) scummvm + ++ lib.optional (cfg.enableSnes9xNext or false) snes9x-next + ++ lib.optional (cfg.enableStella or false) stella + ++ lib.optional (cfg.enableVbaNext or false) vba-next + ); + }; + wxhexeditor = callPackage ../applications/editors/wxhexeditor { }; wxcam = callPackage ../applications/video/wxcam { @@ -10222,7 +10243,7 @@ let inherit intltool; wxGTK = wxGTK28; gtk = gtk2; - }; + }; x11vnc = callPackage ../tools/X11/x11vnc { }; @@ -10376,12 +10397,11 @@ let zim = callPackage ../applications/office/zim { pygtk = pyGtkGlade; }; - + zotero = callPackage ../applications/office/zotero { }; zynaddsubfx = callPackage ../applications/audio/zynaddsubfx { }; - ### GAMES alienarena = callPackage ../games/alienarena { }; @@ -10897,7 +10917,7 @@ let libnm-qt = callPackage ../development/libraries/libnm-qt { }; - massif-visualizer = callPackage ../development/tools/analysis/massif-visualizer { }; + massif-visualizer = callPackage ../development/tools/analysis/massif-visualizer { }; networkmanagement = callPackage ../tools/networking/networkmanagement { }; @@ -11477,8 +11497,15 @@ let putty = callPackage ../applications/networking/remote/putty { }; - retroarch = callPackage ../misc/emulators/retroarch { }; - retroarchMaster = callPackage ../misc/emulators/retroarch/master.nix { }; + retroarchBare = callPackage ../misc/emulators/retroarch { }; + + retroarchBareMaster = callPackage ../misc/emulators/retroarch/master.nix { }; + + retroarch = wrapRetroArch { retroarch = retroarchBareMaster; }; + + libretro = recurseIntoAttrs (callPackage ../misc/emulators/retroarch/cores.nix { + retroarch = retroarchBareMaster; + }); rssglx = callPackage ../misc/screensavers/rss-glx { }; From f21cccb2b63986a96775296f1f32d594faf6d6a0 Mon Sep 17 00:00:00 2001 From: Michael Fellinger Date: Thu, 4 Sep 2014 20:24:21 +0200 Subject: [PATCH 335/789] vagrant: 1.6.3 -> 1.6.4 --- pkgs/development/tools/vagrant/default.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix index 072b8eeff5c..69c91eff179 100644 --- a/pkgs/development/tools/vagrant/default.nix +++ b/pkgs/development/tools/vagrant/default.nix @@ -3,19 +3,21 @@ assert stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux"; +let version = "1.6.4"; +in stdenv.mkDerivation rec { - name = "vagrant-1.6.3"; + name = "vagrant-${version}"; src = if stdenv.system == "x86_64-linux" then fetchurl { - url = https://dl.bintray.com/mitchellh/vagrant/vagrant_1.6.3_x86_64.deb; - sha256 = "1gmdg92dw7afnvpji0wg4nzr7vhk8mrmcqk3hcrkwscby2f2bhqg"; + url = "https://dl.bintray.com/mitchellh/vagrant/vagrant_${version}_x86_64.deb"; + sha256 = "1f171d2yjs4p2kzlwcknx1k29qnjvaxizjrxp84ya3sfxvfckm92"; } else fetchurl { - url = https://dl.bintray.com/mitchellh/vagrant/vagrant_1.6.3_i686.deb; - sha256 = "1z26b6yghqgx8jbi2igf4kk4h6rzy869gli2vj7ayl7vbqdfvb60"; + url = "https://dl.bintray.com/mitchellh/vagrant/vagrant_${version}_i686.deb"; + sha256 = "1845sg2v9qas6obkkjtkmmamds901ik9rp2q2r6v75v69m0opvog"; }; meta = with stdenv.lib; { @@ -84,10 +86,10 @@ stdenv.mkDerivation rec { preFixup = '' # 'hide' the template file from shebang-patching - chmod -x $out/opt/vagrant/embedded/gems/gems/bundler-1.6.2/lib/bundler/templates/Executable + chmod -x $out/opt/vagrant/embedded/gems/gems/bundler-1.6.6/lib/bundler/templates/Executable ''; postFixup = '' - chmod +x $out/opt/vagrant/embedded/gems/gems/bundler-1.6.2/lib/bundler/templates/Executable + chmod +x $out/opt/vagrant/embedded/gems/gems/bundler-1.6.6/lib/bundler/templates/Executable ''; } From 0ec38e5b7f14790c05979120c1a60d77407f1432 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Thu, 4 Sep 2014 20:32:30 +0200 Subject: [PATCH 336/789] Add myself to lib/maintainers.nix --- lib/maintainers.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/maintainers.nix b/lib/maintainers.nix index b616e30a858..11325a011e4 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -15,6 +15,7 @@ AndersonTorres = "Anderson Torres "; andres = "Andres Loeh "; antono = "Antono Vasiljev "; + aristid = "Aristid Breitkreuz "; arobyn = "Alexei Robyn "; astsmtl = "Alexander Tsamutali "; aszlig = "aszlig "; From 73e569bf01facc9e65738f708ee2fff1e49ac61f Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Thu, 4 Sep 2014 20:36:36 +0200 Subject: [PATCH 337/789] add postgresql 9.4beta2 --- lib/licenses.nix | 5 +++ pkgs/servers/sql/postgresql/9.4.x.nix | 44 +++++++++++++++++++ .../disable-resolve_symlinks-94.patch | 12 +++++ pkgs/top-level/all-packages.nix | 2 + 4 files changed, 63 insertions(+) create mode 100644 pkgs/servers/sql/postgresql/9.4.x.nix create mode 100644 pkgs/servers/sql/postgresql/disable-resolve_symlinks-94.patch diff --git a/lib/licenses.nix b/lib/licenses.nix index bdcf8a7b8a7..6eb265b3316 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -232,6 +232,11 @@ rec { fullName = "OpenSSL License"; }; + postgresql = spqd { + shortName = "PostgreSQL"; + fullName = "PostgreSQL License"; + }; + psfl = spdx { shortName = "Python-2.0"; fullName = "Python Software Foundation License version 2"; diff --git a/pkgs/servers/sql/postgresql/9.4.x.nix b/pkgs/servers/sql/postgresql/9.4.x.nix new file mode 100644 index 00000000000..2608dcae504 --- /dev/null +++ b/pkgs/servers/sql/postgresql/9.4.x.nix @@ -0,0 +1,44 @@ +{ stdenv, fetchurl, zlib, readline, libossp_uuid }: + +with stdenv.lib; + +let version = "9.4beta2"; in + +stdenv.mkDerivation rec { + name = "postgresql-${version}"; + + src = fetchurl { + url = "mirror://postgresql/source/v${version}/${name}.tar.bz2"; + sha256 = "131q3b9hv4pw02xhjsfi5is9i7pp5f4srxwfdn8ifs9qb37hcx2n"; + }; + + buildInputs = [ zlib readline ] ++ optionals (!stdenv.isDarwin) [ libossp_uuid ]; + + enableParallelBuilding = true; + + makeFlags = [ "world" ]; + + configureFlags = optional (!stdenv.isDarwin) + '' + --with-ossp-uuid + ''; + + patches = [ ./disable-resolve_symlinks-94.patch ./less-is-more.patch ]; + + installTargets = [ "install-world" ]; + + LC_ALL = "C"; + + passthru = { + inherit readline; + psqlSchema = "9.4"; + }; + + meta = { + homepage = http://www.postgresql.org/ ; + description = "A powerful, open source object-relational database system"; + license = stdenv.lib.licenses.postgresql; + maintainers = with stdenv.lib.maintainers; [ aristid ocharles ]; + hydraPlatforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/servers/sql/postgresql/disable-resolve_symlinks-94.patch b/pkgs/servers/sql/postgresql/disable-resolve_symlinks-94.patch new file mode 100644 index 00000000000..fadeea90ac4 --- /dev/null +++ b/pkgs/servers/sql/postgresql/disable-resolve_symlinks-94.patch @@ -0,0 +1,12 @@ +--- a/src/common/exec.c 2014-09-04 20:19:12.236057588 +0200 ++++ b/src/common/exec.c 2014-09-04 20:19:50.550251633 +0200 +@@ -218,6 +218,9 @@ + static int + resolve_symlinks(char *path) + { ++ // On NixOS we *want* stuff relative to symlinks. ++ return 0; ++ + #ifdef HAVE_READLINK + struct stat buf; + char orig_wd[MAXPGPATH], diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index af3980aff7e..c6e89616312 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7095,6 +7095,8 @@ let postgresql93 = callPackage ../servers/sql/postgresql/9.3.x.nix { }; + postgresql94 = callPackage ../servers/sql/postgresql/9.4.x.nix { }; + postgresql_jdbc = callPackage ../servers/sql/postgresql/jdbc { }; psqlodbc = callPackage ../servers/sql/postgresql/psqlodbc { }; From 559045d98c747e45014377108ba9786fe64fd3af Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Thu, 4 Sep 2014 20:38:12 +0200 Subject: [PATCH 338/789] fix license for postgresql packages --- pkgs/servers/sql/postgresql/8.4.x.nix | 2 +- pkgs/servers/sql/postgresql/9.0.x.nix | 2 +- pkgs/servers/sql/postgresql/9.1.x.nix | 2 +- pkgs/servers/sql/postgresql/9.2.x.nix | 2 +- pkgs/servers/sql/postgresql/9.3.x.nix | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/servers/sql/postgresql/8.4.x.nix b/pkgs/servers/sql/postgresql/8.4.x.nix index 5151299e3b9..4807052478c 100644 --- a/pkgs/servers/sql/postgresql/8.4.x.nix +++ b/pkgs/servers/sql/postgresql/8.4.x.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.postgresql.org/; description = "A powerful, open source object-relational database system"; - license = "bsd"; + license = stdenv.lib.licenses.postgresql; maintainers = [ stdenv.lib.maintainers.ocharles ]; hydraPlatforms = stdenv.lib.platforms.linux; }; diff --git a/pkgs/servers/sql/postgresql/9.0.x.nix b/pkgs/servers/sql/postgresql/9.0.x.nix index 97e98217f8a..85c14931eed 100644 --- a/pkgs/servers/sql/postgresql/9.0.x.nix +++ b/pkgs/servers/sql/postgresql/9.0.x.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.postgresql.org/; description = "A powerful, open source object-relational database system"; - license = "bsd"; + license = stdenv.lib.licenses.postgresql; maintainers = [ stdenv.lib.maintainers.ocharles ]; hydraPlatforms = stdenv.lib.platforms.linux; }; diff --git a/pkgs/servers/sql/postgresql/9.1.x.nix b/pkgs/servers/sql/postgresql/9.1.x.nix index 92417dc730c..ef335a77ab6 100644 --- a/pkgs/servers/sql/postgresql/9.1.x.nix +++ b/pkgs/servers/sql/postgresql/9.1.x.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.postgresql.org/; description = "A powerful, open source object-relational database system"; - license = "bsd"; + license = stdenv.lib.licenses.postgresql; maintainers = [ stdenv.lib.maintainers.ocharles ]; hydraPlatforms = stdenv.lib.platforms.linux; }; diff --git a/pkgs/servers/sql/postgresql/9.2.x.nix b/pkgs/servers/sql/postgresql/9.2.x.nix index e5dbdd034d3..fdfb5a17b54 100644 --- a/pkgs/servers/sql/postgresql/9.2.x.nix +++ b/pkgs/servers/sql/postgresql/9.2.x.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.postgresql.org/; description = "A powerful, open source object-relational database system"; - license = "bsd"; + license = stdenv.lib.licenses.postgresql; maintainers = [ stdenv.lib.maintainers.ocharles ]; hydraPlatforms = stdenv.lib.platforms.linux; }; diff --git a/pkgs/servers/sql/postgresql/9.3.x.nix b/pkgs/servers/sql/postgresql/9.3.x.nix index 6c6ef132e81..40f07d8ffe1 100644 --- a/pkgs/servers/sql/postgresql/9.3.x.nix +++ b/pkgs/servers/sql/postgresql/9.3.x.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { meta = { homepage = http://www.postgresql.org/; description = "A powerful, open source object-relational database system"; - license = "bsd"; + license = stdenv.lib.licenses.postgresql; maintainers = [ stdenv.lib.maintainers.ocharles ]; hydraPlatforms = stdenv.lib.platforms.linux; }; From 494ba98e65987320284dde09b373cd7f8edfaa69 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Thu, 4 Sep 2014 20:40:03 +0200 Subject: [PATCH 339/789] fix typo in postgresql license definition --- lib/licenses.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/licenses.nix b/lib/licenses.nix index 6eb265b3316..caffa7539d1 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -232,7 +232,7 @@ rec { fullName = "OpenSSL License"; }; - postgresql = spqd { + postgresql = spdx { shortName = "PostgreSQL"; fullName = "PostgreSQL License"; }; From 4a2b6a63b61890aab22a6cf6e4dbafb5be814957 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 4 Sep 2014 21:02:14 +0200 Subject: [PATCH 340/789] spring, warzone2100: work around build problems I guess there was a slight API change in the last mesa update. --- pkgs/games/spring/default.nix | 2 ++ pkgs/games/warzone2100/default.nix | 3 +++ 2 files changed, 5 insertions(+) diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix index 539be06bf7f..69387f0cfd3 100644 --- a/pkgs/games/spring/default.nix +++ b/pkgs/games/spring/default.nix @@ -28,6 +28,8 @@ stdenv.mkDerivation rec { # reported upstream http://springrts.com/mantis/view.php?id=4305 #enableParallelBuilding = true; # occasionally missing generated files on Hydra + NIX_CFLAGS_COMPILE = "-fpermissive"; # GL header minor incompatibility + postInstall = '' wrapProgram "$out/bin/spring" \ --prefix LD_LIBRARY_PATH : "${stdenv.gcc.gcc}/lib64:${stdenv.gcc.gcc}/lib::${systemd}/lib" diff --git a/pkgs/games/warzone2100/default.nix b/pkgs/games/warzone2100/default.nix index 284d420fe7f..0db90e95cc9 100644 --- a/pkgs/games/warzone2100/default.nix +++ b/pkgs/games/warzone2100/default.nix @@ -28,6 +28,9 @@ stdenv.mkDerivation rec { --replace "which %s" "${which}/bin/which %s" ''; configureFlags = "--with-backend=qt --with-distributor=NixOS"; + + NIX_CFLAGS_COMPILE = "-fpermissive"; # GL header minor incompatibility + postInstall = [] ++ stdenv.lib.optional withVideos "cp ${sequences_src} $out/share/warzone2100/sequences.wz"; meta = { From c4a35d8cf9548344cedf259363eef4332fd2e072 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 4 Sep 2014 21:04:11 +0200 Subject: [PATCH 341/789] warzone2100: fix meta --- pkgs/games/warzone2100/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/games/warzone2100/default.nix b/pkgs/games/warzone2100/default.nix index 0db90e95cc9..248b58a4e1a 100644 --- a/pkgs/games/warzone2100/default.nix +++ b/pkgs/games/warzone2100/default.nix @@ -33,7 +33,8 @@ stdenv.mkDerivation rec { postInstall = [] ++ stdenv.lib.optional withVideos "cp ${sequences_src} $out/share/warzone2100/sequences.wz"; - meta = { + + meta = with stdenv.lib; { description = "A free RTS game, originally developed by Pumpkin Studios"; longDescription = '' Warzone 2100 is an open source real-time strategy and real-time tactics @@ -47,8 +48,8 @@ stdenv.mkDerivation rec { variety of possible units and tactics. ''; homepage = http://wz2100.net; - license = [ "GPLv2+" ]; - maintainers = with stdenv.lib.maintainers; [ astsmtl ]; - platforms = with stdenv.lib.platforms; linux; + license = licenses.gpl2Plus; + maintainers = [ maintainers.astsmtl ]; + platforms = platforms.linux; }; } From 20113e5d8b45c99d551923e4a0380b5016a62ecd Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Thu, 4 Sep 2014 15:22:31 -0400 Subject: [PATCH 342/789] buildLocalCabal: Use host-native nixpkgs for the call to cabal2nix by default --- pkgs/top-level/haskell-packages.nix | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index c692800810e..0fd062940bc 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -3031,13 +3031,19 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in cabal2nix = callPackage ../development/tools/haskell/cabal2nix {}; # Build a cabal package given a local .cabal file - buildLocalCabalWithArgs = { src, name, args ? {}, cabalDrvArgs ? { jailbreak = true; } }: let - cabalExpr = pkgs.stdenv.mkDerivation ({ + buildLocalCabalWithArgs = { src + , name + , args ? {} + , cabalDrvArgs ? { jailbreak = true; } + # for import-from-derivation, want to use current system + , nativePkgs ? import pkgs.path {} + }: let + cabalExpr = nativePkgs.stdenv.mkDerivation ({ name = "${name}.nix"; buildCommand = '' export HOME="$TMPDIR" - ${self.cabal2nix}/bin/cabal2nix ${src + "/${name}.cabal"} --sha256=FILTERME \ + ${nativePkgs.haskellPackages.cabal2nix}/bin/cabal2nix ${src + "/${name}.cabal"} --sha256=FILTERME \ | grep -v FILTERME | sed \ -e 's/licenses.proprietary/licenses.unfree/' \ -e 's/{ cabal/{ cabal, cabalInstall, cabalDrvArgs ? {}, src/' \ @@ -3046,9 +3052,9 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in -e 's/pname = \([^\n]*\)/pname = \1\n inherit src;\n/' > $out ''; - } // pkgs.lib.optionalAttrs pkgs.stdenv.isLinux { + } // pkgs.lib.optionalAttrs nativePkgs.stdenv.isLinux { LANG = "en_US.UTF-8"; - LOCALE_ARCHIVE = "${pkgs.glibcLocales}/lib/locale/locale-archive"; + LOCALE_ARCHIVE = "${nativePkgs.glibcLocales}/lib/locale/locale-archive"; }); in callPackage cabalExpr ({ inherit src cabalDrvArgs; } // args); From bf1493401bf931c5ca073640e00560eccb232f90 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Fri, 5 Sep 2014 00:24:25 +0400 Subject: [PATCH 343/789] Update BATMAN module --- pkgs/os-specific/linux/batman-adv/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/batman-adv/default.nix b/pkgs/os-specific/linux/batman-adv/default.nix index fee955bcca2..f7b2a984e40 100644 --- a/pkgs/os-specific/linux/batman-adv/default.nix +++ b/pkgs/os-specific/linux/batman-adv/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, kernel }: -let base = "batman-adv-2013.4.0"; in +let base = "batman-adv-2014.3.0"; in stdenv.mkDerivation rec { name = "${base}-${kernel.version}"; src = fetchurl { url = "http://downloads.open-mesh.org/batman/releases/${base}/${base}.tar.gz"; - sha1 = "870a85df5410b3b5623be69e75297e642c91a7d4"; + sha1 = "wh3if8v4wfwskvzwqsjsyr929krzfmsx"; }; preBuild = '' From 440d876b540f0386d39e9f3bb0a71f5321a10a8d Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 4 Sep 2014 22:28:41 +0200 Subject: [PATCH 344/789] moc: update from 2.5.0-beta2 to 2.5.0 also set platforms to linux, use default configurePhase and adopt it --- pkgs/applications/audio/moc/default.nix | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/audio/moc/default.nix b/pkgs/applications/audio/moc/default.nix index 5c6a1d6ac54..9fbf05a2feb 100644 --- a/pkgs/applications/audio/moc/default.nix +++ b/pkgs/applications/audio/moc/default.nix @@ -5,23 +5,23 @@ stdenv.mkDerivation rec { name = "moc-${version}"; - version = "2.5.0-beta2"; + version = "2.5.0"; src = fetchurl { - url = "http://ftp.daper.net/pub/soft/moc/unstable/moc-${version}.tar.bz2"; - sha256 = "486d50584c3fb0067b8c03af54e44351633a7740b18dc3b7358322051467034c"; + url = "http://ftp.daper.net/pub/soft/moc/stable/moc-${version}.tar.bz2"; + sha256 = "14b0g9jn12jzxsf292g64dc6frlxv99kaagsasmc8xmg80iab7nj"; }; - configurePhase = "./configure prefix=$out"; - buildInputs = [ ncurses pkgconfig alsaLib flac libmad speex ffmpeg libvorbis mpc libsndfile jack2 db libmodplug timidity libid3tag libtool ]; - meta = { + meta = with stdenv.lib; { description = "An ncurses console audio player designed to be powerful and easy to use"; homepage = http://moc.daper.net/; - license = stdenv.lib.licenses.gpl2; + license = licenses.gpl2; + maintainers = with maintainers; [ pSub ]; + platforms = platforms.linux; }; } From d62e848cc912a7301e05a1a0bf5c89b59f70ca1c Mon Sep 17 00:00:00 2001 From: Michael Fellinger Date: Thu, 4 Sep 2014 22:44:38 +0200 Subject: [PATCH 345/789] virtualbox: vboxusers may use /dev/vboxnetctl --- nixos/modules/programs/virtualbox.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/programs/virtualbox.nix b/nixos/modules/programs/virtualbox.nix index fec1a7b61f3..1a190573e94 100644 --- a/nixos/modules/programs/virtualbox.nix +++ b/nixos/modules/programs/virtualbox.nix @@ -15,7 +15,7 @@ let virtualbox = config.boot.kernelPackages.virtualbox; in '' KERNEL=="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660", TAG+="systemd" KERNEL=="vboxdrvu", OWNER="root", GROUP="root", MODE="0666", TAG+="systemd" - KERNEL=="vboxnetctl", OWNER="root", GROUP="root", MODE="0600", TAG+="systemd" + KERNEL=="vboxnetctl", OWNER="root", GROUP="vboxusers", MODE="0660", TAG+="systemd" SUBSYSTEM=="usb_device", ACTION=="add", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass}" SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass}" SUBSYSTEM=="usb_device", ACTION=="remove", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor" From 42bb59a8a650a90ed04facc90af05e2179c1dfe3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 4 Sep 2014 23:36:41 +0200 Subject: [PATCH 346/789] thunderbird: maintenance update, including security --- .../networking/mailreaders/thunderbird/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix index c0c11ff1f1c..0827ca2cc75 100644 --- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix +++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix @@ -13,7 +13,7 @@ enableOfficialBranding ? false }: -let version = "31.0"; in +let version = "31.1.0"; in let verName = "${version}"; in stdenv.mkDerivation rec { @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${verName}/source/thunderbird-${verName}.source.tar.bz2"; - sha1 = "0fe6666fddd4db82ec2e389f30c5ea11d4f72be5"; + sha1 = "08d231541a80a79180826f98dde732c5796191f4"; }; buildInputs = # from firefox30Pkgs.xulrunner, but without gstreamer and libvpx From 701cd705024d81b137f2ce0f3abf4730ec760b9a Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 4 Sep 2014 23:53:54 +0200 Subject: [PATCH 347/789] zim: fixed build; it also runs find now but the solution is hacky --- pkgs/applications/office/zim/default.nix | 25 ++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix index cca52be1a17..658f460793f 100644 --- a/pkgs/applications/office/zim/default.nix +++ b/pkgs/applications/office/zim/default.nix @@ -20,8 +20,8 @@ buildPythonPackage rec { propagatedBuildInputs = [ pythonPackages.sqlite3 pygtk /*pythonPackages.pyxdg*/ pygobject ]; preBuild = '' - mkdir -p $tmp/home - export HOME="$tmp/home" + mkdir -p /tmp/home + export HOME="/tmp/home" ''; setupPyInstallFlags = ["--skip-xdg-cmd"]; @@ -69,6 +69,27 @@ buildPythonPackage rec { runHook postInstall ''; + + # FIXME: this is quick and dirty hack, because zim expects the + # path to the executable in argv[0] therefore the wrapper is + # modified accordingly. + postFixup = '' + wrapPythonPrograms + + sed -i "s#sys\.argv\[0\] = 'zim'#sys.argv[0] = '$out/bin/zim'#g" \ + $out/bin/.zim-wrapped + + if test -e $out/nix-support/propagated-build-inputs; then + ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages + fi + + createBuildInputsPth build-inputs "$buildInputStrings" + for inputsfile in propagated-build-inputs propagated-native-build-inputs; do + if test -e $out/nix-support/$inputsfile; then + createBuildInputsPth $inputsfile "$(cat $out/nix-support/$inputsfile)" + fi + done + ''; # Testing fails. doCheck = false; From 498aef7766a1b96daee68aeab7308621e94b4ab8 Mon Sep 17 00:00:00 2001 From: Dmitry Malikov Date: Thu, 4 Sep 2014 23:40:22 +0200 Subject: [PATCH 348/789] haskell-regex-pcre-builtin: add 0.94.4.8.8.35 Closes #3972. Signed-off-by: Mateusz Kowalczyk --- .../haskell/regex-pcre-builtin/default.nix | 16 ++++++++++++++++ pkgs/top-level/haskell-packages.nix | 2 ++ 2 files changed, 18 insertions(+) create mode 100644 pkgs/development/libraries/haskell/regex-pcre-builtin/default.nix diff --git a/pkgs/development/libraries/haskell/regex-pcre-builtin/default.nix b/pkgs/development/libraries/haskell/regex-pcre-builtin/default.nix new file mode 100644 index 00000000000..f5ddf2a6388 --- /dev/null +++ b/pkgs/development/libraries/haskell/regex-pcre-builtin/default.nix @@ -0,0 +1,16 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, regexBase }: + +cabal.mkDerivation (self: { + pname = "regex-pcre-builtin"; + version = "0.94.4.8.8.35"; + sha256 = "0y7as9wqlkykpipka2cfdhmcnin345q01pp0wsva8fwmvsavdl8b"; + buildDepends = [ regexBase ]; + meta = { + homepage = "http://hackage.haskell.org/package/regex-pcre"; + description = "Replaces/Enhances Text.Regex"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 0fd062940bc..c4d8b42607d 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -2072,6 +2072,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in regexCompatTdfa = callPackage ../development/libraries/haskell/regex-compat-tdfa {}; + regexPcreBuiltin = callPackage ../development/libraries/haskell/regex-pcre-builtin {}; + regexPosix_0_72_0_3 = callPackage ../development/libraries/haskell/regex-posix/0.72.0.3.nix {}; regexPosix_0_94_1 = callPackage ../development/libraries/haskell/regex-posix/0.94.1.nix {}; regexPosix_0_94_2 = callPackage ../development/libraries/haskell/regex-posix/0.94.2.nix {}; From f9ba413b558d4b628b97db2f2b127dc2a76a1457 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Fri, 5 Sep 2014 00:05:52 +0200 Subject: [PATCH 349/789] fix eval --- pkgs/development/compilers/agda/stdlib.nix | 6 +++--- pkgs/development/tools/vagrant/default.nix | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/agda/stdlib.nix b/pkgs/development/compilers/agda/stdlib.nix index 2857a7d3d71..136d4e0c815 100644 --- a/pkgs/development/compilers/agda/stdlib.nix +++ b/pkgs/development/compilers/agda/stdlib.nix @@ -18,10 +18,10 @@ agda.mkDerivation (self: rec { topSourceDirectories = [ "src" ]; - meta = { + meta = with stdenv.lib; { homepage = "http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Libraries.StandardLibrary"; description = "A standard library for use with the Agda compiler."; license = "unknown"; - maintainers = with stdenv.lib.maintaianers; [ jwiegley ]; + maintainers = with maintainers; [ jwiegley ]; }; -}) \ No newline at end of file +}) diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix index 69c91eff179..965f8645052 100644 --- a/pkgs/development/tools/vagrant/default.nix +++ b/pkgs/development/tools/vagrant/default.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { else fetchurl { url = "https://dl.bintray.com/mitchellh/vagrant/vagrant_${version}_i686.deb"; - sha256 = "1845sg2v9qas6obkkjtkmmamds901ik9rp2q2r6v75v69m0opvog"; + sha256 = "047zij0lvrlpyg6icnp4knl0q87icsavbd2g98bkcp79yh2y91d0"; }; meta = with stdenv.lib; { From 19335acb0cc889b49fd25ed3ad85ec811d3f5e9e Mon Sep 17 00:00:00 2001 From: Mateusz Kowalczyk Date: Fri, 5 Sep 2014 00:32:25 +0100 Subject: [PATCH 350/789] haskell-rope: add 0.6.4 --- .../libraries/haskell/rope/default.nix | 18 ++++++++++++++++++ pkgs/top-level/haskell-packages.nix | 2 ++ 2 files changed, 20 insertions(+) create mode 100644 pkgs/development/libraries/haskell/rope/default.nix diff --git a/pkgs/development/libraries/haskell/rope/default.nix b/pkgs/development/libraries/haskell/rope/default.nix new file mode 100644 index 00000000000..3c751d5eddd --- /dev/null +++ b/pkgs/development/libraries/haskell/rope/default.nix @@ -0,0 +1,18 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, fingertree, mtl, utf8String }: + +cabal.mkDerivation (self: { + pname = "rope"; + version = "0.6.4"; + sha256 = "1g77bv2mmfhy2mkb08k92m3f2jab6p2la2s7rfib2r1jy6lq5vhb"; + buildDepends = [ fingertree mtl utf8String ]; + jailbreak = true; + meta = { + homepage = "http://github.com/ekmett/rope"; + description = "Tools for manipulating fingertrees of bytestrings with optional annotations"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ]; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index c4d8b42607d..06ade738ca5 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -2139,6 +2139,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in robotsTxt = callPackage ../development/libraries/haskell/robots-txt {}; + rope = callPackage ../development/libraries/haskell/rope {}; + rosezipper = callPackage ../development/libraries/haskell/rosezipper {}; RSA = callPackage ../development/libraries/haskell/RSA {}; From eac5176529d4d7fa99fe685ba408d22ef8e8f6c7 Mon Sep 17 00:00:00 2001 From: Mateusz Kowalczyk Date: Fri, 5 Sep 2014 01:47:16 +0100 Subject: [PATCH 351/789] Fix license on unRAR to unfree. This license is BAD and it needs to be caught. You need to agree to the use conditions or you have to remove the software from your machine which makes it not redistributable. cc @ehmry --- pkgs/tools/archivers/unrar/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/archivers/unrar/default.nix b/pkgs/tools/archivers/unrar/default.nix index a88c0b345d7..2757c2ee457 100644 --- a/pkgs/tools/archivers/unrar/default.nix +++ b/pkgs/tools/archivers/unrar/default.nix @@ -25,7 +25,7 @@ stdenv.mkDerivation { meta = { description = "Utility for RAR archives"; - license = "freeware"; + license = stdenv.lib.licenses.unfree; maintainers = [ stdenv.lib.maintainers.emery ]; platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; # arbitrary }; From 6386df1645091e30106db2c097f9bfb5b2d0070b Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 23 Jul 2014 17:04:21 +0200 Subject: [PATCH 352/789] nixos/nsd: Fix indentation/coding style. For Nix, we indent using two spaces, but in this module somehow 4 spaces were snuck in. Other than that, remoteControl and ratelimit are just nested attribute sets, so we don't need to make another submodule type for no particular reason. Signed-off-by: aszlig --- nixos/modules/services/networking/nsd.nix | 432 +++++++++++----------- 1 file changed, 212 insertions(+), 220 deletions(-) diff --git a/nixos/modules/services/networking/nsd.nix b/nixos/modules/services/networking/nsd.nix index cacd52f130f..0928bf90571 100644 --- a/nixos/modules/services/networking/nsd.nix +++ b/nixos/modules/services/networking/nsd.nix @@ -10,16 +10,16 @@ let pidFile = stateDir + "/var/nsd.pid"; zoneFiles = pkgs.stdenv.mkDerivation { - preferLocalBuild = true; - name = "nsd-env"; - buildCommand = concatStringsSep "\n" - [ "mkdir -p $out" - (concatStrings (mapAttrsToList (zoneName: zoneOptions: '' - cat > "$out/${zoneName}" <<_EOF_ - ${zoneOptions.data} - _EOF_ - '') zoneConfigs)) - ]; + preferLocalBuild = true; + name = "nsd-env"; + buildCommand = concatStringsSep "\n" + [ "mkdir -p $out" + (concatStrings (mapAttrsToList (zoneName: zoneOptions: '' + cat > "$out/${zoneName}" <<_EOF_ + ${zoneOptions.data} + _EOF_ + '') zoneConfigs)) + ]; }; configFile = pkgs.writeText "nsd.conf" '' @@ -105,21 +105,20 @@ let zoneConfigFile = name: zone: '' - zone: - name: "${name}" - zonefile: "${stateDir}/zones/${name}" - ${maybeString "outgoing-interface: " zone.outgoingInterface} - ${forEach " rrl-whitelist: " zone.rrlWhitelist} + zone: + name: "${name}" + zonefile: "${stateDir}/zones/${name}" + ${maybeString "outgoing-interface: " zone.outgoingInterface} + ${forEach " rrl-whitelist: " zone.rrlWhitelist} - ${forEach " allow-notify: " zone.allowNotify} - ${forEach " request-xfr: " zone.requestXFR} - allow-axfr-fallback: ${yesOrNo zone.allowAXFRFallback} + ${forEach " allow-notify: " zone.allowNotify} + ${forEach " request-xfr: " zone.requestXFR} + allow-axfr-fallback: ${yesOrNo zone.allowAXFRFallback} - ${forEach " notify: " zone.notify} - notify-retry: ${toString zone.notifyRetry} - ${forEach " provide-xfr: " zone.provideXFR} - - ''; + ${forEach " notify: " zone.notify} + notify-retry: ${toString zone.notifyRetry} + ${forEach " provide-xfr: " zone.provideXFR} + ''; zoneConfigs = zoneConfigs' {} "" { children = cfg.zones; }; @@ -130,8 +129,8 @@ let # fork -> pattern else zipAttrsWith (name: head) ( - mapAttrsToList (name: child: zoneConfigs' (parent // zone // { children = {}; }) name child) - zone.children + mapAttrsToList (name: child: zoneConfigs' (parent // zone // { children = {}; }) name child) + zone.children ); # fighting infinite recursion @@ -145,138 +144,135 @@ let childConfig = x: v: { options.children = { type = types.attrsOf x; visible = v; }; }; - zoneOptionsRaw = types.submodule ( - { options, ... }: - { options = { - children = mkOption { - default = {}; - description = '' - Children zones inherit all options of their parents. Attributes - defined in a child will overwrite the ones of its parent. Only - leaf zones will be actually served. This way it's possible to - define maybe zones which share most attributes without - duplicating everything. This mechanism replaces nsd's patterns - in a save and functional way. - ''; - }; - - allowNotify = mkOption { - type = types.listOf types.str; - default = [ ]; - example = [ "192.0.2.0/24 NOKEY" "10.0.0.1-10.0.0.5 my_tsig_key_name" - "10.0.3.4&255.255.0.0 BLOCKED" - ]; - description = '' - Listed primary servers are allowed to notify this secondary server. - - - either a plain IPv4/IPv6 address or range. Valid patters for ranges: - * 10.0.0.0/24 # via subnet size - * 10.0.0.0&255.255.255.0 # via subnet mask - * 10.0.0.1-10.0.0.254 # via range - - A optional port number could be added with a '@': - * 2001:1234::1@1234 - - - * will use the specified TSIG key - * NOKEY no TSIG signature is required - * BLOCKED notifies from non-listed or blocked IPs will be ignored - * ]]> - ''; - }; - - requestXFR = mkOption { - type = types.listOf types.str; - default = []; - example = []; - description = '' - Format: [AXFR|UDP] <ip-address> <key-name | NOKEY> - ''; - }; - - allowAXFRFallback = mkOption { - type = types.bool; - default = true; - description = '' - If NSD as secondary server should be allowed to AXFR if the primary - server does not allow IXFR. - ''; - }; - - notify = mkOption { - type = types.listOf types.str; - default = []; - example = [ "10.0.0.1@3721 my_key" "::5 NOKEY" ]; - description = '' - This primary server will notify all given secondary servers about - zone changes. - - - a plain IPv4/IPv6 address with on optional port number (ip@port) - - - * sign notifies with the specified key - * NOKEY don't sign notifies - ]]> - ''; - }; - - notifyRetry = mkOption { - type = types.int; - default = 5; - description = '' - Specifies the number of retries for failed notifies. Set this along with notify. - ''; - }; - - provideXFR = mkOption { - type = types.listOf types.str; - default = []; - example = [ "192.0.2.0/24 NOKEY" "192.0.2.0/24 my_tsig_key_name" ]; - description = '' - Allow these IPs and TSIG to transfer zones, addr TSIG|NOKEY|BLOCKED - address range 192.0.2.0/24, 1.2.3.4&255.255.0.0, 3.0.2.20-3.0.2.40 - ''; - }; - - outgoingInterface = mkOption { - type = types.nullOr types.str; - default = null; - example = "2000::1@1234"; - description = '' - This address will be used for zone-transfere requests if configured - as a secondary server or notifications in case of a primary server. - Supply either a plain IPv4 or IPv6 address with an optional port - number (ip@port). - ''; - }; - - rrlWhitelist = mkOption { - type = types.listOf types.str; - default = []; - description = '' - Whitelists the given rrl-types. - The RRL classification types are: nxdomain, error, referral, any, - rrsig, wildcard, nodata, dnskey, positive, all - ''; - }; - - data = mkOption { - type = types.str; - default = ""; - example = ""; - description = '' - The actual zone data. This is the content of your zone file. - Use imports or pkgs.lib.readFile if you don't want this data in your config file. - ''; - }; - + zoneOptionsRaw = types.submodule { + options = { + children = mkOption { + default = {}; + description = '' + Children zones inherit all options of their parents. Attributes + defined in a child will overwrite the ones of its parent. Only + leaf zones will be actually served. This way it's possible to + define maybe zones which share most attributes without + duplicating everything. This mechanism replaces nsd's patterns + in a save and functional way. + ''; }; - } - ); + + allowNotify = mkOption { + type = types.listOf types.str; + default = [ ]; + example = [ "192.0.2.0/24 NOKEY" "10.0.0.1-10.0.0.5 my_tsig_key_name" + "10.0.3.4&255.255.0.0 BLOCKED" + ]; + description = '' + Listed primary servers are allowed to notify this secondary server. + + + either a plain IPv4/IPv6 address or range. Valid patters for ranges: + * 10.0.0.0/24 # via subnet size + * 10.0.0.0&255.255.255.0 # via subnet mask + * 10.0.0.1-10.0.0.254 # via range + + A optional port number could be added with a '@': + * 2001:1234::1@1234 + + + * will use the specified TSIG key + * NOKEY no TSIG signature is required + * BLOCKED notifies from non-listed or blocked IPs will be ignored + * ]]> + ''; + }; + + requestXFR = mkOption { + type = types.listOf types.str; + default = []; + example = []; + description = '' + Format: [AXFR|UDP] <ip-address> <key-name | NOKEY> + ''; + }; + + allowAXFRFallback = mkOption { + type = types.bool; + default = true; + description = '' + If NSD as secondary server should be allowed to AXFR if the primary + server does not allow IXFR. + ''; + }; + + notify = mkOption { + type = types.listOf types.str; + default = []; + example = [ "10.0.0.1@3721 my_key" "::5 NOKEY" ]; + description = '' + This primary server will notify all given secondary servers about + zone changes. + + + a plain IPv4/IPv6 address with on optional port number (ip@port) + + + * sign notifies with the specified key + * NOKEY don't sign notifies + ]]> + ''; + }; + + notifyRetry = mkOption { + type = types.int; + default = 5; + description = '' + Specifies the number of retries for failed notifies. Set this along with notify. + ''; + }; + + provideXFR = mkOption { + type = types.listOf types.str; + default = []; + example = [ "192.0.2.0/24 NOKEY" "192.0.2.0/24 my_tsig_key_name" ]; + description = '' + Allow these IPs and TSIG to transfer zones, addr TSIG|NOKEY|BLOCKED + address range 192.0.2.0/24, 1.2.3.4&255.255.0.0, 3.0.2.20-3.0.2.40 + ''; + }; + + outgoingInterface = mkOption { + type = types.nullOr types.str; + default = null; + example = "2000::1@1234"; + description = '' + This address will be used for zone-transfere requests if configured + as a secondary server or notifications in case of a primary server. + Supply either a plain IPv4 or IPv6 address with an optional port + number (ip@port). + ''; + }; + + rrlWhitelist = mkOption { + type = types.listOf types.str; + default = []; + description = '' + Whitelists the given rrl-types. + The RRL classification types are: nxdomain, error, referral, any, + rrsig, wildcard, nodata, dnskey, positive, all + ''; + }; + + data = mkOption { + type = types.str; + default = ""; + example = ""; + description = '' + The actual zone data. This is the content of your zone file. + Use imports or pkgs.lib.readFile if you don't want this data in your config file. + ''; + }; + }; + }; in { @@ -585,37 +581,33 @@ in keys = mkOption { - type = types.attrsOf (types.submodule ( - { options, ... }: - { options = { - - algorithm = mkOption { - type = types.str; - default = "hmac-sha256"; - description = '' - Authentication algorithm for this key. - ''; - }; - - keyFile = mkOption { - type = types.path; - description = '' - Path to the file which contains the actual base64 encoded - key. The key will be copied into "${stateDir}/private" before - NSD starts. The copied file is only accessibly by the NSD - user. - ''; - }; - + type = types.attrsOf (types.submodule { + options = { + algorithm = mkOption { + type = types.str; + default = "hmac-sha256"; + description = '' + Authentication algorithm for this key. + ''; }; - })); - default = { - }; + + keyFile = mkOption { + type = types.path; + description = '' + Path to the file which contains the actual base64 encoded + key. The key will be copied into "${stateDir}/private" before + NSD starts. The copied file is only accessibly by the NSD + user. + ''; + }; + }; + }); + default = {}; example = { - "tsig.example.org" = { - algorithm = "hmac-md5"; - secret = "aaaaaabbbbbbccccccdddddd"; - }; + "tsig.example.org" = { + algorithm = "hmac-md5"; + secret = "aaaaaabbbbbbccccccdddddd"; + }; }; description = '' Define your TSIG keys here. @@ -626,32 +618,32 @@ in type = types.attrsOf zoneOptions; default = {}; example = { - "serverGroup1" = { - provideXFR = [ "10.1.2.3 NOKEY" ]; - children = { - "example.com." = { - data = '' - $ORIGIN example.com. - $TTL 86400 - @ IN SOA a.ns.example.com. admin.example.com. ( - ... - ''; - }; - "example.org." = { - data = '' - $ORIGIN example.org. - $TTL 86400 - @ IN SOA a.ns.example.com. admin.example.com. ( - ... - ''; - }; - }; + "serverGroup1" = { + provideXFR = [ "10.1.2.3 NOKEY" ]; + children = { + "example.com." = { + data = '' + $ORIGIN example.com. + $TTL 86400 + @ IN SOA a.ns.example.com. admin.example.com. ( + ... + ''; + }; + "example.org." = { + data = '' + $ORIGIN example.org. + $TTL 86400 + @ IN SOA a.ns.example.com. admin.example.com. ( + ... + ''; + }; }; + }; - "example.net." = { - provideXFR = [ "10.3.2.1 NOKEY" ]; - data = ''...''; - }; + "example.net." = { + provideXFR = [ "10.3.2.1 NOKEY" ]; + data = ''...''; + }; }; description = '' Define your zones here. Zones can cascade other zones and therefore @@ -670,23 +662,23 @@ in # this is not working :( nixpkgs.config.nsd = { - ipv6 = cfg.ipv6; - ratelimit = cfg.ratelimit.enable; - rootServer = cfg.rootServer; + ipv6 = cfg.ipv6; + ratelimit = cfg.ratelimit.enable; + rootServer = cfg.rootServer; }; users.extraGroups = singleton { - name = username; - gid = config.ids.gids.nsd; + name = username; + gid = config.ids.gids.nsd; }; users.extraUsers = singleton { - name = username; - description = "NSD service user"; - home = stateDir; - createHome = true; - uid = config.ids.uids.nsd; - group = username; + name = username; + description = "NSD service user"; + home = stateDir; + createHome = true; + uid = config.ids.uids.nsd; + group = username; }; systemd.services.nsd = { From fd9c8fa3dcabf4a9def05779c6b2d837e0d8d183 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 23 Jul 2014 17:09:28 +0200 Subject: [PATCH 353/789] pkgs/nsd: Allow to easily override the package. Allowing to use nixpkgs config to provide different defaults is not going to help us here, so we would like to use nsd.override {} in order to supply the correct options in the module. Eventually removing the nixpkgs config option would make sense here as well. Signed-off-by: aszlig --- pkgs/servers/dns/nsd/default.nix | 30 +++++++++++++++++++----------- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/pkgs/servers/dns/nsd/default.nix b/pkgs/servers/dns/nsd/default.nix index 7279aa6d4ef..f5cf9544b9b 100644 --- a/pkgs/servers/dns/nsd/default.nix +++ b/pkgs/servers/dns/nsd/default.nix @@ -1,4 +1,13 @@ { config, stdenv, fetchurl, libevent, openssl +, bind8Stats ? false +, checking ? false +, ipv6 ? true +, mmap ? false +, minimalResponses ? true +, nsec3 ? true +, ratelimit ? false +, recvmmsg ? false +, rootServer ? false }: stdenv.mkDerivation rec { @@ -12,17 +21,16 @@ stdenv.mkDerivation rec { buildInputs = [ libevent openssl ]; configureFlags = - let flag = state: flags: if state then map (x: "--enable-${x}") flags - else map (x: "--disable-${x}") flags; - in flag (config.nsd.bind8Stats or false) [ "bind8-stats" ] - ++ flag (config.nsd.checking or false) [ "checking" ] - ++ flag (config.nsd.ipv6 or true) [ "ipv6" ] - ++ flag (config.nsd.mmap or false) [ "mmap" ] - ++ flag (config.nsd.minimalResponses or true) [ "minimal-responses" ] - ++ flag (config.nsd.nsec3 or true) [ "nsec3" ] - ++ flag (config.nsd.ratelimit or false) [ "ratelimit" ] - ++ flag (config.nsd.recvmmsg or false) [ "recvmmsg" ] - ++ flag (config.nsd.rootServer or false) [ "root-server" ] + let edf = c: o: if c then ["--enable-${o}"] else ["--disable-${o}"]; + in edf bind8Stats "bind8-stats" + ++ edf checking "checking" + ++ edf ipv6 "ipv6" + ++ edf mmap "mmap" + ++ edf minimalResponses "minimal-responses" + ++ edf nsec3 "nsec3" + ++ edf ratelimit "ratelimit" + ++ edf recvmmsg "recvmmsg" + ++ edf rootServer "root-server" ++ [ "--with-ssl=${openssl}" "--with-libevent=${libevent}" ]; meta = { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c6e89616312..31e9f9f64d3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7003,7 +7003,7 @@ let nix-binary-cache = callPackage ../servers/http/nix-binary-cache {}; - nsd = callPackage ../servers/dns/nsd { }; + nsd = callPackage ../servers/dns/nsd (config.nsd or {}); nsq = callPackage ../servers/nsq { }; From 141cb70d5c1f92fdbdb91b7929567bb144304f88 Mon Sep 17 00:00:00 2001 From: aszlig Date: Fri, 5 Sep 2014 02:47:26 +0200 Subject: [PATCH 354/789] nixos/networking: Fix typo in ipv6prefixLength. Within the module it's referenced with an uppercase "P" and ipv6Address also begins with an uppercase "A" after the "6", so let's make it consistent. Signed-off-by: aszlig --- nixos/modules/tasks/network-interfaces.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index 868039177d8..97b37b0714c 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -108,7 +108,7 @@ let ''; }; - ipv6prefixLength = mkOption { + ipv6PrefixLength = mkOption { default = 64; example = 64; type = types.int; From e8c4fde22d35d34219a65dd5e3e5c59c89fdcadb Mon Sep 17 00:00:00 2001 From: aszlig Date: Fri, 5 Sep 2014 02:50:18 +0200 Subject: [PATCH 355/789] nixos/nsd: Improve support for journald/systemd. Don't fork into the background and just log to stderr. Signed-off-by: aszlig --- nixos/modules/services/networking/nsd.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/modules/services/networking/nsd.nix b/nixos/modules/services/networking/nsd.nix index 0928bf90571..140b7ed2da3 100644 --- a/nixos/modules/services/networking/nsd.nix +++ b/nixos/modules/services/networking/nsd.nix @@ -33,7 +33,6 @@ let # the list of dynamically added zones. zonelistfile: "${stateDir}/var/zone.list" database: "${stateDir}/var/nsd.db" - logfile: "${stateDir}/var/nsd.log" pidfile: "${pidFile}" xfrdfile: "${stateDir}/var/xfrd.state" xfrdir: "${stateDir}/tmp" @@ -687,10 +686,9 @@ in after = [ "network.target" ]; serviceConfig = { - Type = "forking"; PIDFile = pidFile; Restart = "always"; - ExecStart = "${pkgs.nsd}/sbin/nsd -c ${configFile}"; + ExecStart = "${pkgs.nsd}/sbin/nsd -d -c ${configFile}"; }; preStart = '' From c9d1c0d8d160e54cac9b42a6e839066a89208147 Mon Sep 17 00:00:00 2001 From: aszlig Date: Fri, 5 Sep 2014 02:52:05 +0200 Subject: [PATCH 356/789] nixos/tests: Add basic test for nsd module. Currently only tests basic resource record lookup against IPv4 and IPv6. Nothing special yet, but probably enough for most setups. Signed-off-by: aszlig --- nixos/release.nix | 1 + nixos/tests/nsd.nix | 83 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 nixos/tests/nsd.nix diff --git a/nixos/release.nix b/nixos/release.nix index d4e1a3737e3..f8c437fff05 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -247,6 +247,7 @@ in rec { tests.mysqlReplication = callTest tests/mysql-replication.nix {}; tests.nat = callTest tests/nat.nix {}; tests.nfs3 = callTest tests/nfs.nix { version = 3; }; + tests.nsd = callTest tests/nsd.nix {}; tests.openssh = callTest tests/openssh.nix {}; tests.printing = callTest tests/printing.nix {}; tests.proxy = callTest tests/proxy.nix {}; diff --git a/nixos/tests/nsd.nix b/nixos/tests/nsd.nix new file mode 100644 index 00000000000..c2331931cdd --- /dev/null +++ b/nixos/tests/nsd.nix @@ -0,0 +1,83 @@ +let + common = { pkgs, ... }: { + networking.firewall.enable = false; + networking.useDHCP = false; + # for a host utility with IPv6 support + environment.systemPackages = [ pkgs.bind ]; + }; +in import ./make-test.nix { + name = "nsd"; + + nodes = { + clientv4 = { lib, nodes, ... }: { + imports = [ common ]; + networking.nameservers = lib.mkForce [ + nodes.server.config.networking.interfaces.eth1.ipAddress + ]; + networking.interfaces.eth1.ipAddress = "192.168.0.2"; + networking.interfaces.eth1.prefixLength = 24; + }; + + clientv6 = { lib, nodes, ... }: { + imports = [ common ]; + networking.nameservers = lib.mkForce [ + nodes.server.config.networking.interfaces.eth1.ipv6Address + ]; + networking.interfaces.eth1.ipv6Address = "dead:beef::2"; + }; + + server = { lib, ... }: { + imports = [ common ]; + networking.interfaces.eth1.ipAddress = "192.168.0.1"; + networking.interfaces.eth1.prefixLength = 24; + networking.interfaces.eth1.ipv6Address = "dead:beef::1"; + services.nsd.enable = true; + services.nsd.interfaces = lib.mkForce []; + services.nsd.zones."example.com.".data = '' + @ SOA ns.example.com noc.example.com 666 7200 3600 1209600 3600 + ipv4 A 1.2.3.4 + ipv6 AAAA abcd::eeff + deleg NS ns.example.com + ns A 192.168.0.1 + ns AAAA dead:beef::1 + ''; + services.nsd.zones."deleg.example.com.".data = '' + @ SOA ns.example.com noc.example.com 666 7200 3600 1209600 3600 + @ A 9.8.7.6 + @ AAAA fedc::bbaa + ''; + }; + }; + + testScript = '' + startAll; + + $clientv4->waitForUnit("network.target"); + $clientv6->waitForUnit("network.target"); + $server->waitForUnit("nsd.service"); + + sub assertHost { + my ($type, $rr, $query, $expected) = @_; + my $self = $type eq 4 ? $clientv4 : $clientv6; + my $out = $self->succeed("host -$type -t $rr $query"); + $self->log("output: $out"); + chomp $out; + die "DNS IPv$type query on $query gave '$out' instead of '$expected'" + if ($out !~ $expected); + } + + foreach (4, 6) { + subtest "ipv$_", sub { + assertHost($_, "a", "example.com", qr/has no [^ ]+ record/); + assertHost($_, "aaaa", "example.com", qr/has no [^ ]+ record/); + + assertHost($_, "soa", "example.com", qr/SOA.*?noc\.example\.com/); + assertHost($_, "a", "ipv4.example.com", qr/address 1.2.3.4$/); + assertHost($_, "aaaa", "ipv6.example.com", qr/address abcd::eeff$/); + + assertHost($_, "a", "deleg.example.com", qr/address 9.8.7.6$/); + assertHost($_, "aaaa", "deleg.example.com", qr/address fedc::bbaa$/); + }; + } + ''; +} From 7e744041f34ce4087364837a2ec089041d502343 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 12:37:07 +0200 Subject: [PATCH 357/789] rpm-closure.pl: Reduce verbosity --- pkgs/build-support/vm/rpm/rpm-closure.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/vm/rpm/rpm-closure.pl b/pkgs/build-support/vm/rpm/rpm-closure.pl index 94da0a20adc..411c351f1e4 100644 --- a/pkgs/build-support/vm/rpm/rpm-closure.pl +++ b/pkgs/build-support/vm/rpm/rpm-closure.pl @@ -91,7 +91,7 @@ for (my $i = 0; $i < scalar(@packagesFiles); $i++) { my %provides; foreach my $pkgName (keys %pkgs) { - print STDERR "looking at $pkgName\n"; + #print STDERR "looking at $pkgName\n"; my $pkg = $pkgs{$pkgName}; #print STDERR keys %{$pkg->{format}}, "\n"; From 7d6a27a78060ffb1014633e5cb9a10d5222cdb5a Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Fri, 5 Sep 2014 12:06:05 +0200 Subject: [PATCH 358/789] evolution: fix build --- pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix b/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix index 8cba366faae..b60363b024c 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix @@ -1,7 +1,7 @@ { stdenv, intltool, fetchurl, libxml2, webkitgtk, highlight , pkgconfig, gtk3, glib, hicolor_icon_theme, libnotify, gtkspell3 , makeWrapper, itstool, shared_mime_info, libical, db, gcr -, gnome3, librsvg, gdk_pixbuf, libsecret, nss, nspr, icu +, gnome3, librsvg, gdk_pixbuf, libsecret, nss, nspr, icu, libtool , libcanberra_gtk3, bogofilter, gst_all_1, procps, p11_kit }: stdenv.mkDerivation rec { @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; - buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 + buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 libtool gdk_pixbuf gnome3.gnome_icon_theme librsvg db icu gnome3.evolution_data_server libsecret libical gcr webkitgtk shared_mime_info gnome3.gnome_desktop gtkspell3 From daebba2c97625fa322c93777738642e8c03fec21 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 14:08:35 +0200 Subject: [PATCH 359/789] Fix container test --- nixos/tests/containers.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/tests/containers.nix b/nixos/tests/containers.nix index a582e23fda0..13d98d74207 100644 --- a/nixos/tests/containers.nix +++ b/nixos/tests/containers.nix @@ -67,7 +67,6 @@ import ./make-test.nix { # Execute commands via the root shell. $machine->succeed("nixos-container run $id1 -- uname") =~ /Linux/ or die; - $machine->succeed("nixos-container set-root-password $id1 foobar"); # Destroy the containers. $machine->succeed("nixos-container destroy $id1"); From 1f7c7759103c07a1a2a6ac774d31e143fe36eaac Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 14:25:17 +0200 Subject: [PATCH 360/789] Remove unrar from the installation CD since it's unfree --- nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix | 1 - nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix | 1 - nixos/modules/profiles/base.nix | 1 - 3 files changed, 3 deletions(-) diff --git a/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix b/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix index c2a11a1a8b3..7d3346e4ea1 100644 --- a/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix +++ b/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix @@ -79,7 +79,6 @@ in pkgs.jfsrec # Some compression/archiver tools. - pkgs.unrar pkgs.unzip pkgs.zip pkgs.xz diff --git a/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix b/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix index 2ed70c1daa9..4ce7582c166 100644 --- a/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix +++ b/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix @@ -70,7 +70,6 @@ in pkgs.btrfsProgs # Some compression/archiver tools. - pkgs.unrar pkgs.unzip pkgs.zip pkgs.xz diff --git a/nixos/modules/profiles/base.nix b/nixos/modules/profiles/base.nix index 6f9e3002f29..7a6f7657205 100644 --- a/nixos/modules/profiles/base.nix +++ b/nixos/modules/profiles/base.nix @@ -37,7 +37,6 @@ #pkgs.jfsrec # disabled because of Boost dependency # Some compression/archiver tools. - pkgs.unrar pkgs.unzip pkgs.zip pkgs.dar # disk archiver From 00887dc3f8a406b0aefdea28099e7f55a99c608a Mon Sep 17 00:00:00 2001 From: Michael Fellinger Date: Thu, 4 Sep 2014 18:32:55 +0200 Subject: [PATCH 361/789] diod: fix service --- nixos/modules/services/network-filesystems/diod.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/network-filesystems/diod.nix b/nixos/modules/services/network-filesystems/diod.nix index 1ab5f52d438..7de7acaa4a0 100644 --- a/nixos/modules/services/network-filesystems/diod.nix +++ b/nixos/modules/services/network-filesystems/diod.nix @@ -31,7 +31,7 @@ in listen = mkOption { type = types.listOf types.str; - default = [ ]; + default = [ "0.0.0.0:564" ]; description = '' [ "IP:PORT" [,"IP:PORT",...] ] List the interfaces and ports that diod should listen on. @@ -39,7 +39,7 @@ in }; exports = mkOption { - type = types.listOf types.path; + type = types.listOf types.str; default = []; description = '' List the file systems that clients will be allowed to mount. All paths should @@ -152,7 +152,8 @@ in wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; serviceConfig = { - ExecStart = "${pkgs.diod}/sbin/diod -c ${diodConfig}"; + ExecStart = "${pkgs.diod}/sbin/diod -f -c ${diodConfig}"; + Capabilities = "cap_net_bind_service+=ep"; }; }; }; From cd7129a037465ea36d95848561d7a00c72db3062 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 14:43:11 +0200 Subject: [PATCH 362/789] Revert "nixos: add setuid wrappers for some networked filesystems' helpers" This reverts commit 26a4001a98322ab903b8186b97f33c5b282828a5. It breaks the NFS test: http://hydra.nixos.org/build/13943148 Also, having more setuid programs is a bad thing security-wise. --- nixos/modules/security/setuid-wrappers.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/modules/security/setuid-wrappers.nix b/nixos/modules/security/setuid-wrappers.nix index 22dbdf6a6bf..373afffd3fb 100644 --- a/nixos/modules/security/setuid-wrappers.nix +++ b/nixos/modules/security/setuid-wrappers.nix @@ -77,9 +77,7 @@ in config = { security.setuidPrograms = - [ "mount.nfs" "mount.nfs4" "mount.cifs" - "fusermount" "umount" - "wodim" "cdrdao" "growisofs" ]; + [ "fusermount" "wodim" "cdrdao" "growisofs" ]; system.activationScripts.setuid = let From bb9ee6a13f1623c3107d264891a52a76e4a2853a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 14:46:36 +0200 Subject: [PATCH 363/789] Remove some setuid wrappers for non-standard programs --- nixos/modules/security/setuid-wrappers.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/nixos/modules/security/setuid-wrappers.nix b/nixos/modules/security/setuid-wrappers.nix index 373afffd3fb..2a289dc402c 100644 --- a/nixos/modules/security/setuid-wrappers.nix +++ b/nixos/modules/security/setuid-wrappers.nix @@ -76,8 +76,7 @@ in config = { - security.setuidPrograms = - [ "fusermount" "wodim" "cdrdao" "growisofs" ]; + security.setuidPrograms = [ "fusermount" ]; system.activationScripts.setuid = let From b0855d59a10d9b77e1e92fc15b9cab3bcd3557ae Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 15:28:24 +0200 Subject: [PATCH 364/789] Improve option descriptions a bit --- nixos/modules/services/logging/logstash.nix | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/nixos/modules/services/logging/logstash.nix b/nixos/modules/services/logging/logstash.nix index 802dd454878..df81ac142dc 100644 --- a/nixos/modules/services/logging/logstash.nix +++ b/nixos/modules/services/logging/logstash.nix @@ -11,20 +11,25 @@ in ###### interface options = { + services.logstash = { + enable = mkOption { + type = types.bool; default = false; - description = "Enable logstash"; + description = "Enable logstash."; }; enableWeb = mkOption { + type = types.bool; default = false; - description = "Enable logstash web interface"; + description = "Enable the logstash web interface."; }; inputConfig = mkOption { + type = types.lines; default = ''stdin { type => "example" }''; - description = "Logstash input configuration"; + description = "Logstash input configuration."; example = '' # Read from journal pipe { @@ -35,8 +40,9 @@ in }; filterConfig = mkOption { + type = types.lines; default = ''noop {}''; - description = "logstash filter configuration"; + description = "logstash filter configuration."; example = '' if [type] == "syslog" { # Keep only relevant systemd fields @@ -52,13 +58,15 @@ in }; outputConfig = mkOption { + type = types.lines; default = ''stdout { debug => true debug_format => "json"}''; - description = "Logstash output configuration"; + description = "Logstash output configuration."; example = '' redis { host => "localhost" data_type => "list" key => "logstash" codec => json } elasticsearch { embedded => true } ''; }; + }; }; From da4fb089591e4f63c5f96255733c3034def95a36 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 15:28:55 +0200 Subject: [PATCH 365/789] Disable the logstash test It's broken because it uses the "grep" plugin, which is no longer included in the standard distribution. --- nixos/release.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/release.nix b/nixos/release.nix index f8c437fff05..d8cc1c8291b 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -239,7 +239,7 @@ in rec { tests.kde4 = callTest tests/kde4.nix {}; tests.latestKernel.login = callTest tests/login.nix { latestKernel = true; }; tests.login = callTest tests/login.nix {}; - tests.logstash = callTest tests/logstash.nix {}; + #tests.logstash = callTest tests/logstash.nix {}; tests.misc = callTest tests/misc.nix {}; tests.mumble = callTest tests/mumble.nix {}; tests.munin = callTest tests/munin.nix {}; From 59edfd61ad839752dddb628813b6c74589649592 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 15:50:55 +0200 Subject: [PATCH 366/789] Increase systemd timeout on Jenkins and Munin tests These were timing out a lot. http://hydra.nixos.org/build/13991108 http://hydra.nixos.org/build/13991107 --- nixos/modules/services/monitoring/munin.nix | 16 ++++++++-------- nixos/tests/jenkins.nix | 2 ++ nixos/tests/munin.nix | 1 + 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/nixos/modules/services/monitoring/munin.nix b/nixos/modules/services/monitoring/munin.nix index 21840bc67e8..aab1c4b75ef 100644 --- a/nixos/modules/services/monitoring/munin.nix +++ b/nixos/modules/services/monitoring/munin.nix @@ -37,7 +37,7 @@ let --set PATH "/run/current-system/sw/bin:/run/current-system/sw/sbin" \ --set MUNIN_LIBDIR "${pkgs.munin}/lib" \ --set MUNIN_PLUGSTATE "/var/run/munin" - + # munin uses markers to tell munin-node-configure what a plugin can do echo "#%# family=$family" >> $file echo "#%# capabilities=$cap" >> $file @@ -57,7 +57,7 @@ let rundir /var/run/munin ${cronCfg.extraGlobalConfig} - + ${cronCfg.hosts} ''; @@ -72,10 +72,10 @@ let group root host_name ${config.networking.hostName} setsid 0 - + # wrapped plugins by makeWrapper being with dots ignore_file ^\. - + allow ^127\.0\.0\.1$ ${nodeCfg.extraConfig} @@ -97,7 +97,7 @@ in See . ''; }; - + extraConfig = mkOption { default = ""; description = '' @@ -118,7 +118,7 @@ in Enable munin-cron. Takes care of all heavy lifting to collect data from nodes and draws graphs to html. Runs munin-update, munin-limits, munin-graphs and munin-html in that order. - + HTML output is in /var/www/munin/, configure your favourite webserver to serve static files. ''; @@ -138,7 +138,7 @@ in }; ''; }; - + extraGlobalConfig = mkOption { default = ""; description = '' @@ -160,7 +160,7 @@ in ''; }; - + }; }; diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix index 28027c294bc..f0d3139d902 100644 --- a/nixos/tests/jenkins.nix +++ b/nixos/tests/jenkins.nix @@ -16,6 +16,8 @@ import ./make-test.nix { services.jenkinsSlave.enable = true; users.extraUsers.jenkins.extraGroups = [ "users" ]; + + systemd.services.jenkins.unitConfig.TimeoutSec = 240; }; slave = diff --git a/nixos/tests/munin.nix b/nixos/tests/munin.nix index 31676c10df1..ddbac590143 100644 --- a/nixos/tests/munin.nix +++ b/nixos/tests/munin.nix @@ -19,6 +19,7 @@ import ./make-test.nix { }; }; }; + systemd.services.munin-node.unitConfig.TimeoutSec = 240; }; testScript = '' From 364bdc2a95f945a35d18058bdc6aa3e12da24240 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 16:05:50 +0200 Subject: [PATCH 367/789] nixUnstable: Update to 1.8pre3782_d2d5543 --- pkgs/tools/package-management/nix/unstable.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix index bba53b0002f..5c20c7eb72a 100644 --- a/pkgs/tools/package-management/nix/unstable.nix +++ b/pkgs/tools/package-management/nix/unstable.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "nix-1.8pre3766_809ca33"; + name = "nix-1.8pre3782_d2d5543"; src = fetchurl { - url = "http://hydra.nixos.org/build/13584170/download/5/${name}.tar.xz"; - sha256 = "e6d91e73aabf8e8912f9701bf87b66089c197c5b8c8fbcc1707b888c88b96dfd"; + url = "http://hydra.nixos.org/build/13991590/download/5/${name}.tar.xz"; + sha256 = "dcef54f49d2ea6fcb7f31ec3fdcb64ac74b2d4ca4224eaf2d00587ae1133a64c"; }; nativeBuildInputs = [ perl pkgconfig ]; From 309851f999af2e9657cc36be134a74f8933f909f Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 5 Sep 2014 15:18:24 +0200 Subject: [PATCH 368/789] scala-mode2: update to latest version --- pkgs/applications/editors/emacs-modes/scala-mode/v2.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix b/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix index 13d3f4b00d1..75861b0a988 100644 --- a/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix +++ b/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation { - name = "scala-mode2-2014-06-05"; + name = "scala-mode2-2014-07-01"; src = fetchurl { - url = "https://github.com/hvesalai/scala-mode2/archive/af2dc30226c890ff7d49d727450f8006b90781df.zip"; - sha256 = "1jj08li9lfg5291jzj170wa3cmyf3g2a0j80cy5307l0mdawp9vx"; + url = "https://github.com/hvesalai/scala-mode2/archive/c154f1623f4696d26e1c88d19170e67bf6825837.zip"; + sha256 = "0fyxdpwz55n4c87v4ijqlbv6w1rybg5qrgsc40f6bs6sd747scy5"; }; buildInputs = [ unzip emacs ]; From a4ec7a6316e6a6caceb6e43bb80d11a16f188f70 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 5 Sep 2014 16:04:50 +0200 Subject: [PATCH 369/789] emacs-dash: add version 1.5.0 --- .../editors/emacs-modes/dash/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 6 +++-- 2 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 pkgs/applications/editors/emacs-modes/dash/default.nix diff --git a/pkgs/applications/editors/emacs-modes/dash/default.nix b/pkgs/applications/editors/emacs-modes/dash/default.nix new file mode 100644 index 00000000000..aacc33c9b51 --- /dev/null +++ b/pkgs/applications/editors/emacs-modes/dash/default.nix @@ -0,0 +1,23 @@ +{stdenv, fetchurl, emacs}: + +let version = "1.5.0"; + +in stdenv.mkDerivation { + name = "emacs-dash-${version}"; + + src = fetchurl { + url = "https://github.com/magnars/dash.el/archive/${version}.tar.gz"; + sha256 = "0c6jknzy306vn22vqlabxkwxfnllrd33spymi74fkirbxaxvp8kp"; + }; + + buildInputs = [ emacs ]; + + buildPhase = '' + emacs -L . --batch -f batch-byte-compile *.el + ''; + + installPhase = '' + install -d $out/share/emacs/site-lisp + install *.el *.elc $out/share/emacs/site-lisp + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 31e9f9f64d3..3710dddccd2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8641,9 +8641,9 @@ let darcsum = callPackage ../applications/editors/emacs-modes/darcsum { }; - # ecb = callPackage ../applications/editors/emacs-modes/ecb { }; + dash = callPackage ../applications/editors/emacs-modes/dash { }; - jabber = callPackage ../applications/editors/emacs-modes/jabber { }; + # ecb = callPackage ../applications/editors/emacs-modes/ecb { }; emacsClangCompleteAsync = callPackage ../applications/editors/emacs-modes/emacs-clang-complete-async { }; @@ -8665,6 +8665,8 @@ let idris = callPackage ../applications/editors/emacs-modes/idris { }; + jabber = callPackage ../applications/editors/emacs-modes/jabber { }; + jade = callPackage ../applications/editors/emacs-modes/jade { }; jdee = callPackage ../applications/editors/emacs-modes/jdee { From e8bff6f83820f595939d4686c628383aa4cdf216 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 5 Sep 2014 16:05:22 +0200 Subject: [PATCH 370/789] emacs-s: add version 1.9.0 --- .../editors/emacs-modes/s/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/applications/editors/emacs-modes/s/default.nix diff --git a/pkgs/applications/editors/emacs-modes/s/default.nix b/pkgs/applications/editors/emacs-modes/s/default.nix new file mode 100644 index 00000000000..b818348939e --- /dev/null +++ b/pkgs/applications/editors/emacs-modes/s/default.nix @@ -0,0 +1,23 @@ +{stdenv, fetchurl, emacs}: + +let version = "1.9.0"; + +in stdenv.mkDerivation { + name = "emacs-s-${version}"; + + src = fetchurl { + url = "https://github.com/magnars/s.el/archive/${version}.tar.gz"; + sha256 = "1gah2k577gvnmxlpw7zrz0jr571vghzhdv2hbgchlgah07czd091"; + }; + + buildInputs = [ emacs ]; + + buildPhase = '' + emacs -L . --batch -f batch-byte-compile *.el + ''; + + installPhase = '' + install -d $out/share/emacs/site-lisp + install *.el *.elc $out/share/emacs/site-lisp + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3710dddccd2..4c0e57bc3c0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8739,6 +8739,8 @@ let rudel = callPackage ../applications/editors/emacs-modes/rudel { }; + s = callPackage ../applications/editors/emacs-modes/s { }; + sbtMode = callPackage ../applications/editors/emacs-modes/sbt-mode { }; scalaMode1 = callPackage ../applications/editors/emacs-modes/scala-mode/v1.nix { }; From 7f5bc1018670f2b2389b106408308af1cdb7b96d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 5 Sep 2014 16:06:05 +0200 Subject: [PATCH 371/789] emacs-ensime: add current git snapshot --- .../editors/emacs-modes/ensime/default.nix | 22 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/applications/editors/emacs-modes/ensime/default.nix diff --git a/pkgs/applications/editors/emacs-modes/ensime/default.nix b/pkgs/applications/editors/emacs-modes/ensime/default.nix new file mode 100644 index 00000000000..26f3b8a9d38 --- /dev/null +++ b/pkgs/applications/editors/emacs-modes/ensime/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, emacs, unzip, autoComplete, dash, s }: + +stdenv.mkDerivation { + name = "emacs-ensime-2014-09-04"; + + src = fetchurl { + url = "https://github.com/ensime/ensime-emacs/archive/d3820a3f362975f6e14b817988ec07bfef2b4dad.zip"; + sha256 = "0gwr0r92z2hh2x8g0hpxaar2vvfk1b91cp6v04gaasw0fvl5i7g5"; + }; + + buildInputs = [ emacs unzip ]; + propagatedUserEnvPkgs = [ autoComplete dash s ]; + + buildPhase = '' + emacs -L . -L ${autoComplete}/share/emacs/site-lisp --batch -f batch-byte-compile *.el + ''; + + installPhase = '' + install -d $out/share/emacs/site-lisp + install *.el *.elc $out/share/emacs/site-lisp + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4c0e57bc3c0..46166d608ef 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8653,6 +8653,8 @@ let emms = callPackage ../applications/editors/emacs-modes/emms { }; + ensime = callPackage ../applications/editors/emacs-modes/ensime { }; + ess = callPackage ../applications/editors/emacs-modes/ess { }; flymakeCursor = callPackage ../applications/editors/emacs-modes/flymake-cursor { }; From 96adde8f6a37cf747996a31a39e2da5d09d3f7ed Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Fri, 5 Sep 2014 10:43:06 -0400 Subject: [PATCH 372/789] rsync: update 3.1.0 to 3.1.1 fix http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-2855 --- .../networking/sync/rsync/default.nix | 26 ++++++++----------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/pkgs/applications/networking/sync/rsync/default.nix b/pkgs/applications/networking/sync/rsync/default.nix index 00a00530df4..8d32c1e5d86 100644 --- a/pkgs/applications/networking/sync/rsync/default.nix +++ b/pkgs/applications/networking/sync/rsync/default.nix @@ -7,37 +7,33 @@ assert enableACLs -> acl != null; stdenv.mkDerivation rec { name = "rsync-${version}"; - version = "3.1.0"; + version = "3.1.1"; mainSrc = fetchurl { + # signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5 url = "http://rsync.samba.org/ftp/rsync/src/rsync-${version}.tar.gz"; - sha256 = "0kirw8wglqvwi1v8bwxp373g03xg857h59j5k3mmgff9gzvj7jl1"; + sha256 = "0896iah6w72q5izpxgkai75bn40dqkqifi2ivcxjzr2zrx7kdr3x"; }; patchesSrc = fetchurl { + # signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5 url = "http://rsync.samba.org/ftp/rsync/rsync-patches-${version}.tar.gz"; - sha256 = "0sl8aadpjblvbb05vgais40z90yzhr09rwz0cykjdiv452gli75p"; + sha256 = "0iij996xbyn20yr4w3kv3rw3cx4jwkg2k85x6w5hb5xlgsis8zjl"; }; srcs = [mainSrc] ++ stdenv.lib.optional enableCopyDevicesPatch patchesSrc; - patches = [(fetchurl { - url = "https://git.samba.org/?p=rsync.git;a=commitdiff_plain;h=0dedfbce2c1b851684ba658861fe9d620636c56a"; - sha256 = "0j1pqmwsqc5mh815x28izi4baki2y2r5q8k7ma1sgs4xsgjc4rk8"; - name = "CVE-2014-2855.patch"; - })] - ++ stdenv.lib.optional enableCopyDevicesPatch "./patches/copy-devices.diff"; + patches = stdenv.lib.optional enableCopyDevicesPatch "./patches/copy-devices.diff"; buildInputs = stdenv.lib.optional enableACLs acl; nativeBuildInputs = [perl]; configureFlags = "--with-nobody-group=nogroup"; - meta = { - homepage = http://samba.anu.edu.au/rsync/; + meta = with stdenv.lib; { + homepage = http://rsync.samba.org/; description = "A fast incremental file transfer utility"; - license = stdenv.lib.licenses.gpl3Plus; - - platforms = stdenv.lib.platforms.unix; - maintainers = [ stdenv.lib.maintainers.simons stdenv.lib.maintainers.emery ]; + license = licenses.gpl3Plus; + platforms = platforms.unix; + maintainers = with maintainers; [ simons emery ]; }; } From 1124d8a9b963bd9dac28dcf9db29f07377ff2075 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Fri, 5 Sep 2014 10:14:36 -0400 Subject: [PATCH 373/789] unrar: update from 5.1.5 to 5.1.7, change license to 'unfree-redistributable' --- pkgs/tools/archivers/unrar/default.nix | 27 ++++++++++++-------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/pkgs/tools/archivers/unrar/default.nix b/pkgs/tools/archivers/unrar/default.nix index 2757c2ee457..a13c4c3b70b 100644 --- a/pkgs/tools/archivers/unrar/default.nix +++ b/pkgs/tools/archivers/unrar/default.nix @@ -1,32 +1,29 @@ {stdenv, fetchurl}: let - version = "5.1.5"; + version = "5.1.7"; in stdenv.mkDerivation { name = "unrar-${version}"; src = fetchurl { url = "http://www.rarlab.com/rar/unrarsrc-${version}.tar.gz"; - sha256 = "1jrla255911rbl953br2xbgvyw15kpi11r4lpqm3jlw553ccw912"; + sha256 = "13ida8vcamiagl40d9yfjma9k6givxczhx278f1p7bv9wgb8gfmc"; }; - patchPhase = '' - sed -i \ - -e "/CXX=/d" \ - -e "/CXXFLAGS=/d" \ - makefile - ''; - installPhase = '' - mkdir -p $out/bin - cp unrar $out/bin + installBin unrar + + mkdir -p $out/share/doc/unrar + cp acknow.txt license.txt \ + $out/share/doc/unrar ''; - meta = { + meta = with stdenv.lib; { description = "Utility for RAR archives"; - license = stdenv.lib.licenses.unfree; - maintainers = [ stdenv.lib.maintainers.emery ]; - platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; # arbitrary + homepage = http://www.rarlab.com/; + license = licenses.unfree-redistributable; + maintainers = [ maintainers.emery ]; + platforms = platforms.all; }; } From 20be024d1bae622409fa56844b2f8799bbf29bb0 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Sep 2014 17:40:09 +0200 Subject: [PATCH 374/789] Fix subuid/subgid generation I don't think we need to filter users with an unset uid, because mkSubuidEntry/mkSubgidEntry don't references the uid. --- nixos/modules/config/users-groups.nix | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix index d172ddb6bca..619f329d74c 100644 --- a/nixos/modules/config/users-groups.nix +++ b/nixos/modules/config/users-groups.nix @@ -276,23 +276,17 @@ let }; }; - filterNull = a: filter (x: hasAttr a x && getAttr a x != null); - - sortOn "gid" (filterNull "gid" (attrValues cfg.extraGroups)) - sortOn "uid" (filterNull "uid" (attrValues cfg.extraUsers)) mkSubuidEntry = user: concatStrings ( map (range: "${user.name}:${toString range.startUid}:${toString range.count}\n") - user.subUidRanges); + user.subUidRanges); - subuidFile = concatStrings (map mkSubuidEntry ( - sortOn "uid" (filterNull "uid" (attrValues cfg.extraUsers)))); + subuidFile = concatStrings (map mkSubuidEntry (attrValues cfg.extraUsers)); mkSubgidEntry = user: concatStrings ( map (range: "${user.name}:${toString range.startGid}:${toString range.count}\n") user.subGidRanges); - subgidFile = concatStrings (map mkSubgidEntry ( - sortOn "uid" (filterNull "uid" (attrValues cfg.extraUsers)))); + subgidFile = concatStrings (map mkSubgidEntry (attrValues cfg.extraUsers)); idsAreUnique = set: idAttr: !(fold (name: args@{ dup, acc }: let From 718106e958cbd872ecf3e08a451b80f68f950dae Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Fri, 5 Sep 2014 18:42:14 +0200 Subject: [PATCH 375/789] Fix initrd after recent busybox upgrades --- nixos/modules/system/boot/stage-1.nix | 2 +- nixos/modules/virtualisation/qemu-vm.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix index 426da778f43..6977880fa28 100644 --- a/nixos/modules/system/boot/stage-1.nix +++ b/nixos/modules/system/boot/stage-1.nix @@ -50,7 +50,7 @@ let cp -pvd ${pkgs.busybox}/bin/* ${pkgs.busybox}/sbin/* $out/bin/ # Copy some utillinux stuff. - cp -vf ${pkgs.utillinux}/sbin/blkid $out/bin + cp -vf --remove-destination ${pkgs.utillinux}/sbin/blkid $out/bin cp -pdv ${pkgs.utillinux}/lib/libblkid*.so.* $out/lib cp -pdv ${pkgs.utillinux}/lib/libuuid*.so.* $out/lib diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix index 58386ce5cf5..33f48d65d43 100644 --- a/nixos/modules/virtualisation/qemu-vm.nix +++ b/nixos/modules/virtualisation/qemu-vm.nix @@ -278,7 +278,7 @@ in boot.initrd.extraUtilsCommands = '' # We need mke2fs in the initrd. - cp -f ${pkgs.e2fsprogs}/sbin/mke2fs $out/bin + cp -vf --remove-destination ${pkgs.e2fsprogs}/sbin/mke2fs $out/bin ''; boot.initrd.postDeviceCommands = From e07e1c3fdfda965ce244bf077cf98fd736be622f Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 4 Sep 2014 10:30:25 -0700 Subject: [PATCH 376/789] nixos/installer-test: Add writable store test --- nixos/tests/installer.nix | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 66ab2567e19..7cab313cec2 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -35,7 +35,8 @@ let # The configuration to install. - makeConfig = { testChannel, useEFI, grubVersion, grubDevice, grubIdentifier }: + makeConfig = { testChannel, useEFI, grubVersion, grubDevice, grubIdentifier + , readOnly ? true, forceGrubReinstallCount ? 0 }: pkgs.writeText "configuration.nix" '' { config, pkgs, modulesPath, ... }: @@ -57,6 +58,10 @@ let boot.loader.grub.fsIdentifier = "${grubIdentifier}"; ''} + boot.loader.grub.configurationLimit = 100 + ${toString forceGrubReinstallCount}; + + ${optionalString (!readOnly) "nix.readOnlyStore = false;"} + environment.systemPackages = [ ${optionalString testChannel "pkgs.rlwrap"} ]; } ''; @@ -198,6 +203,11 @@ let $machine->succeed("type -tP ls | tee /dev/stderr") =~ /.nix-profile/ or die "nix-env failed"; + # We need to a writable nix-store on next boot + $machine->copyFileFromHost( + "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice grubIdentifier; readOnly = false; forceGrubReinstallCount = 1; } }", + "/etc/nixos/configuration.nix"); + # Check whether nixos-rebuild works. $machine->succeed("nixos-rebuild switch >&2"); @@ -208,6 +218,15 @@ let $machine->shutdown; + # Check whether a writable store build works + $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}" }); + $machine->waitForUnit("multi-user.target"); + $machine->copyFileFromHost( + "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice grubIdentifier; readOnly = false; forceGrubReinstallCount = 2; } }", + "/etc/nixos/configuration.nix"); + $machine->succeed("nixos-rebuild boot >&2"); + $machine->shutdown; + # And just to be sure, check that the machine still boots after # "nixos-rebuild switch". $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}" }); From 6fb6ba48f85f7ec8f954428468e96ce55f5535a3 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 5 Sep 2014 09:49:05 -0700 Subject: [PATCH 377/789] nixos/installer-test: nixos-option syntax correction --- nixos/tests/installer.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 7cab313cec2..3e29bc2a45b 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -213,8 +213,8 @@ let # Test nixos-option. $machine->succeed("nixos-option boot.initrd.kernelModules | grep virtio_console"); - $machine->succeed("nixos-option -d boot.initrd.kernelModules | grep 'List of modules'"); - $machine->succeed("nixos-option -l boot.initrd.kernelModules | grep qemu-guest.nix"); + $machine->succeed("nixos-option boot.initrd.kernelModules | grep 'List of modules'"); + $machine->succeed("nixos-option boot.initrd.kernelModules | grep qemu-guest.nix"); $machine->shutdown; From de03197100538cfa64cd5f2ddacf289d0c596f0d Mon Sep 17 00:00:00 2001 From: gounnoticed Date: Fri, 5 Sep 2014 19:35:28 +0100 Subject: [PATCH 378/789] Add luna cpp build for eclipse didnt have sha512 so used md5 instead. --- pkgs/applications/editors/eclipse/default.nix | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix index b32981ccb94..6073dc42c69 100644 --- a/pkgs/applications/editors/eclipse/default.nix +++ b/pkgs/applications/editors/eclipse/default.nix @@ -191,6 +191,23 @@ in { sha256 = "0d6jlj7hwz8blx6csrlyi2h2prql0wckbh7ihwjmgclwpcpj84g6"; }; }; + + eclipse_cpp_44 = buildEclipse { + name = "eclipse-cpp-4.4"; + description = "Eclipse IDE for C/C++ Developers"; + src = + if stdenv.system == "x86_64-linux" then + fetchurl { + url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk-x86_64.tar.gz; + md5 = "b0a6ee33e8108a7ff4682ab911271b04"; + } + else + fetchurl { + url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk.tar.gz; + md5 = "5000f93cecf6ef9af112f0df6e8c87f3"; + }; + }; + eclipse_sdk_421 = buildEclipse { name = "eclipse-sdk-4.2.1"; From b420eeba44c8428bf90f4655d94cc336c49ffec4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Fri, 5 Sep 2014 22:49:18 +0200 Subject: [PATCH 379/789] remove bittorrent package since it's obsolete --- doc/quick-start.xml | 11 -------- nixos/tests/bittorrent.nix | 2 +- .../networking/p2p/bittorrent/builder.sh | 27 ------------------- .../networking/p2p/bittorrent/default.nix | 24 ----------------- pkgs/top-level/release.nix | 1 - 5 files changed, 1 insertion(+), 64 deletions(-) delete mode 100644 pkgs/tools/networking/p2p/bittorrent/builder.sh delete mode 100644 pkgs/tools/networking/p2p/bittorrent/default.nix diff --git a/doc/quick-start.xml b/doc/quick-start.xml index 0f11a906d77..c0f96f87152 100644 --- a/doc/quick-start.xml +++ b/doc/quick-start.xml @@ -92,17 +92,6 @@ $ git add pkgs/development/libraries/libfoo/default.nix hackery. - - BitTorrent (wxPython-based): pkgs/tools/networking/p2p/bittorrent/default.nix. - Uses an external build - script, which can be useful if you have lots of code - that you don’t want cluttering up the Nix expression. But - external builders are mostly obsolete. - - - Thunderbird: pkgs/applications/networking/mailreaders/thunderbird/default.nix. diff --git a/nixos/tests/bittorrent.nix b/nixos/tests/bittorrent.nix index b12a861f723..c4a00ee507b 100644 --- a/nixos/tests/bittorrent.nix +++ b/nixos/tests/bittorrent.nix @@ -28,7 +28,7 @@ in nodes = { tracker = { config, pkgs, ... }: - { environment.systemPackages = [ pkgs.transmission pkgs.bittorrent ]; + { environment.systemPackages = [ pkgs.transmission ]; # We need Apache on the tracker to serve the torrents. services.httpd.enable = true; diff --git a/pkgs/tools/networking/p2p/bittorrent/builder.sh b/pkgs/tools/networking/p2p/bittorrent/builder.sh deleted file mode 100644 index 3f30aa5c851..00000000000 --- a/pkgs/tools/networking/p2p/bittorrent/builder.sh +++ /dev/null @@ -1,27 +0,0 @@ -source $stdenv/setup - - -# Workaround for: -# File "...-python-2.4.4/lib/python2.4/posixpath.py", line 62, in join -# elif path == '' or path.endswith('/'): -# AttributeError: 'NoneType' object has no attribute 'endswith' -export HOME=$TMP - - -buildPhase() { - python setup.py build -} - - -installPhase() { - python setup.py install --prefix=$out - - # Create wrappers that set the environment correctly. - for i in $(cd $out/bin && ls); do - wrapProgram $out/bin/$i \ - --set PYTHONPATH "$(toPythonPath $out):$PYTHONPATH" - done -} - - -genericBuild diff --git a/pkgs/tools/networking/p2p/bittorrent/default.nix b/pkgs/tools/networking/p2p/bittorrent/default.nix deleted file mode 100644 index 1d4f43445bf..00000000000 --- a/pkgs/tools/networking/p2p/bittorrent/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ gui ? false -, stdenv, fetchurl, makeWrapper -, python, wxPython ? null, pycrypto, twisted -}: - -assert gui -> wxPython != null; - -stdenv.mkDerivation { - name = "bittorrent-5.2.2"; - - builder = ./builder.sh; - - src = fetchurl { - url = http://download.bittorrent.com/dl/archive/BitTorrent-5.2.2.tar.gz; - sha256 = "05k803hbwsyn51j4aibzdsnqxz24kw4rvr60v2c0wji8gcvy3kx9"; - }; - - buildInputs = [ python pycrypto twisted makeWrapper ] - ++ stdenv.lib.optional gui wxPython; - - meta = { - description = "The original client for the BitTorrent peer-to-peer file sharing protocol"; - }; -} diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 07c3126e5ab..ccd674a42d8 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -64,7 +64,6 @@ let binutils = linux; bind = linux; bitlbee = linux; - bittorrent = linux; blender = linux; bsdiff = all; btrfsProgs = linux; From b7a889759dc8e3c2e9f39135ed9febc356630a11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 24 Aug 2014 13:54:16 +0200 Subject: [PATCH 380/789] nixos/fail2ban: don't use types.string (it's deprecated) I'm not really sure which one of types.lines or types.str that fit better, but I'm going for types.lines because it behaves more like the current type (i.e. have the ability to merge). --- nixos/modules/services/security/fail2ban.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/security/fail2ban.nix b/nixos/modules/services/security/fail2ban.nix index 3758652ebdd..c40f41e07d4 100644 --- a/nixos/modules/services/security/fail2ban.nix +++ b/nixos/modules/services/security/fail2ban.nix @@ -40,7 +40,7 @@ in socket = /run/fail2ban/fail2ban.sock pidfile = /run/fail2ban/fail2ban.pid ''; - type = types.string; + type = types.lines; description = '' The contents of Fail2ban's main configuration file. It's @@ -64,7 +64,7 @@ in maxretry = 5 ''; }; - type = types.attrsOf types.string; + type = types.attrsOf types.lines; description = '' The configuration of each Fail2ban “jail”. A jail From 1d263f3776bf31f48fbab34c91592f8e55665a0b Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Fri, 5 Sep 2014 23:53:19 +0200 Subject: [PATCH 381/789] calibre: update from 2.1.0 to 2.2.0 --- pkgs/applications/misc/calibre/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix index 00a5d15a84c..1bf5d6a9ff8 100644 --- a/pkgs/applications/misc/calibre/default.nix +++ b/pkgs/applications/misc/calibre/default.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "calibre-2.1.0"; + name = "calibre-2.2.0"; src = fetchurl { url = "mirror://sourceforge/calibre/${name}.tar.xz"; - sha256 = "1znwrmz740m08bihkmdijm193bvav4nm313xsagd5x9mjh2nffg7"; + sha256 = "03qljbb3995cq25azwy9qh087dq7m6igia5301v89y98vxxg2lxm"; }; inherit python; From db86b03b1c5b3940c7daf4a03dac364861fcead3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Thu, 2 Jan 2014 00:35:42 +0100 Subject: [PATCH 382/789] nixos/apcupsd: add systemd documentation hint systemctl has the ability to display a list of documentation URLs in the output of "systemctl status ". --- nixos/modules/services/monitoring/apcupsd.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/modules/services/monitoring/apcupsd.nix b/nixos/modules/services/monitoring/apcupsd.nix index 6cc0c122ec6..ffa7be7dd30 100644 --- a/nixos/modules/services/monitoring/apcupsd.nix +++ b/nixos/modules/services/monitoring/apcupsd.nix @@ -161,6 +161,7 @@ in # systemd kills it with SIGKILL. TimeoutStopSec = 5; }; + unitConfig.Documentation = "man:apcupsd(8)"; }; # A special service to tell the UPS to power down/hibernate just before the From c5f51039f477880351edd0b765cb7bda839adb82 Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Wed, 23 Apr 2014 01:03:14 +0200 Subject: [PATCH 383/789] steam: fix steam on x86_64 --- .../build-fhs-chrootenv/default.nix | 158 ++++++++++++++---- pkgs/games/steam/chrootenv.nix | 67 +++++++- pkgs/games/steam/default.nix | 107 +----------- pkgs/top-level/all-packages.nix | 17 +- 4 files changed, 198 insertions(+), 151 deletions(-) diff --git a/pkgs/build-support/build-fhs-chrootenv/default.nix b/pkgs/build-support/build-fhs-chrootenv/default.nix index e807a04628a..411e73ab810 100644 --- a/pkgs/build-support/build-fhs-chrootenv/default.nix +++ b/pkgs/build-support/build-fhs-chrootenv/default.nix @@ -1,16 +1,50 @@ -{stdenv, glibc, glibcLocales, gcc, coreutils, diffutils, findutils, gnused, gnugrep, gnutar, gzip, bzip2, -bashInteractive, xz, shadow, gawk, less, buildEnv}: -{name, pkgs ? [], profile ? ""}: +{ buildEnv, nixpkgs, nixpkgs_i686, system +, stdenv, glibc, glibc_multi, glibcLocales +, bashInteractive, coreutils, less, shadow su +, gawk, gcc, diffutils, findutils, gnused, gnugrep +, gnutar, gzip, bzip2, xz +} : +{ name, pkgs ? [], profile ? "" +, targetPkgs ? null, multiPkgs ? null +, extraBuildCommands ? "", extraBuildCommandsMulti ? "" +}: + +assert pkgs != [] -> targetPkgs == null && multiPkgs == null; +assert targetPkgs != null -> multiPkgs != null; +assert multiPkgs != null -> targetPkgs != null; +assert targetPkgs != null -> pkgs == []; let - basePkgs = [ - glibc glibcLocales gcc coreutils diffutils findutils gnused gnugrep gnutar - gzip bzip2 bashInteractive xz shadow gawk less - ]; + is64Bit = system == "x86_64-linux"; + # enable multi builds on x86_64 hosts if pakgs_target/multi are defined + isMultiBuild = is64Bit && targetPkgs != null; + isNormalBuild = !isMultiBuild; + + # list of packages (usually programs) which will only be installed for the + # hosts architecture + targetPaths = if targetPkgs == null + then pkgs + else targetPkgs nixpkgs ++ multiPkgs nixpkgs; + + # list of pckages which should be build for both x86 and x86_64 on x86_64 + # systems + multiPaths = if isMultiBuild + then multiPkgs nixpkgs_i686 + else []; + + # base packages of the chroot + # these match the hosts architecture, glibc_multi will be choosen + # on multi builds + basePkgs = + [ (if isMultiBuild then glibc_multi else glibc) + bashInteractive coreutils less shadow su + gawk gcc diffutils findutils gnused gnugrep + gnutar gzip bzip2 xz + ]; # Compose a global profile for the chroot environment - profilePkg = stdenv.mkDerivation { - name = "${name}-chrootenv-profile"; + profilePkg = nixpkgs.stdenv.mkDerivation { + name = "${name}-chrootenv-profile"; buildCommand = '' mkdir -p $out/etc cat >> $out/etc/profile << "EOF" @@ -20,67 +54,117 @@ let ''; }; - paths = basePkgs ++ [ profilePkg ] ++ pkgs; - # Composes a /usr like directory structure - staticUsrProfile = buildEnv { - name = "system-profile"; - inherit paths; + staticUsrProfileTarget = buildEnv { + name = "system-profile-target"; + paths = basePkgs ++ [ profilePkg ] ++ targetPaths; }; - + + staticUsrProfileMulti = buildEnv { + name = "system-profile-multi"; + paths = multiPaths; + }; + # References to shell scripts that set up or tear down the environment - initSh = ./init.sh.in; - mountSh = ./mount.sh.in; - loadSh = ./load.sh.in; - umountSh = ./umount.sh.in; + initSh = ./init.sh.in; + mountSh = ./mount.sh.in; + loadSh = ./load.sh.in; + umountSh = ./umount.sh.in; destroySh = ./destroy.sh.in; -in -stdenv.mkDerivation { - name = "${name}-chrootenv"; - buildCommand = '' - mkdir -p $out/sw - cd $out/sw - - for i in ${staticUsrProfile}/{etc,bin,lib{,32,64},sbin,var} - do + + linkProfile = profile: '' + for i in ${profile}/{etc,bin,lib{,32,64},sbin,share,var}; do if [ -x "$i" ] then ln -s "$i" fi done - - ln -s ${staticUsrProfile} usr - + ''; + + # the target profile is the actual profile that will be used for the chroot + setupTargetProfile = '' + ${linkProfile staticUsrProfileTarget} + mkdir -m0755 usr + cd usr + ${linkProfile staticUsrProfileTarget} cd .. - + ''; + + # this will happen on x86_64 host: + # /x86 -> links to the whole profile defined by multiPaths + # /lib, /lib32 -> links to 32bit binaries + # /lib64 -> links to 64bit binaries + # /usr/lib* -> same as above + setupMultiProfile = if isNormalBuild then "" else '' + mkdir -m0755 x86 + cd x86 + ${linkProfile staticUsrProfileMulti} + cd .. + + ${setupLibDirs} + + cd usr + ${setupLibDirs} + cd .. + ''; + + setupLibDirs = '' + rm -f lib lib32 lib64 + mkdir -m0755 lib + # copy glibc stuff + cp -rs ${staticUsrProfileTarget}/lib/32/* lib/ + # copy contents of multiPaths + cp -rsf ${staticUsrProfileMulti}/lib/* lib/ + + ln -s lib lib32 + ln -s ${staticUsrProfileTarget}/lib lib64 + ''; + +in stdenv.mkDerivation { + name = "${name}-chrootenv"; + buildCommand = '' + mkdir -p "$out/sw" + cd "$out/sw" + ${setupTargetProfile} + ${setupMultiProfile} + cd .. + mkdir -p bin cd bin - + sed -e "s|@chrootEnv@|$out|g" \ -e "s|@name@|${name}|g" \ -e "s|@shell@|${stdenv.shell}|g" \ ${initSh} > init-${name}-chrootenv chmod +x init-${name}-chrootenv - + sed -e "s|@shell@|${stdenv.shell}|g" \ -e "s|@name@|${name}|g" \ ${mountSh} > mount-${name}-chrootenv chmod +x mount-${name}-chrootenv - + sed -e "s|@shell@|${stdenv.shell}|g" \ -e "s|@name@|${name}|g" \ ${loadSh} > load-${name}-chrootenv chmod +x load-${name}-chrootenv - + sed -e "s|@shell@|${stdenv.shell}|g" \ -e "s|@name@|${name}|g" \ ${umountSh} > umount-${name}-chrootenv chmod +x umount-${name}-chrootenv - + sed -e "s|@chrootEnv@|$out|g" \ -e "s|@shell@|${stdenv.shell}|g" \ -e "s|@name@|${name}|g" \ ${destroySh} > destroy-${name}-chrootenv chmod +x destroy-${name}-chrootenv + + cd .. + + cd "$out/sw" + ${extraBuildCommands} + cd "$out/sw" + ${extraBuildCommandsMulti} + cd .. ''; } diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix index 2173d12666e..d7b8437450d 100644 --- a/pkgs/games/steam/chrootenv.nix +++ b/pkgs/games/steam/chrootenv.nix @@ -1,12 +1,69 @@ -{ buildFHSChrootEnv, steam -, xterm, libX11, zenity, python, mesa, xdg_utils, dbus_tools, alsaLib -}: +{ buildFHSChrootEnv }: buildFHSChrootEnv { name = "steam"; - pkgs = [ steam xterm libX11 zenity python mesa xdg_utils dbus_tools alsaLib ]; + + targetPkgs = pkgs: + [ pkgs.steam + pkgs.corefonts + pkgs.curl + pkgs.dbus + pkgs.dpkg + pkgs.mono + pkgs.python + pkgs.gnome2.zenity + pkgs.xdg_utils + ]; + + multiPkgs = pkgs: + [ pkgs.cairo + pkgs.glib + pkgs.gtk + pkgs.gdk_pixbuf + pkgs.pango + + pkgs.freetype + pkgs.xlibs.libICE + pkgs.xlibs.libSM + pkgs.xlibs.libX11 + pkgs.xlibs.libXau + pkgs.xlibs.libxcb + pkgs.xlibs.libXcursor + pkgs.xlibs.libXdamage + pkgs.xlibs.libXdmcp + pkgs.xlibs.libXext + pkgs.xlibs.libXfixes + pkgs.xlibs.libXi + pkgs.xlibs.libXinerama + pkgs.xlibs.libXrandr + pkgs.xlibs.libXrender + pkgs.xlibs.libXScrnSaver + pkgs.xlibs.libXtst + pkgs.xlibs.libXxf86vm + + pkgs.libpng12 + pkgs.mesa + pkgs.SDL + + pkgs.libgcrypt + pkgs.zlib + + pkgs.alsaLib + pkgs.libvorbis + pkgs.openal + pkgs.pulseaudio + + pkgs.flashplayer + ]; + + extraBuildCommandsMulti = '' + cd usr/lib + ln -sf ../lib64/steam steam + ''; + profile = '' - export LD_LIBRARY_PATH=/run/opengl-driver/lib:/run/opengl-driver-32/lib:/lib + export LD_LIBRARY_PATH=/run/opengl-driver/lib:/run/opengl-driver-32/lib:/lib:/lib32:/lib64 + export PATH=$PATH:/usr/bin:/usr/sbin export FONTCONFIG_FILE=/etc/fonts/fonts.conf ''; } diff --git a/pkgs/games/steam/default.nix b/pkgs/games/steam/default.nix index c1273e9a20f..ba5a410f3a3 100644 --- a/pkgs/games/steam/default.nix +++ b/pkgs/games/steam/default.nix @@ -1,118 +1,21 @@ -/*{ stdenv, fetchurl, dpkg, makeWrapper, xz, libX11, gcc, glibc -, libselinux, libXrandr, pango, freetype, fontconfig, glib, gtk -, gdk_pixbuf, cairo, libXi, alsaLib, libXrender, nss, nspr, zlib -, dbus, libpng12, libXfixes, cups, libgcrypt, openal, pulseaudio -, libxcb, libXau, libXdmcp, flashplayer, libSM, libICE, libXext -, dbus_glib, libusb1, networkmanager -, SDL # World of Goo -, libvorbis # Osmos -, curl, mesa # Superbrothers: S&S EP -, patchelf }: - -assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"; - -let version = "1.0.0.39"; in - -stdenv.mkDerivation rec { - name = "steam-${version}"; - - src = fetchurl { - url = "http://repo.steampowered.com/steam/pool/steam/s/steam/steam-launcher_${version}_all.deb"; - sha256 = "1z1cnlr2qw2ndnqsfwjck9617m2p0f3p9q9409vczj909h2a9wyk"; - }; - - buildInputs = [ dpkg makeWrapper ]; - - phases = "installPhase"; - - installPhase = '' - mkdir -p $out - dpkg-deb -x $src $out - cp -r $out/usr/* $out/ - rm -rf $out/usr - substituteInPlace "$out/bin/steam" --replace "/usr/bin/env bash" "/bin/sh" - substituteInPlace "$out/bin/steam" --replace "/usr/" "$out/" - sed -i 's,STEAMPACKAGE=.*,STEAMPACKAGE=steam,' $out/bin/steam - sed -i '/STEAMSCRIPT/d' $out/bin/steam - - mv $out/bin/steam $out/bin/.steam-wrapped - cat > $out/bin/steam << EOF - - export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${libX11}/lib:${gcc.gcc}/lib:${libselinux}/lib:${libXrandr}/lib:${pango}/lib:${freetype}/lib:${fontconfig}/lib:${glib}/lib:${gtk}/lib:${gdk_pixbuf}/lib:${cairo}/lib:${libXi}/lib:${alsaLib}/lib:${libXrender}/lib:${nss}/lib:${nspr}/lib:${zlib}/lib:${dbus}/lib:${libpng12}/lib:${libXfixes}/lib:${cups}/lib:${libgcrypt}/lib:${openal}/lib:${pulseaudio}/lib:${libxcb}/lib:${libXau}/lib:${libXdmcp}/lib:${SDL}/lib:${libvorbis}/lib:${curl}/lib:${libSM}/lib:${libICE}/lib:${dbus_glib}/lib:${networkmanager}/lib:${libXext}/lib:${libusb1}/lib - STEAMBOOTSTRAP=~/.steam/steam/steam.sh - if [ -f \$STEAMBOOTSTRAP ]; then - PLATFORM32=ubuntu12_32 - STEAMCONFIG=~/.steam - STEAMROOT=~/.local/share/Steam - STEAMDATA="\$STEAMROOT" - PIDFILE="\$STEAMCONFIG/steam.pid" - STEAMBIN32LINK="\$STEAMCONFIG/bin32" - STEAMBIN64LINK="\$STEAMCONFIG/bin64" - STEAMSDK32LINK="\$STEAMCONFIG/sdk32" - STEAMSDK64LINK="\$STEAMCONFIG/sdk64" - STEAMROOTLINK="\$STEAMCONFIG/root" - STEAMDATALINK="\$STEAMCONFIG/steam" - STEAMSTARTING="\$STEAMCONFIG/starting" - # Create symbolic links for the Steam API - if [ ! -e "\$STEAMCONFIG" ]; then - mkdir "\$STEAMCONFIG" - fi - if [ "\$STEAMROOT" != "\$STEAMROOTLINK" -a "\$STEAMROOT" != "\$STEAMDATALINK" ]; then - rm -f "\$STEAMBIN32LINK" && ln -s "\$STEAMROOT/\$PLATFORM32" "\$STEAMBIN32LINK" - rm -f "\$STEAMBIN64LINK" && ln -s "\$STEAMROOT/\$PLATFORM64" "\$STEAMBIN64LINK" - rm -f "\$STEAMSDK32LINK" && ln -s "\$STEAMROOT/linux32" "\$STEAMSDK32LINK" - rm -f "\$STEAMSDK64LINK" && ln -s "\$STEAMROOT/linux64" "\$STEAMSDK64LINK" - rm -f "\$STEAMROOTLINK" && ln -s "\$STEAMROOT" "\$STEAMROOTLINK" - if [ "\$STEAMDATALINK" ]; then - rm -f "\$STEAMDATALINK" && ln -s "\$STEAMDATA" "\$STEAMDATALINK" - fi - fi - # Temporary bandaid until everyone has the new libsteam_api.so - rm -f ~/.steampath && ln -s "\$STEAMCONFIG/bin32/steam" ~/.steampath - rm -f ~/.steampid && ln -s "\$PIDFILE" ~/.steampid - rm -f ~/.steam/bin && ln -s "\$STEAMBIN32LINK" ~/.steam/bin - export LD_LIBRARY_PATH="\$STEAMBIN32LINK:\$LD_LIBRARY_PATH:${mesa}/lib" - export SDL_VIDEO_X11_DGAMOUSE=0 - cd "\$STEAMROOT" - FLASHLINK="\$STEAMCONFIG/bin32/plugins" - rm -f "\$FLASHLINK" && ln -s "${flashplayer}/lib/mozilla/plugins" "\$FLASHLINK" - LDSO="\$STEAMBIN32LINK/ld.so" - cp ${glibc}/lib/ld-linux.so.2 "\$LDSO" - chmod u+w "\$LDSO" - echo \$\$ > "\$PIDFILE" # pid of the shell will become pid of steam - export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${glibc}/lib - exec "\$LDSO" "\$STEAMBIN32LINK/steam" - else - export PATH=${xz}/bin:\$PATH - exec $out/bin/.steam-wrapped - fi - EOF - - chmod +x $out/bin/steam - ''; - - meta = { - description = "A digital distribution platform"; - homepage = http://store.steampowered.com/; - license = stdenv.lib.licenses.unfree; - }; -} -*/ - {stdenv, fetchurl}: stdenv.mkDerivation { name = "steam-1.0.0.48"; + src = fetchurl { url = http://repo.steampowered.com/steam/pool/steam/s/steam/steam_1.0.0.48.tar.gz; sha256 = "08y5qf75ssk4fnazyv2yz1c5zs7gjiwigaibv8yz1gbr290r0b52"; }; + + buildInputs = [ dpkg ]; + unpackPhase = "true"; installPhase = '' make DESTDIR=$out install mv $out/usr/* $out #*/ rmdir $out/usr ''; - + meta = { description = "A digital distribution platform"; homepage = http://store.steampowered.com/; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 46166d608ef..9f2c7d5ed2b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -262,9 +262,14 @@ let }; buildFHSChrootEnv = import ../build-support/build-fhs-chrootenv { - inherit stdenv glibc glibcLocales gcc coreutils diffutils findutils; - inherit gnused gnugrep gnutar gzip bzip2 bashInteractive xz shadow gawk; - inherit less buildEnv; + inherit buildEnv system; + inherit stdenv glibc glibc_multi glibcLocales; + inherit bashInteractive coreutils less shadow su; + inherit gawk gcc diffutils findutils gnused gnugrep; + inherit gnutar gzip bzip2 xz; + + nixpkgs = pkgs; + nixpkgs_i686 = pkgsi686Linux; }; dotnetenv = import ../build-support/dotnetenv { @@ -10653,11 +10658,9 @@ let stardust = callPackage ../games/stardust {}; - steam = callPackage_i686 ../games/steam {}; + steam = callPackage ../games/steam {}; - steamChrootEnv = callPackage_i686 ../games/steam/chrootenv.nix { - zenity = gnome2.zenity; - }; + steamChrootEnv = callPackage ../games/steam/chrootenv.nix { }; stuntrally = callPackage ../games/stuntrally { }; From 72b1f874ef0c43569516892b17c8893f0785bfef Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Wed, 23 Apr 2014 09:39:58 +0200 Subject: [PATCH 384/789] buildFHSChrootEnv: fix merge error --- pkgs/build-support/build-fhs-chrootenv/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/build-fhs-chrootenv/default.nix b/pkgs/build-support/build-fhs-chrootenv/default.nix index 411e73ab810..306cfeeb264 100644 --- a/pkgs/build-support/build-fhs-chrootenv/default.nix +++ b/pkgs/build-support/build-fhs-chrootenv/default.nix @@ -1,6 +1,6 @@ { buildEnv, nixpkgs, nixpkgs_i686, system , stdenv, glibc, glibc_multi, glibcLocales -, bashInteractive, coreutils, less, shadow su +, bashInteractive, coreutils, less, shadow, su , gawk, gcc, diffutils, findutils, gnused, gnugrep , gnutar, gzip, bzip2, xz } : From 2d912e29d564872a729828d959836945a4736389 Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Sat, 26 Apr 2014 14:42:10 +0200 Subject: [PATCH 385/789] build-fhs-chrootenv: fix gcc_multi paths --- .../build-fhs-chrootenv/default.nix | 39 +++++++++++++------ pkgs/top-level/all-packages.nix | 5 ++- 2 files changed, 30 insertions(+), 14 deletions(-) diff --git a/pkgs/build-support/build-fhs-chrootenv/default.nix b/pkgs/build-support/build-fhs-chrootenv/default.nix index 306cfeeb264..41c60ea5fe8 100644 --- a/pkgs/build-support/build-fhs-chrootenv/default.nix +++ b/pkgs/build-support/build-fhs-chrootenv/default.nix @@ -1,7 +1,7 @@ { buildEnv, nixpkgs, nixpkgs_i686, system , stdenv, glibc, glibc_multi, glibcLocales , bashInteractive, coreutils, less, shadow, su -, gawk, gcc, diffutils, findutils, gnused, gnugrep +, gawk, gcc, gcc_multi, diffutils, findutils, gnused, gnugrep , gnutar, gzip, bzip2, xz } : { name, pkgs ? [], profile ? "" @@ -33,12 +33,14 @@ let else []; # base packages of the chroot - # these match the hosts architecture, glibc_multi will be choosen + # these match the hosts architecture, gcc/glibc_multi will be choosen # on multi builds + choosenGcc = if isMultiBuild then gcc_multi else gcc; basePkgs = [ (if isMultiBuild then glibc_multi else glibc) + choosenGcc bashInteractive coreutils less shadow su - gawk gcc diffutils findutils gnused gnugrep + gawk diffutils findutils gnused gnugrep gnutar gzip bzip2 xz ]; @@ -101,23 +103,36 @@ let ${linkProfile staticUsrProfileMulti} cd .. - ${setupLibDirs} + ${setupMultiLibDirs} cd usr - ${setupLibDirs} + ${setupMultiLibDirs} cd .. ''; - setupLibDirs = '' + setupMultiLibDirs = '' rm -f lib lib32 lib64 mkdir -m0755 lib - # copy glibc stuff - cp -rs ${staticUsrProfileTarget}/lib/32/* lib/ - # copy contents of multiPaths - cp -rsf ${staticUsrProfileMulti}/lib/* lib/ - + mkdir -m0755 lib64 ln -s lib lib32 - ln -s ${staticUsrProfileTarget}/lib lib64 + + # copy glibc stuff + cp -rsf ${staticUsrProfileTarget}/lib/32/* lib/ + + # copy content of multiPaths (32bit libs) + cp -rsf ${staticUsrProfileMulti}/lib/* lib/ + + # copy content of targetPaths (64bit libs) + cp -rsf ${staticUsrProfileTarget}/lib/* lib64/ + # most 64bit only libs put their stuff into /lib + # some pkgs (like gcc_multi) put 32bit libs into /lib 64bit libs into /lib64 + # by overwriting these we will hopefully catch all these cases + # in the end /lib should only contain 32bit and /lib64 only 64bit libs + cp -rsf ${staticUsrProfileTarget}/lib64/* lib64/ + + # copy gcc libs (and may overwrite exitsting wrongly placed libs) + cp -rsf ${choosenGcc.gcc}/lib/* lib/ + cp -rsf ${choosenGcc.gcc}/lib64/* lib64/ ''; in stdenv.mkDerivation { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9f2c7d5ed2b..6de1001c5cb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -265,7 +265,7 @@ let inherit buildEnv system; inherit stdenv glibc glibc_multi glibcLocales; inherit bashInteractive coreutils less shadow su; - inherit gawk gcc diffutils findutils gnused gnugrep; + inherit gawk gcc gcc_multi diffutils findutils gnused gnugrep; inherit gnutar gzip bzip2 xz; nixpkgs = pkgs; @@ -2737,7 +2737,8 @@ let gambit = callPackage ../development/compilers/gambit { }; - gcc = gcc48; + gcc = gcc48; + gcc_multi = gcc48_multi; gcc33 = wrapGCC (import ../development/compilers/gcc/3.3 { inherit fetchurl stdenv noSysDirs; From 64f873461f8e96dad4ea45253d7801e38108bc9d Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Sat, 26 Apr 2014 19:38:03 +0200 Subject: [PATCH 386/789] build-fhs-chrootenv: fix gcc libs on x86 --- .../build-fhs-chrootenv/default.nix | 66 +++++++++++++++---- 1 file changed, 52 insertions(+), 14 deletions(-) diff --git a/pkgs/build-support/build-fhs-chrootenv/default.nix b/pkgs/build-support/build-fhs-chrootenv/default.nix index 41c60ea5fe8..38bd3623d29 100644 --- a/pkgs/build-support/build-fhs-chrootenv/default.nix +++ b/pkgs/build-support/build-fhs-chrootenv/default.nix @@ -14,11 +14,36 @@ assert targetPkgs != null -> multiPkgs != null; assert multiPkgs != null -> targetPkgs != null; assert targetPkgs != null -> pkgs == []; + +# HOWTO: +# If pkgs is defined buildFHSChrootEnv will run in legacy mode. This means +# it will build all pkgs contained in pkgs and basePkgs and then just merge +# all of their contents together via buildEnv. +# +# The new way is to define both targetPkgs and multiPkgs. These two are +# functions which get a pkgs environment supplied and should then return a list +# of packages based this environment. +# For example: targetPkgs = pkgs: [ pkgs.nmap ]; +# +# All packages (most likeley programs) placed in targetPkgs will only be +# installed once--matching the hosts architecture (64bit on x86_64 and 32bit on +# x86). These packages will populate the chroot directory tree. +# +# Packages (most likeley libraries) defined in multiPkgs will be installed once +# on x86 systems and twice on x86_64 systems. +# On x86 they will just be merge with the packages defined in targetPkgs. +# On x86_64 they will be added to targetPkgs and in addition their 32bit +# versions will also be installed. The final directory should look as follows: +# /lib will include 32bit libraries from multiPkgs +# /lib32 will link to /lib +# /lib64 will include 64bit libraries from multiPkgs and targetPkgs +# /x86 will contain a complete 32bit environment composed by multiPkgs + let is64Bit = system == "x86_64-linux"; # enable multi builds on x86_64 hosts if pakgs_target/multi are defined isMultiBuild = is64Bit && targetPkgs != null; - isNormalBuild = !isMultiBuild; + isTargetBuild = !isMultiBuild; # list of packages (usually programs) which will only be installed for the # hosts architecture @@ -75,7 +100,7 @@ let destroySh = ./destroy.sh.in; linkProfile = profile: '' - for i in ${profile}/{etc,bin,lib{,32,64},sbin,share,var}; do + for i in ${profile}/{etc,bin,sbin,share,var}; do if [ -x "$i" ] then ln -s "$i" @@ -86,9 +111,12 @@ let # the target profile is the actual profile that will be used for the chroot setupTargetProfile = '' ${linkProfile staticUsrProfileTarget} + ${setupLibDirs} + mkdir -m0755 usr cd usr ${linkProfile staticUsrProfileTarget} + ${setupLibDirs} cd .. ''; @@ -97,21 +125,30 @@ let # /lib, /lib32 -> links to 32bit binaries # /lib64 -> links to 64bit binaries # /usr/lib* -> same as above - setupMultiProfile = if isNormalBuild then "" else '' + setupMultiProfile = if isTargetBuild then "" else '' mkdir -m0755 x86 cd x86 ${linkProfile staticUsrProfileMulti} cd .. - - ${setupMultiLibDirs} - - cd usr - ${setupMultiLibDirs} - cd .. ''; - setupMultiLibDirs = '' - rm -f lib lib32 lib64 + setupLibDirs = if isTargetBuild then setupLibDirs_target + else setupLibDirs_multi; + + # setup library paths only for the targeted architecture + setupLibDirs_target = '' + mkdir -m0755 lib + + # copy content of targetPaths + cp -rsf ${staticUsrProfileTarget}/lib/* lib/ + + # copy gcc libs + cp -rsf ${choosenGcc.gcc}/lib/* lib/ + + ''; + + # setup /lib, /lib32 and /lib64 + setupLibDirs_multi = '' mkdir -m0755 lib mkdir -m0755 lib64 ln -s lib lib32 @@ -120,12 +157,13 @@ let cp -rsf ${staticUsrProfileTarget}/lib/32/* lib/ # copy content of multiPaths (32bit libs) - cp -rsf ${staticUsrProfileMulti}/lib/* lib/ + cp -rsf ${staticUsrProfileMulti}/lib/* lib/ # copy content of targetPaths (64bit libs) - cp -rsf ${staticUsrProfileTarget}/lib/* lib64/ + cp -rsf ${staticUsrProfileTarget}/lib/* lib64/ + # most 64bit only libs put their stuff into /lib - # some pkgs (like gcc_multi) put 32bit libs into /lib 64bit libs into /lib64 + # some pkgs (like gcc_multi) put 32bit libs into and /lib 64bit libs into /lib64 # by overwriting these we will hopefully catch all these cases # in the end /lib should only contain 32bit and /lib64 only 64bit libs cp -rsf ${staticUsrProfileTarget}/lib64/* lib64/ From c376b1afa08be5d7efe3ddd3c1c210485eacb53f Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Sun, 15 Jun 2014 15:29:18 +0200 Subject: [PATCH 387/789] build-fhs-chrootenv: fix gcc libs on i686 --- pkgs/build-support/build-fhs-chrootenv/default.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/build-support/build-fhs-chrootenv/default.nix b/pkgs/build-support/build-fhs-chrootenv/default.nix index 38bd3623d29..b325c22a25a 100644 --- a/pkgs/build-support/build-fhs-chrootenv/default.nix +++ b/pkgs/build-support/build-fhs-chrootenv/default.nix @@ -141,10 +141,6 @@ let # copy content of targetPaths cp -rsf ${staticUsrProfileTarget}/lib/* lib/ - - # copy gcc libs - cp -rsf ${choosenGcc.gcc}/lib/* lib/ - ''; # setup /lib, /lib32 and /lib64 From a383e0f1b8f043310f570ec78bbac52cabdd8082 Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Sun, 15 Jun 2014 15:34:27 +0200 Subject: [PATCH 388/789] steam: add optional java support --- pkgs/games/steam/chrootenv.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix index d7b8437450d..67f69aa4067 100644 --- a/pkgs/games/steam/chrootenv.nix +++ b/pkgs/games/steam/chrootenv.nix @@ -1,4 +1,4 @@ -{ buildFHSChrootEnv }: +{ buildFHSChrootEnv, config }: buildFHSChrootEnv { name = "steam"; @@ -13,7 +13,9 @@ buildFHSChrootEnv { pkgs.python pkgs.gnome2.zenity pkgs.xdg_utils - ]; + ] + ++ (if config.steam.java or false then [ pkgs.jdk ] else [ ]) + ; multiPkgs = pkgs: [ pkgs.cairo @@ -23,6 +25,7 @@ buildFHSChrootEnv { pkgs.pango pkgs.freetype + pkgs.fontconfig pkgs.xlibs.libICE pkgs.xlibs.libSM pkgs.xlibs.libX11 @@ -41,9 +44,11 @@ buildFHSChrootEnv { pkgs.xlibs.libXtst pkgs.xlibs.libXxf86vm + pkgs.ffmpeg pkgs.libpng12 pkgs.mesa pkgs.SDL + pkgs.SDL2 pkgs.libgcrypt pkgs.zlib From 573aa18e9f3527c23c88b250f101d17db116434f Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Sun, 15 Jun 2014 19:17:58 +0200 Subject: [PATCH 389/789] steam: fix extraBuildCommandsMulti on i686 --- pkgs/build-support/build-fhs-chrootenv/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/build-fhs-chrootenv/default.nix b/pkgs/build-support/build-fhs-chrootenv/default.nix index b325c22a25a..89dd2faf3ba 100644 --- a/pkgs/build-support/build-fhs-chrootenv/default.nix +++ b/pkgs/build-support/build-fhs-chrootenv/default.nix @@ -213,7 +213,7 @@ in stdenv.mkDerivation { cd "$out/sw" ${extraBuildCommands} cd "$out/sw" - ${extraBuildCommandsMulti} + ${if isMultiBuild then extraBuildCommandsMulti else ""} cd .. ''; } From 5a74e1a6060723dd721afbd3ce8885c9f36c0a09 Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Thu, 19 Jun 2014 11:28:14 +0200 Subject: [PATCH 390/789] steam-chrootenv: remove fontconfig from installed modules --- pkgs/games/steam/chrootenv.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix index 67f69aa4067..4844e6a5c87 100644 --- a/pkgs/games/steam/chrootenv.nix +++ b/pkgs/games/steam/chrootenv.nix @@ -25,7 +25,6 @@ buildFHSChrootEnv { pkgs.pango pkgs.freetype - pkgs.fontconfig pkgs.xlibs.libICE pkgs.xlibs.libSM pkgs.xlibs.libX11 From 3894e687218b6eacf42420bf26b148a04a20a20a Mon Sep 17 00:00:00 2001 From: Christoph Hrdinka Date: Thu, 10 Jul 2014 10:25:19 +0200 Subject: [PATCH 391/789] steam-chrootenv: fix indentation --- pkgs/games/steam/chrootenv.nix | 72 +++++++++++++++++----------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix index 4844e6a5c87..75bbca67ab0 100644 --- a/pkgs/games/steam/chrootenv.nix +++ b/pkgs/games/steam/chrootenv.nix @@ -18,47 +18,47 @@ buildFHSChrootEnv { ; multiPkgs = pkgs: - [ pkgs.cairo - pkgs.glib - pkgs.gtk - pkgs.gdk_pixbuf - pkgs.pango + [ pkgs.cairo + pkgs.glib + pkgs.gtk + pkgs.gdk_pixbuf + pkgs.pango - pkgs.freetype - pkgs.xlibs.libICE - pkgs.xlibs.libSM - pkgs.xlibs.libX11 - pkgs.xlibs.libXau - pkgs.xlibs.libxcb - pkgs.xlibs.libXcursor - pkgs.xlibs.libXdamage - pkgs.xlibs.libXdmcp - pkgs.xlibs.libXext - pkgs.xlibs.libXfixes - pkgs.xlibs.libXi - pkgs.xlibs.libXinerama - pkgs.xlibs.libXrandr - pkgs.xlibs.libXrender - pkgs.xlibs.libXScrnSaver - pkgs.xlibs.libXtst - pkgs.xlibs.libXxf86vm + pkgs.freetype + pkgs.xlibs.libICE + pkgs.xlibs.libSM + pkgs.xlibs.libX11 + pkgs.xlibs.libXau + pkgs.xlibs.libxcb + pkgs.xlibs.libXcursor + pkgs.xlibs.libXdamage + pkgs.xlibs.libXdmcp + pkgs.xlibs.libXext + pkgs.xlibs.libXfixes + pkgs.xlibs.libXi + pkgs.xlibs.libXinerama + pkgs.xlibs.libXrandr + pkgs.xlibs.libXrender + pkgs.xlibs.libXScrnSaver + pkgs.xlibs.libXtst + pkgs.xlibs.libXxf86vm - pkgs.ffmpeg - pkgs.libpng12 - pkgs.mesa - pkgs.SDL - pkgs.SDL2 + pkgs.ffmpeg + pkgs.libpng12 + pkgs.mesa + pkgs.SDL + pkgs.SDL2 - pkgs.libgcrypt - pkgs.zlib + pkgs.libgcrypt + pkgs.zlib - pkgs.alsaLib - pkgs.libvorbis - pkgs.openal - pkgs.pulseaudio + pkgs.alsaLib + pkgs.libvorbis + pkgs.openal + pkgs.pulseaudio - pkgs.flashplayer - ]; + pkgs.flashplayer + ]; extraBuildCommandsMulti = '' cd usr/lib From 23d5fd2e2ff091468f493043e14526c1b8f1556b Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Sat, 6 Sep 2014 00:30:10 +0200 Subject: [PATCH 392/789] Fix steam package --- pkgs/games/steam/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/games/steam/default.nix b/pkgs/games/steam/default.nix index ba5a410f3a3..9104bb40f77 100644 --- a/pkgs/games/steam/default.nix +++ b/pkgs/games/steam/default.nix @@ -8,8 +8,6 @@ stdenv.mkDerivation { sha256 = "08y5qf75ssk4fnazyv2yz1c5zs7gjiwigaibv8yz1gbr290r0b52"; }; - buildInputs = [ dpkg ]; - unpackPhase = "true"; installPhase = '' make DESTDIR=$out install mv $out/usr/* $out #*/ From 0dc8d73d17873ddce19c7472d67662a41c96ca69 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sat, 6 Sep 2014 00:54:40 +0200 Subject: [PATCH 393/789] Fix munin test evaluation --- nixos/tests/munin.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/tests/munin.nix b/nixos/tests/munin.nix index ddbac590143..d18abd68ee0 100644 --- a/nixos/tests/munin.nix +++ b/nixos/tests/munin.nix @@ -18,8 +18,8 @@ import ./make-test.nix { ''; }; }; + systemd.services.munin-node.unitConfig.TimeoutSec = 240; }; - systemd.services.munin-node.unitConfig.TimeoutSec = 240; }; testScript = '' From f4ebb3ebac9ccaf1dacebba0550c21818101be3d Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Fri, 5 Sep 2014 16:50:48 -0400 Subject: [PATCH 394/789] klibc: bump --- pkgs/os-specific/linux/klibc/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/klibc/default.nix b/pkgs/os-specific/linux/klibc/default.nix index df44cb68d8b..b948dbff2c1 100644 --- a/pkgs/os-specific/linux/klibc/default.nix +++ b/pkgs/os-specific/linux/klibc/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, kernelHeaders, kernel, perl }: let - version = "2.0.3"; + version = "2.0.4"; commonMakeFlags = [ "prefix=$(out)" @@ -14,7 +14,7 @@ stdenv.mkDerivation { src = fetchurl { url = "mirror://kernel/linux/libs/klibc/2.0/klibc-${version}.tar.xz"; - sha256 = "02035f2b230020de569d40605485121e0fe481ed33a93bdb8bf8c6ee2695fffa"; + sha256 = "7f9a0850586def7cf4faeeb75e5d0f66e613674c524f6e77b0f4d93a26c801cb"; }; patches = [ ./no-reinstall-kernel-headers.patch ]; From 7d6ce52d19281e3d0646782a899cf6623d41e4da Mon Sep 17 00:00:00 2001 From: taku0 Date: Fri, 5 Sep 2014 19:59:01 -0700 Subject: [PATCH 395/789] firefox-bin: update to version 32.0 --- .../browsers/firefox-bin/default.nix | 360 +++++++++--------- .../browsers/firefox-bin/generate_nix.rb | 2 + 2 files changed, 183 insertions(+), 179 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix index 56ba95c661f..f24f44c1719 100644 --- a/pkgs/applications/networking/browsers/firefox-bin/default.nix +++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix @@ -40,186 +40,188 @@ assert stdenv.isLinux; let - version = "31.0"; + version = "32.0"; sources = [ - { locale = "ach"; arch = "linux-i686"; sha256 = "8372c1227b75486e297fd914bac530a45b22b789e627638e010d4c25337f350f"; } - { locale = "ach"; arch = "linux-x86_64"; sha256 = "e01412aa570a462a3bb1ba851cd7133014b3299c0ad349c15534edc35c6d6397"; } - { locale = "af"; arch = "linux-i686"; sha256 = "e75bd2d41de60483ed1eadcf03d9cd57146210ff9fdfe04e984404ce4bca29f7"; } - { locale = "af"; arch = "linux-x86_64"; sha256 = "32697271215a0e63b7d0b25398d27772da5d53e88d020df24f170ebc341e5394"; } - { locale = "an"; arch = "linux-i686"; sha256 = "3a590702183a86283e4de415eefdeed6f95f1e5d48c64456c4d6db8f84dcfb68"; } - { locale = "an"; arch = "linux-x86_64"; sha256 = "98d35a6a2f0875a9723ed9511f3bea65f58da3196db3f75aaf7420d45bde33ad"; } - { locale = "ar"; arch = "linux-i686"; sha256 = "e632f104442b725cf8e0e25c9a924b166289e1fab601a70aee0a81394632423c"; } - { locale = "ar"; arch = "linux-x86_64"; sha256 = "603a054ceb36645881f52042e556572252e898bfa78cec04811e65f27b9db026"; } - { locale = "as"; arch = "linux-i686"; sha256 = "05e64b9113f450bfbfa1b99c9580dbb2442af35d6cc20dec0c7af379dd5d37db"; } - { locale = "as"; arch = "linux-x86_64"; sha256 = "85b57a101afd0c4aae040bb1f3523ddda3079d46ac8abe9cad826939fd274353"; } - { locale = "ast"; arch = "linux-i686"; sha256 = "5df5eb0db623b42d9a2c9be58807ec66f43a26dd1365d44202d4b0db50d6a6f0"; } - { locale = "ast"; arch = "linux-x86_64"; sha256 = "6faac3f3637bd68d6c20c73dd84c554afdaa136c4e142c26eb8142b7ab00895f"; } - { locale = "be"; arch = "linux-i686"; sha256 = "4a87051df26ddb3fd2cf7c2beabc2d403cbc4d2f2e7e0802fb11566722171b57"; } - { locale = "be"; arch = "linux-x86_64"; sha256 = "8194b851ed7f9559b78f63711df598ed094783eb2cc288fbd1e880d53118dde5"; } - { locale = "bg"; arch = "linux-i686"; sha256 = "f6f903529d3276d1aa55968d4978fe5977d45076db0ee99d87199d59a9441ad5"; } - { locale = "bg"; arch = "linux-x86_64"; sha256 = "bce34ee8ec314db0f7abfeddf491d15642dcedea125dc9bb7d7dda3915054940"; } - { locale = "bn-BD"; arch = "linux-i686"; sha256 = "9bd0e37ddf9a222263ca90308245e2078f45d754d8a2b0bc1e4dea13a5e7b581"; } - { locale = "bn-BD"; arch = "linux-x86_64"; sha256 = "debb3a9983e4219b6632cdfd09d04ab95314ba4e0bd7ff36fd89f0a748d25cdd"; } - { locale = "bn-IN"; arch = "linux-i686"; sha256 = "ea2c9d29f4a3dfe8e0f146979c47ccba835b81cb1f1ed6e95124a837918590fa"; } - { locale = "bn-IN"; arch = "linux-x86_64"; sha256 = "b2bf8e36ac1ca1afeae463bf95a289db7cf2d2fa303083ab405497cca2993b57"; } - { locale = "br"; arch = "linux-i686"; sha256 = "b4b9d2828e5387a65d0f63b2149400626cd47fc81b97b912eda11b3fe31d4604"; } - { locale = "br"; arch = "linux-x86_64"; sha256 = "c3af78f1215ffc1e9b6c193ba87d17e2f08e1a24856ee68aabf95b3ee7804ea9"; } - { locale = "bs"; arch = "linux-i686"; sha256 = "7930f10d5d43e4504b9f347bcb2a2ef451be4418cee86c199b3e98c38587a20d"; } - { locale = "bs"; arch = "linux-x86_64"; sha256 = "ee31279d2acf7286c9a59c99e68fdd1692b96247585230df20ea2bea5ee30ba2"; } - { locale = "ca"; arch = "linux-i686"; sha256 = "f22f7964180ad27a122e56f070c6a2a0e3b044fe15ec5046b04db03877a3b7c7"; } - { locale = "ca"; arch = "linux-x86_64"; sha256 = "84e8675f9613d1a8a49a760ee46d4625b88092cfc542e6b750384d0d5a0a465f"; } - { locale = "cs"; arch = "linux-i686"; sha256 = "bed550a83c763a8147ef862cca7ca36106bfc5b34ea81f008c94886b86a3dde2"; } - { locale = "cs"; arch = "linux-x86_64"; sha256 = "8bf76f388c6286a1b91cf460325b98c2dd08842031288617d9141b1368b5f62c"; } - { locale = "csb"; arch = "linux-i686"; sha256 = "2420bf49ff3429b3f186b17555b8b3250d44579b5ff7ce616914af646b5996be"; } - { locale = "csb"; arch = "linux-x86_64"; sha256 = "a0ee304a61b12ec1dd3caf5d876acbd9d2ad4443f9b96e73ecc1de8a1e16206f"; } - { locale = "cy"; arch = "linux-i686"; sha256 = "603a66c237e95534d2dbd004e7fd77b69d5b99b73cba797c7825aaca6d849c61"; } - { locale = "cy"; arch = "linux-x86_64"; sha256 = "69f68c024d6e9999b5a846d12c5a61ca63d962f6bd21737769d1fe5519916dad"; } - { locale = "da"; arch = "linux-i686"; sha256 = "da8ed391e8ae9729cf2af35700aff3f6900af208fee9eab6a6bd0fcb303abd09"; } - { locale = "da"; arch = "linux-x86_64"; sha256 = "7e3cc63eb61289e1006f683581345caaffe3ae39f7a636ff4f451b1e77a8ffb6"; } - { locale = "de"; arch = "linux-i686"; sha256 = "f191e74047cdddd43fa72242b1dce15a28160f62b4b8eae08ad117f4b27d6e0f"; } - { locale = "de"; arch = "linux-x86_64"; sha256 = "a81165d446cab525645ca2b18ef28cf253c6ee6267086d692a3904c79f7e5be0"; } - { locale = "el"; arch = "linux-i686"; sha256 = "eb0757aafd2a1c4bb9abeab01a3960d3ac21b92879f8dc7d24f485a43d305957"; } - { locale = "el"; arch = "linux-x86_64"; sha256 = "900f64bad286393f6d96f0ff00c6e78ae6cce998046cf506e2b3ec7a7b8e76c0"; } - { locale = "en-GB"; arch = "linux-i686"; sha256 = "99284b229b7bfcc44cce3ebeee523e49bd5d9c7d860345ad3e242af4f9848683"; } - { locale = "en-GB"; arch = "linux-x86_64"; sha256 = "9a4e003441556422375d4bede21da27a03d31b5ec452ff467abcfffdfe363f4a"; } - { locale = "en-US"; arch = "linux-i686"; sha256 = "13b4297db52ef851b38f292eba2b2136e4c2f1453e004012fe8b1fbcf000abce"; } - { locale = "en-US"; arch = "linux-x86_64"; sha256 = "ce87f081c4867b9968a2695341001854aa6c1f4f19073d13f54f333cfed236fc"; } - { locale = "en-ZA"; arch = "linux-i686"; sha256 = "849584baf4c6dd330bf9c798e3e8923004a3a381642d4f684b5de3fb5b4fd895"; } - { locale = "en-ZA"; arch = "linux-x86_64"; sha256 = "635d0cb43a2b5f7f0401f961fd88fc0d6735223ad421ec0ef92a4ee16b29727f"; } - { locale = "eo"; arch = "linux-i686"; sha256 = "91da9571212dc82f5d7140e4de073189018f7f895a3b263a4f8840401b4b10bb"; } - { locale = "eo"; arch = "linux-x86_64"; sha256 = "77f39ab0168efe9070ecd881dbd2884fe5f35eeea17a63ad8d957398f6eef40d"; } - { locale = "es-AR"; arch = "linux-i686"; sha256 = "f4ec6f07e67195981c12b5cbc3a6289a6e9d29539014c034039bd498a40f9301"; } - { locale = "es-AR"; arch = "linux-x86_64"; sha256 = "3f24135fd1a6fd2207bf1d80fc79cb34536b109e195e43a3a13eba0b68548c0e"; } - { locale = "es-CL"; arch = "linux-i686"; sha256 = "de3672a512473cc6edc48bb775bc9a405d0c9effccdb0cd46af5ce2593d67613"; } - { locale = "es-CL"; arch = "linux-x86_64"; sha256 = "770134c2bd8bc9f2e629e355b8e3b0949f67dd2ecd1b3a1d513bff364e53b734"; } - { locale = "es-ES"; arch = "linux-i686"; sha256 = "4eeb5854427cde599468b90af70ae3e04eb9aff5132659f6e1ddb2f859f0be74"; } - { locale = "es-ES"; arch = "linux-x86_64"; sha256 = "eb91e2e9b80cab85e6ab75e78a9b206a18bb647ffb247c0d5ed324ee219dccd9"; } - { locale = "es-MX"; arch = "linux-i686"; sha256 = "0aa0c85a51a50adb9eca5e5a1eda0ca11ddc15ad12b2d930ebe769f10d535433"; } - { locale = "es-MX"; arch = "linux-x86_64"; sha256 = "3f340072c80c95283b17e797bf4fdbde9d1de55b5f10f1c9e8193f8426c6157d"; } - { locale = "et"; arch = "linux-i686"; sha256 = "4719961e58e755ea2d9b94ff7439e1f9e858b0dacbd8631f98fadebca36c72a1"; } - { locale = "et"; arch = "linux-x86_64"; sha256 = "70aa1a76414c50b00fc85be87a07b936c7f60d83037f13716862e8491ec8d609"; } - { locale = "eu"; arch = "linux-i686"; sha256 = "ea450d11b0cd3b4381797bf6ca48d74fb18d661864eccb365bc2d51b872b101a"; } - { locale = "eu"; arch = "linux-x86_64"; sha256 = "d543e7fdd4c27875d30a1d527219e257296c6010e80dc0d5529722aa82cc666f"; } - { locale = "fa"; arch = "linux-i686"; sha256 = "4b8aaf0d27f10474c6ec4eeec1418ffb08338475c5433199ac2db79aab5273b2"; } - { locale = "fa"; arch = "linux-x86_64"; sha256 = "df10d71c7a762696ee682ca705052b15031dc7e84aa396f67fa26463e3dcd353"; } - { locale = "ff"; arch = "linux-i686"; sha256 = "acdfec7656b48e5502692c408cd8c7543add80181130bdd2e0ec66ac44219a06"; } - { locale = "ff"; arch = "linux-x86_64"; sha256 = "a9a0041cba2f80b09a2f22da6f1e9bfdfc1cbf0f5c324a427a1758174901fc27"; } - { locale = "fi"; arch = "linux-i686"; sha256 = "304e90020134af5564d5c90c5d9fee6264aa871e82419408f5b0e9d97f8f8ff1"; } - { locale = "fi"; arch = "linux-x86_64"; sha256 = "bfb86547ea4e0a5650a152070a7651a7f63b0df366fa4aed7f890033332e64a5"; } - { locale = "fr"; arch = "linux-i686"; sha256 = "1ccef0f95df1571b9e378d97122303982f93251bd3ed70d0af93babc3459bad2"; } - { locale = "fr"; arch = "linux-x86_64"; sha256 = "93ffcc3bbba8b7e0941fe674f6a67ed378e75b37c3e52debbef2434ea75f2b09"; } - { locale = "fy-NL"; arch = "linux-i686"; sha256 = "20ae7baa888fdcb467388313fa51104f8ba77ca31b2bcd731e2d65a46ff75c3f"; } - { locale = "fy-NL"; arch = "linux-x86_64"; sha256 = "33a028be0c63dc892efc93bd03375c8c4f9be38acb96a2bc516300c204086b3d"; } - { locale = "ga-IE"; arch = "linux-i686"; sha256 = "ddf134c692d321744bd787b7833ccc9b06ef130865c8f8ee816d35ff55c344a7"; } - { locale = "ga-IE"; arch = "linux-x86_64"; sha256 = "e76e18b18a7468ee6a550e837abf04b79833ae084210f723d0781f2b81e3077e"; } - { locale = "gd"; arch = "linux-i686"; sha256 = "3c361e322be79ffaec9a382aacf3b9cc90f03fa664e35e283cd8572e66d3b8b0"; } - { locale = "gd"; arch = "linux-x86_64"; sha256 = "5e95305321ff373d9cc6eee522dbd5ee948e6c298f2fb38d655965ec1de448e0"; } - { locale = "gl"; arch = "linux-i686"; sha256 = "99b9dbf38f50f5385072d72d14684e980aead6125c4c91cfa8e69bd5c7f1aa0e"; } - { locale = "gl"; arch = "linux-x86_64"; sha256 = "372bf1395f96be3b41d05630267354f7a6c0706e90f5e21320ab5ebd5d411d41"; } - { locale = "gu-IN"; arch = "linux-i686"; sha256 = "0b8429553052c8e23d3aaf1210d53b51fac2250d1d526311a22757ebd85ca54f"; } - { locale = "gu-IN"; arch = "linux-x86_64"; sha256 = "da6a7d7292965a0c1eaf58564d9bf85192719831208e8762d06c7082ee9824d7"; } - { locale = "he"; arch = "linux-i686"; sha256 = "78ac97da0515eb5a94455dcbf4cbd9a8d1ddbf03d4b8d29bad7b9e8fdbf5ef12"; } - { locale = "he"; arch = "linux-x86_64"; sha256 = "c0d853c639cfa7b14ce10ee50776f3aebf0c84807bb59d9ec6e0e20554ae8ed2"; } - { locale = "hi-IN"; arch = "linux-i686"; sha256 = "82376fe3005c56d2e895e1ffa0e9233f3885700117a73d1c49d67d742e324752"; } - { locale = "hi-IN"; arch = "linux-x86_64"; sha256 = "0ed6234fa9c5d449437d133c83f572ceca3dd82df6cbee8573c9f137c50bcf9c"; } - { locale = "hr"; arch = "linux-i686"; sha256 = "10ff3539c27dc49763fe322e9540878d421bdf590d9a307fecc6c158472889c3"; } - { locale = "hr"; arch = "linux-x86_64"; sha256 = "f97d7e3b290b0fc6a9116198da7fc7eb32895da74a3ad572d29577e14ab12f20"; } - { locale = "hsb"; arch = "linux-i686"; sha256 = "bba1a949823e70d1b5f4a0bec27437b6fc11638fa67b2ca286a833a0d44f5ef8"; } - { locale = "hsb"; arch = "linux-x86_64"; sha256 = "5efaf3ec7f7b5d94df17d2fe0d5877a35442d33ccbf141fcf30e11351f9b4000"; } - { locale = "hu"; arch = "linux-i686"; sha256 = "88a86463f2a47e38886cd2e8b470702623c772086b71d55e61de80e1c1be4fb3"; } - { locale = "hu"; arch = "linux-x86_64"; sha256 = "967ff3bb62c8dbc93a25f75bec73803428b3fe5024841d3e2d97e444c1d27304"; } - { locale = "hy-AM"; arch = "linux-i686"; sha256 = "4bac63a8b8fea36c3dab794dff933972f9adff7f91a7d3957d4edc3c60534016"; } - { locale = "hy-AM"; arch = "linux-x86_64"; sha256 = "9c26a2438462429f96b2d8bb8c4566b1b1f7d03200ed68aaca4eb6602342c33c"; } - { locale = "id"; arch = "linux-i686"; sha256 = "e36cd7195d5cd21afd97f31a5108af5999ade8a97f92db3e00067f3cfc31cd72"; } - { locale = "id"; arch = "linux-x86_64"; sha256 = "191e47625a6764670bfbab673989e5b2e6ad45ad1c3a0544a129afe8cb963171"; } - { locale = "is"; arch = "linux-i686"; sha256 = "c839d21d4e16b05bd9aa995ff2124b6b8418ca1405a8f3bfc70fb65b5710488b"; } - { locale = "is"; arch = "linux-x86_64"; sha256 = "16d8df9867e6a13a2be7408f459e2c67d449a47105cf9709e4a743abed8229a9"; } - { locale = "it"; arch = "linux-i686"; sha256 = "7f9c3909cda97d9a40f2630af4f11e6dd8e29f45ab949348123c4334f6aee8fe"; } - { locale = "it"; arch = "linux-x86_64"; sha256 = "52f95491dbf4ee9a1f2ee552feb8a30b8196b6747064e45d5a98d0fecfa11f67"; } - { locale = "ja"; arch = "linux-i686"; sha256 = "6586fd1d792feea4e98442736f06eab15d7de526667db6a3ce7de1afac9fdaec"; } - { locale = "ja"; arch = "linux-x86_64"; sha256 = "0ef883bdf3d415a5795bd613af05b16a406b3af3415ac1c1ebc646dd76f76467"; } - { locale = "kk"; arch = "linux-i686"; sha256 = "39167c7ee9f0e9b62308fcaba0f061bda0eaac9d3bb707c6556f71085c7ddd54"; } - { locale = "kk"; arch = "linux-x86_64"; sha256 = "ec2c9ae1f5daba1e3b0c8a4f24737b0968bc818748b682418f02983e25302703"; } - { locale = "km"; arch = "linux-i686"; sha256 = "797747aa402ad42b6addd04d69995b0ea5c628da71f2cce15c8e612d15461189"; } - { locale = "km"; arch = "linux-x86_64"; sha256 = "fd75e5fbba75dd8a6cdafdb1c4983bfd4336f300df559518d3fff0e6e7e482d6"; } - { locale = "kn"; arch = "linux-i686"; sha256 = "fada07e5679bcf174078e0c596cd121301f72c307401922e5772c6fa79eeedbe"; } - { locale = "kn"; arch = "linux-x86_64"; sha256 = "d9cbb3dc02e3db54ea691dc09c882fcd65fd99bb1d0250e29e3d0a37df72179b"; } - { locale = "ko"; arch = "linux-i686"; sha256 = "22bd8b1dec10117579a267d5bb9b10f460c27c9419305aa1cc4456b09fcd7df5"; } - { locale = "ko"; arch = "linux-x86_64"; sha256 = "0e9da5e79ebb149a62606e002202b70908d329a26c213df35480962fb05a9f7c"; } - { locale = "ku"; arch = "linux-i686"; sha256 = "e5f55ab5112ca3a137c4df37460304ff7e33471e3e95e2709ace1cb32ef88084"; } - { locale = "ku"; arch = "linux-x86_64"; sha256 = "224385ae3a9da1fbbbc0d309eba0de6f64e29da4de29299cb1c778cb5a57c968"; } - { locale = "lij"; arch = "linux-i686"; sha256 = "e39f5edc61e25f490dcae7ea4fdc91033f5e868cbcaf848180c40bd920455f17"; } - { locale = "lij"; arch = "linux-x86_64"; sha256 = "f6e9725f368ce4df3be078a1ad268a29cfeba01e5606de85fbe2e375b3a5e263"; } - { locale = "lt"; arch = "linux-i686"; sha256 = "46b2c694c60540ded3d3f6cb504bc5b7a709cc0940ff6b3223f05d7b8e1f7309"; } - { locale = "lt"; arch = "linux-x86_64"; sha256 = "51d10f5c63e377b0f9e46d7ee12ea8552b8df57d6e8d9334555b7fbab617c8a4"; } - { locale = "lv"; arch = "linux-i686"; sha256 = "8e224c3efcca9864255332b7f7c089c0c04b0eb2dfe60cd04d7dd6a61d807852"; } - { locale = "lv"; arch = "linux-x86_64"; sha256 = "e53090be92e7557be5d38aed25ac0a2fb1006d15bb38d61141473f4b38c6e26c"; } - { locale = "mai"; arch = "linux-i686"; sha256 = "479795f542d17476bb721d3e7c7fef565617528016085976a63b9e5864b4dd31"; } - { locale = "mai"; arch = "linux-x86_64"; sha256 = "8daa2882e27a19894ded43885e868dd7203f506cb1bd25ede1d36328fffbbe0d"; } - { locale = "mk"; arch = "linux-i686"; sha256 = "78f6fa53d5fda46fbe54b9978acaa75faaf094d2d3b8e464539609253da07c52"; } - { locale = "mk"; arch = "linux-x86_64"; sha256 = "47a147a93dc7d1e683a57f0d7ddd7fbe3d944145932e0773be8dab6a7a0b4b01"; } - { locale = "ml"; arch = "linux-i686"; sha256 = "6ac6a36596db8bf675df76abc629fc99ff019455f8c08842668a08cb40b67e9a"; } - { locale = "ml"; arch = "linux-x86_64"; sha256 = "c4d4bed760c429c5db1d5c42682127794f81e20182aed0fc37f4c9aaf7bc582c"; } - { locale = "mr"; arch = "linux-i686"; sha256 = "a2fc483f2aca2cbb7bdff42e4b27b711fdf27f46bee707d1c6d664c391c95def"; } - { locale = "mr"; arch = "linux-x86_64"; sha256 = "5209926b3130b8b75d933287872af62ac752fc9e3fc170b540a2f0bc49d97bdf"; } - { locale = "ms"; arch = "linux-i686"; sha256 = "926944ef9a3807b3379bba4b2fff05d8c2776cc4e3239b0b2bd2e5424151e6ee"; } - { locale = "ms"; arch = "linux-x86_64"; sha256 = "20cf8557fa41119febc99bbc6de10ea7e97d3c1abc2245241db862ca8a735db1"; } - { locale = "nb-NO"; arch = "linux-i686"; sha256 = "5a2778d9e93ae4371ad29737904aaecacf494855b45e5e79cfe773410f6600f6"; } - { locale = "nb-NO"; arch = "linux-x86_64"; sha256 = "8cfe4c778ee258dcd511990fd71eefcda46ab73c4448705e3815c5c371ee6ea1"; } - { locale = "nl"; arch = "linux-i686"; sha256 = "350efbbaeb3ef9eee16a398ce482c2a3790f5b85dda6177857d7448de03af9e1"; } - { locale = "nl"; arch = "linux-x86_64"; sha256 = "6d1310f7e2ebe5fc846f966bfa930a2bf3cd0877260de40b01496cb860630c37"; } - { locale = "nn-NO"; arch = "linux-i686"; sha256 = "6447690e509ec0d1306bbfa484df82e62dd5909603b43440443c28bf2f489f24"; } - { locale = "nn-NO"; arch = "linux-x86_64"; sha256 = "6e71ad4fe85b02f8745e6b3b39a6f69f13fff45fd555704747d1f59fcf64447a"; } - { locale = "or"; arch = "linux-i686"; sha256 = "71866d15af41df9d98716544d25d8fc2069a9a8f92cdd8180731e3b3fb3c3492"; } - { locale = "or"; arch = "linux-x86_64"; sha256 = "22ace7c20948526f1011e16581c870a919c4d8002bd0c3210ae8f702d1f8a03f"; } - { locale = "pa-IN"; arch = "linux-i686"; sha256 = "12eabc66d39bd767c129c1a1777a6a13812efa0bc3df430dd7940908f53094ec"; } - { locale = "pa-IN"; arch = "linux-x86_64"; sha256 = "54501bca85e231e9fab0aa894a6e566966fdbd172fc45888d97eb828e248d105"; } - { locale = "pl"; arch = "linux-i686"; sha256 = "e16acf44c5ab2ee708ba0f74301106a5fc0c36cd65ebd302043af09803f30138"; } - { locale = "pl"; arch = "linux-x86_64"; sha256 = "a1532684d5d0e9e2091a5d42202dc6b49ee8c21df14600f0772e1f0f53f6d638"; } - { locale = "pt-BR"; arch = "linux-i686"; sha256 = "9827bfda689b01e795d4ddf7ab1169e25cc1728175af74e8a08fa3e8ef40e40c"; } - { locale = "pt-BR"; arch = "linux-x86_64"; sha256 = "bfe02180011d564fe8deff4d3f3f8e3a6bfde05469738b5b2f8849a2ee485ba8"; } - { locale = "pt-PT"; arch = "linux-i686"; sha256 = "83fcda599d09946da8a968d903fa12b93502a23337f019d3217cc80f81607fe7"; } - { locale = "pt-PT"; arch = "linux-x86_64"; sha256 = "533050be56e6dbf06a5631a5b7a7db2da4f5514f224cb787600671c79c020379"; } - { locale = "rm"; arch = "linux-i686"; sha256 = "62906af16b8e179be3015f6be9cf4b9481fcc506044c053373f9bc2e315729fa"; } - { locale = "rm"; arch = "linux-x86_64"; sha256 = "f968ed9ba8ed43d0d52b02db23b2badf6e6a2544d105f23d6b09b80a07a28ee3"; } - { locale = "ro"; arch = "linux-i686"; sha256 = "503fc4cf0de24ff5b1658d09264f8bb3b131c678f61c554ddf1006633ff2d336"; } - { locale = "ro"; arch = "linux-x86_64"; sha256 = "514625ffbf4af4519a7671896f2f2797a1b17057dea356f7c17fa52a17736358"; } - { locale = "ru"; arch = "linux-i686"; sha256 = "01521832ab38fd46751578691b82c0283d9c7a68459ab7225328afa285699b01"; } - { locale = "ru"; arch = "linux-x86_64"; sha256 = "16b780ed767ff0537ec4619453d8cd3ebdcf124704d03d1741b5501007078dee"; } - { locale = "si"; arch = "linux-i686"; sha256 = "35ee6cded95ea13c8c480a46ffc9398f50d172aff2030611d6713b04ddc1c54d"; } - { locale = "si"; arch = "linux-x86_64"; sha256 = "c4ad9cec257bacffbcf3b4c84c63ec52e1ce830754b5be0b622a44ab223919ad"; } - { locale = "sk"; arch = "linux-i686"; sha256 = "53a6bc5aebe5edf4bad34e163a54a3bed30a7c74ff883463caf057793ac3f58e"; } - { locale = "sk"; arch = "linux-x86_64"; sha256 = "5110806bb3f02317b542bb79ce34c6bffeef68982807a5e53614958fb9adc779"; } - { locale = "sl"; arch = "linux-i686"; sha256 = "3a58652b394fc2ffe1abcc1e89596f3e9357a2455cda8a0c76a44ff20331ada2"; } - { locale = "sl"; arch = "linux-x86_64"; sha256 = "fb733f327080e5b4e2ae079a5cdbdb645fde1c9388368c13fcc6af4d3d91da7a"; } - { locale = "son"; arch = "linux-i686"; sha256 = "56a262e4411404e94747312858ae1e7ca99ea48171361f03cdc660f8b0da0da2"; } - { locale = "son"; arch = "linux-x86_64"; sha256 = "db77a5cab885f96efcbaae8e9f284ad30ab78aae1a405a5f1c2ac7d4d2e43498"; } - { locale = "sq"; arch = "linux-i686"; sha256 = "fde7c85f09997ab3f7918072a9577f8d70947c5fafcc70782d684759146941bd"; } - { locale = "sq"; arch = "linux-x86_64"; sha256 = "9865054be5d0a3913e4fa16aafdacd345607955b1d733d978033a2825d926c32"; } - { locale = "sr"; arch = "linux-i686"; sha256 = "87f9f7d46a211b9205df5258f551b7c42264fdb81c70f836a37b3d5a821c4c03"; } - { locale = "sr"; arch = "linux-x86_64"; sha256 = "ed03914c382efdec2f218e87e8efdd2b761e16ad0cc2a646b02050f27503161b"; } - { locale = "sv-SE"; arch = "linux-i686"; sha256 = "1e28e39ac45177607a2ff3c71d3317b8b777679bc9e8dad2236991f05c6823ca"; } - { locale = "sv-SE"; arch = "linux-x86_64"; sha256 = "81c2fdc5ec9f338b1dc3cd5d2e8dd62cf106c4cf759826be8eb7f3f3f550c49e"; } - { locale = "ta"; arch = "linux-i686"; sha256 = "8e27ba1c8079745a93bebf6f7e4dbfa9ffc32b91d6dfa12975497466f3ec1550"; } - { locale = "ta"; arch = "linux-x86_64"; sha256 = "c244aeff11608d6f1a8513045ab53d4909af02915761b15ff34ddbbc9995dcbe"; } - { locale = "te"; arch = "linux-i686"; sha256 = "32e404eeeebeb521d909cc64fe1ba3c0b40130f7a4b4ae742a48ba61e8b668d4"; } - { locale = "te"; arch = "linux-x86_64"; sha256 = "83b5cefddc6308050c24d9fb30818fa1fb3c1d4ba9a2de9d8fc99878b01855b4"; } - { locale = "th"; arch = "linux-i686"; sha256 = "009cb39521635c1c89717b3d526a59c05e7ab82082ec31f0fd482800f01d3e8b"; } - { locale = "th"; arch = "linux-x86_64"; sha256 = "1fe31902ef44e7049e9efa4774098c00d3ecad0a4c4f585716cb4bec158e3b88"; } - { locale = "tr"; arch = "linux-i686"; sha256 = "e54ee04479b9891420af6fc1d639da121b677660a5bf1dfd8565792c9e1cdbdf"; } - { locale = "tr"; arch = "linux-x86_64"; sha256 = "bdfae1142a7714a0be9bd24b02582a9ab9913c17d130cf0b2928deb657f8bebc"; } - { locale = "uk"; arch = "linux-i686"; sha256 = "b2d6b518e86c3bae1068f7a6d7cdc975f3b0f99e514c5d3d18dbe5e62d15dbce"; } - { locale = "uk"; arch = "linux-x86_64"; sha256 = "71bd0518b69c911dbb21297cd676ed66231a3b7bc59090a9f6a85d6882263277"; } - { locale = "vi"; arch = "linux-i686"; sha256 = "390fb219da7169d69a7aca1df883750d56bf34f0f7b6b49781d6f3c6b8962962"; } - { locale = "vi"; arch = "linux-x86_64"; sha256 = "1c5af9f646ced5533223bca6dd36f364c0ca9d3f02ba93797aa8b091144cf7e2"; } - { locale = "xh"; arch = "linux-i686"; sha256 = "5d0d04c7c84ffc51b11f99205ae767954b78d98c3a2d18bfcceca1cb292fcd9a"; } - { locale = "xh"; arch = "linux-x86_64"; sha256 = "5fafe2b375ee0935da52ec9037c4f515d1be5cf783548215d289a300e06bb9de"; } - { locale = "zh-CN"; arch = "linux-i686"; sha256 = "1361b7cfc08d4d000107a244ec2a163ab27616b1d1db13917f34acc4d4167d34"; } - { locale = "zh-CN"; arch = "linux-x86_64"; sha256 = "66aa04a7b5240df285afd37608c816b7c09cb365c6d0cd5aa4dbe8a7be61d824"; } - { locale = "zh-TW"; arch = "linux-i686"; sha256 = "c0e3d9b584ba10e2a67a904253b2d93ab3546465e69619f932b566ad6b04a003"; } - { locale = "zh-TW"; arch = "linux-x86_64"; sha256 = "6a24f9f3631bc0bcc15de6a124c0f7dbcee6d0099e2f0b0622a18e54c04620a9"; } - { locale = "zu"; arch = "linux-i686"; sha256 = "7fa59f6ee26d48f992015b0bb667a0c230cea854eafa67d7c4e51d38e1a267d3"; } - { locale = "zu"; arch = "linux-x86_64"; sha256 = "4af969f1e0d0703e83d903fc2a30739ae2ab42cc3a24219be8bfd152490970c5"; } + { locale = "ach"; arch = "linux-i686"; sha256 = "cef5938e567e6dc4d0460c1eb3f770d2acfa045d98186f6a490ad53b3c69d302"; } + { locale = "ach"; arch = "linux-x86_64"; sha256 = "bd5427dfd1d11f8a9a8d4803608453fdb11a7d304aed618f26b3fd6667a0d131"; } + { locale = "af"; arch = "linux-i686"; sha256 = "48e97eb3c65b381b8fe579d9a3cb4e4f28f06137043be1a54288f3e85c1f8312"; } + { locale = "af"; arch = "linux-x86_64"; sha256 = "fea64b289b3ee69ec0efa55b0d57998485125bf000c78e1c4567be5b40e1ac34"; } + { locale = "an"; arch = "linux-i686"; sha256 = "022110d1b31f51f5e9aedb2eac01159fd7c14e9c787530c246ba907e68317d0d"; } + { locale = "an"; arch = "linux-x86_64"; sha256 = "418f9b1061950b93ff8a2889a47ebd65c792a221510eb15ec6e0d67c73fa4da0"; } + { locale = "ar"; arch = "linux-i686"; sha256 = "228739f558428aa97364da3869ab28e68499e103bac0af7c391f1ee66be97754"; } + { locale = "ar"; arch = "linux-x86_64"; sha256 = "44255bbfed7a804a205846a2c634a0ec4868a05f58a9ce0350ac3d2ce147f500"; } + { locale = "as"; arch = "linux-i686"; sha256 = "0a40d888a10b2be8b76ddab70e32a534a3e95a029aac4c8945bb71b4a6e63d3d"; } + { locale = "as"; arch = "linux-x86_64"; sha256 = "a55a81da699c51b3bb422ba0942d548373d2a207c6e8eb0d7abde50dca6dc57f"; } + { locale = "ast"; arch = "linux-i686"; sha256 = "61826f0098f2535a1019eb1c7e21fb8971f66fa1d39bf773a130e96cfa99897a"; } + { locale = "ast"; arch = "linux-x86_64"; sha256 = "4b84870ecb220189ab59e837f74a2195a38265226dce5542841187d35dbd18dd"; } + { locale = "be"; arch = "linux-i686"; sha256 = "40029f2cdcb4964a43193456f436c3a9428face17ed3ef4b655e3f1bc47c217c"; } + { locale = "be"; arch = "linux-x86_64"; sha256 = "7490f9815dac528c32d0254c9f5e7834e4af6b4e61d6618d235481b0e086906a"; } + { locale = "bg"; arch = "linux-i686"; sha256 = "320e9f8c338d180cd90390b3dbf38b2ed17ab9606ac13c79d64ae114e72653a1"; } + { locale = "bg"; arch = "linux-x86_64"; sha256 = "921ef8a9beb4469d5faba09e6786415dce37030a4c24f6057ec5fbe301113dd4"; } + { locale = "bn-BD"; arch = "linux-i686"; sha256 = "69833779015e09952825d0fdc6fb9283379c9b9a26d7bad4a12bb29bb74c277c"; } + { locale = "bn-BD"; arch = "linux-x86_64"; sha256 = "de3f0efafc6b838e90d550287d574f9fa26c9b2690fa1fc48b766b9d478fc1b9"; } + { locale = "bn-IN"; arch = "linux-i686"; sha256 = "aff667e3277bf61f3b117ebd13a3ce469e9bf6ba58b7dd736d8913b234c4a4a4"; } + { locale = "bn-IN"; arch = "linux-x86_64"; sha256 = "c446d8a57a1542eb2aefd4a0b5304917dde8446c94c11d8f80110ff881878bb2"; } + { locale = "br"; arch = "linux-i686"; sha256 = "5f05c4bb347f5150c5685e7308aee338b6d92b8cac204e7afb326d2c44ff8dd8"; } + { locale = "br"; arch = "linux-x86_64"; sha256 = "6dfa3436ddcf6f47e7d40846b09ad4c7555aae40f25f5380b30a0776d0368d37"; } + { locale = "bs"; arch = "linux-i686"; sha256 = "7df19221c455bfe29e9a8eb6f48088e37be5a493319c46e45b48a72ebbac1df2"; } + { locale = "bs"; arch = "linux-x86_64"; sha256 = "aaa2c0f3eb430337e865732c0bbf3d5efe72869954607f5560c8925bd736cfba"; } + { locale = "ca"; arch = "linux-i686"; sha256 = "9c725ba77e778144e31b907b2b4cdd4f045dc6ce12bedd9bbb92a98224a44327"; } + { locale = "ca"; arch = "linux-x86_64"; sha256 = "30a27b9558bcc7f7c03f4a204e20aabc9b1d4fd5240a93fe14e02f95ba4f34e8"; } + { locale = "cs"; arch = "linux-i686"; sha256 = "491b7114f686235233e3ceb2c7db47d8bef426bd1578545f5d1cd001b15afb71"; } + { locale = "cs"; arch = "linux-x86_64"; sha256 = "098596de29865bac4dcb642d8da801b7707fafbc60f25e5c1803ed8aaaa77d50"; } + { locale = "csb"; arch = "linux-i686"; sha256 = "a53579fc73f5bf4811ab608320b0d889406be9b655574fbaef2aa8db7478e023"; } + { locale = "csb"; arch = "linux-x86_64"; sha256 = "903bb549115252d2850ab7cbca9d46890cb8ee5f40ac7b8740fc3d81a1225c68"; } + { locale = "cy"; arch = "linux-i686"; sha256 = "0f3db887046a8f5b597eca5d943a9eed295f8ca7b8831f8c27ec6c833c63b2b4"; } + { locale = "cy"; arch = "linux-x86_64"; sha256 = "ab680b6ef58106766de8aeae909ffd313abc03f2400a06e2b3f8371e211a0a0d"; } + { locale = "da"; arch = "linux-i686"; sha256 = "47280c825f065cfbfccbef0077032f3c04a75f860eb5a31861515295b6a85050"; } + { locale = "da"; arch = "linux-x86_64"; sha256 = "25a93f49d789d3d5d6d3fa82cbfc5f5c195a8da4d1dfb12c113d29b125e71e79"; } + { locale = "de"; arch = "linux-i686"; sha256 = "2922c1a06f37322c05b6ad66a95fd7cdc2ad10a86ee082739810060a932bea55"; } + { locale = "de"; arch = "linux-x86_64"; sha256 = "5dadafb7e44eb174c717101a336b00a03b8f7fefb606f356c0ae4b00209d5723"; } + { locale = "dsb"; arch = "linux-i686"; sha256 = "047f3c1b05ac28e1e566451e6b93fbb88e300afb0f264faf17e72ac5f9aae201"; } + { locale = "dsb"; arch = "linux-x86_64"; sha256 = "f0de9a6713f197a4664183b4fe80179543588cbaf83d4f174f360177e0149a6d"; } + { locale = "el"; arch = "linux-i686"; sha256 = "5343cc2302d49a57c3fabb7b03ca4f11a0eb979bbab7442262bc34186b3bd596"; } + { locale = "el"; arch = "linux-x86_64"; sha256 = "91ab977a9089fc68ed54062cee6d0a71caa2591ec5d4994181d8939605baa114"; } + { locale = "en-GB"; arch = "linux-i686"; sha256 = "1d4c0d24b2558bd311f9f6cf44186596f9634d7a5c69b4b7648b59a2443272bd"; } + { locale = "en-GB"; arch = "linux-x86_64"; sha256 = "7c13ae7155b92b7aaec599fffdbc8c02fde8b6575f892fd3e5edf67c3102790b"; } + { locale = "en-US"; arch = "linux-i686"; sha256 = "1a6d8fe7cf0df7ccee2047c2031da4b8f0ef8271d6413e0c7bc87bf208c8af90"; } + { locale = "en-US"; arch = "linux-x86_64"; sha256 = "3b9793fe7957031f88f240254326697e685de3690aac1fa13d447cb2a23a2738"; } + { locale = "en-ZA"; arch = "linux-i686"; sha256 = "63fd411e37656bfe56fec468f47dca7a61ffe5f9be3ab1c23ad252b8199f39d5"; } + { locale = "en-ZA"; arch = "linux-x86_64"; sha256 = "3a5510c7a996a50e94e68c05cff1fbf31a7cc787d2bd173828d867d4b8d22243"; } + { locale = "eo"; arch = "linux-i686"; sha256 = "cf2004a5134c6240bfb05f499cee09f425295ce0bd8d170b0832a845b4d255c3"; } + { locale = "eo"; arch = "linux-x86_64"; sha256 = "186753142ed4c28eded8861e399ff33bc7738ba75c112507b4acb53ccd11b13c"; } + { locale = "es-AR"; arch = "linux-i686"; sha256 = "57cf456aed64517f69801d6c19a143aa9a90f85de015be22b8a2e2d4a6b33d23"; } + { locale = "es-AR"; arch = "linux-x86_64"; sha256 = "09c833d17aa31e99fa0aae3eb5f296c643c34ea22d94f8b5ff64e2b871e70dbe"; } + { locale = "es-CL"; arch = "linux-i686"; sha256 = "5b2fca43e84335e8b0cdb5d341402d5b1b57016881e7112a0ae8f5c5374f8857"; } + { locale = "es-CL"; arch = "linux-x86_64"; sha256 = "f1a03f0e4c69d796d5fd4b26aed1d356dfdcdd5ce7f180bf045a97ce308f13c2"; } + { locale = "es-ES"; arch = "linux-i686"; sha256 = "0167a7dcc31364818981372dce640c408a4bfd2983b5bc3d2726b5525873361e"; } + { locale = "es-ES"; arch = "linux-x86_64"; sha256 = "92dac800255e1ba12c48b8078b8098ae1b3980401c6da54c3798d853c6685c13"; } + { locale = "es-MX"; arch = "linux-i686"; sha256 = "e0f7c028869ac2d1edf582622fa2dfe5c6c6dfe042f8d74bc3ec9080dc70a36c"; } + { locale = "es-MX"; arch = "linux-x86_64"; sha256 = "02669ae0b19e3b1cb8589b583b6de0b0b62f2987ef126c7fcc2efa2cd63e714f"; } + { locale = "et"; arch = "linux-i686"; sha256 = "855f6c7bf2bb01e08b8e20e7c8d633000c70e64fd37405695be7cf3cee515be1"; } + { locale = "et"; arch = "linux-x86_64"; sha256 = "348dc193a4bfc6fc53d203cae7e5b5af68c56bcb01ffec0f7c427017f5d3b98f"; } + { locale = "eu"; arch = "linux-i686"; sha256 = "7a79a9967b0522199c62ea03edc27cd2752c80eeba816a9334e9624f48c7525d"; } + { locale = "eu"; arch = "linux-x86_64"; sha256 = "5cc04f7915a31d54d858d0e532e49829ab45ccd250416aed1612774c960d0cb9"; } + { locale = "fa"; arch = "linux-i686"; sha256 = "59ff7d6cd90eb7a4f2e34adacec95ef728e4fe1739a098a22da8843c5a2da1c0"; } + { locale = "fa"; arch = "linux-x86_64"; sha256 = "529a65d93b5da907cc8f2389996e783d261fcd03711c92aab7be0ee05e92aba5"; } + { locale = "ff"; arch = "linux-i686"; sha256 = "62c8c769fc847b2fd564e85748e0b8b1249555d86e09d38212566e4dbbb9526c"; } + { locale = "ff"; arch = "linux-x86_64"; sha256 = "fbc42b7aaf60f83da91b76905ddca103cbdfa660824343348c7b5325977b9e70"; } + { locale = "fi"; arch = "linux-i686"; sha256 = "7377752db6d01993cde0ac9d73234bf8538cee217e3d11089a50c4c2be447751"; } + { locale = "fi"; arch = "linux-x86_64"; sha256 = "5909ddaa88ad8408b8590518ea4b738d7f581ee827ecd679bd8ebd2208287c5e"; } + { locale = "fr"; arch = "linux-i686"; sha256 = "7c9de38b184ca8d10b0d7035c0b31cde79103a25efc516b98f6a2d91e054d7e8"; } + { locale = "fr"; arch = "linux-x86_64"; sha256 = "8668f081a5c976cde7bcea6727d1885d77711c11bbb4a0023c9759d6f0bfb619"; } + { locale = "fy-NL"; arch = "linux-i686"; sha256 = "dff7ae0b0a4b18eaae1501a03ad754e71794cef3981334bbc77cd55f15b42fa2"; } + { locale = "fy-NL"; arch = "linux-x86_64"; sha256 = "3b20b9fe8eee700192296d70b93ff5f21d6667093cbff16303679a3491c78fd7"; } + { locale = "ga-IE"; arch = "linux-i686"; sha256 = "fb4c5e7689668af719f2ed2c16d7605298e61003b6d9490a67742b6146b0f98b"; } + { locale = "ga-IE"; arch = "linux-x86_64"; sha256 = "f3d379924e56b8296004be9c3dbf381cf3535bf1790e44ee2bb1f6477829def1"; } + { locale = "gd"; arch = "linux-i686"; sha256 = "1768c0e05770c502fe3122dd1c37dbd1e51b9b5c5aaa7cf57a5590e9217393d4"; } + { locale = "gd"; arch = "linux-x86_64"; sha256 = "95d77215bd1332cefba9dac1f55eaf3f479927526ca6ed38281837b3c8fbac39"; } + { locale = "gl"; arch = "linux-i686"; sha256 = "0af5c23d8e11ec797537c9710b179c7f6ae182bb4831f535848aba0b229ea89f"; } + { locale = "gl"; arch = "linux-x86_64"; sha256 = "1befe0623ee71fdc3f7508b532a411fb5f8438ca06963f79cd9c3d20c3fdaa7f"; } + { locale = "gu-IN"; arch = "linux-i686"; sha256 = "d61a8bc5eb6b78a4a9d36078ce5946487e0bb9f89ceaba0feb7c449d486feacb"; } + { locale = "gu-IN"; arch = "linux-x86_64"; sha256 = "bcfdfe861bfd7447cab99a03826013e77e004ef9b01927b5dbeb0afd40f46f67"; } + { locale = "he"; arch = "linux-i686"; sha256 = "0b4c596542e65af735a2f66a61743492c146c51373acf7026274378033a6431d"; } + { locale = "he"; arch = "linux-x86_64"; sha256 = "96cd11044613c0a924eee6272313f21e01b987982732d6bcc362935d799fa6ff"; } + { locale = "hi-IN"; arch = "linux-i686"; sha256 = "8640aae3dc8d965ac3c0aa65e3579e7613d0c78dfabb06d23840d39df8881ec0"; } + { locale = "hi-IN"; arch = "linux-x86_64"; sha256 = "b1b84b405b4d0f5c87ab750ed5942d29018e46b73e298296dc9931f8b3981998"; } + { locale = "hr"; arch = "linux-i686"; sha256 = "006e932d4b7474b5f24628d08ec5e28d45b9a23dfb144599fda2b0969f57863e"; } + { locale = "hr"; arch = "linux-x86_64"; sha256 = "b70aa31702ea42b85e6ed678cc20bff94267a746cb81ac70dec0d84a244b489f"; } + { locale = "hsb"; arch = "linux-i686"; sha256 = "c33442ce4cb0d9355c915fa1ea3407f67c0470e8711055bb2fb275e612a64fa4"; } + { locale = "hsb"; arch = "linux-x86_64"; sha256 = "19d6b48b415d48c278f5ec203ee03136a5f80a8ee566e336de187694ab9862a9"; } + { locale = "hu"; arch = "linux-i686"; sha256 = "eddcf8119a9680c2676720f33d0fbe750e015d7d21f07325bd47dea0b7cc5bd9"; } + { locale = "hu"; arch = "linux-x86_64"; sha256 = "703e8e9da4bd1adb2e1ca77b221c4ce80d9e2b63be7b27eb34c0fed29a2d76b6"; } + { locale = "hy-AM"; arch = "linux-i686"; sha256 = "3c2fe1bb3bc7d9d0bf1006962e635262b7ab23017ea703746d436e25b68d7ec6"; } + { locale = "hy-AM"; arch = "linux-x86_64"; sha256 = "602942788ce157b3d2d6a02d0105e1da632a055bf657282131a0946f87a4431d"; } + { locale = "id"; arch = "linux-i686"; sha256 = "de47061063986cff65ae50537a2dbc0abb3d5ec7f1fc5b2a3c8aa66dc4ca4a6e"; } + { locale = "id"; arch = "linux-x86_64"; sha256 = "2d3c4a294c1dc8ece94de489dbef9ce3b4222b0883c5f61f1f90fa881329cd53"; } + { locale = "is"; arch = "linux-i686"; sha256 = "0ae9ae73771c7429e7f6ec457e656bef034d211a191e5125dc09006a4157b57a"; } + { locale = "is"; arch = "linux-x86_64"; sha256 = "8618faa41d021e98d5d010efbead4440828f9f2cc485068fef3f3fef39713bdf"; } + { locale = "it"; arch = "linux-i686"; sha256 = "e91bbb7a5bc1052b2f8558598fc9c4cb610314bf026c5eae97a7e85badcc096f"; } + { locale = "it"; arch = "linux-x86_64"; sha256 = "1b2c610711bfa05aa0ecbd4ddd81724d29f3f162798cdb35b2c15b1a07cc5743"; } + { locale = "ja"; arch = "linux-i686"; sha256 = "c4495bdfc92b1089a3c812d863df20856d585ad9601f41a8c99a522df216736a"; } + { locale = "ja"; arch = "linux-x86_64"; sha256 = "55a5fc7eef3d8a4bb2ea7b19eff6dbeddf9fe9f239f645b996aba44477cb4bf3"; } + { locale = "kk"; arch = "linux-i686"; sha256 = "ca09ceaf455f7fdc93e871617f73200eedd9cff32e8704ead4fd68b86190a8ac"; } + { locale = "kk"; arch = "linux-x86_64"; sha256 = "b6f09b29afe73ab3a25a8cfa2b88ef7f51b83f501990fc80fa886da75916a257"; } + { locale = "km"; arch = "linux-i686"; sha256 = "920de5e59f13894e0f2b008cbecf4089b1b36087744ee4bc050b32e1887f8e7b"; } + { locale = "km"; arch = "linux-x86_64"; sha256 = "fee6df7cce32d81675c91116ed89996ceaf5de1cc3fde028b04d6012338527b0"; } + { locale = "kn"; arch = "linux-i686"; sha256 = "d6587c2a00e4c1a9c38a75f64085bd66e100482a7977dfbb3434bc6a902be313"; } + { locale = "kn"; arch = "linux-x86_64"; sha256 = "b6066271412a7d4faa2fa028b03f88061477bd5a0ea5e7d5ec8e3e81c52ce166"; } + { locale = "ko"; arch = "linux-i686"; sha256 = "c0de3fcf13a0947239a1310d862deaf5d37836f82f4d618f9aaf09ed69fcfcfc"; } + { locale = "ko"; arch = "linux-x86_64"; sha256 = "b929dffdf57cb08087e2ec4054ba58368cc5535579d336872b4016d5bddc9ceb"; } + { locale = "ku"; arch = "linux-i686"; sha256 = "4926a59d15eda575ec3a0b32f8ebecd12a354b80746efc61d0630a91720c5e9b"; } + { locale = "ku"; arch = "linux-x86_64"; sha256 = "04083b8b57ab3e5693637ca424daa18ab678594b37a56ba4ba9e70c369782002"; } + { locale = "lij"; arch = "linux-i686"; sha256 = "730ef2c9920b0eb6e511d5725780ce3d6c2b341d03049e6cb8e83ceeeaf191d7"; } + { locale = "lij"; arch = "linux-x86_64"; sha256 = "b068b0e242ff84055665eb9688d392d98e433ed0c44793734f264b340c2efdf5"; } + { locale = "lt"; arch = "linux-i686"; sha256 = "885ad622f8a36bb5385187995423e811be28a169c8f33d8eec064f04f45e85cc"; } + { locale = "lt"; arch = "linux-x86_64"; sha256 = "d289b593c8c6ccef5d0ee339de674385b08ee28da7b851230da20469aeba7558"; } + { locale = "lv"; arch = "linux-i686"; sha256 = "e5558f1cd93264f7f30a9259c28cc50131782d1941388b71f80b1672a29c597f"; } + { locale = "lv"; arch = "linux-x86_64"; sha256 = "61788b9ef4f13369114abe4a16e7ee89e16d791cf5d3e1eb74eedb88c3a90e9b"; } + { locale = "mai"; arch = "linux-i686"; sha256 = "a9991d23913da8fe6dcf47aacc23b92055c7019265d6c7a01d9d6b3c7ffa4c4d"; } + { locale = "mai"; arch = "linux-x86_64"; sha256 = "946420fd821b3ec97bfa1fab52b22111428da0ed919e86c0d33be53b30f5d476"; } + { locale = "mk"; arch = "linux-i686"; sha256 = "bf10e053684e5e71eb1886f4127743937a560eee15e7c85c9849bc4b15a60123"; } + { locale = "mk"; arch = "linux-x86_64"; sha256 = "b5d1d9d3eaff11f230c864799c77c8169415ee5dd2e1dab944d91ce1c8e8c054"; } + { locale = "ml"; arch = "linux-i686"; sha256 = "c899ba567d847933fa40e3bf1be26e8a5fd3bdf4af45db60cb9198b1a6c98ee8"; } + { locale = "ml"; arch = "linux-x86_64"; sha256 = "fb069df12d603c808c798e43d3ef92868c239a130e078e7492456d1f54cac882"; } + { locale = "mr"; arch = "linux-i686"; sha256 = "14027be4ec9f060b3ac69975dfa1da7aa0b58531383bd335fe3dca98f06597a8"; } + { locale = "mr"; arch = "linux-x86_64"; sha256 = "a18dc57bd2b73bf733a0ad61b7ac9b8b4bd149260a4c59fed171b76e52eaed41"; } + { locale = "ms"; arch = "linux-i686"; sha256 = "3fbd39a0c2def17862e266ef295a38f93400135898348e6321fd37829461660c"; } + { locale = "ms"; arch = "linux-x86_64"; sha256 = "0fb3bab95d1aa501304069aad3c4a8ec38088f3b86ebbd0ef58f29c9d837602d"; } + { locale = "nb-NO"; arch = "linux-i686"; sha256 = "1c36cae02772a2e7465f1b6a67e91d169120724c0f13aaa06ff66a095084d71f"; } + { locale = "nb-NO"; arch = "linux-x86_64"; sha256 = "7a64797441cc03f947c98c5ebdfb7c36caa2daf0597374904a25e6d499501de5"; } + { locale = "nl"; arch = "linux-i686"; sha256 = "32b93da5068e6cd76c4bde1833592d89d0c2ebf3d9b4ac636e7b00e7007edb6d"; } + { locale = "nl"; arch = "linux-x86_64"; sha256 = "6dfa7bd9edfe177e03a4f3244760c7d75db1c6edb291bf05df2db31156235743"; } + { locale = "nn-NO"; arch = "linux-i686"; sha256 = "d9fa7e708e90c20ebb1c2b2df9bf866817f87cc8638b886c6d69ba5033e6482d"; } + { locale = "nn-NO"; arch = "linux-x86_64"; sha256 = "fd431fe5784dd4d5b42b53bea56439db95f5bebc4b8f47517e2cdd4ff5ebaa7c"; } + { locale = "or"; arch = "linux-i686"; sha256 = "83f358e0e8e545ee4bdb01da4795f4609edd5c504150260241274b205f4df5ae"; } + { locale = "or"; arch = "linux-x86_64"; sha256 = "128c80cc0c6e2ff558960b8f4d191239b92a38ed4537dc58b77c7c464254992b"; } + { locale = "pa-IN"; arch = "linux-i686"; sha256 = "87af71809038e38b00bbefc8795aa8fdba6bbe6fae0a7a6c82e9e752044b8573"; } + { locale = "pa-IN"; arch = "linux-x86_64"; sha256 = "263c8f80b2e7f4cb86f829cea41c92ec876fa77c945cfb46452e456a55f72685"; } + { locale = "pl"; arch = "linux-i686"; sha256 = "32dad8cb30e70394b118d305135d86ffc4ad1fc345cafb063712a7d288e04209"; } + { locale = "pl"; arch = "linux-x86_64"; sha256 = "97231cd5c4fc5e5c125d6ead400ea941c60bcadecaa46200a485e2df79e6ccc6"; } + { locale = "pt-BR"; arch = "linux-i686"; sha256 = "9f5fcbc0c9f70c02e997483888dd69c5a510cdf07f4d6d6447c04c258ad60681"; } + { locale = "pt-BR"; arch = "linux-x86_64"; sha256 = "2921da4f0d1018201c2db7e65823f36fc307d46759cd0cf94d3667f8c1ae719f"; } + { locale = "pt-PT"; arch = "linux-i686"; sha256 = "6aebbc3a93961d2baeeb2e07f00b57c4abd73d1ffe4ff21f9bc4812c98b0025d"; } + { locale = "pt-PT"; arch = "linux-x86_64"; sha256 = "59cf5be7d0a3390ac0094a436b7b498bf26a42c178082f2ba2a79273f4ba8a44"; } + { locale = "rm"; arch = "linux-i686"; sha256 = "b57ca3477f1869cdbe474b875640a0516d6dac660aeb2b16f1902f776131aeec"; } + { locale = "rm"; arch = "linux-x86_64"; sha256 = "0cdad1a4bc9af986bdab8cafd0efc0d96c0010d8c86797e0cd58de9b90fad5cd"; } + { locale = "ro"; arch = "linux-i686"; sha256 = "1cf86aa09a145bd190ee815a2dc66129f0f05fb4c30802c9f85d977ec370dbe8"; } + { locale = "ro"; arch = "linux-x86_64"; sha256 = "6e10324605e7b50adee8597ce9694c318125131e301c7c5608e15206784d2475"; } + { locale = "ru"; arch = "linux-i686"; sha256 = "30d902defb08ab7661c369118729e78046fd0bb17ae9ac080587d105c44c7e04"; } + { locale = "ru"; arch = "linux-x86_64"; sha256 = "a3ad52e02e346f5c51ea58b92ebda1f5d98234583dbd1627e002ee95db150837"; } + { locale = "si"; arch = "linux-i686"; sha256 = "367ba16e7505ac93908443861ef76f7bcb9444a65add1155a3e80bbc97564c72"; } + { locale = "si"; arch = "linux-x86_64"; sha256 = "018c013809857c5bda53b931080c40e8152a229f3d2b079975d381cb106059a7"; } + { locale = "sk"; arch = "linux-i686"; sha256 = "471da0ef940666ed3442a576b085ed065a6da4de102f59aacaf2168c84d127de"; } + { locale = "sk"; arch = "linux-x86_64"; sha256 = "4cb690b5c1b8a97f83eeb8d26870f19492ed61463765eae29294946f3fb173fd"; } + { locale = "sl"; arch = "linux-i686"; sha256 = "863a1866b30700a6b22775b8b7c01ad27502ee3bd73ed20a874a9cac0a889638"; } + { locale = "sl"; arch = "linux-x86_64"; sha256 = "1c2c815b9fbf5cef9bd0b732bf47d56c1ecfc554ca4573d3fb67be3351a35bf9"; } + { locale = "son"; arch = "linux-i686"; sha256 = "aaa955cb028036b3f70e0284eedfcfb2b655dd6b7bd6f717ec0609323ad6a897"; } + { locale = "son"; arch = "linux-x86_64"; sha256 = "84751dbf1e16f8912bd71f24a9c80805ac3a7aa32f30eeb2f3f945113ff4c1ee"; } + { locale = "sq"; arch = "linux-i686"; sha256 = "50ef1fe3d72312a78d951bda1892b7548d46669ddcb60f0af5a22fdd1b8f23aa"; } + { locale = "sq"; arch = "linux-x86_64"; sha256 = "05b24a18a637a730804dc485f86e3b3d4ce3046ff81689984c0e14d6e55c9ade"; } + { locale = "sr"; arch = "linux-i686"; sha256 = "3388ec26ca4c9ac2ed327037bc73eddcd7fd390765107e47fa3953c53e0ab1f2"; } + { locale = "sr"; arch = "linux-x86_64"; sha256 = "d81f19076ce990256fdd4c5e7bdf39f8f70d24f3057a1383aa100d259844ada9"; } + { locale = "sv-SE"; arch = "linux-i686"; sha256 = "3ae73ff229c1280ab7b271c29096804839c5d92ef0c15f7a8a8366946ba24720"; } + { locale = "sv-SE"; arch = "linux-x86_64"; sha256 = "77f723f41ec258309a66e8c808ff4ebc5705ba115bf2417f87943d381d6b57e8"; } + { locale = "ta"; arch = "linux-i686"; sha256 = "6897b368738eed28e6b2b17529d6e6656d22f228ecaae04c4f8c539a1dfc3d6c"; } + { locale = "ta"; arch = "linux-x86_64"; sha256 = "831bdc86dd2023f273c55276c81181027a0e701520aba397308ad662076a6ee4"; } + { locale = "te"; arch = "linux-i686"; sha256 = "3a33e92dc25ea10c55b5ca56345e5b8659c99ca335112e049ba9edb9017c09b4"; } + { locale = "te"; arch = "linux-x86_64"; sha256 = "3c071efaef763ea731caa1c6cb97357c13e07b112d923b3c3ef7ee22badbeca9"; } + { locale = "th"; arch = "linux-i686"; sha256 = "7982fa0407ff8f3a955c7a74b70fb9fd10cc06f7f06d429ce06cc60fe4b7b635"; } + { locale = "th"; arch = "linux-x86_64"; sha256 = "06f54c193ba9bbf19774e8d507c9e15414a9859584de806900ccb0bcb546178e"; } + { locale = "tr"; arch = "linux-i686"; sha256 = "c1565d373b951065a1c6ac827590f944e1524d5a91748bd42740ea25210ece31"; } + { locale = "tr"; arch = "linux-x86_64"; sha256 = "6d49988225ae1a662e1fd721910f445bf1c111bef6894153b2092a4117391bdb"; } + { locale = "uk"; arch = "linux-i686"; sha256 = "f03049ea0b8bd86d95e386bb79a90513087691b725a90e01fec4f7a54803ba0b"; } + { locale = "uk"; arch = "linux-x86_64"; sha256 = "5bac7c50bb2a850c208c8410a2deab0b37e03a02f33d52e3d4097ce2c8718d37"; } + { locale = "vi"; arch = "linux-i686"; sha256 = "ee6b3f27f68c3d37e8170c7222249c1459e4530f61438a0f1553fe36213c5ce7"; } + { locale = "vi"; arch = "linux-x86_64"; sha256 = "1cb80cac3b942d588e133ccad7ac8c77d3af31cf6ddd9676ffa7be130434788c"; } + { locale = "xh"; arch = "linux-i686"; sha256 = "86f7bab77885e5cf391d9dca758f8c1112bea9dd249dc7d2f184845da9df6316"; } + { locale = "xh"; arch = "linux-x86_64"; sha256 = "07d874163ace6a820dfca49829032efd1b1a612e76c14a012287db39841280b7"; } + { locale = "zh-CN"; arch = "linux-i686"; sha256 = "27a7039cdd5be498d2de89e2993264c432e36309bb5c40bd519212de6f8b3469"; } + { locale = "zh-CN"; arch = "linux-x86_64"; sha256 = "f65d8334d5fb6b7bdcb6b212c232e2bad3d8d2718d96dba7c149a6bb2add81c8"; } + { locale = "zh-TW"; arch = "linux-i686"; sha256 = "1aab3b3aad0adbb72edc3db1780838bb2fdf80554eb9eb00fe7b50918bef843c"; } + { locale = "zh-TW"; arch = "linux-x86_64"; sha256 = "b322ec6027b6760855520dbc40b6e934f931b64c0a859682e4014ee1bdb2b321"; } + { locale = "zu"; arch = "linux-i686"; sha256 = "f29d8c82b595edb03a42b0c8896e1880efe2fd14e87802501c4007088bf3ad9c"; } + { locale = "zu"; arch = "linux-x86_64"; sha256 = "bed6ddb23da87c4d7f469d92a1cec9817a41b51012bb30145227633b3265e998"; } ]; arch = if stdenv.system == "i686-linux" diff --git a/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb b/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb index a768b1f8dff..7c38f275169 100644 --- a/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb +++ b/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb @@ -83,6 +83,8 @@ puts(<<"EOH") , systemd }: +assert stdenv.isLinux; + let version = "#{real_version}"; sources = [ From 2e33964a6a97b738764045960f4f87a328c2ae70 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Fri, 5 Sep 2014 00:45:55 +0400 Subject: [PATCH 396/789] Fix leafnode by working around the check --- pkgs/servers/news/leafnode/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/news/leafnode/default.nix b/pkgs/servers/news/leafnode/default.nix index 23f236a9a34..a3579aa8309 100644 --- a/pkgs/servers/news/leafnode/default.nix +++ b/pkgs/servers/news/leafnode/default.nix @@ -10,6 +10,11 @@ stdenv.mkDerivation rec { configureFlags = "--enable-runas-user=nobody"; + preConfigure = '' + # configure uses id to check environment; we don't want this check + sed -re 's/^ID[=].*/ID="echo whatever"/' -i configure + ''; + postConfigure = '' # The is_validfqdn is far too restrictive, and only allows # Internet-facing servers to run. In order to run leafnode via @@ -24,6 +29,5 @@ stdenv.mkDerivation rec { description = "Leafnode implements a store & forward NNTP proxy"; license = stdenv.lib.licenses.mit; platforms = stdenv.lib.platforms.unix; - broken = true; # The user check in the configure does not work in a chroot }; } From 2ca3c23ddc7bb7881a8219b7e7931062df053dc4 Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Thu, 15 May 2014 14:11:46 +0200 Subject: [PATCH 397/789] Add a derivation for ocaml-calendar --- .../ocaml-modules/calendar/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/development/ocaml-modules/calendar/default.nix diff --git a/pkgs/development/ocaml-modules/calendar/default.nix b/pkgs/development/ocaml-modules/calendar/default.nix new file mode 100644 index 00000000000..0010508a215 --- /dev/null +++ b/pkgs/development/ocaml-modules/calendar/default.nix @@ -0,0 +1,23 @@ +{stdenv, fetchurl, ocaml, findlib}: + +stdenv.mkDerivation { + name = "ocaml-calendar-2.03.2"; + src = fetchurl { + url = https://forge.ocamlcore.org/frs/download.php/915/calendar-2.03.2.tar.gz; + sha256 = "04pvhwb664g3s644c7v7419a3kvf5s3pynkhmk5j59dvlfm1yf0f"; + }; + + buildInputs = [ocaml findlib]; + + createFindlibDestdir = true; + + meta = { + homepage = https://forge.ocamlcore.org/projects/calendar/; + description = "An Objective Caml library managing dates and times."; + license = "LGPL"; + platforms = ocaml.meta.platforms; + maintainers = [ + stdenv.lib.maintainers.gal_bolle + ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6de1001c5cb..50bbe3e9052 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3297,6 +3297,8 @@ let camlp5_transitional = camlp5_6_transitional; + calendar = callPackage ../development/ocaml-modules/calendar { }; + camlzip = callPackage ../development/ocaml-modules/camlzip { }; camomile_0_8_2 = callPackage ../development/ocaml-modules/camomile/0.8.2.nix { }; From 6863dfeccc4296bba01a0a736878141545f54f14 Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Sat, 17 May 2014 12:51:18 +0200 Subject: [PATCH 398/789] Add a derivation for ocaml-optcomp --- .../ocaml-modules/optcomp/default.nix | 25 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/ocaml-modules/optcomp/default.nix diff --git a/pkgs/development/ocaml-modules/optcomp/default.nix b/pkgs/development/ocaml-modules/optcomp/default.nix new file mode 100644 index 00000000000..6075bc4ab2a --- /dev/null +++ b/pkgs/development/ocaml-modules/optcomp/default.nix @@ -0,0 +1,25 @@ +{stdenv, fetchurl, ocaml, findlib}: + +stdenv.mkDerivation { + name = "ocaml-optcomp"; + src = fetchurl { + url = https://github.com/diml/optcomp/archive/1.6.tar.gz; + md5 = "d3587244dba1b8b10f24d0b60a8c700d"; + }; + + createFindlibDestdir = true; + + buildInputs = [ocaml findlib]; + + + meta = { + homepage = https://github.com/diml/optcomp; + description = "Optional compilation for OCaml with cpp-like directives"; + license = "BSD"; + platforms = ocaml.meta.platforms; + maintainers = [ + stdenv.lib.maintainers.gal_bolle + ]; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 50bbe3e9052..77bb9e814c2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3381,6 +3381,8 @@ let ocaml_oasis = callPackage ../development/tools/ocaml/oasis { }; + ocaml_optcomp = callPackage ../development/ocaml-modules/optcomp { }; + ocaml_pcre = callPackage ../development/ocaml-modules/pcre { inherit pcre; }; From ffe02360dced874fae5168cf683e77c0451d363c Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Sat, 17 May 2014 12:52:37 +0200 Subject: [PATCH 399/789] =?UTF-8?q?Add=20a=20derivation=20for=20deriving?= =?UTF-8?q?=20(ocaml=20instance=20derivation=20=C3=A0=20la=20Haskell)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocsigen-deriving/default.nix | 32 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/development/ocaml-modules/ocsigen-deriving/default.nix diff --git a/pkgs/development/ocaml-modules/ocsigen-deriving/default.nix b/pkgs/development/ocaml-modules/ocsigen-deriving/default.nix new file mode 100644 index 00000000000..d2a1ed3a624 --- /dev/null +++ b/pkgs/development/ocaml-modules/ocsigen-deriving/default.nix @@ -0,0 +1,32 @@ +{stdenv, fetchgit, ocaml, findlib, ocaml_oasis, ocaml_data_notation, ocaml_optcomp}: + +stdenv.mkDerivation { + name = "ocsigen-deriving"; + src = fetchgit { + url = "git://github.com/ocsigen/deriving"; + rev = "refs/tags/0.6.2"; + sha256 = "2b3bf3f4972d0e6eaf075f7353ce482b776726e0cd04947a89b7156384ec0662"; + }; + + buildInputs = [ocaml findlib ocaml_oasis ocaml_data_notation ocaml_optcomp]; + + configurePhase = '' + make setup-dev.exe + ./setup-dev.exe -configure --prefix $out + ''; + + createFindlibDestdir = true; + + + meta = { + homepage = https://github.com/ocsigen/deriving; + description = "Extension to OCaml for deriving functions from type declarations"; + license = "MIT"; + platforms = ocaml.meta.platforms; + maintainers = [ + stdenv.lib.maintainers.gal_bolle + ]; + }; + + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 77bb9e814c2..9e44b18cbb5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3441,6 +3441,8 @@ let zed = callPackage ../development/ocaml-modules/zed { }; + ocsigen_deriving = callPackage ../development/ocaml-modules/ocsigen-deriving { }; + }; ocamlPackages = recurseIntoAttrs ocamlPackages_4_01_0; From b5c621062d1928150d9dd75ae9efd180733a7718 Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Wed, 28 May 2014 21:52:23 +0200 Subject: [PATCH 400/789] add ocaml-ipaddr --- .../ocaml-modules/ocaml-ipaddr/default.nix | 15 +++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 17 insertions(+) create mode 100644 pkgs/development/ocaml-modules/ocaml-ipaddr/default.nix diff --git a/pkgs/development/ocaml-modules/ocaml-ipaddr/default.nix b/pkgs/development/ocaml-modules/ocaml-ipaddr/default.nix new file mode 100644 index 00000000000..e96f3f179a9 --- /dev/null +++ b/pkgs/development/ocaml-modules/ocaml-ipaddr/default.nix @@ -0,0 +1,15 @@ +{ocaml, findlib, stdenv, fetchurl}: + +stdenv.mkDerivation { + name = "ocaml-ipaddr-2.4.0"; + + src = fetchurl { + url = https://github.com/mirage/ocaml-ipaddr/archive/2.4.0.tar.gz; + sha256 = "0g7qg35w3vzcg37798rhbx7iia83286md3gj5gdhs1qgizlg56wx"; + }; + + buildInputs = [ocaml findlib]; + + createFindlibDestdir = true; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9e44b18cbb5..e29f01ef042 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3371,6 +3371,8 @@ let ocamlify = callPackage ../development/tools/ocaml/ocamlify { }; + ocaml_ipaddr = callPackage ../development/ocaml-modules/ocaml-ipaddr { }; + ocaml_lwt = callPackage ../development/ocaml-modules/lwt { }; ocamlmod = callPackage ../development/tools/ocaml/ocamlmod { }; From 3245b97000313f24fd626e2e61084179f358ac89 Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Wed, 28 May 2014 22:04:40 +0200 Subject: [PATCH 401/789] Add a derivation for js_of_ocaml --- .../ocaml/js_of_ocaml/Makefile.conf.diff | 10 +++++++ .../tools/ocaml/js_of_ocaml/default.nix | 28 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 40 insertions(+) create mode 100644 pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff create mode 100644 pkgs/development/tools/ocaml/js_of_ocaml/default.nix diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff b/pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff new file mode 100644 index 00000000000..ee39855fec9 --- /dev/null +++ b/pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff @@ -0,0 +1,10 @@ +--- old/Makefile.conf 2014-05-19 16:53:09.263564921 +0200 ++++ new/Makefile.conf 2014-05-19 16:53:42.213152994 +0200 +@@ -1,6 +1,6 @@ + + # Where binaries are installed: +-BINDIR := /usr/local/bin ++BINDIR := $(out)/bin + + #### + diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/default.nix b/pkgs/development/tools/ocaml/js_of_ocaml/default.nix new file mode 100644 index 00000000000..a7167d0c226 --- /dev/null +++ b/pkgs/development/tools/ocaml/js_of_ocaml/default.nix @@ -0,0 +1,28 @@ +{stdenv, fetchurl, ocaml, findlib, ocaml_lwt, menhir, ocsigen_deriving}: + +stdenv.mkDerivation { + name = "js_of_ocaml"; + src = fetchurl { + url = https://github.com/ocsigen/js_of_ocaml/archive/2.2.tar.gz; + sha256 = "1cp81gpvyxgvzxg0vzyl8aa2zvcixp6m433w8zjifrg6vb7lhp97"; + }; + + buildInputs = [ocaml findlib ocaml_lwt menhir ocsigen_deriving]; + + patches = [ ./Makefile.conf.diff ]; + + createFindlibDestdir = true; + + + meta = { + homepage = http://ocsigen.org/js_of_ocaml/; + description = "Compiler of OCaml bytecode to Javascript. It makes it possible to run Ocaml programs in a Web browser"; + license = "LGPL"; + platforms = ocaml.meta.platforms; + maintainers = [ + stdenv.lib.maintainers.gal_bolle + ]; + }; + + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e29f01ef042..f0e223b1288 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3337,6 +3337,8 @@ let gmetadom = callPackage ../development/ocaml-modules/gmetadom { }; + js_of_ocaml = callPackage ../development/tools/ocaml/js_of_ocaml { }; + lablgl = callPackage ../development/ocaml-modules/lablgl { }; lablgtk = callPackage ../development/ocaml-modules/lablgtk { From 02a4e404745d40854baf322b84fffa501465f5f4 Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Sat, 7 Jun 2014 22:38:47 +0200 Subject: [PATCH 402/789] Reexport ocaml data notation in the ocaml-oasis derivation --- pkgs/development/tools/ocaml/oasis/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/tools/ocaml/oasis/default.nix b/pkgs/development/tools/ocaml/oasis/default.nix index 3ab935705a2..a5260b499c4 100644 --- a/pkgs/development/tools/ocaml/oasis/default.nix +++ b/pkgs/development/tools/ocaml/oasis/default.nix @@ -13,9 +13,11 @@ stdenv.mkDerivation { buildInputs = [ - ocaml findlib ocaml_data_notation ocaml_typeconv ocamlmod ocamlify ounit + ocaml findlib ocaml_typeconv ocamlmod ocamlify ounit ]; + propagatedBuildInputs = [ ocaml_data_notation ]; + configurePhase = "ocaml setup.ml -configure --prefix $out"; buildPhase = "ocaml setup.ml -build"; installPhase = "ocaml setup.ml -install"; From da6859722d943a1cd964df4d6490cccfe8f5c31c Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Sun, 8 Jun 2014 12:12:27 +0200 Subject: [PATCH 403/789] Add tyxml (XML library for ocaml) --- .../ocaml-modules/tyxml/default.nix | 30 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 pkgs/development/ocaml-modules/tyxml/default.nix diff --git a/pkgs/development/ocaml-modules/tyxml/default.nix b/pkgs/development/ocaml-modules/tyxml/default.nix new file mode 100644 index 00000000000..39cee4e32ce --- /dev/null +++ b/pkgs/development/ocaml-modules/tyxml/default.nix @@ -0,0 +1,30 @@ +{stdenv, fetchurl, ocaml, findlib, ocaml_oasis}: + +stdenv.mkDerivation { + name = "tyxml-3.0.0"; + + src = fetchurl { + url = http://ocsigen.org/download/tyxml-3.0.0.tar.gz; + sha256 = "0cvbmyg4g0lg4f23032cjlxqklisccbjgj47117wm6gva8xi7xa3"; + }; + + buildInputs = [ocaml findlib ocaml_oasis]; + + createFindlibDestdir = true; + + configurePhase = '' + make setup-dev.exe + ./setup-dev.exe -configure --prefix $out + ''; + + meta = { + homepage = http://ocsigen.org/tyxml/; + description = "Tyxml is a library that makes it almost impossible for your OCaml programs to generate wrong XML ouput, using static typing."; + license = "LGPL"; + platforms = ocaml.meta.platforms; + maintainers = [ + stdenv.lib.maintainers.gal_bolle + ]; + }; + +} \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f0e223b1288..975370ff5e8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3403,6 +3403,8 @@ let ounit = callPackage ../development/ocaml-modules/ounit { }; + tyxml = callPackage ../development/ocaml-modules/tyxml { }; + ulex = callPackage ../development/ocaml-modules/ulex { }; ulex08 = callPackage ../development/ocaml-modules/ulex/0.8 { From e8250dd94ae4cebec34a08aedd4e2c016c408576 Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Sun, 8 Jun 2014 12:13:31 +0200 Subject: [PATCH 404/789] Add a derivation for the ocsigen server (ocaml webserver) --- .../ocaml-modules/ocsigen-server/default.nix | 34 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 36 insertions(+) create mode 100644 pkgs/development/ocaml-modules/ocsigen-server/default.nix diff --git a/pkgs/development/ocaml-modules/ocsigen-server/default.nix b/pkgs/development/ocaml-modules/ocsigen-server/default.nix new file mode 100644 index 00000000000..0e01b811b57 --- /dev/null +++ b/pkgs/development/ocaml-modules/ocsigen-server/default.nix @@ -0,0 +1,34 @@ +{stdenv, fetchurl, ocaml, findlib, which, ocaml_react, ocaml_ssl, ocaml_lwt, ocamlnet, ocaml_pcre, cryptokit, tyxml, ocaml_ipaddr, zlib, libev, openssl, ocaml_sqlite3, tree}: + +stdenv.mkDerivation { + name = "ocsigenserver-2.4.0"; + + src = fetchurl { + url = https://github.com/ocsigen/ocsigenserver/archive/2.4.0.tar.gz; + sha256 = "1fjj8g6ivyfsa0446w77rjihhbw0gh5pgx7brywql2shk999riby"; + }; + + buildInputs = [ocaml which findlib ocaml_react ocaml_ssl ocaml_lwt ocamlnet ocaml_pcre cryptokit tyxml ocaml_ipaddr zlib libev openssl ocaml_sqlite3 tree]; + + configureFlags = "--root $(out) --prefix /"; + + dontAddPrefix = true; + + createFindlibDestdir = true; + + postFixup = + '' + rm -rf $out/var/run + ''; + + dontPatchShebangs = true; + + meta = { + homepage = http://ocsigen.org/ocsigenserver/; + description = "Ocsigen Server is a full featured Web server. It implements most features of the HTTP protocol, and has a very powerful extension mechanism that make very easy to plug your own OCaml modules for generating pages."; + license = "LGPL"; # <- todo: check + platforms = ocaml.meta.platforms; + maintainers = [ stdenv.lib.maintainers.gal_bolle ]; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 975370ff5e8..2271a5b96fb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3401,6 +3401,8 @@ let ocaml_text = callPackage ../development/ocaml-modules/ocaml-text { }; + ocsigen_server = callPackage ../development/ocaml-modules/ocsigen-server { }; + ounit = callPackage ../development/ocaml-modules/ounit { }; tyxml = callPackage ../development/ocaml-modules/tyxml { }; From 2709d322746e549a5c04d5952ca355da259bcb14 Mon Sep 17 00:00:00 2001 From: Florent Becker Date: Sun, 8 Jun 2014 12:14:08 +0200 Subject: [PATCH 405/789] Add a derivation for eliom (ocaml web framework) --- .../ocaml-modules/eliom/default.nix | 29 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 pkgs/development/ocaml-modules/eliom/default.nix diff --git a/pkgs/development/ocaml-modules/eliom/default.nix b/pkgs/development/ocaml-modules/eliom/default.nix new file mode 100644 index 00000000000..af85a0a8f94 --- /dev/null +++ b/pkgs/development/ocaml-modules/eliom/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, ocaml, findlib, which, ocsigen_server, ocsigen_deriving, + js_of_ocaml, ocaml_react, ocaml_lwt, calendar, cryptokit, tyxml, + ocaml_ipaddr, ocamlnet, ocaml_ssl, ocaml_pcre, ocaml_optcomp}: + +stdenv.mkDerivation +{ + name = "eliom-4.0.0"; + + src = fetchurl { + url = https://github.com/ocsigen/eliom/archive/4.0.0.tar.gz; + sha256 = "1xf2l6lvngxzwaw6lvr6sgi48rz0wxg65q9lz4jzqjarkp0sx206"; + }; + + buildInputs = [ocaml which ocsigen_server findlib ocsigen_deriving + js_of_ocaml ocaml_react ocaml_lwt calendar + cryptokit tyxml ocaml_ipaddr ocamlnet ocaml_ssl + ocaml_pcre ocaml_optcomp]; + + preConfigure = + ''chmod a+x configure + sed s/deriving-ocsigen/deriving/g -i configure + ''; + + configureFlags = "--root $(out) --prefix /"; + + dontAddPrefix = true; + + createFindlibDestdir = true; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2271a5b96fb..eb6f671a3b2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3325,6 +3325,8 @@ let easy-format = callPackage ../development/ocaml-modules/easy-format { }; + eliom = callPackage ../development/ocaml-modules/eliom { }; + findlib = callPackage ../development/tools/ocaml/findlib { }; javalib = callPackage ../development/ocaml-modules/javalib { From 9a9ecbf32df0d5bfee978e310281b8f539d67fe6 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 6 Sep 2014 12:44:20 +0400 Subject: [PATCH 406/789] A description cleanup after merge --- pkgs/development/ocaml-modules/calendar/default.nix | 2 +- pkgs/development/ocaml-modules/ocsigen-server/default.nix | 5 ++++- pkgs/development/ocaml-modules/tyxml/default.nix | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/development/ocaml-modules/calendar/default.nix b/pkgs/development/ocaml-modules/calendar/default.nix index 0010508a215..6af7ce25077 100644 --- a/pkgs/development/ocaml-modules/calendar/default.nix +++ b/pkgs/development/ocaml-modules/calendar/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation { meta = { homepage = https://forge.ocamlcore.org/projects/calendar/; - description = "An Objective Caml library managing dates and times."; + description = "An Objective Caml library managing dates and times"; license = "LGPL"; platforms = ocaml.meta.platforms; maintainers = [ diff --git a/pkgs/development/ocaml-modules/ocsigen-server/default.nix b/pkgs/development/ocaml-modules/ocsigen-server/default.nix index 0e01b811b57..c69bf92b614 100644 --- a/pkgs/development/ocaml-modules/ocsigen-server/default.nix +++ b/pkgs/development/ocaml-modules/ocsigen-server/default.nix @@ -25,7 +25,10 @@ stdenv.mkDerivation { meta = { homepage = http://ocsigen.org/ocsigenserver/; - description = "Ocsigen Server is a full featured Web server. It implements most features of the HTTP protocol, and has a very powerful extension mechanism that make very easy to plug your own OCaml modules for generating pages."; + description = "A full featured Web server'' + longDescription ='' + A full featured Web server. It implements most features of the HTTP protocol, and has a very powerful extension mechanism that make very easy to plug your own OCaml modules for generating pages. + ''; license = "LGPL"; # <- todo: check platforms = ocaml.meta.platforms; maintainers = [ stdenv.lib.maintainers.gal_bolle ]; diff --git a/pkgs/development/ocaml-modules/tyxml/default.nix b/pkgs/development/ocaml-modules/tyxml/default.nix index 39cee4e32ce..02ac7f381e5 100644 --- a/pkgs/development/ocaml-modules/tyxml/default.nix +++ b/pkgs/development/ocaml-modules/tyxml/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation { meta = { homepage = http://ocsigen.org/tyxml/; - description = "Tyxml is a library that makes it almost impossible for your OCaml programs to generate wrong XML ouput, using static typing."; + description = "A library that makes it almost impossible for your OCaml programs to generate wrong XML ouput, using static typing"; license = "LGPL"; platforms = ocaml.meta.platforms; maintainers = [ @@ -27,4 +27,4 @@ stdenv.mkDerivation { ]; }; -} \ No newline at end of file +} From 98a46755812d8203e3a18263640f2aab8881e9b4 Mon Sep 17 00:00:00 2001 From: "Robert M. Mather" Date: Thu, 26 Jun 2014 05:11:56 -0700 Subject: [PATCH 407/789] Ur/Web compiler: new release, 20140531 -> 20140830 --- pkgs/development/compilers/urweb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/urweb/default.nix b/pkgs/development/compilers/urweb/default.nix index bd457b227e6..01dbaee8cde 100644 --- a/pkgs/development/compilers/urweb/default.nix +++ b/pkgs/development/compilers/urweb/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { pname = "urweb"; - version = "20140531"; + version = "20140830"; name = "${pname}-${version}"; src = fetchurl { url = "http://www.impredicative.com/ur/${name}.tgz"; - sha256 = "0gbk16hzs8267cfhb7w1cqgjxdv2icxg5clxdbda6qsn84jaf3n4"; + sha256 = "0l4zhvdy2fdvhihyl4gl09v8q4w05b1k0c6h4k8281px96d5ljgr"; }; buildInputs = [ stdenv.gcc file openssl mlton mysql postgresql sqlite ]; From f7ce66985ae4ec360054cc1769c640b6d113e9be Mon Sep 17 00:00:00 2001 From: Nathaniel Baxter Date: Sat, 6 Sep 2014 20:32:01 +1000 Subject: [PATCH 408/789] bittorrent: Remove reference to deleted package. --- pkgs/top-level/all-packages.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index eb6f671a3b2..cffaebd5e63 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -690,10 +690,6 @@ let inherit (strategoPackages016) strategoxt sdf; }; - bittorrent = callPackage ../tools/networking/p2p/bittorrent { - gui = true; - }; - bittornado = callPackage ../tools/networking/p2p/bit-tornado { }; blueman = callPackage ../tools/bluetooth/blueman { From 8f30cabb834954eb02a5331fb52c253251a2e979 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Sat, 6 Sep 2014 12:45:20 +0200 Subject: [PATCH 409/789] fix ocsigen expression --- pkgs/development/ocaml-modules/ocsigen-server/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/ocaml-modules/ocsigen-server/default.nix b/pkgs/development/ocaml-modules/ocsigen-server/default.nix index c69bf92b614..6f68958aeab 100644 --- a/pkgs/development/ocaml-modules/ocsigen-server/default.nix +++ b/pkgs/development/ocaml-modules/ocsigen-server/default.nix @@ -25,7 +25,7 @@ stdenv.mkDerivation { meta = { homepage = http://ocsigen.org/ocsigenserver/; - description = "A full featured Web server'' + description = "A full featured Web server"; longDescription ='' A full featured Web server. It implements most features of the HTTP protocol, and has a very powerful extension mechanism that make very easy to plug your own OCaml modules for generating pages. ''; From 4a1a77a432cec719c2fdcf3e36a02afb09dde3fe Mon Sep 17 00:00:00 2001 From: Nathaniel Baxter Date: Sat, 6 Sep 2014 20:53:45 +1000 Subject: [PATCH 410/789] unrar: Fixed license typo --- pkgs/tools/archivers/unrar/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/archivers/unrar/default.nix b/pkgs/tools/archivers/unrar/default.nix index a13c4c3b70b..9ef93a30b68 100644 --- a/pkgs/tools/archivers/unrar/default.nix +++ b/pkgs/tools/archivers/unrar/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation { meta = with stdenv.lib; { description = "Utility for RAR archives"; homepage = http://www.rarlab.com/; - license = licenses.unfree-redistributable; + license = licenses.unfreeRedistributable; maintainers = [ maintainers.emery ]; platforms = platforms.all; }; From 4c5d12d3f0c3623dd99938d9dca1658a44692319 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 6 Sep 2014 13:28:53 +0200 Subject: [PATCH 411/789] all-packages.nix: re-arrange Emacs packages into a semi-alphabetical order --- pkgs/top-level/all-packages.nix | 36 ++++++++++++++++----------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cffaebd5e63..42af3f0743b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8683,34 +8683,22 @@ let gist = callPackage ../applications/editors/emacs-modes/gist { }; + haskellMode = callPackage ../applications/editors/emacs-modes/haskell { }; + + hol_light_mode = callPackage ../applications/editors/emacs-modes/hol_light { }; + + htmlize = callPackage ../applications/editors/emacs-modes/htmlize { }; + idris = callPackage ../applications/editors/emacs-modes/idris { }; jabber = callPackage ../applications/editors/emacs-modes/jabber { }; jade = callPackage ../applications/editors/emacs-modes/jade { }; - jdee = callPackage ../applications/editors/emacs-modes/jdee { - # Requires Emacs 23, for `avl-tree'. - }; + jdee = callPackage ../applications/editors/emacs-modes/jdee { }; js2 = callPackage ../applications/editors/emacs-modes/js2 { }; - stratego = callPackage ../applications/editors/emacs-modes/stratego { }; - - haskellMode = callPackage ../applications/editors/emacs-modes/haskell { }; - - ocamlMode = callPackage ../applications/editors/emacs-modes/ocaml { }; - - structuredHaskellMode = callPackage ../applications/editors/emacs-modes/structured-haskell-mode { - inherit (haskellPackages) cabal haskellSrcExts; - }; - - tuaregMode = callPackage ../applications/editors/emacs-modes/tuareg { }; - - hol_light_mode = callPackage ../applications/editors/emacs-modes/hol_light { }; - - htmlize = callPackage ../applications/editors/emacs-modes/htmlize { }; - logito = callPackage ../applications/editors/emacs-modes/logito { }; loremIpsum = callPackage ../applications/editors/emacs-modes/lorem-ipsum { }; @@ -8723,6 +8711,8 @@ let notmuch = lowPrio (callPackage ../applications/networking/mailreaders/notmuch { }); + ocamlMode = callPackage ../applications/editors/emacs-modes/ocaml { }; + offlineimap = callPackage ../applications/editors/emacs-modes/offlineimap {}; # This is usually a newer version of Org-Mode than that found in GNU Emacs, so @@ -8766,8 +8756,16 @@ let scalaMode1 = callPackage ../applications/editors/emacs-modes/scala-mode/v1.nix { }; scalaMode2 = callPackage ../applications/editors/emacs-modes/scala-mode/v2.nix { }; + stratego = callPackage ../applications/editors/emacs-modes/stratego { }; + + structuredHaskellMode = callPackage ../applications/editors/emacs-modes/structured-haskell-mode { + inherit (haskellPackages) cabal haskellSrcExts; + }; + sunriseCommander = callPackage ../applications/editors/emacs-modes/sunrise-commander { }; + tuaregMode = callPackage ../applications/editors/emacs-modes/tuareg { }; + writeGood = callPackage ../applications/editors/emacs-modes/writegood { }; xmlRpc = callPackage ../applications/editors/emacs-modes/xml-rpc { }; From 1e92a862404c952404fd570f7fa99750b76646d4 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 6 Sep 2014 13:30:13 +0200 Subject: [PATCH 412/789] emacs-rainbow-delimiters: add version 1.3.8 --- .../rainbow-delimiters/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix diff --git a/pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix b/pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix new file mode 100644 index 00000000000..5d92397d295 --- /dev/null +++ b/pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix @@ -0,0 +1,23 @@ +{stdenv, fetchurl, emacs}: + +let version = "1.3.8"; + +in stdenv.mkDerivation { + name = "emacs-rainbow-delimiters-${version}"; + + src = fetchurl { + url = "https://github.com/jlr/rainbow-delimiters/archive/${version}.tar.gz"; + sha256 = "1xavygdnd9q80wqavxliks0w662mvn8v79qmg0kr494yfqc5hw6h"; + }; + + buildInputs = [ emacs ]; + + buildPhase = '' + emacs -L . --batch -f batch-byte-compile *.el + ''; + + installPhase = '' + install -d $out/share/emacs/site-lisp + install *.el *.elc $out/share/emacs/site-lisp + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 42af3f0743b..b3a48315d86 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8743,6 +8743,8 @@ let quack = callPackage ../applications/editors/emacs-modes/quack { }; + rainbowDelimiters = callPackage ../applications/editors/emacs-modes/rainbow-delimiters { }; + rectMark = callPackage ../applications/editors/emacs-modes/rect-mark { }; remember = callPackage ../applications/editors/emacs-modes/remember { }; From 6f819ef4f4ec451ccbeac69d8112e9b93840a634 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 6 Sep 2014 13:30:37 +0200 Subject: [PATCH 413/789] emacs-ensime: depend on scala-mode2 and sbt-mode --- pkgs/applications/editors/emacs-modes/ensime/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/emacs-modes/ensime/default.nix b/pkgs/applications/editors/emacs-modes/ensime/default.nix index 26f3b8a9d38..d776103a662 100644 --- a/pkgs/applications/editors/emacs-modes/ensime/default.nix +++ b/pkgs/applications/editors/emacs-modes/ensime/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, emacs, unzip, autoComplete, dash, s }: +{ stdenv, fetchurl, emacs, unzip, autoComplete, dash, s, scalaMode2, sbtMode }: stdenv.mkDerivation { name = "emacs-ensime-2014-09-04"; @@ -9,7 +9,7 @@ stdenv.mkDerivation { }; buildInputs = [ emacs unzip ]; - propagatedUserEnvPkgs = [ autoComplete dash s ]; + propagatedUserEnvPkgs = [ autoComplete dash s scalaMode2 sbtMode ]; buildPhase = '' emacs -L . -L ${autoComplete}/share/emacs/site-lisp --batch -f batch-byte-compile *.el From 46266cc216c42b983f3d293f42e651113fa83481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=BCdiger=20Sonderfeld?= Date: Tue, 19 Aug 2014 20:36:25 +0200 Subject: [PATCH 414/789] gdb: Update to 7.8 and include Guile support. GDB 7.8 adds Guile scripting support. This is now enabled by default as well. Checking for guile also adds a pkg-config dependency. It seems Python is explicitly excluded from cross building. I'm not sure if Guile should also be excluded. --- pkgs/development/tools/misc/gdb/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/tools/misc/gdb/default.nix b/pkgs/development/tools/misc/gdb/default.nix index 5ee0f64a4e4..d9af1e3eb54 100644 --- a/pkgs/development/tools/misc/gdb/default.nix +++ b/pkgs/development/tools/misc/gdb/default.nix @@ -1,5 +1,5 @@ { fetchurl, stdenv, ncurses, readline, gmp, mpfr, expat, texinfo -, dejagnu, python, target ? null +, dejagnu, python, pkgconfig, guile, target ? null # Additional dependencies for GNU/Hurd. , mig ? null, hurd ? null @@ -8,7 +8,7 @@ let - basename = "gdb-7.7"; + basename = "gdb-7.8"; # Whether (cross-)building for GNU/Hurd. This is an approximation since # having `stdenv ? cross' doesn't tell us if we're building `crossDrv' and @@ -26,8 +26,8 @@ stdenv.mkDerivation rec { ("-" + target.config); src = fetchurl { - url = "mirror://gnu/gdb/${basename}.tar.bz2"; - sha256 = "08vcb97j1b7vxwq6088wb6s3g3bm8iwikd922y0xsgbbxv3d2104"; + url = "mirror://gnu/gdb/${basename}.tar.xz"; + sha256 = "49c4abe174f79f54e1f9e75210ffb590d9b497d5b5200b5398c0e073a4ecb875"; }; patches = [ ./edit-signals.patch ]; @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ texinfo python ] ++ stdenv.lib.optional isGNU mig; - buildInputs = [ ncurses readline gmp mpfr expat ] + buildInputs = [ ncurses readline gmp mpfr expat pkgconfig guile ] ++ stdenv.lib.optional isGNU hurd ++ stdenv.lib.optional doCheck dejagnu; From 538195e088be108e741d2f3b5df24470c5704762 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Sat, 6 Sep 2014 13:40:16 +0200 Subject: [PATCH 415/789] disable guile by default and add attribute for gdb-with-guile --- pkgs/top-level/all-packages.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b3a48315d86..390af2f731e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4366,11 +4366,14 @@ let }; gdb = callPackage ../development/tools/misc/gdb { + guile = null; hurd = gnu.hurdCross; readline = readline63; inherit (gnu) mig; }; + gdbGuile = lowPrio (gdb.override { inherit guile; }); + gdbCross = lowPrio (callPackage ../development/tools/misc/gdb { target = crossSystem; }); From c3fe942a57ac5772ace50df1b6580530d7163565 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Sun, 31 Aug 2014 14:34:12 +0200 Subject: [PATCH 416/789] start dhcpcd after network-interfaces --- nixos/modules/services/networking/dhcpcd.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/modules/services/networking/dhcpcd.nix b/nixos/modules/services/networking/dhcpcd.nix index 084ac69e8d5..15dbf80a987 100644 --- a/nixos/modules/services/networking/dhcpcd.nix +++ b/nixos/modules/services/networking/dhcpcd.nix @@ -138,6 +138,9 @@ in { description = "DHCP Client"; wantedBy = [ "network.target" ]; + # Work-around to deal with problems where the kernel would remove & + # re-create Wifi interfaces early during boot. + after = [ "network-interfaces.target" ]; # Stopping dhcpcd during a reconfiguration is undesirable # because it brings down the network interfaces configured by From 0fc621e66691e510b5fd72f09829a9014da26578 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Fri, 5 Sep 2014 22:52:31 +0200 Subject: [PATCH 417/789] pypyPackages.greenlet: disable --- pkgs/top-level/python-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 467b24ffea9..2c87b5da734 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3852,6 +3852,7 @@ rec { greenlet = buildPythonPackage rec { name = "greenlet-0.4.3"; + disabled = isPyPy; # builtin for pypy src = fetchurl { url = "http://pypi.python.org/packages/source/g/greenlet/${name}.zip"; From ed706113a899fa2f562e866e5ae46db2ae5a7398 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 15:23:22 +0200 Subject: [PATCH 418/789] sproxy-web: mark as broken --- pkgs/tools/networking/sproxy-web/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/tools/networking/sproxy-web/default.nix b/pkgs/tools/networking/sproxy-web/default.nix index fa3221a7759..67daab08359 100644 --- a/pkgs/tools/networking/sproxy-web/default.nix +++ b/pkgs/tools/networking/sproxy-web/default.nix @@ -22,5 +22,6 @@ cabal.mkDerivation (self: { description = "Web interface to sproxy"; license = self.stdenv.lib.licenses.bsd3; platforms = self.ghc.meta.platforms; + broken = true; }; }) From b08be368796357c34cbef0c01ba1be641b956b6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 15:56:48 +0200 Subject: [PATCH 419/789] pythonPackages.zope_testrunner: enable tests --- pkgs/top-level/python-packages.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2c87b5da734..f1540ca2a6b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9779,8 +9779,7 @@ rec { propagatedBuildInputs = [ zope_interface zope_exceptions zope_testing six ] ++ optional (!python.is_py3k or false) subunit; - # a test is failing - doCheck = false; + doCheck = true; meta = { description = "A flexible test runner with layer support"; From 2c7290c58f21f053abbf3512ec7b4b3255e94c28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 16:08:01 +0200 Subject: [PATCH 420/789] pythonPackages.sure: use upstream package, next release should have tests --- pkgs/top-level/python-packages.nix | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f1540ca2a6b..e59a8af5c60 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8315,15 +8315,11 @@ rec { export LC_ALL="en_US.UTF-8" ''; - # Not picking up from PyPI because it doesn't contain tests. - src = fetchgit { - url = "git://github.com/gabrielfalcao/sure.git"; - rev = "86ab9faa97aa9c1720c7d090deac2be385ed3d7a"; - sha256 = "02vffcdgr6vbj80lhl925w7zqy6cqnfvs088i0rbkjs5lxc511b3"; + src = fetchurl { + url = "http://pypi.python.org/packages/source/s/sure/${name}.tar.gz"; + md5 = "6dbecef27dffc41c8cd8aab8a8b3fdfb"; }; - - buildInputs = [ nose ]; propagatedBuildInputs = [ six mock ]; From 2eed178fe70f0ce545190beb86c83b25d740a653 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 16:15:40 +0200 Subject: [PATCH 421/789] pypyPackages.fabric: disable tests --- pkgs/top-level/python-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e59a8af5c60..7b6b91873d4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2109,6 +2109,7 @@ rec { sha256 = "103mzf0l15kyvw5nmf7bsdrqg6y3wpyxmkyl2h9lk7jxb5gdc9s1"; }; disabled = isPy3k; + doCheck = (!isPyPy); # https://github.com/fabric/fabric/issues/11891 propagatedBuildInputs = [ paramiko pycrypto ]; buildInputs = [ fudge nose ]; }; From e8a38b78227cb6d91d00b26ed4d0e7332b510a1c Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Sat, 6 Sep 2014 16:18:26 +0200 Subject: [PATCH 422/789] add more convenient adapter for making debug builds --- pkgs/top-level/all-packages.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 390af2f731e..d7c89d881d6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -423,6 +423,8 @@ let { deps = [ pkgs.lcov pkgs.enableGCOVInstrumentation ]; } ../build-support/setup-hooks/make-coverage-analysis-report.sh; + # intended to be used like nix-build -E 'with {}; enableDebugging fooPackage' + enableDebugging = pkg : pkg.override { stdenv = stdenvAdapters.keepDebugInfo pkg.stdenv; }; ### TOOLS From f99ad6fe9404d9c026baa5e6e2ea53d0d85d254b Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Sat, 6 Sep 2014 16:22:31 +0200 Subject: [PATCH 423/789] help2man: update from 1.46.1 to 1.46.2 --- pkgs/development/tools/misc/help2man/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix index c8cff116282..e8e50999f3e 100644 --- a/pkgs/development/tools/misc/help2man/default.nix +++ b/pkgs/development/tools/misc/help2man/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, perl, gettext, LocaleGettext, makeWrapper }: stdenv.mkDerivation rec { - name = "help2man-1.46.1"; + name = "help2man-1.46.2"; src = fetchurl { url = "mirror://gnu/help2man/${name}.tar.xz"; - sha256 = "0iqwb3qirl7rp1wwpbh01q89qxvi4h3bc73wi03av6hl4sh05z9x"; + sha256 = "0483cpizy0mqngibv56p6p8jxwh8678qksf5zs5wh963r3n1s6cj"; }; buildInputs = [ makeWrapper perl gettext LocaleGettext ]; From ee27bd1d99ab6eb4834e0d45e1456cdb8af15712 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 16:35:54 +0200 Subject: [PATCH 424/789] pypyPackages.pil: fix build --- pkgs/top-level/python-packages.nix | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7b6b91873d4..4e62a6c7f12 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5785,8 +5785,9 @@ rec { buildInputs = [ python pkgs.libjpeg pkgs.zlib pkgs.freetype ]; disabled = isPy3k; - doCheck = true; + + postInstall = "ln -s $out/lib/${python.libPrefix}/site-packages $out/lib/${python.libPrefix}/site-packages/PIL"; preConfigure = '' sed -i "setup.py" \ @@ -5795,13 +5796,8 @@ rec { s|^ZLIB_ROOT =.*$|ZLIB_ROOT = libinclude("${pkgs.zlib}")|g ;' ''; - checkPhase = "${python}/bin/${python.executable} selftest.py"; - buildPhase = "${python}/bin/${python.executable} setup.py build_ext -i"; - - postInstall = '' - cd "$out"/lib/python*/site-packages - ln -s $PWD PIL - ''; + checkPhase = "${python}/bin/${python.executable} selftest.py"; + buildPhase = "${python}/bin/${python.executable} setup.py build_ext -i"; meta = { homepage = http://www.pythonware.com/products/pil/; From 7cc77a12e48aec34b68a437ab1e63120cafe59e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 16:54:14 +0200 Subject: [PATCH 425/789] pypyPackages.numpy: disable and upgrade --- pkgs/top-level/python-packages.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4e62a6c7f12..00f0203db3e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5297,12 +5297,14 @@ rec { }; numpy = buildPythonPackage ( rec { - name = "numpy-1.7.1"; + name = "numpy-1.8.2"; src = fetchurl { url = "mirror://sourceforge/numpy/${name}.tar.gz"; - sha256 = "0jh832j439jj2b7m1z5a4rv5cpdn1yiw1r6gwrhdihw562d029am"; + sha256 = "1gcxlk3mf43pzpxvbw8kcfg173g4105j9szsfc1kxwablail6myf"; }; + + disabled = isPyPy; # WIP preConfigure = '' sed -i 's/-faltivec//' numpy/distutils/system_info.py From a9d25eae98e41b0c89a6784090a59fb72f6e59c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 17:10:29 +0200 Subject: [PATCH 426/789] pypyPackages.lxml: 3.0.2 -> 3.3.6 (fixes pypy build) --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 00f0203db3e..9cdd9c0d074 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4368,11 +4368,11 @@ rec { }; lxml = buildPythonPackage ( rec { - name = "lxml-3.0.2"; + name = "lxml-3.3.6"; src = fetchurl { url = "http://pypi.python.org/packages/source/l/lxml/${name}.tar.gz"; - md5 = "38b15b0dd5e9292cf98be800e84a3ce4"; + md5 = "a804b36864c483fe7abdd7f493a0c379"; }; buildInputs = [ pkgs.libxml2 pkgs.libxslt ]; From e69dd3b9aa497698c8012b71f5d0aa78aa2a60c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 17:12:11 +0200 Subject: [PATCH 427/789] pypyPackages.psycopg2: disable --- pkgs/top-level/python-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9cdd9c0d074..b14043a8349 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5982,6 +5982,7 @@ rec { psycopg2 = buildPythonPackage rec { name = "psycopg2-2.5.3"; + disabled = isPyPy; # error: invalid command 'test' doCheck = false; From 8d85bfefcf6ceeb26a160a08092d9a7ee5648a2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 17:16:44 +0200 Subject: [PATCH 428/789] pypyPackages.pycurl: disable --- pkgs/top-level/python-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b14043a8349..61cdc637f08 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6203,6 +6203,7 @@ rec { pycurl = buildPythonPackage (rec { name = "pycurl-7.19.5"; + disabled = isPyPy; # https://github.com/pycurl/pycurl/issues/208 src = fetchurl { url = "http://pycurl.sourceforge.net/download/${name}.tar.gz"; From 424669e7b040296ca62669f43e53876adfe20db2 Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 18:08:33 +0200 Subject: [PATCH 429/789] ack: update from 2.12 to 2.14 --- pkgs/top-level/perl-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 67accf016cc..c183edb1ac7 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -25,10 +25,10 @@ let self = _self // overrides; _self = with self; { ack = buildPerlPackage rec { - name = "ack-2.12"; + name = "ack-2.14"; src = fetchurl { url = "mirror://cpan/authors/id/P/PE/PETDANCE/${name}.tar.gz"; - sha256 = "0avxpgg1fvib4354d9a9710j63sgxpb5j07if5qr83apq9xx7wjj"; + sha256 = "0gqv30666vlclnwylhk9i64s7raa70x4ncy6bg48s5gcxwrshjc5"; }; # use gnused so that the preCheck command passes buildInputs = stdenv.lib.optional stdenv.isDarwin [ gnused ]; From 9d73922ed7812bb214619d86280fe04e1c2cbe47 Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 18:12:35 +0200 Subject: [PATCH 430/789] blueman: update from 1.21 to 1.23 --- pkgs/tools/bluetooth/blueman/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix index 095337d1251..a9a167355ed 100644 --- a/pkgs/tools/bluetooth/blueman/default.nix +++ b/pkgs/tools/bluetooth/blueman/default.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "blueman-1.21"; + name = "blueman-1.23"; src = fetchurl { url = "http://download.tuxfamily.org/blueman/${name}.tar.gz"; - sha256 = "1bz31w0cqcl77r7vfjwm9c4gmk4hvq3nqn1pjnd5qndia2mhs846"; + sha256 = "04ghlh4h5bwp9mqr5jxcmjm01595l5fq5561qxvf369fvjy63cjh"; }; configureFlags = "--disable-polkit"; From 17f1043eb076d5e7e80ee6b8d6f670e96e45dd71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 18:12:38 +0200 Subject: [PATCH 431/789] buildPythonPackage: support .override {} --- pkgs/top-level/python-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 61cdc637f08..85f11a12916 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -38,7 +38,7 @@ rec { # global distutils config used by buildPythonPackage distutils-cfg = callPackage ../development/python-modules/distutils-cfg { }; - buildPythonPackage = callPackage ../development/python-modules/generic { }; + buildPythonPackage = makeOverridable (callPackage ../development/python-modules/generic { }); wrapPython = pkgs.makeSetupHook { deps = pkgs.makeWrapper; From 46acec64c29dfc6fe6bc3dce1264797fec4424e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 18:13:01 +0200 Subject: [PATCH 432/789] pythonPackages.sqlalchemy{,8}: disable on py34 --- pkgs/top-level/python-packages.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 85f11a12916..7e7188c628a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8140,9 +8140,10 @@ rec { }; }); - sqlalchemy = pkgs.lib.overrideDerivation sqlalchemy9 (args: rec { + sqlalchemy = sqlalchemy9.override rec { name = "SQLAlchemy-0.7.10"; - disabled = isPy3k; + disabled = isPy34; + src = fetchurl { url = "http://pypi.python.org/packages/source/S/SQLAlchemy/${name}.tar.gz"; sha256 = "0rhxgr85xdhjn467qfs0dkyj8x46zxcv6ad3dfx3w14xbkb3kakp"; @@ -8155,10 +8156,12 @@ rec { preConfigure = optionalString isPy3k '' python3 sa2to3.py --no-diffs -w lib test examples ''; - }); + }; - sqlalchemy8 = pkgs.lib.overrideDerivation sqlalchemy9 (args: rec { + sqlalchemy8 = sqlalchemy9.override rec { name = "SQLAlchemy-0.8.7"; + disabled = isPy34; + src = fetchurl { url = "https://pypi.python.org/packages/source/S/SQLAlchemy/${name}.tar.gz"; md5 = "4f3377306309e46739696721b1785335"; @@ -8166,7 +8169,7 @@ rec { preConfigure = optionalString isPy3k '' python3 sa2to3.py --no-diffs -w lib test examples ''; - }); + }; sqlalchemy9 = buildPythonPackage rec { name = "SQLAlchemy-0.9.4"; From 2415c6cbb27d43dd656063e5782ebeb29ec1dce1 Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 18:16:45 +0200 Subject: [PATCH 433/789] memtest86: update from 4.3.3 to 4.3.6 --- pkgs/tools/misc/memtest86/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/memtest86/default.nix b/pkgs/tools/misc/memtest86/default.nix index ebf0a89a707..6fccff7781d 100644 --- a/pkgs/tools/misc/memtest86/default.nix +++ b/pkgs/tools/misc/memtest86/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation { - name = "memtest86-4.3.3"; + name = "memtest86-4.3.6"; src = fetchurl { - url = http://www.memtest86.com/downloads/memtest86-4.3.3-src.tar.gz; - sha256 = "1fzpk0s97lx8h1wbv2bgr6m8v4ag8i58kzr8fa25bvwyl8hks9sl"; + url = http://www.memtest86.com/downloads/memtest86-4.3.6-src.tar.gz; + sha256 = "0qbksyl2hmkm12n7zbmf2m2n3q811skhykxx6a9a7y6r7k8y5qmv"; }; preBuild = '' From 7694fcf524789b1b5d75fe2dab898aaeac11564f Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 18:18:21 +0200 Subject: [PATCH 434/789] mysql55: update from 5.5.37 to 5.5.39, potentially fixes CVE-2014-2494, CVE-2014-4207, CVE-2014-4258, CVE-2014-4260 --- pkgs/servers/sql/mysql/5.5.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/sql/mysql/5.5.x.nix b/pkgs/servers/sql/mysql/5.5.x.nix index 7c31bd7c582..7266727fdad 100644 --- a/pkgs/servers/sql/mysql/5.5.x.nix +++ b/pkgs/servers/sql/mysql/5.5.x.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { name = "mysql-${version}"; - version = "5.5.37"; + version = "5.5.39"; src = fetchurl { url = "http://cdn.mysql.com/Downloads/MySQL-5.5/${name}.tar.gz"; - md5 = "bf1d80c66d4822ec6036300399a33c03"; + sha256 = "0qj8bc83v6vf8jyn4ag179nclpn6ilw4h4xqb50zz9jd0c5s14qq"; }; preConfigure = stdenv.lib.optional stdenv.isDarwin '' From 43fdbc0bd70769aecb2d365d0ed3e4d83f1b9bfe Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 18:20:17 +0200 Subject: [PATCH 435/789] mysql: update from 5.1.72 to 5.1.73, potentially fixes CVE-2013-5908, CVE-2014-0401, CVE-2014-0412, CVE-2014-0437 --- pkgs/servers/sql/mysql/5.1.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/sql/mysql/5.1.x.nix b/pkgs/servers/sql/mysql/5.1.x.nix index c309158a670..b422b993832 100644 --- a/pkgs/servers/sql/mysql/5.1.x.nix +++ b/pkgs/servers/sql/mysql/5.1.x.nix @@ -3,11 +3,11 @@ # Note: zlib is not required; MySQL can use an internal zlib. stdenv.mkDerivation rec { - name = "mysql-5.1.72"; + name = "mysql-5.1.73"; src = fetchurl { url = "http://cdn.mysql.com/Downloads/MySQL-5.1/${name}.tar.gz"; - md5 = "ed79cd48e3e7402143548917813cdb80"; + sha256 = "1dfwi4ck0vq6sdci6gz0031s7zz5lc3pddqlgm0292s00l9y5sq5"; }; buildInputs = [ncurses zlib perl openssl] ++ stdenv.lib.optional stdenv.isLinux ps; From db0076b659967e6212d0c51f488679430c4b2351 Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 18:32:11 +0200 Subject: [PATCH 436/789] python34Packages.httplib2: update from 0.8 to 0.9, potentially fixes CVE-2013-2037 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7e7188c628a..982f053da24 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4026,11 +4026,11 @@ rec { }; httplib2 = buildPythonPackage rec { - name = "httplib2-0.8"; + name = "httplib2-0.9"; src = fetchurl { url = "https://pypi.python.org/packages/source/h/httplib2/${name}.tar.gz"; - sha256 = "174w6rz4na1sdlfz37h95l0pkfm9igf9nqmhbd8aqh3sm7d9zrff"; + sha256 = "1asi5wpncnc6ki3bz33mhb9xh2lrkb24y4qng8bmqnczdmm8rsir"; }; meta = { From 73bd403a579257b7483bc49977fa6c00239c2228 Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 19:01:31 +0200 Subject: [PATCH 437/789] shared_mime_info: update from 1.2 to 1.3 --- pkgs/data/misc/shared-mime-info/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/misc/shared-mime-info/default.nix b/pkgs/data/misc/shared-mime-info/default.nix index 134a6f5307e..57f5b24a6f8 100644 --- a/pkgs/data/misc/shared-mime-info/default.nix +++ b/pkgs/data/misc/shared-mime-info/default.nix @@ -2,11 +2,11 @@ , libxml2, glib}: stdenv.mkDerivation rec { - name = "shared-mime-info-1.2"; + name = "shared-mime-info-1.3"; src = fetchurl { url = "http://freedesktop.org/~hadess/${name}.tar.xz"; - sha256 = "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5"; + sha256 = "0fijrc8j2kw6bvdx7fmlfafbcwxvinhr8l44b46b3v59gj69rm2g"; }; buildInputs = [ From d54fd845bc785aa55913e7c65190738a944b1391 Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 19:04:08 +0200 Subject: [PATCH 438/789] at: update from 3.1.14 to 3.1.15 --- pkgs/tools/system/at/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/system/at/default.nix b/pkgs/tools/system/at/default.nix index 2964db34e12..1dc36043ea9 100644 --- a/pkgs/tools/system/at/default.nix +++ b/pkgs/tools/system/at/default.nix @@ -1,12 +1,12 @@ { fetchurl, stdenv, bison, flex, pam, ssmtp }: stdenv.mkDerivation { - name = "at-3.1.14"; + name = "at-3.1.15"; src = fetchurl { # Debian is apparently the last location where it can be found. - url = mirror://debian/pool/main/a/at/at_3.1.14.orig.tar.gz; - sha256 = "cd092bf05d29c25b286f55a960ce8b8c3c5beb571d86ed8eb1dfb3b61291b3ae"; + url = mirror://debian/pool/main/a/at/at_3.1.15.orig.tar.gz; + sha256 = "1z7pgglr0zmwapb4sc1bdb3z0hgig1asyzqv4gs5xafmjd94za03"; }; patches = [ ./install.patch ]; From 0d357114129097b7978c79c371ff399fe85cd046 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Sat, 6 Sep 2014 20:10:19 +0200 Subject: [PATCH 439/789] atd: use /var/setuid-wrappers/sendmail by default instead of ssmtp --- pkgs/tools/system/at/default.nix | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/system/at/default.nix b/pkgs/tools/system/at/default.nix index 1dc36043ea9..5108174c887 100644 --- a/pkgs/tools/system/at/default.nix +++ b/pkgs/tools/system/at/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, bison, flex, pam, ssmtp }: +{ fetchurl, stdenv, bison, flex, pam, sendmailPath ? "/var/setuid-wrappers/sendmail" }: stdenv.mkDerivation { name = "at-3.1.15"; @@ -12,15 +12,11 @@ stdenv.mkDerivation { patches = [ ./install.patch ]; buildInputs = - [ bison flex pam - # `configure' and `atd' want the `sendmail' command. - ssmtp - ]; + [ bison flex pam ]; preConfigure = '' - export PATH="${ssmtp}/sbin:$PATH" - + export SENDMAIL=${sendmailPath} # Purity: force atd.pid to be placed in /var/run regardless of # whether it exists now. substituteInPlace ./configure --replace "test -d /var/run" "true" From a71744392b6964e624d3ae968bee660731b7d271 Mon Sep 17 00:00:00 2001 From: Nixpkgs Monitor Date: Sat, 6 Sep 2014 20:10:37 +0200 Subject: [PATCH 440/789] pcre: update from 8.34 to 8.35 --- pkgs/development/libraries/pcre/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index 4cf6bd44dd3..930d7b86f06 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -5,11 +5,11 @@ with stdenv.lib; stdenv.mkDerivation rec { - name = "pcre-8.34"; + name = "pcre-8.35"; src = fetchurl { url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${name}.tar.bz2"; - sha256 = "0gsqmsp0q0n3q0ba32gkjvgcsdy6nwidqa7sbxkbw817zzhkl15n"; + sha256 = "0nw66r92dr24vy9k4lw17bkv8x5nlzn6wx9hq4y2dvzgig3w2qd9"; }; # The compiler on Darwin crashes with an internal error while building the From 18d99044331fa99372fc67abf0451056087e5629 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 20:59:06 +0200 Subject: [PATCH 441/789] nixos-option: fixes as suggested by @nbp --- nixos/doc/manual/man-nixos-option.xml | 2 +- nixos/modules/installer/tools/nixos-option.sh | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/nixos/doc/manual/man-nixos-option.xml b/nixos/doc/manual/man-nixos-option.xml index 554b2969180..2875336c67e 100644 --- a/nixos/doc/manual/man-nixos-option.xml +++ b/nixos/doc/manual/man-nixos-option.xml @@ -71,7 +71,7 @@ Description: Whether to enable the GNU GRUB boot loader. Declared by: - "/path/to/nixpkgs/nixos/modules/system/boot/loader/grub/grub.nix" + "/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/nixos/modules/system/boot/loader/grub/grub.nix" Defined by: "/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/nixos/modules/system/boot/loader/grub/grub.nix" diff --git a/nixos/modules/installer/tools/nixos-option.sh b/nixos/modules/installer/tools/nixos-option.sh index d995787c76f..96d09c3a605 100644 --- a/nixos/modules/installer/tools/nixos-option.sh +++ b/nixos/modules/installer/tools/nixos-option.sh @@ -182,7 +182,9 @@ if test "$(evalOpt "_type" 2> /dev/null)" = '"option"'; then fi echo if example=$(evalOpt "example" - 2> /dev/null); then - echo "Example: $example" + echo "Example:" + echo "$example" + echo fi echo "Description:" echo From 420385f81a9b3d288e9ab975bd980643e12b5fec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 6 Sep 2014 21:26:03 +0200 Subject: [PATCH 442/789] lua-5.2: minor update to fix CVE-2014-5461 Note that almost all packages use lua-5.1 which does remain vulnerable, as they released no update on that branch. CC: @peti. --- pkgs/development/interpreters/lua-5/5.2.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/lua-5/5.2.nix b/pkgs/development/interpreters/lua-5/5.2.nix index ea44adb462c..1839e7789a8 100644 --- a/pkgs/development/interpreters/lua-5/5.2.nix +++ b/pkgs/development/interpreters/lua-5/5.2.nix @@ -10,11 +10,11 @@ in stdenv.mkDerivation rec { name = "lua-${version}"; majorVersion = "5.2"; - version = "${majorVersion}.2"; + version = "${majorVersion}.3"; src = fetchurl { url = "http://www.lua.org/ftp/${name}.tar.gz"; - sha256 = "004zyh9p3lpvbwhyhlmrw6wwcia5abx84q4h2brkn4zdypipvmiz"; + sha1 = "926b7907bc8d274e063d42804666b40a3f3c124c"; }; nativeBuildInputs = [ readline ]; From ac03d296b9b261b342e95871c62593d374179204 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 6 Sep 2014 21:28:03 +0200 Subject: [PATCH 443/789] telegram-cli: work around a build problem --- .../networking/instant-messengers/telegram-cli/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix b/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix index b0302ba8e0b..812f00829e2 100644 --- a/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix +++ b/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix @@ -12,6 +12,8 @@ stdenv.mkDerivation rec { buildInputs = [ libconfig lua5_2 openssl readline zlib ]; + NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations"; # CPPFunction + installPhase = '' mkdir -p $out/bin cp ./telegram $out/bin/telegram-wo-key From 81046b9e5d20077c4a394c8d5e685ead9c7f609c Mon Sep 17 00:00:00 2001 From: Rob Vermaas Date: Sat, 6 Sep 2014 21:37:46 +0200 Subject: [PATCH 444/789] Initial configuration + image generation script for Micro$oft Azure. Work in progress for #3986. --- .../maintainers/scripts/azure/create-azure.sh | 11 ++ nixos/modules/virtualisation/azure-config.nix | 5 + nixos/modules/virtualisation/azure-image.nix | 122 ++++++++++++++++++ 3 files changed, 138 insertions(+) create mode 100755 nixos/maintainers/scripts/azure/create-azure.sh create mode 100644 nixos/modules/virtualisation/azure-config.nix create mode 100644 nixos/modules/virtualisation/azure-image.nix diff --git a/nixos/maintainers/scripts/azure/create-azure.sh b/nixos/maintainers/scripts/azure/create-azure.sh new file mode 100755 index 00000000000..f87a88404f6 --- /dev/null +++ b/nixos/maintainers/scripts/azure/create-azure.sh @@ -0,0 +1,11 @@ +#! /bin/sh -e + +BUCKET_NAME=${BUCKET_NAME:-nixos} +export NIX_PATH=nixpkgs=../../../.. +export NIXOS_CONFIG=$(dirname $(readlink -f $0))/../../../modules/virtualisation/azure-image.nix +export TIMESTAMP=$(date +%Y%m%d%H%M) + +nix-build '' \ + -A config.system.build.azureImage --argstr system x86_64-linux -o azure --option extra-binary-caches http://hydra.nixos.org -j 10 + +azure vm image create nixos-test --location "West Europe" --md5-skip -v --os Linux azure/disk.vhd diff --git a/nixos/modules/virtualisation/azure-config.nix b/nixos/modules/virtualisation/azure-config.nix new file mode 100644 index 00000000000..5c9f18ef52a --- /dev/null +++ b/nixos/modules/virtualisation/azure-config.nix @@ -0,0 +1,5 @@ +{ config, pkgs, modulesPath, ... }: + +{ + imports = [ "${modulesPath}/virtualisation/azure-image.nix" ]; +} diff --git a/nixos/modules/virtualisation/azure-image.nix b/nixos/modules/virtualisation/azure-image.nix new file mode 100644 index 00000000000..8c980c5eec9 --- /dev/null +++ b/nixos/modules/virtualisation/azure-image.nix @@ -0,0 +1,122 @@ +{ config, lib, pkgs, ... }: + +with lib; +let + diskSize = "4096"; +in +{ + imports = [ ../profiles/headless.nix ]; + + system.build.azureImage = + pkgs.vmTools.runInLinuxVM ( + pkgs.runCommand "azure-image" + { preVM = + '' + mkdir $out + diskImage=$out/$diskImageBase + + cyl=$(((${diskSize}*1024*1024)/(512*63*255))) + size=$(($cyl*255*63*512)) + roundedsize=$((($size/(1024*1024)+1)*(1024*1024))) + ${pkgs.vmTools.qemu}/bin/qemu-img create -f raw $diskImage $roundedsize + mv closure xchg/ + ''; + + postVM = + '' + mkdir -p $out + ${pkgs.vmTools.qemu}/bin/qemu-img convert -f raw -O vpc $diskImage $out/disk.vhd + rm $diskImage + ''; + diskImageBase = "nixos-${config.system.nixosVersion}-${pkgs.stdenv.system}.raw"; + buildInputs = [ pkgs.utillinux pkgs.perl ]; + exportReferencesGraph = + [ "closure" config.system.build.toplevel ]; + } + '' + # Create partition table + ${pkgs.parted}/sbin/parted /dev/vda mklabel msdos + ${pkgs.parted}/sbin/parted /dev/vda mkpart primary ext4 1 ${diskSize}M + ${pkgs.parted}/sbin/parted /dev/vda print + . /sys/class/block/vda1/uevent + mknod /dev/vda1 b $MAJOR $MINOR + + # Create an empty filesystem and mount it. + ${pkgs.e2fsprogs}/sbin/mkfs.ext4 -L nixos /dev/vda1 + ${pkgs.e2fsprogs}/sbin/tune2fs -c 0 -i 0 /dev/vda1 + + mkdir /mnt + mount /dev/vda1 /mnt + + # The initrd expects these directories to exist. + mkdir /mnt/dev /mnt/proc /mnt/sys + + mount --bind /proc /mnt/proc + mount --bind /dev /mnt/dev + mount --bind /sys /mnt/sys + + # Copy all paths in the closure to the filesystem. + storePaths=$(perl ${pkgs.pathsFromGraph} /tmp/xchg/closure) + + mkdir -p /mnt/nix/store + echo "copying everything (will take a while)..." + cp -prd $storePaths /mnt/nix/store/ + + # Register the paths in the Nix database. + printRegistration=1 perl ${pkgs.pathsFromGraph} /tmp/xchg/closure | \ + chroot /mnt ${config.nix.package}/bin/nix-store --load-db + + # Create the system profile to allow nixos-rebuild to work. + chroot /mnt ${config.nix.package}/bin/nix-env \ + -p /nix/var/nix/profiles/system --set ${config.system.build.toplevel} + + # `nixos-rebuild' requires an /etc/NIXOS. + mkdir -p /mnt/etc + touch /mnt/etc/NIXOS + + # `switch-to-configuration' requires a /bin/sh + mkdir -p /mnt/bin + ln -s ${config.system.build.binsh}/bin/sh /mnt/bin/sh + + # Install a configuration.nix. + mkdir -p /mnt/etc/nixos /mnt/boot/grub + cp ${./azure-config.nix} /mnt/etc/nixos/configuration.nix + + # Generate the GRUB menu. + ln -s vda /dev/sda + chroot /mnt ${config.system.build.toplevel}/bin/switch-to-configuration boot + + umount /mnt/proc /mnt/dev /mnt/sys + umount /mnt + '' + ); + + fileSystems."/".device = "/dev/disk/by-label/nixos"; + + boot.kernelParams = [ "console=ttyS0" "earlyprintk=ttyS0" "rootdelay=300" "panic=1" "boot.panic_on_fail" ]; + boot.initrd.kernelModules = [ "hv_vmbus" "hv_netvsc" "hv_utils" "hv_storvsc" ]; + + # Generate a GRUB menu. + boot.loader.grub.device = "/dev/sda"; + boot.loader.grub.version = 2; + boot.loader.grub.timeout = 0; + + # Don't put old configurations in the GRUB menu. The user has no + # way to select them anyway. + boot.loader.grub.configurationLimit = 0; + + # Allow root logins only using the SSH key that the user specified + # at instance creation time. + services.openssh.enable = true; + services.openssh.permitRootLogin = "without-password"; + + # Force getting the hostname from Azure + networking.hostName = mkDefault ""; + + # Always include cryptsetup so that NixOps can use it. + environment.systemPackages = [ pkgs.cryptsetup ]; + + networking.usePredictableInterfaceNames = false; + + users.extraUsers.root.openssh.authorizedKeys.keys = [ builtins.readFile ]; +} From e9c1fb0c89a75e23f9a78f6388629db244066449 Mon Sep 17 00:00:00 2001 From: Rob Vermaas Date: Sat, 6 Sep 2014 21:53:10 +0200 Subject: [PATCH 445/789] Azure: Mount metadata 'CD' on /metadata --- nixos/modules/virtualisation/azure-image.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/modules/virtualisation/azure-image.nix b/nixos/modules/virtualisation/azure-image.nix index 8c980c5eec9..c415890d6c4 100644 --- a/nixos/modules/virtualisation/azure-image.nix +++ b/nixos/modules/virtualisation/azure-image.nix @@ -93,6 +93,9 @@ in fileSystems."/".device = "/dev/disk/by-label/nixos"; + # Azure metadata is available as a CD-ROM drive. + fileSystems."/metadata".device = "/dev/sr0"; + boot.kernelParams = [ "console=ttyS0" "earlyprintk=ttyS0" "rootdelay=300" "panic=1" "boot.panic_on_fail" ]; boot.initrd.kernelModules = [ "hv_vmbus" "hv_netvsc" "hv_utils" "hv_storvsc" ]; From 0418d8299d17e7efac7585bf7843c4a3356e9316 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sat, 6 Sep 2014 22:24:56 +0200 Subject: [PATCH 446/789] disable a bunch of python packages on pypy --- pkgs/development/python-modules/sip/4.16.nix | 4 ++-- pkgs/development/python-modules/sip/default.nix | 4 ++-- pkgs/top-level/python-packages.nix | 9 ++++++--- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/sip/4.16.nix b/pkgs/development/python-modules/sip/4.16.nix index aa1fb198438..210346062f9 100644 --- a/pkgs/development/python-modules/sip/4.16.nix +++ b/pkgs/development/python-modules/sip/4.16.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchurl, python }: +{ stdenv, fetchurl, python, isPyPy }: -stdenv.mkDerivation rec { +if isPyPy then throw "sip not supported for interpreter ${python.executable}" else stdenv.mkDerivation rec { name = "sip-4.16.1"; src = fetchurl { diff --git a/pkgs/development/python-modules/sip/default.nix b/pkgs/development/python-modules/sip/default.nix index db397f95944..cf3a0149844 100644 --- a/pkgs/development/python-modules/sip/default.nix +++ b/pkgs/development/python-modules/sip/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchurl, python }: +{ stdenv, fetchurl, python, isPyPy }: -stdenv.mkDerivation rec { +if isPyPy then throw "sip not supported for interpreter ${python.executable}" else stdenv.mkDerivation rec { name = "sip-4.14.7"; # kde410.pykde4 doesn't build with 4.15 src = fetchurl { diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 982f053da24..d1ad28a9cde 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -188,12 +188,12 @@ rec { sip = import ../development/python-modules/sip { inherit (pkgs) stdenv fetchurl; - inherit python; + inherit python isPyPy; }; sip_4_16 = import ../development/python-modules/sip/4.16.nix { inherit (pkgs) stdenv fetchurl; - inherit python; + inherit python isPyPy; }; tables = import ../development/python-modules/tables { @@ -440,6 +440,7 @@ rec { apsw = buildPythonPackage rec { name = "apsw-3.7.6.2-r1"; + disabled = isPyPy; src = fetchurl { url = "http://apsw.googlecode.com/files/${name}.zip"; @@ -2005,6 +2006,7 @@ rec { eyeD3 = buildPythonPackage rec { version = "0.7.4"; name = "eyeD3-${version}"; + disabled = isPyPy; src = fetchurl { url = "http://eyed3.nicfit.net/releases/${name}.tgz"; @@ -6478,6 +6480,7 @@ rec { pyparted = buildPythonPackage rec { name = "pyparted-${version}"; version = "3.10"; + disabled = isPyPy; src = fetchurl { url = "https://fedorahosted.org/releases/p/y/pyparted/${name}.tar.gz"; @@ -8536,7 +8539,7 @@ rec { smmap = buildPythonPackage rec { name = "smmap-0.8.2"; - disabled = isPy3k; # next release will have py3k support + disabled = isPy3k || isPyPy; # next release will have py3k/pypy support meta.maintainers = [ stdenv.lib.maintainers.mornfall ]; src = fetchurl { From f14d1d76bb14dd186ee6854aded124cdb09133db Mon Sep 17 00:00:00 2001 From: Rob Vermaas Date: Sat, 6 Sep 2014 22:54:15 +0200 Subject: [PATCH 447/789] Azure: Fix authorized_keys --- nixos/modules/virtualisation/azure-image.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/virtualisation/azure-image.nix b/nixos/modules/virtualisation/azure-image.nix index c415890d6c4..ec7e8888c03 100644 --- a/nixos/modules/virtualisation/azure-image.nix +++ b/nixos/modules/virtualisation/azure-image.nix @@ -121,5 +121,5 @@ in networking.usePredictableInterfaceNames = false; - users.extraUsers.root.openssh.authorizedKeys.keys = [ builtins.readFile ]; + users.extraUsers.root.openssh.authorizedKeys.keys = [ (builtins.readFile ) ]; } From 7668e3dafedfe2ca801f42e1830bf8073fa7d6ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sun, 7 Sep 2014 00:13:07 +0200 Subject: [PATCH 448/789] sip: use package from pythonPackages attrset --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d7c89d881d6..9b04b37d7d7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6825,7 +6825,7 @@ let rhpl = callPackage ../development/python-modules/rhpl { }; - sip = callPackage ../development/python-modules/sip { }; + sip = pythonPackages.sip; pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix { stdenv = if stdenv.isDarwin From 301fe9360e70b364d6a58065f4175c0923c201a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sun, 7 Sep 2014 00:13:28 +0200 Subject: [PATCH 449/789] pypyPackages.skype4py: disable --- pkgs/top-level/python-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d1ad28a9cde..f97da897ba5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7980,7 +7980,7 @@ rec { skype4py = buildPythonPackage (rec { name = "Skype4Py-1.0.32.0"; - disabled = isPy3k; + disabled = isPy3k || isPyPy; src = fetchurl { url = mirror://sourceforge/skype4py/Skype4Py-1.0.32.0.tar.gz; From 4ead67b785fc666aaebaa3958b034dca28d61f19 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sun, 7 Sep 2014 00:46:25 +0200 Subject: [PATCH 450/789] firefox: Workaround for building on i686-linux http://hydra.nixos.org/build/13992569 --- pkgs/applications/networking/browsers/firefox/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix index 4f4a88f01c8..3223f873bfb 100644 --- a/pkgs/applications/networking/browsers/firefox/default.nix +++ b/pkgs/applications/networking/browsers/firefox/default.nix @@ -66,7 +66,8 @@ stdenv.mkDerivation rec { ] ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"] else [ "--disable-debug" "--enable-release" - "--enable-optimize" "--enable-strip" ]) + "--enable-optimize${lib.optionalString (stdenv.system == "i686-linux") "=-O1"}" + "--enable-strip" ]) ++ lib.optional enableOfficialBranding "--enable-official-branding"; enableParallelBuilding = true; From b61d98728cb6564da06c0b72a8071a7da58bd32d Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Sat, 6 Sep 2014 16:15:37 -0700 Subject: [PATCH 451/789] Add notice for chocolateDoomMaster --- pkgs/top-level/all-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b84e986b499..7b9e52ccc00 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -754,6 +754,7 @@ let chkrootkit = callPackage ../tools/security/chkrootkit { }; chocolateDoom = callPackage ../games/chocolate-doom { }; + # master is here because chocolateDoom v2.0 has broken netplay chocolateDoomMaster = callPackage ../games/chocolate-doom/master.nix { }; chrony = callPackage ../tools/networking/chrony { }; From eb7dbf90677983f7febf251c3f286a0dc7966507 Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Sat, 6 Sep 2014 16:18:23 -0700 Subject: [PATCH 452/789] Remove eternityMaster --- pkgs/games/eternity-engine/master.nix | 30 --------------------------- pkgs/top-level/all-packages.nix | 1 - 2 files changed, 31 deletions(-) delete mode 100644 pkgs/games/eternity-engine/master.nix diff --git a/pkgs/games/eternity-engine/master.nix b/pkgs/games/eternity-engine/master.nix deleted file mode 100644 index 0d0f8e26b44..00000000000 --- a/pkgs/games/eternity-engine/master.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ stdenv, cmake, mesa, SDL, SDL_mixer, SDL_net, fetchgit }: - -stdenv.mkDerivation rec { - name = "eternity-engine-20140902"; - src = fetchgit { - url = git://github.com/team-eternity/eternity.git; - rev = "db21379abb33f6d92dc0e1665e527e4d49acc722"; - sha256 = "0k54yvxqxnd60az21b734ka3myxkqb7pjmdp3klrkfwp1kl02ysc"; - }; - - cmakeFlags = '' - -DCMAKE_BUILD_TYPE=Release - ''; - - buildInputs = [ stdenv cmake mesa SDL SDL_mixer SDL_net ]; - - enableParallelBuilding = true; - - installPhase = '' - mkdir -p $out/bin - cp source/eternity $out/bin - ''; - - meta = { - homepage = http://doomworld.com/eternity; - description = "New school Doom port by James Haley"; - license = stdenv.lib.licenses.gpl3; - maintainers = with stdenv.lib.maintainers; [ MP2E ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 30f43d30059..2bf19ae4bab 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -994,7 +994,6 @@ let ethtool = callPackage ../tools/misc/ethtool { }; eternity = callPackage ../games/eternity-engine { }; - eternityMaster = callPackage ../games/eternity-engine/master.nix { }; ettercap = callPackage ../applications/networking/sniffers/ettercap { }; From d3f80b36ba5289a7e37f03c2b3dae9eb6b55d2d7 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Sep 2014 18:09:48 -0700 Subject: [PATCH 453/789] kernel: 3.10.53 -> 3.10.54 --- pkgs/os-specific/linux/kernel/linux-3.10.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-3.10.nix b/pkgs/os-specific/linux/kernel/linux-3.10.nix index 8fa684e407c..e888afc2c6d 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.10.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.10.53"; + version = "3.10.54"; extraMeta.branch = "3.10"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "1sxa6ppgpy9fgj4lyj8d53y309v6r5nmifbrcf5pqs6l944frhq6"; + sha256 = "0rhwdkw0ia8bpi237006y0m84vfvqz38l0z2dvqy2shg8ywf24ya"; }; features.iwlwifi = true; From ed7ce2bd8175ee9bd5f5d3289f7a177f546ba14e Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Sep 2014 18:10:01 -0700 Subject: [PATCH 454/789] kernel: 3.14.17 -> 3.14.18 --- pkgs/os-specific/linux/kernel/linux-3.14.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-3.14.nix b/pkgs/os-specific/linux/kernel/linux-3.14.nix index 74d83345ec1..5dc570f1998 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.14.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.14.17"; + version = "3.14.18"; extraMeta.branch = "3.14"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "1dl9skwd1xvkdm9gblidcawkck6x5slb41gbx0i8jxby2k6w6i5n"; + sha256 = "0i0b35qmpxvfkflf079dhfx3yfjbh0dgqs7qzxrhs9sw4jf73z75"; }; features.iwlwifi = true; From 844aef5bcf19ae7e362bceb981b17fa7a59c2c9c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Sep 2014 18:10:13 -0700 Subject: [PATCH 455/789] kernel: 3.16.1 -> 3.16.2 --- pkgs/os-specific/linux/kernel/linux-3.16.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-3.16.nix b/pkgs/os-specific/linux/kernel/linux-3.16.nix index be2e68ab81e..c41e1bce107 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.16.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.16.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.16.1"; + version = "3.16.2"; extraMeta.branch = "3.16"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "0wbxqlmk7w9047ir51dsz6vi7ww0hpycgrb43mk2a189xaldsdxy"; + sha256 = "16l5l099qv367d3gknpbycgrakli2mdklvgaifsn3hcrrjs44ybf"; }; features.iwlwifi = true; From fb9d919fe414404794f0354b6dce65785ac78153 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Sep 2014 18:47:24 -0700 Subject: [PATCH 456/789] libotr: git -> 4.0.0 --- pkgs/development/libraries/libotr/default.nix | 25 +++++++++---------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/pkgs/development/libraries/libotr/default.nix b/pkgs/development/libraries/libotr/default.nix index 3782dabc67b..7b8f40d1886 100644 --- a/pkgs/development/libraries/libotr/default.nix +++ b/pkgs/development/libraries/libotr/default.nix @@ -1,23 +1,22 @@ -{stdenv, fetchgit, libgcrypt, autoconf, automake, libtool}: +{ stdenv, fetchurl, libgcrypt, autoreconfHook }: stdenv.mkDerivation rec { - name = "libotr-20130821-git-f0f8a2"; - src = fetchgit { - url = "http://git.code.sf.net/p/otr/libotr"; - rev = "f0f8a2"; - sha256 = "08019r8bnk8f4yx6574jdz217p283ry7dmpqcad2d87yhkdmc3mm"; + name = "libotr-4.0.0"; + + src = fetchurl { + url = "https://otr.cypherpunks.ca/${name}.tar.gz"; + sha256 = "1d4k0b7v4d3scwm858cmqr9c6xgd6ppla1vk4x2yg64q82a1k49z"; }; - NIX_LDFLAGS = "-lssp"; + buildInputs = [ autoreconfHook ]; + propagatedBuildInputs = [ libgcrypt ]; - propagatedBuildInputs = [ libgcrypt autoconf automake libtool ]; - - preConfigure = "autoreconf -vfi"; - - meta = { + meta = with stdenv.lib; { homepage = "http://www.cypherpunks.ca/otr/"; repositories.git = git://git.code.sf.net/p/otr/libotr; - license = stdenv.lib.licenses.lgpl21; + license = licenses.lgpl21; description = "Library for Off-The-Record Messaging"; + maintainers = with maintainers; [ wkennington ]; + platforms = platforms.unix; }; } From cc5d2cf55a0cbfc54b4a132b059b9e49b5ed51db Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Sep 2014 18:47:44 -0700 Subject: [PATCH 457/789] bitlbee: 3.2 -> 3.2.2 --- .../instant-messengers/bitlbee/default.nix | 20 +++++++++++-------- pkgs/top-level/all-packages.nix | 5 +---- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix index cf10c1e6fe2..8685e704af4 100644 --- a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix +++ b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix @@ -1,19 +1,23 @@ { fetchurl, stdenv, gnutls, glib, pkgconfig, check, libotr }: +with stdenv.lib; stdenv.mkDerivation rec { - name = "bitlbee-3.2"; + name = "bitlbee-3.2.2"; src = fetchurl { url = "mirror://bitlbee/src/${name}.tar.gz"; - sha256 = "1b43828e906f5450993353f2ebecc6c038f0261c4dc3f1722ebafa6ea3e62030"; + sha256 = "13jmcxxgli82wb2n4hs091159xk8rgh7nb02f478lgpjh6996f5s"; }; buildInputs = [ gnutls glib pkgconfig libotr ] - ++ stdenv.lib.optional doCheck check; + ++ optional doCheck check; - configureFlags = [ "--otr=1" ]; + configureFlaags = [ + "--gcov=1" + "--otr=1" + "--ssl=gnutls" + ]; - preCheck = "mkdir tests/.depend"; doCheck = true; meta = { @@ -31,9 +35,9 @@ stdenv.mkDerivation rec { ''; homepage = http://www.bitlbee.org/; - license = stdenv.lib.licenses.gpl2Plus; + license = licenses.gpl2Plus; - maintainers = [ stdenv.lib.maintainers.ludo ]; - platforms = stdenv.lib.platforms.gnu; # arbitrary choice + maintainers = with maintainers; [ ludo wkennington ]; + platforms = platforms.gnu; # arbitrary choice }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9b04b37d7d7..5c0d6039f04 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8423,10 +8423,7 @@ let (callPackage ../applications/misc/bitcoin/dogecoin.nix {}) ); - bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { - gnutls = gnutls; - libotr = libotr_3_2; - }; + bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { }; blender = callPackage ../applications/misc/blender { python = python34; From c3361f9414561822bb05e1306f29cd24198219c0 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Sun, 7 Sep 2014 11:34:15 +0200 Subject: [PATCH 458/789] perlPackages.FinanceQuote: update from 1.29 to 1.35 --- pkgs/top-level/perl-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index c183edb1ac7..f77836671cb 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -3785,10 +3785,10 @@ let self = _self // overrides; _self = with self; { }; FinanceQuote = buildPerlPackage rec { - name = "Finance-Quote-1.29"; + name = "Finance-Quote-1.35"; src = fetchurl { url = "mirror://cpan/authors/id/E/EC/ECOCODE/${name}.tar.gz"; - sha256 = "0rx8whixbhwq2imd3ffx3vcqdgfbjj6y1s01m38b52x3bjn9hw0f"; + sha256 = "0mxfhi1ndckj4w7fw20rwy6ymalg2yncnp9xn0v2bnk5ibqj439w"; }; propagatedBuildInputs = [ CryptSSLeay HTMLTableExtract HTMLTree HTTPMessage LWP DateCalc JSON ]; meta = { From 5856fbc7d2d80f6fdab7400890b43a0d03d94d29 Mon Sep 17 00:00:00 2001 From: Nathaniel Baxter Date: Sun, 7 Sep 2014 12:14:44 +1000 Subject: [PATCH 459/789] nixos-manual: Fix reference to obsolete configuration option --- nixos/doc/manual/configuration/x-windows.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/doc/manual/configuration/x-windows.xml b/nixos/doc/manual/configuration/x-windows.xml index bc58bb1f066..4008e89fcea 100644 --- a/nixos/doc/manual/configuration/x-windows.xml +++ b/nixos/doc/manual/configuration/x-windows.xml @@ -67,7 +67,7 @@ with other kernel modules. On 64-bit systems, if you want full acceleration for 32-bit programs such as Wine, you should also set the following: -services.xserver.driSupport32Bit = true; +hardware.opengl.driSupport32Bit = true; From 9104888b3824932ca6a0b880c9dcf681bac30a55 Mon Sep 17 00:00:00 2001 From: Oliver Charles Date: Sun, 7 Sep 2014 11:40:47 +0100 Subject: [PATCH 460/789] haskellPackages.tastyAntXml: Update to 1.0.0.9 --- pkgs/development/libraries/haskell/tasty-ant-xml/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix b/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix index 9f8e59322b0..2dbd8a17b94 100644 --- a/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix +++ b/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "tasty-ant-xml"; - version = "1.0.0.8"; - sha256 = "0khjx3anxp63ch6wkdhqnsk5miavkq014ab30rpir97gdqw0vykm"; + version = "1.0.0.9"; + sha256 = "0zl1gdm5cm3vpi551ysvcis17grb83q18y3c329bxynnizrm8q9f"; buildDepends = [ genericDeriving mtl reducers stm tagged tasty transformers xml ]; From 218c28934e16d80397c7c5227798595d1bbf8564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 7 Sep 2014 13:09:27 +0200 Subject: [PATCH 461/789] jquery-ui: align attrname with pkgname (jquery_ui => jquery-ui) --- pkgs/top-level/all-packages.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5c0d6039f04..c562c530ba1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6695,7 +6695,7 @@ let ### DEVELOPMENT / LIBRARIES / JAVASCRIPT - jquery_ui = callPackage ../development/libraries/javascript/jquery-ui { }; + jquery-ui = callPackage ../development/libraries/javascript/jquery-ui { }; yuicompressor = callPackage ../development/tools/yuicompressor { }; @@ -11778,6 +11778,7 @@ let asciidocFull = asciidoc-full; # added 2014-06-22 lttngTools = lttng-tools; # added 2014-07-31 lttngUst = lttng-ust; # added 2014-07-31 + jquery_ui = jquery-ui; # added 2014-09-07 }; in self; in pkgs From f8c7e340a4a65b53f4015abd9225e3298588e2ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 7 Sep 2014 13:36:13 +0200 Subject: [PATCH 462/789] jquery-ui: update to latest stable (v1.11.1) The current version (v1.10.4) is now called "legacy". The new stable version has a different directory layout; it no longer splits css/ and js/ directories. Since the *.js files refer to the *.css files by relative paths, I'm not splitting them. Everything now goes to "$out/js/". Also, upstream removed version numbers from filenames, so we don't need to create those version-less symlinks anymore. --- .../javascript/jquery-ui/default.nix | 20 +++++-------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/pkgs/development/libraries/javascript/jquery-ui/default.nix b/pkgs/development/libraries/javascript/jquery-ui/default.nix index 9a485906e53..fd7f5367c8e 100644 --- a/pkgs/development/libraries/javascript/jquery-ui/default.nix +++ b/pkgs/development/libraries/javascript/jquery-ui/default.nix @@ -1,29 +1,19 @@ { stdenv, fetchurl, unzip }: stdenv.mkDerivation rec { - name = "jquery-ui-1.10.4"; + name = "jquery-ui-1.11.1"; src = fetchurl { - url = "http://jqueryui.com/resources/download/${name}.custom.zip"; - sha256 = "04kp27ln74j4k2jacs54264x2bsdjx1dxlw5zlpd889jqv2m6dfc"; + url = "http://jqueryui.com/resources/download/${name}.zip"; + sha256 = "05dlcfwklymx94fb4n88l5syf80l6zrs862zzmla477vd8ndk537"; }; buildInputs = [ unzip ]; installPhase = '' - mkdir -p $out - cp -prvd css js $out/ - - # For convenience, provide symlinks "jquery.min.js" etc. (i.e., - # without the version number). - pushd $out/js - ln -s jquery-ui-*.custom.js jquery-ui.js - ln -s jquery-ui-*.custom.min.js jquery-ui.min.js - ln -s jquery-1.*.js jquery.js - popd - pushd $out/css/smoothness - ln -s jquery-ui-*.custom.css jquery-ui.css + mkdir -p "$out/js" + cp -rv . "$out/js" ''; meta = { From af26d5e25b12316f350723a0d9eac3af8ce0baca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 7 Sep 2014 14:20:11 +0200 Subject: [PATCH 463/789] jquery: new package jQuery is a JavaScript library designed to simplify the client-side scripting of HTML. I'm adding version 1.x instead of 2.x because 1.x supports IE 6, 7, 8 browsers and both versions are API compatible. http://jquery.com/ --- .../libraries/javascript/jquery/default.nix | 36 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/development/libraries/javascript/jquery/default.nix diff --git a/pkgs/development/libraries/javascript/jquery/default.nix b/pkgs/development/libraries/javascript/jquery/default.nix new file mode 100644 index 00000000000..7dd2b6284fa --- /dev/null +++ b/pkgs/development/libraries/javascript/jquery/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, compressed ? true }: + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "jquery-1.11.1"; + + src = if compressed then + fetchurl { + url = "http://code.jquery.com/${name}.min.js"; + sha256 = "0hgly37jhg0n5cqlx3ylmwcxkxmbkvv07f9z9pm94jyxq7gcc2sl"; + } + else + fetchurl { + url = "http://code.jquery.com/${name}.js"; + sha256 = "1g7nhy8dwzzai7h7m800fsig4gzw34kjxxbpqdac2y8ch9586a9h"; + }; + + unpackPhase = "true"; + + installPhase = + '' + mkdir -p "$out/js" + cp -v "$src" "$out/js/jquery.js" + ${optionalString compressed '' + (cd "$out/js" && ln -s jquery.js jquery.min.js) + ''} + ''; + + meta = with stdenv.lib; { + description = "JavaScript library designed to simplify the client-side scripting of HTML"; + homepage = http://jquery.com/; + license = licenses.mit; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c562c530ba1..550f3668075 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6695,6 +6695,8 @@ let ### DEVELOPMENT / LIBRARIES / JAVASCRIPT + jquery = callPackage ../development/libraries/javascript/jquery { }; + jquery-ui = callPackage ../development/libraries/javascript/jquery-ui { }; yuicompressor = callPackage ../development/tools/yuicompressor { }; From 130e56cd422342b7e370738d6cf52d8726868a56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sun, 7 Sep 2014 12:40:35 +0200 Subject: [PATCH 464/789] nixos.tests.gnome3: wait 20sec for the screenshot --- nixos/tests/gnome3.nix | 2 +- nixos/tests/gnome3_12.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/tests/gnome3.nix b/nixos/tests/gnome3.nix index 44668f57fc1..df30283e315 100644 --- a/nixos/tests/gnome3.nix +++ b/nixos/tests/gnome3.nix @@ -23,7 +23,7 @@ import ./make-test.nix { $machine->succeed("su - alice -c 'DISPLAY=:0.0 gnome-terminal &'"); $machine->waitForWindow(qr/Terminal/); - $machine->sleep(10); + $machine->sleep(20); $machine->screenshot("screen"); ''; diff --git a/nixos/tests/gnome3_12.nix b/nixos/tests/gnome3_12.nix index 439674b69d5..723d1bc4522 100644 --- a/nixos/tests/gnome3_12.nix +++ b/nixos/tests/gnome3_12.nix @@ -24,7 +24,7 @@ import ./make-test.nix { $machine->succeed("su - alice -c 'DISPLAY=:0.0 gnome-terminal &'"); $machine->waitForWindow(qr/Terminal/); - $machine->sleep(10); + $machine->sleep(20); $machine->screenshot("screen"); ''; From dce3e9261bd6d2fdd764b4d0394bae19791e8337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Sun, 7 Sep 2014 14:48:48 +0200 Subject: [PATCH 465/789] pypy: disable some more packages --- pkgs/top-level/python-packages.nix | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f97da897ba5..705e6696695 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4138,11 +4138,11 @@ rec { }; }; - ipdb = buildPythonPackage { - name = "ipdb-0.7"; + ipdb = buildPythonPackage rec { + name = "ipdb-0.8"; src = fetchurl { - url = "http://pypi.python.org/packages/source/i/ipdb/ipdb-0.7.tar.gz"; - md5 = "d879f9b2b0f26e0e999809585dcaec61"; + url = "http://pypi.python.org/packages/source/i/ipdb/${name}.zip"; + md5 = "96dca0712efa01aa5eaf6b22071dd3ed"; }; propagatedBuildInputs = [ pythonPackages.ipythonLight ]; }; @@ -5356,13 +5356,13 @@ rec { }; }; - livestreamer = if isPy34 then null else (buildPythonPackage rec { - version = "1.8.2"; + livestreamer = buildPythonPackage rec { + version = "1.10.2"; name = "livestreamer-${version}"; src = fetchurl { url = "https://github.com/chrippa/livestreamer/archive/v${version}.tar.gz"; - sha256 = "130h97qdb7qx8xg0gz54p5a6cb2zbffi5hsi305xf0ah9nf4rbrc"; + sha256 = "0f1m51wax4q17ida4h0ckyakmlchf36kbhfa9qs6bpxc6xqqbry0"; }; buildInputs = [ pkgs.makeWrapper ]; @@ -5379,7 +5379,7 @@ rec { ''; license = "bsd"; }; - }); + }; oauth2 = buildPythonPackage (rec { name = "oauth2-1.5.211"; @@ -6365,6 +6365,7 @@ rec { pygpgme = buildPythonPackage rec { version = "0.3"; name = "pygpgme-${version}"; + disabled = isPyPy; src = fetchurl { url = "https://launchpad.net/pygpgme/trunk/${version}/+download/${name}.tar.gz"; @@ -6441,6 +6442,7 @@ rec { pyodbc = buildPythonPackage rec { name = "pyodbc-3.0.7"; + disabled = isPyPy; # use pypypdbc instead src = fetchurl { url = "https://pyodbc.googlecode.com/files/${name}.zip"; @@ -9258,6 +9260,7 @@ rec { zfec = buildPythonPackage (rec { name = "zfec-1.4.24"; + disabled = isPyPy; src = fetchurl { url = "http://pypi.python.org/packages/source/z/zfec/${name}.tar.gz"; @@ -9331,6 +9334,7 @@ rec { zodbpickle = pythonPackages.buildPythonPackage rec { name = "zodbpickle-0.5.2"; + disabled = isPyPy; # https://github.com/zopefoundation/zodbpickle/issues/10 src = fetchurl { url = "https://pypi.python.org/packages/source/z/zodbpickle/${name}.tar.gz"; @@ -9729,11 +9733,13 @@ rec { zope_sqlalchemy = buildPythonPackage rec { - name = "zope.sqlalchemy-0.7.3"; + name = "zope.sqlalchemy-0.7.5"; + + doCheck = !isPyPy; # https://github.com/zopefoundation/zope.sqlalchemy/issues/12 src = fetchurl { url = "http://pypi.python.org/packages/source/z/zope.sqlalchemy/${name}.zip"; - md5 = "8b317b41244fc2e67f2f286890ba59a0"; + md5 = "0a468bd5b8884cd29fb71acbf7eaa31e"; }; buildInputs = [ zope_testing zope_interface ]; From 8e8f95beda59ee25d0c7a7acfc3e211b246a1a8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 7 Sep 2014 15:37:16 +0200 Subject: [PATCH 466/789] nixos/test-reports: use local copy of jquery The current way test reports get jquery, src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" only works when getting reports over http:// or https://, not file://. Change it so that it works for all protocols by using a local copy of jquery. This fixes the issue where locally created and browsed test reports cannot be navigated properly; clicking the '+' symbol to expand sub-sections doesn't work. --- nixos/lib/test-driver/log2html.xsl | 4 ++-- nixos/lib/testing.nix | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/nixos/lib/test-driver/log2html.xsl b/nixos/lib/test-driver/log2html.xsl index ce8a9c6de2b..0485412b4c8 100644 --- a/nixos/lib/test-driver/log2html.xsl +++ b/nixos/lib/test-driver/log2html.xsl @@ -9,8 +9,8 @@ - - + +