From 2d63c94be98ef318452b4c533e239f24515b8e09 Mon Sep 17 00:00:00 2001 From: Lancelot SIX Date: Fri, 17 Jul 2015 14:49:23 +0000 Subject: [PATCH 001/384] pythonPackages.pytestflakes: 0.2 -> 1.0.0 --- pkgs/top-level/python-packages.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a2191a362ca..e43764bb02f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2432,10 +2432,12 @@ let }; pytestflakes = buildPythonPackage rec { - name = "pytset-flakes-0.2"; + name = "pytest-flakes-${version}"; + version = "1.0.0"; + src = pkgs.fetchurl { - url = "https://pypi.python.org/packages/source/p/pytest-flakes/pytest-flakes-0.2.zip"; - sha256 = "0n4mc2kaqasxmj8jid7jlss7nwgz4qgglcwdyrqvh08dilnp354i"; + url = "https://pypi.python.org/packages/source/p/pytest-flakes/${name}.tar.gz"; + sha256 = "0vvfprga6k4v2zq1qsr3yq1bjl22vygfsnvyn3hh80cc2386dk6h"; }; propagatedBuildInputs = with self ; [ pytest pyflakes pytestcache ]; From 71a1e3acb620d63514135396df43b1834d4c9c95 Mon Sep 17 00:00:00 2001 From: Raymond Gauthier Date: Sun, 26 Jul 2015 09:10:59 -0400 Subject: [PATCH 002/384] pipelight: Add support for 32 bit linux. Done so by using the 32 bit stdenv as the requirement of this package was to be provided with a 32 bit compiler. --- pkgs/tools/misc/pipelight/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/pipelight/default.nix b/pkgs/tools/misc/pipelight/default.nix index 89459eb281b..e566a18f724 100644 --- a/pkgs/tools/misc/pipelight/default.nix +++ b/pkgs/tools/misc/pipelight/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, fetchgit, autoconf, automake, wineStaging, perl, xlibs - , gnupg, gcc_multi, mesa, curl, bash, cacert, cabextract, utillinux, attr + , gnupg, stdenv_32bit, mesa, curl, bash, cacert, cabextract, utillinux, attr }: let @@ -19,7 +19,7 @@ in stdenv.mkDerivation rec { sha256 = "1i440rf22fmd2w86dlm1mpi3nb7410rfczc0yldnhgsvp5p3sm5f"; }; - buildInputs = [ wine_custom xlibs.libX11 gcc_multi mesa curl ]; + buildInputs = [ wine_custom xlibs.libX11 stdenv_32bit.cc mesa curl ]; propagatedbuildInputs = [ curl cabextract ]; patches = [ ./pipelight.patch ]; From 5a5e86f5cde2086872075b2daf7a1b54bb2e0225 Mon Sep 17 00:00:00 2001 From: Geoff Reedy Date: Sun, 9 Aug 2015 09:34:31 -0600 Subject: [PATCH 003/384] erlang: add setupHook to set ERL_LIBS --- pkgs/development/interpreters/erlang/R14.nix | 2 ++ pkgs/development/interpreters/erlang/R15.nix | 2 ++ pkgs/development/interpreters/erlang/R16.nix | 2 ++ pkgs/development/interpreters/erlang/R17.nix | 2 ++ pkgs/development/interpreters/erlang/R18.nix | 2 ++ pkgs/development/interpreters/erlang/setup-hook.sh | 5 +++++ 6 files changed, 15 insertions(+) create mode 100644 pkgs/development/interpreters/erlang/setup-hook.sh diff --git a/pkgs/development/interpreters/erlang/R14.nix b/pkgs/development/interpreters/erlang/R14.nix index 1fd101564a3..773ad698629 100644 --- a/pkgs/development/interpreters/erlang/R14.nix +++ b/pkgs/development/interpreters/erlang/R14.nix @@ -42,6 +42,8 @@ stdenv.mkDerivation { wrapProgram $out/lib/erlang/bin/start_erl --prefix PATH ":" "${gnused}/bin/:${gawk}/bin" ''; + setupHook = ./setup-hook.sh; + meta = { homepage = "http://www.erlang.org/"; description = "Programming language used for massively scalable soft real-time systems"; diff --git a/pkgs/development/interpreters/erlang/R15.nix b/pkgs/development/interpreters/erlang/R15.nix index e9c8380c35a..dbfee489479 100644 --- a/pkgs/development/interpreters/erlang/R15.nix +++ b/pkgs/development/interpreters/erlang/R15.nix @@ -48,6 +48,8 @@ stdenv.mkDerivation { wrapProgram $out/lib/erlang/bin/start_erl --prefix PATH ":" "${gnused}/bin/:${gawk}/bin" ''; + setupHook = ./setup-hook.sh; + meta = { homepage = "http://www.erlang.org/"; description = "Programming language used for massively scalable soft real-time systems"; diff --git a/pkgs/development/interpreters/erlang/R16.nix b/pkgs/development/interpreters/erlang/R16.nix index 23243803e8d..d6081ff4011 100644 --- a/pkgs/development/interpreters/erlang/R16.nix +++ b/pkgs/development/interpreters/erlang/R16.nix @@ -52,6 +52,8 @@ stdenv.mkDerivation rec { wrapProgram $out/lib/erlang/bin/start_erl --prefix PATH ":" "${gnused}/bin/:${gawk}/bin" ''; + setupHook = ./setup-hook.sh; + meta = { homepage = "http://www.erlang.org/"; description = "Programming language used for massively scalable soft real-time systems"; diff --git a/pkgs/development/interpreters/erlang/R17.nix b/pkgs/development/interpreters/erlang/R17.nix index 3a3d7434515..c255319fa44 100644 --- a/pkgs/development/interpreters/erlang/R17.nix +++ b/pkgs/development/interpreters/erlang/R17.nix @@ -67,6 +67,8 @@ stdenv.mkDerivation rec { wrapProgram $out/lib/erlang/bin/start_erl --prefix PATH ":" "${gnused}/bin/:${gawk}/bin" ''; + setupHook = ./setup-hook.sh; + meta = { homepage = "http://www.erlang.org/"; description = "Programming language used for massively scalable soft real-time systems"; diff --git a/pkgs/development/interpreters/erlang/R18.nix b/pkgs/development/interpreters/erlang/R18.nix index 9bc36ee47de..df7f1521e27 100644 --- a/pkgs/development/interpreters/erlang/R18.nix +++ b/pkgs/development/interpreters/erlang/R18.nix @@ -67,6 +67,8 @@ stdenv.mkDerivation rec { wrapProgram $out/lib/erlang/bin/start_erl --prefix PATH ":" "${gnused}/bin/:${gawk}/bin" ''; + setupHook = ./setup-hook.sh; + meta = { homepage = "http://www.erlang.org/"; description = "Programming language used for massively scalable soft real-time systems"; diff --git a/pkgs/development/interpreters/erlang/setup-hook.sh b/pkgs/development/interpreters/erlang/setup-hook.sh new file mode 100644 index 00000000000..68c0f762dfc --- /dev/null +++ b/pkgs/development/interpreters/erlang/setup-hook.sh @@ -0,0 +1,5 @@ +addErlangLibPath() { + addToSearchPath ERL_LIBS $1/lib/erlang/lib +} + +envHooks+=(addErlangLibPath) From ddcbf5bae20f910bb861795c2928fa788590ff33 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Fri, 14 Aug 2015 19:44:19 +0200 Subject: [PATCH 004/384] audacity: 2.0.5 -> 2.1.1 Audacity 2.0.6 and later supports FFmpeg 1.2 to 2.3.x (or libav 0.8 to 0.10.x) --- pkgs/applications/audio/audacity/default.nix | 10 +++++----- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/audio/audacity/default.nix b/pkgs/applications/audio/audacity/default.nix index 6f25693f734..e13c6f78b78 100644 --- a/pkgs/applications/audio/audacity/default.nix +++ b/pkgs/applications/audio/audacity/default.nix @@ -4,12 +4,12 @@ }: stdenv.mkDerivation rec { - version = "2.0.5"; + version = "2.1.1"; name = "audacity-${version}"; src = fetchurl { - url = "http://audacity.googlecode.com/files/audacity-minsrc-${version}.tar.xz"; - sha256 = "0y9bvc3a3zxsk31yg7bha029mzkjiw5i9m86kbyj7x8ps0fm91z2"; + url = "https://github.com/audacity/audacity/archive/Audacity-${version}.tar.gz"; + sha256 = "15c5ff7ac1c0b19b08f4bdcb0f4988743da2f9ed3fab41d6f07600e67cb9ddb6"; }; preConfigure = /* we prefer system-wide libs */ '' @@ -26,11 +26,11 @@ stdenv.mkDerivation rec { ]; #ToDo: soundtouch, detach sbsms dontDisableStatic = true; - doCheck = true; + doCheck = false; # Test fails meta = { description = "Sound editor with graphical UI"; - homepage = http://audacity.sourceforge.net; + homepage = http://audacityteam.org/; license = stdenv.lib.licenses.gpl2Plus; platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [ the-kenny ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7889e5c334d..39f6a1ab27c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10683,7 +10683,7 @@ let audacious = callPackage ../applications/audio/audacious { }; audacity = callPackage ../applications/audio/audacity { - ffmpeg = ffmpeg_0; + ffmpeg = ffmpeg_2_2; }; milkytracker = callPackage ../applications/audio/milkytracker { }; From a9332583eb2155939334acb14bfb62012bc18b62 Mon Sep 17 00:00:00 2001 From: Bas van Dijk Date: Wed, 9 Sep 2015 01:12:10 +0200 Subject: [PATCH 005/384] wordpress: Execute the extraConfig before loading wp-settings.php This is needed so that settings defined in extraConfig actually get handled. --- nixos/modules/services/web-servers/apache-httpd/wordpress.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/web-servers/apache-httpd/wordpress.nix b/nixos/modules/services/web-servers/apache-httpd/wordpress.nix index 8884569c7bc..b204ea394c0 100644 --- a/nixos/modules/services/web-servers/apache-httpd/wordpress.nix +++ b/nixos/modules/services/web-servers/apache-httpd/wordpress.nix @@ -17,10 +17,10 @@ let define('DB_HOST', '${config.dbHost}'); define('DB_CHARSET', 'utf8'); $table_prefix = '${config.tablePrefix}'; + ${config.extraConfig} if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); require_once(ABSPATH . 'wp-settings.php'); - ${config.extraConfig} ''; # .htaccess to support pretty URLs From 8a63ae526f259795c2dcc5eb28f0648293baedcf Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sun, 4 Oct 2015 03:14:53 +0200 Subject: [PATCH 006/384] add support for auto format, format options --- nixos/modules/tasks/filesystems.nix | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix index 9dd250f140c..5f21e668f7e 100644 --- a/nixos/modules/tasks/filesystems.nix +++ b/nixos/modules/tasks/filesystems.nix @@ -58,6 +58,15 @@ let ''; }; + formatOptions = mkOption { + default = ""; + type = types.str; + description = '' + If option is set specifies + extra options passed to mkfs. + ''; + }; + autoResize = mkOption { default = false; type = types.bool; @@ -81,6 +90,9 @@ let mountPoint = mkDefault name; device = mkIf (config.fsType == "tmpfs") (mkDefault config.fsType); options = mkIf config.autoResize "x-nixos.autoresize"; + + # -F needed to allow bare block device without partitions + formatOptions = mkIf ((builtins.substring 0 3 config.fsType) == "ext") (mkDefault "-F"); }; }; @@ -192,8 +204,6 @@ in let mountPoint' = escapeSystemdPath fs.mountPoint; device' = escapeSystemdPath fs.device; - # -F needed to allow bare block device without partitions - mkfsOpts = optional ((builtins.substring 0 3 fs.fsType) == "ext") "-F"; in nameValuePair "mkfs-${device'}" { description = "Initialisation of Filesystem ${fs.device}"; wantedBy = [ "${mountPoint'}.mount" ]; @@ -208,7 +218,7 @@ in type=$(blkid -p -s TYPE -o value "${fs.device}" || true) if [ -z "$type" ]; then echo "creating ${fs.fsType} filesystem on ${fs.device}..." - mkfs.${fs.fsType} ${concatStringsSep " " mkfsOpts} "${fs.device}" + mkfs.${fs.fsType} ${fs.formatOptions} "${fs.device}" fi ''; unitConfig.RequiresMountsFor = [ "${dirOf fs.device}" ]; From 8b93c4103d6926c7e690ceb0b6667ee17a6ee4eb Mon Sep 17 00:00:00 2001 From: Allen Nelson Date: Tue, 20 Oct 2015 13:20:05 -0500 Subject: [PATCH 007/384] fix ansible constants.py patching, do not propagate pythonpaths --- pkgs/tools/system/ansible/default.nix | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/system/ansible/default.nix b/pkgs/tools/system/ansible/default.nix index 0177eec9435..c037450cc97 100644 --- a/pkgs/tools/system/ansible/default.nix +++ b/pkgs/tools/system/ansible/default.nix @@ -11,7 +11,7 @@ pythonPackages.buildPythonPackage rec { }; prePatch = '' - sed -i "s,\/usr\/share\/ansible\/,$out/share/ansible," lib/ansible/constants.py + sed -i "s,/usr/,$out," lib/ansible/constants.py ''; doCheck = false; @@ -19,14 +19,10 @@ pythonPackages.buildPythonPackage rec { dontPatchELF = true; dontPatchShebangs = true; - propagatedBuildInputs = with pythonPackages; [ + pythonPath = with pythonPackages; [ paramiko jinja2 pyyaml httplib2 boto six ] ++ stdenv.lib.optional windowsSupport pywinrm; - postFixup = '' - wrapPythonProgramsIn $out/bin "$out $pythonPath" - ''; - meta = with stdenv.lib; { homepage = "http://www.ansible.com"; description = "A simple automation tool"; From 7b2b366552ac16e6852f674c95099b575888e99e Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Sun, 25 Oct 2015 18:58:48 +0100 Subject: [PATCH 008/384] nixos: set scsi link power policy using udev Also improve option type checking by enumerating valid policy names. --- .../tasks/scsi-link-power-management.nix | 34 ++++++------------- 1 file changed, 10 insertions(+), 24 deletions(-) diff --git a/nixos/modules/tasks/scsi-link-power-management.nix b/nixos/modules/tasks/scsi-link-power-management.nix index a74023dec21..484c0a0186d 100644 --- a/nixos/modules/tasks/scsi-link-power-management.nix +++ b/nixos/modules/tasks/scsi-link-power-management.nix @@ -2,18 +2,19 @@ with lib; +let cfg = config.powerManagement.scsiLinkPolicy; in + { ###### interface options = { powerManagement.scsiLinkPolicy = mkOption { - default = ""; - example = "min_power"; - type = types.str; + default = null; + type = types.nullOr (types.enum [ "min_power" "max_performance" "medium_power" ]); description = '' - Configure the SCSI link power management policy. By default, - the kernel configures "max_performance". + SCSI link power management policy. The kernel default is + "max_performance". ''; }; @@ -22,25 +23,10 @@ with lib; ###### implementation - config = mkIf (config.powerManagement.scsiLinkPolicy != "") { - - jobs."scsi-link-pm" = - { description = "SCSI Link Power Management Policy"; - - startOn = "stopped udevtrigger"; - - task = true; - - unitConfig.ConditionPathIsReadWrite = "/sys/class/scsi_host"; - - script = '' - shopt -s nullglob - for x in /sys/class/scsi_host/host*/link_power_management_policy; do - echo ${config.powerManagement.scsiLinkPolicy} > $x - done - ''; - }; - + config = mkIf (cfg != null) { + services.udev.extraRules = '' + SUBSYSTEM=="scsi_host", ACTION=="add", KERNEL=="host*", ATTR{link_power_management_policy}="${cfg}" + ''; }; } From b8c784f061e5153f61332ce65c335a42c0ab7702 Mon Sep 17 00:00:00 2001 From: Allen Nelson Date: Tue, 3 Nov 2015 16:26:29 -0600 Subject: [PATCH 009/384] patch to remove large file test in numpy --- .../python-modules/numpy-no-large-files.patch | 35 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 6 ++++ 2 files changed, 41 insertions(+) create mode 100644 pkgs/development/python-modules/numpy-no-large-files.patch diff --git a/pkgs/development/python-modules/numpy-no-large-files.patch b/pkgs/development/python-modules/numpy-no-large-files.patch new file mode 100644 index 00000000000..0eb415606d3 --- /dev/null +++ b/pkgs/development/python-modules/numpy-no-large-files.patch @@ -0,0 +1,35 @@ +--- numpy/lib/tests/test_format.py 2015-08-11 12:03:43.000000000 -0500 ++++ numpy/lib/tests/test_format_no_large_files.py 2015-11-03 16:03:30.328084827 -0600 +@@ -810,32 +810,5 @@ + format.write_array_header_1_0(s, d) + assert_raises(ValueError, format.read_array_header_1_0, s) + +- +-def test_large_file_support(): +- from nose import SkipTest +- if (sys.platform == 'win32' or sys.platform == 'cygwin'): +- raise SkipTest("Unknown if Windows has sparse filesystems") +- # try creating a large sparse file +- tf_name = os.path.join(tempdir, 'sparse_file') +- try: +- # seek past end would work too, but linux truncate somewhat +- # increases the chances that we have a sparse filesystem and can +- # avoid actually writing 5GB +- import subprocess as sp +- sp.check_call(["truncate", "-s", "5368709120", tf_name]) +- except: +- raise SkipTest("Could not create 5GB large file") +- # write a small array to the end +- with open(tf_name, "wb") as f: +- f.seek(5368709120) +- d = np.arange(5) +- np.save(f, d) +- # read it back +- with open(tf_name, "rb") as f: +- f.seek(5368709120) +- r = np.load(f) +- assert_array_equal(r, d) +- +- + if __name__ == "__main__": + run_module_suite() diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f6ad5d2a897..5550b09645e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10202,6 +10202,12 @@ let buildInputs = [ pkgs.gfortran self.nose ]; propagatedBuildInputs = [ support.openblas ]; + # This patch removes the test of large file support, which takes forever + # and can cause the machine to run out of disk space when run. + patchPhase = '' + patch -p0 < ${../development/python-modules/numpy-no-large-files.patch} + ''; + meta = { description = "Scientific tools for Python"; homepage = "http://numpy.scipy.org/"; From b40eded9a3dd16e7085f94e00b8183e2143f81b8 Mon Sep 17 00:00:00 2001 From: Aristid Breitkreuz Date: Thu, 5 Nov 2015 21:03:54 +0100 Subject: [PATCH 010/384] gnucash 2.6 package, partially broken (no HTML reports) --- pkgs/applications/office/gnucash/2.6.nix | 100 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 11 +++ 2 files changed, 111 insertions(+) create mode 100644 pkgs/applications/office/gnucash/2.6.nix diff --git a/pkgs/applications/office/gnucash/2.6.nix b/pkgs/applications/office/gnucash/2.6.nix new file mode 100644 index 00000000000..df6eabbcff0 --- /dev/null +++ b/pkgs/applications/office/gnucash/2.6.nix @@ -0,0 +1,100 @@ +{ fetchurl, stdenv, pkgconfig, libxml2, libxslt, perl, perlPackages, gconf, guile +, intltool, glib, gtk, libofx, aqbanking, gwenhywfar, libgnomecanvas, goffice +, webkit, glibcLocales, gsettings_desktop_schemas, makeWrapper, dconf, file +, gettext, swig, slibGuile, enchant, bzip2, isocodes +}: + +/* +Two cave-ats right now: + 1. HTML reports are broken + 2. You need to have dconf installed (GNOME3 should have it automatically, + otherwise put it in environment.systemPackages), for settings +*/ + +stdenv.mkDerivation rec { + name = "gnucash-2.6.9"; + + src = fetchurl { + url = "mirror://sourceforge/gnucash/${name}.tar.bz2"; + sha256 = "0iw25l1kv60cg6fd2vg11mcvzmjqnc5p9lp3rjy06ghkjfrn3and"; + }; + + buildInputs = [ + # general + intltool pkgconfig libxml2 libxslt glibcLocales file gettext swig enchant + bzip2 isocodes + # glib, gtk... + glib gtk goffice webkit + # gnome... + dconf gconf libgnomecanvas gsettings_desktop_schemas + # financial + libofx aqbanking gwenhywfar + # perl + perl perlPackages.FinanceQuote perlPackages.DateManip + # guile + guile slibGuile + # build + makeWrapper + ]; + + patchPhase = '' + patchShebangs ./src + ''; + + configureFlags = "CFLAGS=-O3 CXXFLAGS=-O3 --disable-dbi --enable-ofx --enable-aqbanking"; + + + postInstall = '' + # Auto-updaters don't make sense in Nix. + rm $out/bin/gnc-fq-update + + #sed -i $out/bin/update-gnucash-gconf \ + # -e 's|--config-source=[^ ]* --install-schema-file|--makefile-install-rule|' + + for prog in $(echo "$out/bin/"*) + do + # Don't wrap the gnc-fq-* scripts, since gnucash calls them as + # "perl