diff options
Diffstat (limited to 'pkgs/applications/science')
26 files changed, 273 insertions, 201 deletions
diff --git a/pkgs/applications/science/biology/N3/default.nix b/pkgs/applications/science/biology/N3/default.nix index 2f4aa4ce3927e..e7ae8fb3cea3d 100644 --- a/pkgs/applications/science/biology/N3/default.nix +++ b/pkgs/applications/science/biology/N3/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitHub, cmake, makeWrapper, perlPackages, - libminc, EBTKS }: + libminc, ebtks }: stdenv.mkDerivation rec { pname = "N3"; @@ -13,11 +13,16 @@ stdenv.mkDerivation rec { sha256 = "06hci7gzhy8p34ggvx7gah2k9yxpwhgmq1cgw8pcd1r82g4rg6kd"; }; + postPatch = '' + substituteInPlace src/VolumeHist/DHistogram.cc \ + --replace "register " "" + ''; + nativeBuildInputs = [ cmake makeWrapper ]; - buildInputs = [ libminc EBTKS ]; + buildInputs = [ libminc ebtks ]; propagatedBuildInputs = with perlPackages; [ perl MNI-Perllib GetoptTabular ]; - cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" "-DEBTKS_DIR=${EBTKS}/lib/" ]; + cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" "-DEBTKS_DIR=${ebtks}/lib/" ]; postFixup = '' for p in $out/bin/*; do diff --git a/pkgs/applications/science/biology/igv/default.nix b/pkgs/applications/science/biology/igv/default.nix index 827fdb6fa1abf..f7be7119b85df 100644 --- a/pkgs/applications/science/biology/igv/default.nix +++ b/pkgs/applications/science/biology/igv/default.nix @@ -2,10 +2,10 @@ stdenv.mkDerivation rec { pname = "igv"; - version = "2.17.0"; + version = "2.17.1"; src = fetchzip { url = "https://data.broadinstitute.org/igv/projects/downloads/${lib.versions.majorMinor version}/IGV_${version}.zip"; - sha256 = "sha256-nOwaeVIvqfHrvykfTyOdnMN6+QpsvNN14jXBQx7THsE="; + sha256 = "sha256-EXI1jVr8cJPYLLe81hzqLpP3IypHBZ0cb6z+WrDeFKQ="; }; installPhase = '' diff --git a/pkgs/applications/science/biology/inormalize/default.nix b/pkgs/applications/science/biology/inormalize/default.nix index b4999193e177e..bf24f0ce19bf9 100644 --- a/pkgs/applications/science/biology/inormalize/default.nix +++ b/pkgs/applications/science/biology/inormalize/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitHub, cmake, makeWrapper, perlPackages, - libminc, EBTKS }: + libminc, ebtks }: stdenv.mkDerivation rec { pname = "inormalize"; @@ -15,11 +15,16 @@ stdenv.mkDerivation rec { patches = [ ./lgmask-interp.patch ./nu_correct_norm-interp.patch ]; + postPatch = '' + substituteInPlace inormalize.cc \ + --replace "clamp" "::clamp" + ''; + nativeBuildInputs = [ cmake makeWrapper ]; - buildInputs = [ libminc EBTKS ]; + buildInputs = [ libminc ebtks ]; propagatedBuildInputs = with perlPackages; [ perl GetoptTabular MNI-Perllib ]; - cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" "-DEBTKS_DIR=${EBTKS}/lib/" ]; + cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" "-DEBTKS_DIR=${ebtks}/lib/" ]; postFixup = '' for p in $out/bin/*; do diff --git a/pkgs/applications/science/biology/spades/default.nix b/pkgs/applications/science/biology/spades/default.nix index 976dd65ef2232..0b0491a71aaef 100644 --- a/pkgs/applications/science/biology/spades/default.nix +++ b/pkgs/applications/science/biology/spades/default.nix @@ -17,6 +17,11 @@ stdenv.mkDerivation rec { sourceRoot = "${pname}-${version}/src"; + env.CXXFLAGS = toString [ + # GCC 13: error: 'uint32_t' does not name a type + "-include cstdint" + ]; + meta = with lib; { description = "St. Petersburg genome assembler: assembly toolkit containing various assembly pipelines"; license = licenses.gpl2Only; diff --git a/pkgs/applications/science/biology/stacks/default.nix b/pkgs/applications/science/biology/stacks/default.nix index 0a18c5f40fdaa..3d385b54d469e 100644 --- a/pkgs/applications/science/biology/stacks/default.nix +++ b/pkgs/applications/science/biology/stacks/default.nix @@ -2,10 +2,10 @@ stdenv.mkDerivation rec { pname = "stacks"; - version = "2.65"; + version = "2.66"; src = fetchurl { url = "http://catchenlab.life.illinois.edu/stacks/source/${pname}-${version}.tar.gz"; - sha256 = "sha256-/9a9PWKVq5yJzEUfOF03zR1Hp3AZw9MF8xICoriV4uo="; + sha256 = "sha256-9pHmcLYMdn9xy3vhlOU42Io/4L61auoncfpZNRPUN/I="; }; buildInputs = [ zlib ]; diff --git a/pkgs/applications/science/chemistry/gwyddion/default.nix b/pkgs/applications/science/chemistry/gwyddion/default.nix index 5794d7077af96..7c1312f27f25b 100644 --- a/pkgs/applications/science/chemistry/gwyddion/default.nix +++ b/pkgs/applications/science/chemistry/gwyddion/default.nix @@ -21,10 +21,10 @@ in stdenv.mkDerivation rec { pname = "gwyddion"; - version = "2.64"; + version = "2.65"; src = fetchurl { url = "mirror://sourceforge/gwyddion/gwyddion-${version}.tar.xz"; - sha256 = "sha256-FDL4XDHH6WYF47OsnhxpM7s7YadutiCDjcJKCF8ZlCw="; + sha256 = "sha256-kRX7CoPJY8YkYNode5g0OCyWmL+5sM8puCmk9ZE2nqM="; }; nativeBuildInputs = [ pkg-config file ]; diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix index ce3b279deab1a..2d41342ff5858 100644 --- a/pkgs/applications/science/chemistry/jmol/default.nix +++ b/pkgs/applications/science/chemistry/jmol/default.nix @@ -25,14 +25,14 @@ let }; in stdenv.mkDerivation rec { - version = "16.1.47"; + version = "16.1.49"; pname = "jmol"; src = let baseVersion = "${lib.versions.major version}.${lib.versions.minor version}"; in fetchurl { url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz"; - hash = "sha256-3hsH+RkPPoViKp1bc/88GDVSG8jf9hiPKPkUfe9PIkk="; + hash = "sha256-rzW0dB6LkKnbqHMLII6u3a6iJ1nz6gys/TN0fZFcrBk="; }; patchPhase = '' diff --git a/pkgs/applications/science/chemistry/molden/default.nix b/pkgs/applications/science/chemistry/molden/default.nix index fc5c18e4ccdff..7a15ef9363b59 100644 --- a/pkgs/applications/science/chemistry/molden/default.nix +++ b/pkgs/applications/science/chemistry/molden/default.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { mkdir -p $out/bin ''; - enableParallelBuilding = true; + enableParallelBuilding = false; meta = with lib; { description = "Display and manipulate molecular structures"; diff --git a/pkgs/applications/science/chemistry/openmolcas/default.nix b/pkgs/applications/science/chemistry/openmolcas/default.nix index 33c77c063bf91..0aeb01c2916b5 100644 --- a/pkgs/applications/science/chemistry/openmolcas/default.nix +++ b/pkgs/applications/science/chemistry/openmolcas/default.nix @@ -59,6 +59,9 @@ stdenv.mkDerivation { # Required for a local QCMaquis build ./qcmaquis.patch + + # PyParsing >= 3.11 compatibility, can be removed on next release + ./pyparsing.patch ]; postPatch = '' diff --git a/pkgs/applications/science/chemistry/openmolcas/pyparsing.patch b/pkgs/applications/science/chemistry/openmolcas/pyparsing.patch new file mode 100644 index 0000000000000..271b52840ff93 --- /dev/null +++ b/pkgs/applications/science/chemistry/openmolcas/pyparsing.patch @@ -0,0 +1,37 @@ +diff --git a/Tools/pymolcas/emil_grammar.py b/Tools/pymolcas/emil_grammar.py +index acbbae8..509c56f 100644 +--- a/Tools/pymolcas/emil_grammar.py ++++ b/Tools/pymolcas/emil_grammar.py +@@ -15,6 +15,14 @@ + + from __future__ import (unicode_literals, division, absolute_import, print_function) + ++try: ++ u = unicode ++ del u ++ py2 = True ++except NameError: ++ pass ++ ++ + from re import sub + from pyparsing import * + +@@ -24,6 +32,8 @@ def chomp(s): + + def chompAction(s, l, t): + try: ++ if (py2): ++ pass + return list(map(lambda s: chomp(unicode(s)), t)) + except NameError: + return list(map(chomp, t)) +@@ -33,6 +43,8 @@ def removeEMILEnd(s): + + def removeEMILEndAction(s, l, t): + try: ++ if (py2): ++ pass + return list(map(lambda s: removeEMILEnd(unicode(s)), t)) + except NameError: + return list(map(removeEMILEnd, t)) diff --git a/pkgs/applications/science/electronics/magic-vlsi/default.nix b/pkgs/applications/science/electronics/magic-vlsi/default.nix index 1c9ef55e1e016..be1050a4dd3a0 100644 --- a/pkgs/applications/science/electronics/magic-vlsi/default.nix +++ b/pkgs/applications/science/electronics/magic-vlsi/default.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation rec { pname = "magic-vlsi"; - version = "8.3.454"; + version = "8.3.456"; src = fetchurl { url = "http://opencircuitdesign.com/magic/archive/magic-${version}.tgz"; - sha256 = "sha256-nHZJ2L54J2x+H7S29TeGPInTgjEhRFv3h2ki0ccGYB0="; + sha256 = "sha256-PrKbLecFJ+th0x9A0fp550RnA8w9oWETMtFpQZP8tzw="; }; nativeBuildInputs = [ python3 ]; diff --git a/pkgs/applications/science/electronics/nanovna-saver/default.nix b/pkgs/applications/science/electronics/nanovna-saver/default.nix index e9e693fcf5118..61788938e40ab 100644 --- a/pkgs/applications/science/electronics/nanovna-saver/default.nix +++ b/pkgs/applications/science/electronics/nanovna-saver/default.nix @@ -7,13 +7,13 @@ }: python3.pkgs.buildPythonApplication rec { pname = "nanovna-saver"; - version = "0.6.0"; + version = "0.6.3"; src = fetchFromGitHub { owner = "NanoVNA-Saver"; repo = pname; - rev = "v${version}"; - sha256 = "sha256-2vDjAdEL8eNje5bm/1m+Fdi+PCGxpXwpxe2KvlLYB58="; + rev = "refs/tags/v${version}"; + sha256 = "sha256-lL6n3hcsIbLmrRKPi/ckWW2XUAtmBqvMSplkWOF4VKQ="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/science/electronics/simulide/default.nix b/pkgs/applications/science/electronics/simulide/default.nix new file mode 100644 index 0000000000000..fbd76a0e0ffc6 --- /dev/null +++ b/pkgs/applications/science/electronics/simulide/default.nix @@ -0,0 +1,129 @@ +{ lib +, fetchbzr +, mkDerivation +, qmake +, qtserialport +, qtmultimedia +, qttools +, qtscript +}: + +let + generic = + { version + , release + , branch + , rev + , sha256 + , extraPostPatch ? "" + , extraBuildInputs ? [ ] + , iconPath ? "resources/icons/simulide.png" + , installFiles ? '' + cp -r data examples $out/share/simulide + cp simulide $out/bin/simulide + '' + }: + mkDerivation { + pname = "simulide"; + version = "${version}-${release}"; + + src = fetchbzr { + url = "https://code.launchpad.net/~arcachofo/simulide/${branch}"; + inherit rev sha256; + }; + + postPatch = '' + sed -i resources/simulide.desktop \ + -e "s|^Exec=.*$|Exec=simulide|" \ + -e "s|^Icon=.*$|Icon=simulide|" + + # Note: older versions don't have REV_NO + sed -i SimulIDE.pro \ + -e "s|^VERSION = .*$|VERSION = ${version}|" \ + -e "s|^RELEASE = .*$|RELEASE = -${release}|" \ + -e "s|^REV_NO = .*$|REV_NO = ${rev}|" \ + -e "s|^BUILD_DATE = .*$|BUILD_DATE = ??-??-??|" + + ${extraPostPatch} + ''; + + preConfigure = '' + cd build_XX + ''; + + nativeBuildInputs = [ + qmake + ]; + + buildInputs = [ + qtserialport + qtmultimedia + qttools + ] ++ extraBuildInputs; + + installPhase = '' + runHook preInstall + + install -Dm644 ../resources/simulide.desktop $out/share/applications/simulide.desktop + install -Dm644 ../${iconPath} $out/share/icons/hicolor/256x256/apps/simulide.png + + mkdir -p $out/share/simulide $out/bin + pushd executables/SimulIDE_* + ${installFiles} + popd + + runHook postInstall + ''; + + meta = { + description = "A simple real time electronic circuit simulator"; + longDescription = '' + SimulIDE is a simple real time electronic circuit simulator, intended for hobbyist or students + to learn and experiment with analog and digital electronic circuits and microcontrollers. + It supports PIC, AVR, Arduino and other MCUs and MPUs. + ''; + homepage = "https://simulide.com/"; + license = lib.licenses.gpl3Only; + mainProgram = "simulide"; + maintainers = with lib.maintainers; [ carloscraveiro tomasajt ]; + platforms = [ "x86_64-linux" ]; + }; + }; +in +{ + simulide_0_4_15 = generic { + version = "0.4.15"; + release = "SR10"; + branch = "simulide_0.4.14"; # the branch name does not mach the version for some reason + rev = "291"; + sha256 = "sha256-BBoZr/S2pif0Jft5wrem8y00dXl08jq3kFiIUtOr3LM="; + extraPostPatch = '' + # GCC 13 needs the <cstdint> header explicitly included + sed -i src/gpsim/value.h -e '1i #include <cstdint>' + sed -i src/gpsim/modules/watchdog.h -e '1i #include <cstdint>' + ''; + extraBuildInputs = [ qtscript ]; + iconPath = "resources/icons/hicolor/256x256/simulide.png"; # upstream had a messed up icon path in this release + installFiles = '' + cp -r share/simulide/* $out/share/simulide + cp bin/simulide $out/bin/simulide + ''; + }; + + simulide_1_0_0 = generic { + version = "1.0.0"; + release = "SR2"; + branch = "1.0.0"; + rev = "1449"; + sha256 = "sha256-rJWZvnjVzaKXU2ktbde1w8LSNvu0jWkDIk4dq2l7t5g="; + extraBuildInputs = [ qtscript ]; + }; + + simulide_1_1_0 = generic { + version = "1.1.0"; + release = "RC1"; + branch = "1.1.0"; + rev = "1912"; + sha256 = "sha256-bgRAqt7h2LtU2Ze6Jiz8APhyPcV15v4ofxIilIeZV9E="; + }; +} diff --git a/pkgs/applications/science/logic/easycrypt/default.nix b/pkgs/applications/science/logic/easycrypt/default.nix index 2ea2dea70718c..36ff9f2046f8b 100644 --- a/pkgs/applications/science/logic/easycrypt/default.nix +++ b/pkgs/applications/science/logic/easycrypt/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "easycrypt"; - version = "2023.09"; + version = "2024.01"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "r${version}"; - hash = "sha256-9xavU9jRisZekPqC87EyiLXtZCGu/9QeGzq6BJGt1+Y="; + hash = "sha256-UYDoVMi5TtYxgPq5nkp/oRtcMcHl2p7KAG8ptvuOL5U="; }; nativeBuildInputs = with ocamlPackages; [ diff --git a/pkgs/applications/science/math/eigenmath/default.nix b/pkgs/applications/science/math/eigenmath/default.nix index 561c9c66a50ec..3cd9384ecf1fd 100644 --- a/pkgs/applications/science/math/eigenmath/default.nix +++ b/pkgs/applications/science/math/eigenmath/default.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "eigenmath"; - version = "unstable-2023-12-31"; + version = "unstable-2024-01-22"; src = fetchFromGitHub { owner = "georgeweigt"; repo = pname; - rev = "cc92936e226b0a4c77cdc5d00b7a02c472746f6f"; - hash = "sha256-wY06pZzqcgYdBS7ecB3ZnvmK74ve651n6aHHAN5DWdw="; + rev = "db4b22cd536cefbdf0b6c928f11c793a5580da0b"; + hash = "sha256-T1GXh1go08XVTToEg5Dq4BuwTCxxqYwQsx+c8g1RPxg="; }; checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in '' diff --git a/pkgs/applications/science/math/sage/default.nix b/pkgs/applications/science/math/sage/default.nix index a4173d1f5e6d8..765c691c95551 100644 --- a/pkgs/applications/science/math/sage/default.nix +++ b/pkgs/applications/science/math/sage/default.nix @@ -32,6 +32,7 @@ let }); }; + # matches src/sage/repl/ipython_kernel/install.py:kernel_spec jupyter-kernel-definition = { displayName = "SageMath ${sage-src.version}"; argv = [ @@ -42,7 +43,7 @@ let "-f" "{connection_file}" ]; - language = "sagemath"; + language = "sage"; # just one 16x16 logo is available logo32 = "${sage-src}/src/doc/common/themes/sage/static/sageicon.png"; logo64 = "${sage-src}/src/doc/common/themes/sage/static/sageicon.png"; diff --git a/pkgs/applications/science/math/sage/patches/disable-slow-glpk-test.patch b/pkgs/applications/science/math/sage/patches/disable-slow-glpk-test.patch index c04463e7e99c4..89f0613589d4c 100644 --- a/pkgs/applications/science/math/sage/patches/disable-slow-glpk-test.patch +++ b/pkgs/applications/science/math/sage/patches/disable-slow-glpk-test.patch @@ -1,12 +1,12 @@ diff --git a/src/sage/graphs/generic_graph.py b/src/sage/graphs/generic_graph.py -index 0070705f78..ac19818f1b 100644 +index 2deb533f7f..663ff2cd13 100644 --- a/src/sage/graphs/generic_graph.py +++ b/src/sage/graphs/generic_graph.py -@@ -6699,12 +6699,6 @@ class GenericGraph(GenericGraph_pyx): +@@ -6953,12 +6953,6 @@ class GenericGraph(GenericGraph_pyx): sage: G = DiGraph(d6, format='dig6') sage: G.edge_connectivity() 5 -- sage: G.edge_disjoint_spanning_trees(5) # long time +- sage: G.edge_disjoint_spanning_trees(5) # long time # needs sage.numerical.mip - [Digraph on 28 vertices, - Digraph on 28 vertices, - Digraph on 28 vertices, diff --git a/pkgs/applications/science/math/sage/patches/numpy-1.25-deprecation.patch b/pkgs/applications/science/math/sage/patches/numpy-1.25-deprecation.patch deleted file mode 100644 index 539afc4b3b77d..0000000000000 --- a/pkgs/applications/science/math/sage/patches/numpy-1.25-deprecation.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/src/sage/tests/books/computational-mathematics-with-sagemath/graphique_doctest.py b/src/sage/tests/books/computational-mathematics-with-sagemath/graphique_doctest.py -index aa153fd4cd..eebbe87aff 100644 ---- a/src/sage/tests/books/computational-mathematics-with-sagemath/graphique_doctest.py -+++ b/src/sage/tests/books/computational-mathematics-with-sagemath/graphique_doctest.py -@@ -134,11 +134,11 @@ Sage example in ./graphique.tex, line 1120:: - sage: t = srange(0, 5, 0.1); p = Graphics() - sage: for k in srange(0, 10, 0.15): - ....: y = integrate.odeint(f, k, t) -- ....: p += line(zip(t, flatten(y))) -+ ....: p += line(zip(t, y.flatten())) - sage: t = srange(0, -5, -0.1); q = Graphics() - sage: for k in srange(0, 10, 0.15): - ....: y = integrate.odeint(f, k, t) -- ....: q += line(zip(t, flatten(y))) -+ ....: q += line(zip(t, y.flatten())) - sage: y = var('y') - sage: v = plot_vector_field((1, -cos(x*y)), (x,-5,5), (y,-2,11)) - sage: g = p + q + v; g.show() diff --git a/pkgs/applications/science/math/sage/python-modules/sage-setup.nix b/pkgs/applications/science/math/sage/python-modules/sage-setup.nix index e1c497678d50b..a96f7ccd5d4c0 100644 --- a/pkgs/applications/science/math/sage/python-modules/sage-setup.nix +++ b/pkgs/applications/science/math/sage/python-modules/sage-setup.nix @@ -1,7 +1,7 @@ { lib , buildPythonPackage , sage-src -, cython +, cython_3 , jinja2 , pkgconfig # the python module, not the pkg-config alias }: @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "sage-setup"; src = sage-src; - nativeBuildInputs = [ cython ]; + nativeBuildInputs = [ cython_3 ]; buildInputs = [ pkgconfig ]; propagatedBuildInputs = [ jinja2 ]; diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix index 96b1adb562f49..4149e9163a363 100644 --- a/pkgs/applications/science/math/sage/sage-src.nix +++ b/pkgs/applications/science/math/sage/sage-src.nix @@ -1,6 +1,7 @@ { stdenv , fetchFromGitHub , fetchpatch +, fetchurl }: # This file is responsible for fetching the sage source and adding necessary patches. @@ -9,14 +10,23 @@ # all get the same sources with the same patches applied. stdenv.mkDerivation rec { - version = "10.0"; + version = "10.2"; pname = "sage-src"; src = fetchFromGitHub { owner = "sagemath"; repo = "sage"; rev = version; - sha256 = "sha256-zN/Lo/GBCjYGemuaYpgG3laufN8te3wPjXMQ+Me9zgY="; + sha256 = "sha256-VXnPdJhtw5Y/anecrVpevJDCyBVfnjksyuuZslNipm4="; + }; + + # contains essential files (e.g., setup.cfg) generated by the bootstrap script. + # TODO: investigate https://github.com/sagemath/sage/pull/35950 + configure-src = fetchurl { + # the hash below is the tagged commit's _parent_. it can also be found by looking for + # the "configure" asset at https://github.com/sagemath/sage/releases/tag/${version} + url = "mirror://sageupstream/configure/configure-b2813506039143e6f0abe859ab67a343abf72c2e.tar.gz"; + sha256 = "sha256-a1v0XyoKI+zO6Sjm8DzEwItRHbIgRDbpj4UfwVH+/hw="; }; # Patches needed because of particularities of nix or the way this is packaged. @@ -52,99 +62,6 @@ stdenv.mkDerivation rec { # should come from or be proposed to upstream. This list will probably never # be empty since dependencies update all the time. packageUpgradePatches = [ - # https://github.com/sagemath/sage/pull/35584, landed in 10.1.beta1 - (fetchpatch { - name = "networkx-3.1-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/be0aab74fd7e399e146988ef27260d2837baebae.diff"; - sha256 = "sha256-xBGrylNaiF7CpfmX9/4lTioP2LSYKoRCkKlKSGZuv9U="; - }) - - # https://github.com/sagemath/sage/pull/35612, landed in 10.1.beta1 - (fetchpatch { - name = "linbox-1.7-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/35cbd2f2a2c4c355455d39b1424f05ea0aa4349b.diff"; - sha256 = "sha256-/TpvIQZUqmbUuz6wvp3ni9oRir5LBA2FKDJcmnHI1r4="; - }) - - # https://github.com/sagemath/sage/pull/35619, landed in 10.1.beta1 - (fetchpatch { - name = "maxima-5.46.0-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/4ddf9328e7598284d4bc03cd2ed890f0be6b6399.diff"; - sha256 = "sha256-f6YaZiLSj+E0LJMsMZHDt6vecWffSAuUHYVkegBEhno="; - }) - - # https://github.com/sagemath/sage/pull/35635, landed in 10.1.beta1 - (fetchpatch { - name = "sympy-1.12-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/1a73b3bbbfa0f4a297e05d49305070e1ed5ae598.diff"; - sha256 = "sha256-k8Oam+EiRcfXC7qCdLacCx+7vpUAw2K1wsjKcQbeGb4="; - }) - - # https://github.com/sagemath/sage/pull/35826, landed in 10.1.beta5 - (fetchpatch { - name = "numpy-1.25.0-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/ecfe06b8f1fe729b07e885f0de55244467e5c137.diff"; - sha256 = "sha256-G0xhl+LyNdDYPzRqSHK3fHaepcIzpuwmqRiussraDf0="; - }) - - # https://github.com/sagemath/sage/pull/35826#issuecomment-1658569891 - ./patches/numpy-1.25-deprecation.patch - - # https://github.com/sagemath/sage/pull/35842, landed in 10.1.beta5 - (fetchpatch { - name = "scipy-1.11-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/90ece168c3c61508baa36659b0027b7dd8b43add.diff"; - sha256 = "sha256-Y5TmuJcUJR+veb2AuSVODGs+xkVV+pTM8fWTm4q+NDs="; - }) - - # https://github.com/sagemath/sage/pull/35825, landed in 10.1.beta6 - (fetchpatch { - name = "singular-4.3.2p2-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/1a1b49f814cdf4c4c8d0ac8930610f3fef6af5b0.diff"; - sha256 = "sha256-GqMgoi0tsP7zcCcPumhdsbvhPB6fgw1ufx6gHlc6iSc="; - }) - - # https://github.com/sagemath/sage/pull/36006, landed in 10.2.beta2 - (fetchpatch { - name = "gmp-6.3-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/5e841de46c3baa99cd1145b36ff9163e9340a55c.diff"; - sha256 = "sha256-fJPDryLtGBQz9qHDiCkBwjiW2lN6v7HiHgxY7CTeHcs="; - }) - - # https://github.com/sagemath/sage/pull/36279, landed in 10.2.beta4 - (fetchpatch { - name = "matplotlib-3.8-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/0fcf88935908440930c5f79202155aca4ad57518.diff"; - sha256 = "sha256-mvqAHaTCXsxPv901L8HSTnrfghfXYdq0wfLoP/cYQZI="; - }) - - # https://github.com/sagemath/sage/pull/35658, landed in 10.1.beta2 - (fetchpatch { - name = "sphinx-7-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/cacd9a89b5c4fdcf84a8dd2b7d5bdc10cc78109a.diff"; - sha256 = "sha256-qJvliTJjR3XBc5pH6Q0jtm8c4bhtZcTcF3O04Ro1uaU="; - }) - - # https://github.com/sagemath/sage/pull/36296, landed in 10.2.beta4 - (fetchpatch { - name = "duplicate-args-region_plot.patch"; - url = "https://github.com/sagemath/sage/commit/461727b453712550a2c5dc0ae11933523255aaed.diff"; - sha256 = "sha256-mC8084VQoUBk4hocALF+Y9Cwb38Zt360eldi/SSjna8="; - }) - - # https://github.com/sagemath/sage/pull/36218, landed in 10.2.beta3 - (fetchpatch { - name = "sageenv-disable-file-validation.patch"; - url = "https://github.com/sagemath/sage/commit/31a764f4a9ec54d3ea970aa9514a088c4e603ebd.diff"; - sha256 = "sha256-NhYUTTmYlyjss3eS8HZXP8U11TElQY0cv6KW4wBOaJY="; - }) - - # https://github.com/sagemath/sage/pull/36235, landed in 10.2.beta3 - (fetchpatch { - name = "ecl-23.9.9.patch"; - url = "https://github.com/sagemath/sage/commit/b6b50a80e9660c002d069019f5b8f04e9324a423.diff"; - sha256 = "sha256-nF+5oKad1VYms6Dxr1t9/V0XBkoMfhy0KCY/ZPddrm0="; - }) ]; patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches; @@ -158,11 +75,17 @@ stdenv.mkDerivation rec { sed -i \ "s|var(\"SAGE_ROOT\".*|var(\"SAGE_ROOT\", \"$out\")|" \ src/sage/env.py + + # sage --docbuild unsets JUPYTER_PATH, which breaks our docbuilding + # https://trac.sagemath.org/ticket/33650#comment:32 + sed -i "/export JUPYTER_PATH/d" src/bin/sage ''; buildPhase = "# do nothing"; installPhase = '' cp -r . "$out" + tar xkzf ${configure-src} -C "$out" + rm "$out/configure" ''; } diff --git a/pkgs/applications/science/math/sage/sagedoc.nix b/pkgs/applications/science/math/sage/sagedoc.nix index 228b5aa2c609c..5e2191486bf08 100644 --- a/pkgs/applications/science/math/sage/sagedoc.nix +++ b/pkgs/applications/science/math/sage/sagedoc.nix @@ -11,11 +11,6 @@ stdenv.mkDerivation rec { strictDeps = true; - nativeBuildInputs = [ - # for patchShebangs below - python3 - ]; - unpackPhase = '' export SAGE_DOC_OVERRIDE="$PWD/share/doc/sage" export SAGE_DOC_SRC_OVERRIDE="$PWD/docsrc" @@ -29,18 +24,6 @@ stdenv.mkDerivation rec { export HOME="$TMPDIR/sage_home" mkdir -p "$HOME" - # run bootstrap script to generate Sage spkg docs, because unfortunately some unrelated doc - # pages link to them. it needs a few ugly (but self-contained) hacks for a standalone run. - cp -r "${src}/build" "$HOME" - chmod -R 755 "$HOME/build" - sed -i "/assert/d" "$HOME/build/sage_bootstrap/env.py" - sed -i "s|sage-bootstrap-python|python3|" "$HOME/build/bin/sage-package" - patchShebangs "$HOME/build/bin/sage-package" - pushd "$SAGE_DOC_SRC_OVERRIDE" - sed -i "s|OUTPUT_DIR=\"src/doc/|OUTPUT_DIR=\"$SAGE_DOC_SRC_OVERRIDE/|" bootstrap - PATH="$HOME/build/bin:$PATH" SAGE_ROOT="${src}" ./bootstrap - popd - # adapted from src/doc/Makefile (doc-src target), which tries to call Sage from PATH mkdir -p $SAGE_DOC_SRC_OVERRIDE/en/reference/repl ${sage-with-env}/bin/sage -advanced > $SAGE_DOC_SRC_OVERRIDE/en/reference/repl/options.txt @@ -51,12 +34,10 @@ stdenv.mkDerivation rec { # jupyter-sphinx calls the sagemath jupyter kernel during docbuild export JUPYTER_PATH=${jupyter-kernel-specs} - # sage --docbuild unsets JUPYTER_PATH, so we call sage_docbuild directly - # https://trac.sagemath.org/ticket/33650#comment:32 - ${sage-with-env}/bin/sage --python3 -m sage_docbuild \ + ${sage-with-env}/bin/sage --docbuild \ --mathjax \ --no-pdf-links \ - all html < /dev/null + all html ''; installPhase = '' @@ -80,7 +61,7 @@ stdenv.mkDerivation rec { # sagemath_doc_html tests assume sage tests are being run, so we # compromise: we run standard tests, but only on files containing # relevant tests. as of Sage 9.6, there are only 4 such files. - grep -PRl "#.*optional.*sagemath_doc_html" ${src}/src/sage{,_docbuild} | \ + grep -PRl "#.*(optional|needs).*sagemath_doc_html" ${src}/src/sage{,_docbuild} | \ xargs ${sage-with-env}/bin/sage -t --optional=sage,sagemath_doc_html ''; } diff --git a/pkgs/applications/science/math/sage/sagelib.nix b/pkgs/applications/science/math/sage/sagelib.nix index f8beabaac1ffa..5a1f4ee473c9b 100644 --- a/pkgs/applications/science/math/sage/sagelib.nix +++ b/pkgs/applications/science/math/sage/sagelib.nix @@ -48,7 +48,7 @@ , cvxopt , cypari2 , cysignals -, cython +, cython_3 , fpylll , gmpy2 , importlib-metadata @@ -152,7 +152,7 @@ buildPythonPackage rec { cvxopt cypari2 cysignals - cython + cython_3 fpylll gmpy2 importlib-metadata @@ -202,29 +202,13 @@ buildPythonPackage rec { mkdir -p "$SAGE_SHARE/sage/ext/notebook-ipython" mkdir -p "var/lib/sage/installed" - cd build/pkgs/sagelib - - # some files, like Pipfile, pyproject.toml, requirements.txt and setup.cfg - # are generated by the bootstrap script using m4. these can fetch data from - # build/pkgs, either directly or via sage-get-system-packages. - sed -i '/sage_conf/d' src/setup.cfg.m4 - sed -i '/sage_conf/d' src/requirements.txt.m4 - # version lower bounds are useful, but upper bounds are a hassle because # Sage tests already catch any relevant API breakage. # according to the discussion at https://trac.sagemath.org/ticket/33520, # upper bounds will be less noisy starting from Sage 9.6. - sed -i 's/==0.5.1/>=0.5.1/' ../ptyprocess/install-requires.txt - sed -i 's/, <[^, ]*//' ../*/install-requires.txt - - for infile in src/*.m4; do - if [ -f "$infile" ]; then - outfile="src/$(basename $infile .m4)" - m4 "$infile" > "$outfile" - fi - done + sed -i 's/, <[^, ]*//' build/pkgs/*/install-requires.txt - cd src + cd build/pkgs/sagelib/src ''; postInstall = '' diff --git a/pkgs/applications/science/misc/cwltool/default.nix b/pkgs/applications/science/misc/cwltool/default.nix index 7c28f65f3bf7b..fb3b26a12edf1 100644 --- a/pkgs/applications/science/misc/cwltool/default.nix +++ b/pkgs/applications/science/misc/cwltool/default.nix @@ -7,32 +7,40 @@ python3.pkgs.buildPythonApplication rec { pname = "cwltool"; - version = "3.1.20230213100550"; - format = "setuptools"; + version = "3.1.20240112164112"; + pyproject = true; src = fetchFromGitHub { owner = "common-workflow-language"; - repo = pname; + repo = "cwltool"; rev = "refs/tags/${version}"; - hash = "sha256-BtHkIVadcccnYYX8lRqiCzO+/qFeBaZfdUuu6qrjysk="; + hash = "sha256-Y0DORypXlTDv04qh796oXPSTxCXGb7rLQ8Su+/As7Lo="; }; postPatch = '' substituteInPlace setup.py \ - --replace "ruamel.yaml >= 0.15, < 0.17.22" "ruamel.yaml" \ + --replace "ruamel.yaml >= 0.16, < 0.19" "ruamel.yaml" \ --replace "prov == 1.5.1" "prov" \ - --replace "setup_requires=PYTEST_RUNNER," "" + --replace '"schema-salad >= 8.4.20230426093816, < 9",' "" \ + --replace "PYTEST_RUNNER + " "" + substituteInPlace pyproject.toml \ + --replace "mypy==1.8.0" "mypy" \ + --replace "ruamel.yaml>=0.16.0,<0.18" "ruamel.yaml" ''; nativeBuildInputs = [ git - ]; + ] ++ (with python3.pkgs; [ + setuptools + setuptools-scm + ]); propagatedBuildInputs = with python3.pkgs; [ argcomplete bagit coloredlogs cwl-utils + mypy mypy-extensions prov psutil @@ -42,6 +50,10 @@ python3.pkgs.buildPythonApplication rec { ruamel-yaml schema-salad shellescape + spython + toml + types-psutil + types-requests typing-extensions ]; diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix index d279bd1e2cfd1..085b44bf586cd 100644 --- a/pkgs/applications/science/misc/snakemake/default.nix +++ b/pkgs/applications/science/misc/snakemake/default.nix @@ -6,14 +6,18 @@ python3.pkgs.buildPythonApplication rec { pname = "snakemake"; - version = "8.0.1"; + version = "8.2.1"; format = "setuptools"; src = fetchFromGitHub { owner = "snakemake"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-F4c/lgp7J6LLye+f3FpzaXz3zM7R+jXxTziPlVbxFxA="; + hash = "sha256-NpsDJuxH+NHvE735OCHaISPSOhYDxWiKqCb4Yk9DHf4="; + # https://github.com/python-versioneer/python-versioneer/issues/217 + postFetch = '' + sed -i "$out"/snakemake/_version.py -e 's#git_refnames = ".*"#git_refnames = " (tag: v${version})"#' + ''; }; postPatch = '' diff --git a/pkgs/applications/science/physics/nnpdf/default.nix b/pkgs/applications/science/physics/nnpdf/default.nix index f6d3e94c1a057..a53940d38d74d 100644 --- a/pkgs/applications/science/physics/nnpdf/default.nix +++ b/pkgs/applications/science/physics/nnpdf/default.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "nnpdf"; - version = "4.0.7"; + version = "4.0.8"; src = fetchFromGitHub { owner = "NNPDF"; repo = pname; rev = version; - hash = "sha256-J5l+ZO+5pfxKlpFuy4PEQynbqs1QIqMK6hhMFvmb/zs="; + hash = "sha256-hGCA2K/fD6UZa9WD42IDmZV1oxNgjFaXkjOZKGgGSBg="; }; postPatch = '' diff --git a/pkgs/applications/science/robotics/mujoco/default.nix b/pkgs/applications/science/robotics/mujoco/default.nix index 95d3e12693507..266118e881bf7 100644 --- a/pkgs/applications/science/robotics/mujoco/default.nix +++ b/pkgs/applications/science/robotics/mujoco/default.nix @@ -129,15 +129,15 @@ let in stdenv.mkDerivation rec { pname = "mujoco"; - version = "3.1.0"; + version = "3.1.1"; # Bumping version? Make sure to look though the MuJoCo's commit # history for bumped dependency pins! src = fetchFromGitHub { owner = "google-deepmind"; - repo = pname; - rev = version; - hash = "sha256-a8h30psoAlj9dI4j8IfY3WzWjY4MrRosGbvgt79s1BQ="; + repo = "mujoco"; + rev = "refs/tags/${version}"; + hash = "sha256-+2nt7G8j6Pi60cfMBPYWPGwD8wpxDOSylenm0oCitzM="; }; patches = [ ./mujoco-system-deps-dont-fetch.patch ]; @@ -180,6 +180,7 @@ in stdenv.mkDerivation rec { meta = with lib; { description = "Multi-Joint dynamics with Contact. A general purpose physics simulator."; homepage = "https://mujoco.org/"; + changelog = "https://github.com/google-deepmind/mujoco/releases/tag/${version}"; license = licenses.asl20; maintainers = with maintainers; [ samuela tmplt ]; }; |