diff options
Diffstat (limited to 'pkgs/development')
-rw-r--r-- | pkgs/development/libraries/jemalloc/common.nix | 7 | ||||
-rw-r--r-- | pkgs/development/libraries/sundials/3.x.nix | 52 | ||||
-rw-r--r-- | pkgs/development/libraries/sundials/default.nix | 48 | ||||
-rw-r--r-- | pkgs/development/libraries/sundials/tests-parallel.patch | 45 | ||||
-rw-r--r-- | pkgs/development/python-modules/django/2_2.nix | 4 | ||||
-rw-r--r-- | pkgs/development/python-modules/scikits-odes/default.nix | 55 | ||||
-rw-r--r-- | pkgs/development/tools/build-managers/mill/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/tools/misc/luarocks/darwin-3.0.x.patch | 27 | ||||
-rw-r--r-- | pkgs/development/tools/misc/luarocks/luarocks-nix.nix | 9 | ||||
-rw-r--r-- | pkgs/development/tools/nemiver/default.nix | 88 |
10 files changed, 295 insertions, 44 deletions
diff --git a/pkgs/development/libraries/jemalloc/common.nix b/pkgs/development/libraries/jemalloc/common.nix index c41455a65441..128910e00f21 100644 --- a/pkgs/development/libraries/jemalloc/common.nix +++ b/pkgs/development/libraries/jemalloc/common.nix @@ -24,6 +24,13 @@ stdenv.mkDerivation rec { configureFlags = [] ++ optional stripPrefix "--with-jemalloc-prefix=" ++ optional disableInitExecTls "--disable-initial-exec-tls" + # jemalloc is unable to correctly detect transparent hugepage support on + # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default + # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support + ++ optionals (stdenv.isAarch32 && versionOlder version "5") [ + "--disable-thp" + "je_cv_thp=no" + ] ; doCheck = true; diff --git a/pkgs/development/libraries/sundials/3.x.nix b/pkgs/development/libraries/sundials/3.x.nix new file mode 100644 index 000000000000..879f13e8bf53 --- /dev/null +++ b/pkgs/development/libraries/sundials/3.x.nix @@ -0,0 +1,52 @@ +{ stdenv +, cmake +, fetchurl +, python +, liblapack +, gfortran +, lapackSupport ? true }: + +let liblapackShared = liblapack.override { + shared = true; +}; + +in stdenv.mkDerivation rec { + pname = "sundials"; + version = "3.2.1"; + + buildInputs = [ python ] ++ stdenv.lib.optionals (lapackSupport) [ gfortran ]; + nativeBuildInputs = [ cmake ]; + + src = fetchurl { + url = "https://computation.llnl.gov/projects/${pname}/download/${pname}-${version}.tar.gz"; + sha256 = "0238r1qnwqz13wcjzfsbcfi8rfnlxcjjmxq2vpf2qf5jgablvna7"; + }; + + patches = [ + (fetchurl { + # https://github.com/LLNL/sundials/pull/19 + url = "https://github.com/LLNL/sundials/commit/1350421eab6c5ab479de5eccf6af2dcad1eddf30.patch"; + sha256 = "0g67lixp9m85fqpb9rzz1hl1z8ibdg0ldwq5z6flj5zl8a7cw52l"; + }) + ]; + + cmakeFlags = [ + "-DEXAMPLES_INSTALL_PATH=${placeholder "out"}/share/examples" + ] ++ stdenv.lib.optionals (lapackSupport) [ + "-DSUNDIALS_INDEX_TYPE=int32_t" + "-DLAPACK_ENABLE=ON" + "-DLAPACK_LIBRARIES=${liblapackShared}/lib/liblapack${stdenv.hostPlatform.extensions.sharedLibrary};${liblapackShared}/lib/libblas${stdenv.hostPlatform.extensions.sharedLibrary}" + ]; + + # flaky tests, and patch in https://github.com/LLNL/sundials/pull/21 doesn't apply cleanly for sundials_3 + doCheck = false; + checkPhase = "make test"; + + meta = with stdenv.lib; { + description = "Suite of nonlinear differential/algebraic equation solvers"; + homepage = https://computation.llnl.gov/projects/sundials; + platforms = platforms.all; + maintainers = with maintainers; [ flokli idontgetoutmuch ]; + license = licenses.bsd3; + }; +} diff --git a/pkgs/development/libraries/sundials/default.nix b/pkgs/development/libraries/sundials/default.nix index abe444c63c32..4bc066df32e2 100644 --- a/pkgs/development/libraries/sundials/default.nix +++ b/pkgs/development/libraries/sundials/default.nix @@ -1,28 +1,58 @@ -{ cmake, fetchurl, python, stdenv }: +{ stdenv +, cmake +, fetchurl +, python +, liblapack +, gfortran +, lapackSupport ? true }: -stdenv.mkDerivation rec { +let liblapackShared = liblapack.override { + shared = true; +}; +in stdenv.mkDerivation rec { pname = "sundials"; version = "4.1.0"; + buildInputs = [ python ] ++ stdenv.lib.optionals (lapackSupport) [ gfortran ]; + nativeBuildInputs = [ cmake ]; + src = fetchurl { url = "https://computation.llnl.gov/projects/${pname}/download/${pname}-${version}.tar.gz"; sha256 = "19ca4nmlf6i9ijqcibyvpprxzsdfnackgjs6dw51fq13gg1f2398"; }; - preConfigure = '' - export cmakeFlags="-DCMAKE_INSTALL_PREFIX=$out -DEXAMPLES_INSTALL_PATH=$out/share/examples $cmakeFlags" - ''; + patches = [ + (fetchurl { + # https://github.com/LLNL/sundials/pull/19 + url = "https://github.com/LLNL/sundials/commit/1350421eab6c5ab479de5eccf6af2dcad1eddf30.patch"; + sha256 = "0g67lixp9m85fqpb9rzz1hl1z8ibdg0ldwq5z6flj5zl8a7cw52l"; + }) + (fetchurl { + # https://github.com/LLNL/sundials/pull/20 + url = "https://github.com/LLNL/sundials/pull/20/commits/2d951bbe1ff7842fcd0dafa28c61b0aa94015f66.patch"; + sha256 = "0lcr6m4lk14yqrxah4rdscpczny5l7m1zpfsjh8bgspadfsgk512"; + }) + # https://github.com/LLNL/sundials/pull/21 + ./tests-parallel.patch + ]; - nativeBuildInputs = [ cmake ]; - buildInputs = [ python ]; + cmakeFlags = [ + "-DEXAMPLES_INSTALL_PATH=${placeholder "out"}/share/examples" + ] ++ stdenv.lib.optionals (lapackSupport) [ + "-DSUNDIALS_INDEX_TYPE=int32_t" + "-DLAPACK_ENABLE=ON" + "-DLAPACK_LIBRARIES=${liblapackShared}/lib/liblapack${stdenv.hostPlatform.extensions.sharedLibrary};${liblapackShared}/lib/libblas${stdenv.hostPlatform.extensions.sharedLibrary}" + ]; + + doCheck = true; + checkPhase = "make test"; meta = with stdenv.lib; { description = "Suite of nonlinear differential/algebraic equation solvers"; homepage = https://computation.llnl.gov/projects/sundials; platforms = platforms.all; - maintainers = [ maintainers.idontgetoutmuch ]; + maintainers = with maintainers; [ flokli idontgetoutmuch ]; license = licenses.bsd3; }; - } diff --git a/pkgs/development/libraries/sundials/tests-parallel.patch b/pkgs/development/libraries/sundials/tests-parallel.patch new file mode 100644 index 000000000000..a785a1dade9b --- /dev/null +++ b/pkgs/development/libraries/sundials/tests-parallel.patch @@ -0,0 +1,45 @@ +diff --git a/config/SundialsAddTest.cmake b/config/SundialsAddTest.cmake +index e965fed..a7fb1d2 100644 +--- a/config/SundialsAddTest.cmake ++++ b/config/SundialsAddTest.cmake +@@ -70,7 +70,7 @@ MACRO(SUNDIALS_ADD_TEST NAME EXECUTABLE) + "--verbose" + "--testname=${NAME}" + "--executablename=$<TARGET_FILE:${EXECUTABLE}>" +- "--outputdir=${CMAKE_BINARY_DIR}/Testing/output" ++ "--outputdir=${TEST_OUTPUT_DIR}" + ) + + # do not diff the output and answer files +diff --git a/config/SundialsTesting.cmake b/config/SundialsTesting.cmake +index 815576a..d91801a 100644 +--- a/config/SundialsTesting.cmake ++++ b/config/SundialsTesting.cmake +@@ -29,6 +29,13 @@ IF(SUNDIALS_DEVTESTS) + ENDIF() + ENDIF() + ++ # Directory for test output ++ SET(TEST_OUTPUT_DIR ${PROJECT_BINARY_DIR}/Testing/output) ++ ++ IF(NOT EXISTS ${TEST_OUTPUT_DIR}) ++ FILE(MAKE_DIRECTORY ${TEST_OUTPUT_DIR}) ++ ENDIF() ++ + # look for the testRunner script in the test directory + FIND_PROGRAM(TESTRUNNER testRunner PATHS test) + HIDE_VARIABLE(TESTRUNNER) +diff --git a/test/testRunner b/test/testRunner +index f450ec2..f1c8deb 100755 +--- a/test/testRunner ++++ b/test/testRunner +@@ -106,7 +106,8 @@ def main(): + + # create output directory if necessary + if not os.path.exists(outDir): +- os.makedirs(outDir) ++ error("Output directory does not exist, it must be created.", outDir) ++ sys.exit(1) + elif not os.path.isdir(outDir): + error("Output directory exists but is not a directory, it must be deleted.", outDir) + sys.exit(1) diff --git a/pkgs/development/python-modules/django/2_2.nix b/pkgs/development/python-modules/django/2_2.nix index efc13e455e57..95fd8a769289 100644 --- a/pkgs/development/python-modules/django/2_2.nix +++ b/pkgs/development/python-modules/django/2_2.nix @@ -6,13 +6,13 @@ buildPythonPackage rec { pname = "Django"; - version = "2.2.4"; + version = "2.2.5"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "1s5ad5zlmwdn4h5lwn4s4m8mqy0gz4w9nfzyknn815sr252db98n"; + sha256 = "0mpxmckd1mah0yrp6n8vjk6mq7hxf6d5xcbk6rcmi6z572h0mdyy"; }; patches = stdenv.lib.optional withGdal diff --git a/pkgs/development/python-modules/scikits-odes/default.nix b/pkgs/development/python-modules/scikits-odes/default.nix new file mode 100644 index 000000000000..89ffe334e7ff --- /dev/null +++ b/pkgs/development/python-modules/scikits-odes/default.nix @@ -0,0 +1,55 @@ +{ stdenv +, lib +, buildPythonPackage +, fetchFromGitHub +, fetchurl +, cython +, enum34 +, gfortran +, isPy3k +, numpy +, pytest +, python +, scipy +, sundials_3 +}: + +buildPythonPackage rec { + pname = "scikits.odes"; + version = "2.4.0-9-g93075ae"; + + # we fetch github instead of Pypi, as we want #104 and #105, which don't apply cleanly on 2.4.0 + src = fetchFromGitHub { + owner = "bmcage"; + repo = "odes"; + rev = "93075ae25c409f572f13ca7207fada5706f73c73"; + sha256 = "161rab7hy6r1a9xw1zby9xhnnmxi0zwdpzxfpjkw9651xn2k5xyw"; + }; + + nativeBuildInputs = [ + gfortran + cython + ]; + + propagatedBuildInputs = [ + numpy + sundials_3 + scipy + ] ++ lib.optionals (!isPy3k) [ enum34 ]; + + doCheck = true; + checkInputs = [ pytest ]; + + checkPhase = '' + cd $out/${python.sitePackages}/scikits/odes/tests + pytest + ''; + + meta = with stdenv.lib; { + description = "A scikit offering extra ode/dae solvers, as an extension to what is available in scipy"; + homepage = https://github.com/bmcage/odes; + license = licenses.bsd3; + maintainers = with maintainers; [ flokli idontgetoutmuch ]; + platforms = [ "aarch64-linux" "x86_64-linux" "x86_64-darwin" ]; + }; +} diff --git a/pkgs/development/tools/build-managers/mill/default.nix b/pkgs/development/tools/build-managers/mill/default.nix index b7e6e08cb04a..a07fc2643f6c 100644 --- a/pkgs/development/tools/build-managers/mill/default.nix +++ b/pkgs/development/tools/build-managers/mill/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "mill"; - version = "0.5.0"; + version = "0.5.1"; src = fetchurl { url = "https://github.com/lihaoyi/mill/releases/download/${version}/${version}"; - sha256 = "ecf83db96a32024f14b031ce458b1b3eed01e713265e16c42eb4a894a1a0d654"; + sha256 = "1y5044m0qlwa1wlg7xkhg76agmfn7bgcf040wf56fvxhf0w78zjw"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/tools/misc/luarocks/darwin-3.0.x.patch b/pkgs/development/tools/misc/luarocks/darwin-3.0.x.patch deleted file mode 100644 index 013ac5180afa..000000000000 --- a/pkgs/development/tools/misc/luarocks/darwin-3.0.x.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff --git a/src/luarocks/core/cfg.lua b/src/luarocks/core/cfg.lua -index f93e67a..2eb2db9 100644 ---- a/src/luarocks/core/cfg.lua -+++ b/src/luarocks/core/cfg.lua -@@ -425,9 +425,9 @@ local function make_defaults(lua_version, target_cpu, platforms, home) - defaults.external_lib_extension = "dylib" - defaults.arch = "macosx-"..target_cpu - defaults.variables.LIBFLAG = "-bundle -undefined dynamic_lookup -all_load" -- defaults.variables.STAT = "/usr/bin/stat" -+ defaults.variables.STAT = "stat" - defaults.variables.STATFLAG = "-f '%A'" -- local version = util.popen_read("sw_vers -productVersion") -+ local version = os.getenv("MACOSX_DEPLOYMENT_TARGET") or "10.12" - version = tonumber(version and version:match("^[^.]+%.([^.]+)")) or 3 - if version >= 10 then - version = 8 -@@ -436,8 +436,8 @@ local function make_defaults(lua_version, target_cpu, platforms, home) - else - defaults.gcc_rpath = false - end -- defaults.variables.CC = "env MACOSX_DEPLOYMENT_TARGET=10."..version.." gcc" -- defaults.variables.LD = "env MACOSX_DEPLOYMENT_TARGET=10."..version.." gcc" -+ defaults.variables.CC = "env MACOSX_DEPLOYMENT_TARGET=10."..version.." clang" -+ defaults.variables.LD = "env MACOSX_DEPLOYMENT_TARGET=10."..version.." clang" - defaults.web_browser = "open" - end - diff --git a/pkgs/development/tools/misc/luarocks/luarocks-nix.nix b/pkgs/development/tools/misc/luarocks/luarocks-nix.nix index 8da224f0ef8c..21611f05579b 100644 --- a/pkgs/development/tools/misc/luarocks/luarocks-nix.nix +++ b/pkgs/development/tools/misc/luarocks/luarocks-nix.nix @@ -1,13 +1,14 @@ { luarocks, fetchFromGitHub }: luarocks.overrideAttrs(old: { pname = "luarocks-nix"; + version = "2019-09-07"; src = fetchFromGitHub { - owner = "teto"; + owner = "nix-community"; repo = "luarocks"; - rev = "38ed82ba3e5682d7d55ef9a870dfb464ca180df9"; - sha256 = "0vlzywiv3sxkpjg1fzzxicmfr6kh04fxw5q9n8vsd2075xjxg6bs"; + rev = "fa7c367bcdad36768db5f19fd4fcdd9681a14429"; + sha256 = "0kziwfw5gqq5xsckl7qf9wasaiy8rp42h5qrcnjx07qp47a9ldx7"; }; patches = [ - ./darwin-3.0.x.patch + ./darwin-3.1.3.patch ]; }) diff --git a/pkgs/development/tools/nemiver/default.nix b/pkgs/development/tools/nemiver/default.nix new file mode 100644 index 000000000000..1f3556fc9047 --- /dev/null +++ b/pkgs/development/tools/nemiver/default.nix @@ -0,0 +1,88 @@ +{ stdenv +, fetchurl +, fetchpatch +, pkgconfig +, gnome3 +, gtk3 +, libxml2 +, intltool +, itstool +, gdb +, boost +, sqlite +, libgtop +, glibmm +, gtkmm3 +, vte +, gtksourceview +, gsettings-desktop-schemas +, gtksourceviewmm +, wrapGAppsHook +}: + +stdenv.mkDerivation rec { + pname = "nemiver"; + version = "0.9.6"; + + src = fetchurl { + url = "mirror://gnome/sources/nemiver/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "85ab8cf6c4f83262f441cb0952a6147d075c3c53d0687389a3555e946b694ef2"; + }; + + nativeBuildInputs = [ + libxml2 + intltool + itstool + pkgconfig + wrapGAppsHook + ]; + + buildInputs = [ + gtk3 + gdb + boost + sqlite + libgtop + glibmm + gtkmm3 + vte + gtksourceview + gtksourceviewmm + gsettings-desktop-schemas + ]; + + patches = [ + # build fixes + (fetchpatch { + url = https://gitlab.gnome.org/GNOME/nemiver/commit/e0e42221ceb77d88be64fac1c09792dc5c9e2f43.patch; + sha256 = "1g0ixll6yqfj6ysf50p0c7nmh3lgmb6ds15703q7ibnw7dyidvj8"; + }) + (fetchpatch { + url = https://gitlab.gnome.org/GNOME/nemiver/commit/7005393a8c4d914eac9705e7f47818d0f4de3578.patch; + sha256 = "1mxb1sdqdj7dm204gja8cdygx8579bjriqqbb7cna9rj0m9c8pjg"; + }) + (fetchpatch { + url = https://gitlab.gnome.org/GNOME/nemiver/commit/262cf9657f9c2727a816972b348692adcc666008.patch; + sha256 = "03jv6z54b8nzvplplapk4aj206zl1gvnv6iz0mad19g6yvfbw7a7"; + }) + ]; + + configureFlags = [ + "--enable-gsettings" + ]; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "nemiver"; + versionPolicy = "none"; + }; + }; + + meta = with stdenv.lib; { + homepage = https://wiki.gnome.org/Apps/Nemiver; + description = "Easy to use standalone C/C++ debugger"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = [ maintainers.juliendehos ]; + }; +} |