about summary refs log tree commit diff
path: root/pkgs/applications/science
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/science')
-rw-r--r--pkgs/applications/science/astronomy/kstars/default.nix4
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix22
-rw-r--r--pkgs/applications/science/biology/blast/bin.nix2
-rw-r--r--pkgs/applications/science/biology/dssp/default.nix19
-rw-r--r--pkgs/applications/science/biology/subread/default.nix4
-rw-r--r--pkgs/applications/science/biology/tandem-aligner/default.nix9
-rw-r--r--pkgs/applications/science/biology/truvari/default.nix59
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--pkgs/applications/science/electronics/bitscope/common.nix4
-rw-r--r--pkgs/applications/science/electronics/dataexplorer/default.nix8
-rw-r--r--pkgs/applications/science/electronics/gerbv/default.nix19
-rw-r--r--pkgs/applications/science/electronics/gtkwave/default.nix4
-rw-r--r--pkgs/applications/science/electronics/kicad/base.nix3
-rw-r--r--pkgs/applications/science/electronics/kicad/versions.nix44
-rw-r--r--pkgs/applications/science/electronics/nvc/default.nix17
-rw-r--r--pkgs/applications/science/logic/sad/default.nix41
-rw-r--r--pkgs/applications/science/logic/sad/monoid.patch51
-rw-r--r--pkgs/applications/science/logic/sad/patch.patch200
-rw-r--r--pkgs/applications/science/logic/tlaplus/default.nix4
-rw-r--r--pkgs/applications/science/logic/z3/default.nix4
-rwxr-xr-xpkgs/applications/science/machine-learning/streamlit/default.nix4
-rw-r--r--pkgs/applications/science/math/form/default.nix6
-rw-r--r--pkgs/applications/science/math/glsurf/default.nix1
-rw-r--r--pkgs/applications/science/math/jags/default.nix4
-rw-r--r--pkgs/applications/science/math/nasc/default.nix3
-rw-r--r--pkgs/applications/science/math/qalculate-gtk/default.nix4
-rw-r--r--pkgs/applications/science/math/qalculate-qt/default.nix4
-rw-r--r--pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch13
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix17
-rw-r--r--pkgs/applications/science/misc/foldingathome/client.nix4
-rw-r--r--pkgs/applications/science/misc/root/default.nix2
-rw-r--r--pkgs/applications/science/misc/sasview/default.nix6
32 files changed, 172 insertions, 418 deletions
diff --git a/pkgs/applications/science/astronomy/kstars/default.nix b/pkgs/applications/science/astronomy/kstars/default.nix
index 3769948fd3eff..c4721c490cce2 100644
--- a/pkgs/applications/science/astronomy/kstars/default.nix
+++ b/pkgs/applications/science/astronomy/kstars/default.nix
@@ -14,11 +14,11 @@
 
 mkDerivation rec {
   pname = "kstars";
-  version = "3.6.3";
+  version = "3.6.4";
 
   src = fetchurl {
     url = "mirror://kde/stable/kstars/kstars-${version}.tar.xz";
-    sha256 = "sha256-sve9q4iM/Y8+K64Ceby/KGx5Un5G0o5cCnIxJkXTgug=";
+    sha256 = "sha256-9MJqJVgSZVBzlLv08Z6i8yO4YV1exsD5+yLJjqIGD20=";
   };
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index c3880b0b1d2be..2b8d292eada0b 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -30,6 +30,14 @@ stdenv.mkDerivation rec {
     hash = "sha256-7jzS3pRklPsCTgCr3nrywfHCNlBDHuyuGGvrVoI9+A0=";
   };
 
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace CMakeLists.txt \
+      --replace 'SET(CMAKE_INSTALL_PREFIX "''${PROJECT_BINARY_DIR}/Stellarium.app/Contents")' \
+                'SET(CMAKE_INSTALL_PREFIX "${placeholder "out"}/Applications/Stellarium.app/Contents")'
+    substituteInPlace src/CMakeLists.txt \
+      --replace "\''${_qt_bin_dir}/../" "${qtmultimedia}/lib/qt-6/"
+  '';
+
   nativeBuildInputs = [
     cmake
     perl
@@ -44,22 +52,28 @@ stdenv.mkDerivation rec {
     qtmultimedia
     qtserialport
     qttranslations
-    qtwayland
     qtwebengine
     calcmysky
     qxlsx
     indilib
     libnova
+  ] ++ lib.optionals stdenv.isLinux [
+    qtwayland
   ];
 
   preConfigure = lib.optionalString stdenv.isDarwin ''
-    substituteInPlace CMakeLists.txt \
-      --replace 'SET(CMAKE_INSTALL_PREFIX "''${PROJECT_BINARY_DIR}/Stellarium.app/Contents")' \
-                'SET(CMAKE_INSTALL_PREFIX "${placeholder "out"}/Applications/Stellarium.app/Contents")'
+    export LC_ALL=en_US.UTF-8
   '';
 
+  # fatal error: 'QtSerialPort/QSerialPortInfo' file not found
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-F${qtserialport}/lib";
+
   dontWrapGApps = true;
 
+  postInstall = lib.optionalString stdenv.isDarwin ''
+    makeWrapper $out/Applications/Stellarium.app/Contents/MacOS/Stellarium $out/bin/stellarium
+  '';
+
   preFixup = ''
     qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
   '';
diff --git a/pkgs/applications/science/biology/blast/bin.nix b/pkgs/applications/science/biology/blast/bin.nix
index 03e61bdcbe867..daae9c096144a 100644
--- a/pkgs/applications/science/biology/blast/bin.nix
+++ b/pkgs/applications/science/biology/blast/bin.nix
@@ -35,7 +35,7 @@ in
 stdenv.mkDerivation {
   inherit pname version src;
 
-  nativeBuildInputs = lib.optional stdenv.isLinux [ autoPatchelfHook ];
+  nativeBuildInputs = lib.optionals stdenv.isLinux [ autoPatchelfHook ];
 
   buildInputs = [ python3 perl ] ++ lib.optionals stdenv.isLinux [ zlib bzip2 glib libxml2 ];
 
diff --git a/pkgs/applications/science/biology/dssp/default.nix b/pkgs/applications/science/biology/dssp/default.nix
index 762b0515e85c2..59da360d1b6df 100644
--- a/pkgs/applications/science/biology/dssp/default.nix
+++ b/pkgs/applications/science/biology/dssp/default.nix
@@ -1,19 +1,30 @@
-{ lib, stdenv, fetchFromGitHub, boost, cmake, libcifpp, zlib, }:
+{ lib, stdenv, fetchFromGitHub, cmake, libcifpp, libmcfp, zlib }:
+let
+  libcifpp' = libcifpp.overrideAttrs (oldAttrs:  rec {
+    # dssp 4.2.2.1 requires specific version "5.0.8" of libcifpp
+    version = "5.0.8";
+    src = fetchFromGitHub {
+      inherit (oldAttrs.src) owner repo;
+      rev = "v${version}";
+      sha256 = "sha256-KJGcopGhCWSl+ElG3BPJjBf/kvYJowOHxto6Ci1IMco=";
+    };
+  });
+in
 
 stdenv.mkDerivation rec {
   pname = "dssp";
-  version = "4.0.5";
+  version = "4.2.2.1";
 
   src = fetchFromGitHub {
     owner = "PDB-REDO";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1x35rdcm4fch66pjbmy73lv0gdb6g9y3v023a66512a6nzsqjsir";
+    sha256 = "sha256-vmGvC5d8LTo+pcY9sxwj0d6JvH8Lyk+QSOZo5raBci4=";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ boost libcifpp zlib ];
+  buildInputs = [ libcifpp' libmcfp zlib ];
 
   meta = with lib; {
     description = "Calculate the most likely secondary structure assignment given the 3D structure of a protein";
diff --git a/pkgs/applications/science/biology/subread/default.nix b/pkgs/applications/science/biology/subread/default.nix
index d083e202a9ffe..45f0a1d7f4626 100644
--- a/pkgs/applications/science/biology/subread/default.nix
+++ b/pkgs/applications/science/biology/subread/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "subread";
-  version = "2.0.4";
+  version = "2.0.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/subread/subread-${version}/subread-${version}-source.tar.gz";
-    sha256 = "sha256-xUs37YOzQxjY8Rm1wC+50KZcgRGVvMnhdF322vdMots=";
+    sha256 = "sha256-frZzd+IV4IxfPK44PWOgV9yPRPoUB3smPbxoDchbaSc=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/science/biology/tandem-aligner/default.nix b/pkgs/applications/science/biology/tandem-aligner/default.nix
index 53daffbe0677e..5f197bd7f79cd 100644
--- a/pkgs/applications/science/biology/tandem-aligner/default.nix
+++ b/pkgs/applications/science/biology/tandem-aligner/default.nix
@@ -6,14 +6,14 @@
 , zlib
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation (finalAttrs: {
   pname = "TandemAligner";
-  version = "unstable-2022-09-17";
+  version = "0.1";
 
   src = fetchFromGitHub {
     owner = "seryrzu";
     repo = "tandem_aligner";
-    rev = "ac6004f108ad20477045f4d0b037d96051a9df70";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-iMDj1HZ8LzmZckuAM3lbG3eSJSd/5JGVA6SBs7+AgX8=";
   };
 
@@ -58,9 +58,10 @@ stdenv.mkDerivation {
   meta = {
     description = "A parameter-free algorithm for sequence alignment";
     homepage = "https://github.com/seryrzu/tandem_aligner";
+    changelog = "https://github.com/seryrzu/tandem_aligner/releases/tag/v${finalAttrs.version}";
     license = lib.licenses.bsd3;
     maintainers = with lib.maintainers; [ amesgen ];
     platforms = lib.platforms.linux;
     mainProgram = "tandem_aligner";
   };
-}
+})
diff --git a/pkgs/applications/science/biology/truvari/default.nix b/pkgs/applications/science/biology/truvari/default.nix
index 412642f523f2d..cf64070d782f2 100644
--- a/pkgs/applications/science/biology/truvari/default.nix
+++ b/pkgs/applications/science/biology/truvari/default.nix
@@ -1,47 +1,76 @@
 { lib
 , fetchFromGitHub
 , python3Packages
+, runtimeShell
+, bcftools
+, htslib
 }:
 
-python3Packages.buildPythonApplication rec {
+let
+  ssshtest = fetchFromGitHub {
+    owner = "ryanlayer";
+    repo = "ssshtest";
+    rev = "d21f7f928a167fca6e2eb31616673444d15e6fd0";
+    hash = "sha256-zecZHEnfhDtT44VMbHLHOhRtNsIMWeaBASupVXtmrks=";
+  };
+in python3Packages.buildPythonApplication rec {
   pname = "truvari";
-  version = "2.1.1";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
-    owner = "spiralgenetics";
+    owner = "ACEnglish";
     repo = "truvari";
     rev = "v${version}";
-    sha256 = "14nsdbj063qm175xxixs34cihvsiskc9gym8pg7gbwsh13k5a00h";
+    hash = "sha256-UJNMKEV5m2jFqnWvkVAtymkcE2TjPIXp7JqRZpMSqsE=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace 'python-Levenshtein==0.12.1' 'python-Levenshtein>=0.12.1'
+      --replace "rich==" "rich>="
+    substituteInPlace truvari/utils.py \
+      --replace "/bin/bash" "${runtimeShell}"
+    patchShebangs repo_utils/test_files
   '';
 
   propagatedBuildInputs = with python3Packages; [
-    pyvcf
-    levenshtein
-    progressbar2
+    rich
+    edlib
     pysam
-    pyfaidx
     intervaltree
+    joblib
+    numpy
     pytabix
-    acebinf
     bwapy
-    joblib
     pandas
   ];
 
-  # no tests
-  doCheck = false;
+  makeWrapperArgs = [
+    "--prefix" "PATH" ":" (lib.makeBinPath [ bcftools htslib ])
+  ];
+
   pythonImportsCheck = [ "truvari" ];
 
+  nativeCheckInputs = [
+    bcftools
+    htslib
+  ] ++ (with python3Packages; [
+    coverage
+  ]);
+
+  checkPhase = ''
+    runHook preCheck
+
+    ln -s ${ssshtest}/ssshtest .
+    bash repo_utils/truvari_ssshtests.sh
+
+    runHook postCheck
+  '';
+
   meta = with lib; {
     description = "Structural variant comparison tool for VCFs";
-    homepage = "https://github.com/spiralgenetics/truvari";
+    homepage = "https://github.com/ACEnglish/truvari";
     license = licenses.mit;
-    maintainers = with maintainers; [ scalavision ];
+    maintainers = with maintainers; [ natsukium scalavision ];
     longDescription = ''
       Truvari is a benchmarking tool for comparison sets of SVs.
       It can calculate the recall, precision, and f-measure of a
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index 98f7ccbfee02a..5ad4ce884ce72 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.3";
+  version = "16.1.9";
   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";
-    sha256 = "sha256-k1F4OaER9vg8GIi4eqppeh2f0MtlcBSfd4zkewFp2As=";
+    hash = "sha256-QGduoUKWNUjNlMEYO0wD5+igjuF03V5SVlgq44d2HDs=";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/electronics/bitscope/common.nix b/pkgs/applications/science/electronics/bitscope/common.nix
index 1cd23d0f414d7..6a024748daf28 100644
--- a/pkgs/applications/science/electronics/bitscope/common.nix
+++ b/pkgs/applications/science/electronics/bitscope/common.nix
@@ -1,5 +1,5 @@
 { atk
-, buildFHSUserEnv
+, buildFHSEnv
 , cairo
 , dpkg
 , gdk-pixbuf
@@ -56,7 +56,7 @@ let
       ${(wrapBinary libs) attrs.toolName}
     '';
   });
-in buildFHSUserEnv {
+in buildFHSEnv {
   name = "${attrs.toolName}-${attrs.version}";
   runScript = "${pkg.outPath}/bin/${attrs.toolName}";
 } // { inherit (pkg) meta name; }
diff --git a/pkgs/applications/science/electronics/dataexplorer/default.nix b/pkgs/applications/science/electronics/dataexplorer/default.nix
index 535871e4edba8..94d24283990a0 100644
--- a/pkgs/applications/science/electronics/dataexplorer/default.nix
+++ b/pkgs/applications/science/electronics/dataexplorer/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dataexplorer";
-  version = "3.7.4";
+  version = "3.7.6";
 
   src = fetchurl {
     url = "mirror://savannah/dataexplorer/dataexplorer-${version}-src.tar.gz";
-    sha256 = "sha256-bghI7Hun7ZKUVEj7T58K0oaclnhUGd4z+eIqZF3eXHQ=";
+    sha256 = "sha256-mwz4o1m2ldjyD4pbwMQxeaI8a8JXzis+s0I+6GW8WaY=";
   };
 
   nativeBuildInputs = [ ant makeWrapper ];
@@ -45,8 +45,8 @@ stdenv.mkDerivation rec {
       --set SWT_GTK3 0 \
       --set LIBOVERLAY_SCROLLBAR 0
 
-    install -Dvm644 build/misc/GNU_LINUX_JUNSI_ICHARER_DUO_UDEV_RULE/50-Junsi-iCharger-DUO.rules \
-      $out/etc/udev/rules.d/50-Junsi-iCharger-DUO.rules
+    install -Dvm644 build/misc/GNU_LINUX_JUNSI_ICHARER_USB_UDEV_RULE/50-Junsi-iCharger-USB.rules \
+      $out/etc/udev/rules.d/50-Junsi-iCharger-USB.rules
     install -Dvm644 build/misc/GNU_LINUX_SKYRC_UDEV_RULE/50-SkyRC-Charger.rules \
       $out/etc/udev/rules.d/50-SkyRC-Charger.rules
   '';
diff --git a/pkgs/applications/science/electronics/gerbv/default.nix b/pkgs/applications/science/electronics/gerbv/default.nix
index f83cfa1bf04e1..0c45184e31c74 100644
--- a/pkgs/applications/science/electronics/gerbv/default.nix
+++ b/pkgs/applications/science/electronics/gerbv/default.nix
@@ -1,13 +1,12 @@
-{ lib, stdenv, fetchgit, fetchpatch, pkg-config, gettext, libtool, automake, autoconf, cairo, gtk2, autoreconfHook }:
+{ lib, stdenv, fetchurl, fetchpatch, pkg-config, gettext, libtool, automake, autoconf, cairo, gtk2-x11, autoreconfHook }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "gerbv";
-  version = "2015-10-08";
+  version = "2.7.0";
 
-  src = fetchgit {
-    url = "git://git.geda-project.org/gerbv.git";
-    rev = "76b8b67bfa10823ce98f1c4c3b49a2afcadf7659";
-    sha256 = "00jn1xhf6kblxc5gac1wvk8zm12fy6sk81nj3jwdag0z6wk3z446";
+  src = fetchurl {
+    url = "mirror://sourceforge/gerbv/${pname}-${version}.tar.gz";
+    sha256 = "sha256-xe6AjEIwzmvjrRCrY8VHCYOG1DAicE3iXduTeOYgU7Q=";
   };
 
   patches = [
@@ -21,15 +20,17 @@ stdenv.mkDerivation {
   ];
 
   nativeBuildInputs = [ autoreconfHook pkg-config automake autoconf ];
-  buildInputs = [ gettext libtool cairo gtk2 ];
+  buildInputs = [ gettext libtool cairo gtk2-x11 ];
 
   configureFlags = ["--disable-update-desktop-database"];
 
+  env.NIX_CFLAGS_COMPILE = "-Wno-format-security";
+
   meta = with lib; {
     description = "A Gerber (RS-274X) viewer";
     homepage = "http://gerbv.geda-project.org/";
     maintainers = with maintainers; [ mog ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix
index cc03a2e8c8196..276c59aee7d55 100644
--- a/pkgs/applications/science/electronics/gtkwave/default.nix
+++ b/pkgs/applications/science/electronics/gtkwave/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gtkwave";
-  version = "3.3.114";
+  version = "3.3.115";
 
   src = fetchurl {
     url = "mirror://sourceforge/gtkwave/${pname}-gtk3-${version}.tar.gz";
-    sha256 = "sha256-zzpfyrs3qWckzeLkp0A73ye1HpFGzmenlNvkcBfPhKw=";
+    sha256 = "sha256-rbenwCsYygg1oGS2cvbNxR+HXEVLAYmnQ/LOi5HmSqU=";
   };
 
   nativeBuildInputs = [ pkg-config wrapGAppsHook ];
diff --git a/pkgs/applications/science/electronics/kicad/base.nix b/pkgs/applications/science/electronics/kicad/base.nix
index eb65b6881ae20..1b0bdc3ae49ca 100644
--- a/pkgs/applications/science/electronics/kicad/base.nix
+++ b/pkgs/applications/science/electronics/kicad/base.nix
@@ -94,9 +94,6 @@ stdenv.mkDerivation rec {
     # should be resolved in the next release
     "-DCMAKE_CTEST_ARGUMENTS='--exclude-regex;qa_eeschema'"
   ]
-  ++ optionals (!stable) [ # workaround for https://gitlab.com/kicad/code/kicad/-/issues/14346
-    "-DPYTHON_SITE_PACKAGE_PATH=${placeholder "out"}/${python.sitePackages}/"
-  ]
   ++ optional (stable && !withNgspice) "-DKICAD_SPICE=OFF"
   ++ optionals (!withScripting) [
     "-DKICAD_SCRIPTING_WXPYTHON=OFF"
diff --git a/pkgs/applications/science/electronics/kicad/versions.nix b/pkgs/applications/science/electronics/kicad/versions.nix
index b102da24a3d40..2c81611888196 100644
--- a/pkgs/applications/science/electronics/kicad/versions.nix
+++ b/pkgs/applications/science/electronics/kicad/versions.nix
@@ -3,45 +3,45 @@
 {
   "kicad" = {
     kicadVersion = {
-      version =			"7.0.1";
+      version =			"7.0.2";
       src = {
-        rev =			"3b83917a115be1ce2f33a73039f59f8784b5c2e7";
-        sha256 =		"021safxvyq9qzs08jy3jvpazmhvix4kyl05s9y9hwmyzdmdl2smn";
+        rev =			"6a45011f421d65a241e1df4a2dc720819922f343";
+        sha256 =		"0san7pjgvd8niwrki722qb6y46r71rlyspqp43pmkiz55dmz52zx";
       };
     };
     libVersion = {
-      version =			"7.0.1";
+      version =			"7.0.2";
       libSources = {
-        symbols.rev =		"adfe3c06b5750d81580ed44e669b578f49c205eb";
-        symbols.sha256 =	"14c5gci13m30xv0cmic5jxsmfx9lq3fnd8hyq3mmgkrw7443zy30";
-        templates.rev =		"66d76556d9e81f8a5be74457686d211c666ed200";
-        templates.sha256 =	"02i279269mhq7wjhb1yqk90820ncssxl9n7b20qr2r4fmm7jpvxv";
-        footprints.rev =	"1cf5a1d979cffebd62464c1bb0d7b09c5ee3b8c3";
-        footprints.sha256 =	"0k0z40wmaq665hjxb6kp1yl3v7clxz49r6ki0chyphsxv1cnixmy";
-        packages3d.rev =	"e54b5b6368d03f396098448bcce37f2e432dac33";
-        packages3d.sha256 =	"0nzi7ijfb3rjm98kaa9va2mkh0nfzpq4vfhxkq8j18qhx24h5c8v";
+        symbols.rev =		"22ed11504c140fded542eeb104cdb02e0a65672e";
+        symbols.sha256 =	"0aah92rb8yx00z0xwx9z7xn5rrw4cc3z35gr7c0bnb49hiak01jc";
+        templates.rev =		"331068741c80fee8195646d3dee40f3b840495e7";
+        templates.sha256 =	"1qi20mrsfn4fxmr1fyphmil2i9p2nzmwk5rlfchc5aq2194nj3lq";
+        footprints.rev =	"e187e2dfa9bd04d91cad0d875049ab56780b6e32";
+        footprints.sha256 =	"1qrdznfd4a6kzwd4aaijkpyjy0xnrmi66isq9z52652a8s6ja48v";
+        packages3d.rev =	"6374ae3db8b43a4d779185b7017fcfe0e1f32590";
+        packages3d.sha256 =	"1nkk4325jh89vh52ykfnf9pz1k3jk5017gz6r2cia2v4b3jadi31";
       };
     };
   };
   "kicad-unstable" = {
     kicadVersion = {
-      version =			"2023-03-29";
+      version =			"2023-04-14";
       src = {
-        rev =			"d5bc223ff2cd1fbf4e923e23b5bb442bb54faa95";
-        sha256 =		"0pbzmv9vh4bzhsxj46gjkgh7kk6a0v8gijvkmb56fy5i8xv2ixkn";
+        rev =			"4a3f77cd9dac9dc5921eb9beaa63d0d3c9c051e5";
+        sha256 =		"06dsiyvr7zn3cp13w0y63d1qmjlhzsqlvajkximg3pw5mmiljxrr";
       };
     };
     libVersion = {
-      version =			"2023-03-29";
+      version =			"2023-04-14";
       libSources = {
-        symbols.rev =		"36fc1c88921bf32ebf667e027dfe63cca649fd95";
-        symbols.sha256 =	"177mqvjf3knldnl7pf1abv4pmlgi5cg02ggfwbc655jq4x6x8fkz";
+        symbols.rev =		"38d4e7e1ab6a9b5d9eee85f687e60467753b2135";
+        symbols.sha256 =	"0df6fx9b19v6sxrfyggbisw72y66kiwqi05k8mldsgiw6q55gbkc";
         templates.rev =		"867eef383a0f61015cb69677d5c632d78a2ea01a";
         templates.sha256 =	"1qi20mrsfn4fxmr1fyphmil2i9p2nzmwk5rlfchc5aq2194nj3lq";
-        footprints.rev =	"dc4574eb65136d95a7775d09412d5159f8d7832c";
-        footprints.sha256 =	"1iz4wyiysdii378c3pjgkgwh1cssxbh5jkbhvj7rmi2vmgngl6nc";
-        packages3d.rev =	"e54b5b6368d03f396098448bcce37f2e432dac33";
-        packages3d.sha256 =	"0nzi7ijfb3rjm98kaa9va2mkh0nfzpq4vfhxkq8j18qhx24h5c8v";
+        footprints.rev =	"4da055a2d572ff87e7ecea97cf358ed8c1d46dfc";
+        footprints.sha256 =	"1xb84284dmcb7mbvzlrxb4v4km3ih7gq856h8cglf9jn8wzlnvrk";
+        packages3d.rev =	"0f43a0962437feb53bd2083e9f39efffb5a5dd90";
+        packages3d.sha256 =	"1nkk4325jh89vh52ykfnf9pz1k3jk5017gz6r2cia2v4b3jadi31";
       };
     };
   };
diff --git a/pkgs/applications/science/electronics/nvc/default.nix b/pkgs/applications/science/electronics/nvc/default.nix
index 5ec866ea9c490..cb7be33429780 100644
--- a/pkgs/applications/science/electronics/nvc/default.nix
+++ b/pkgs/applications/science/electronics/nvc/default.nix
@@ -16,28 +16,15 @@
 
 stdenv.mkDerivation rec {
   pname = "nvc";
-  version = "1.9.0";
+  version = "1.9.1";
 
   src = fetchFromGitHub {
     owner = "nickg";
     repo = pname;
     rev = "r${version}";
-    hash = "sha256-hsoEAFSXI2bvzZV33jdg1849fipPQlUu3MZVvht54fI=";
+    hash = "sha256-UeA+6RKZMttLThyAf80ONximXRJNw5mUNM+cyCDTcGM=";
   };
 
-  patches = [
-    # TODO: remove me on next release
-    (fetchpatch {
-      url = "https://github.com/nickg/nvc/commit/c857e16c33851f8a5386b97bc0dada2836b5db83.patch";
-      hash = "sha256-rvZHI1iQXT9zLpCugg5mGmMZBRbTe9PSHtDG7FVZ67Q=";
-    })
-  ];
-
-  # TODO: recheck me on next release
-  postPatch = lib.optionalString stdenv.isLinux ''
-    sed -i "/vhpi4/d" test/regress/testlist.txt
-  '';
-
   nativeBuildInputs = [
     autoreconfHook
     check
diff --git a/pkgs/applications/science/logic/sad/default.nix b/pkgs/applications/science/logic/sad/default.nix
deleted file mode 100644
index a509d70ed4624..0000000000000
--- a/pkgs/applications/science/logic/sad/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, stdenv, fetchurl, haskell, spass }:
-
-stdenv.mkDerivation rec {
-  pname = "system-for-automated-deduction";
-  version = "2.3.25";
-  src = fetchurl {
-    url = "http://nevidal.org/download/sad-${version}.tar.gz";
-    sha256 = "10jd93xgarik7xwys5lq7fx4vqp7c0yg1gfin9cqfch1k1v8ap4b";
-  };
-  buildInputs = [ haskell.compiler.ghc844 spass ];
-  patches = [
-    ./patch.patch
-    # Since the LTS 12.0 update, <> is an operator in Prelude, colliding with
-    # the <> operator with a different meaning defined by this package
-    ./monoid.patch
-  ];
-  postPatch = ''
-    substituteInPlace Alice/Main.hs --replace init.opt $out/init.opt
-  '';
-  installPhase = ''
-    mkdir -p $out/{bin,provers}
-    install alice $out/bin
-    install provers/moses $out/provers
-    substituteAll provers/provers.dat $out/provers/provers.dat
-    substituteAll init.opt $out/init.opt
-    cp -r examples $out
-  '';
-  inherit spass;
-  meta = {
-    description = "A program for automated proving of mathematical texts";
-    longDescription = ''
-      The system for automated deduction is intended for automated processing of formal mathematical texts
-      written in a special language called ForTheL (FORmal THEory Language) or in a traditional first-order language
-    '';
-    license = lib.licenses.gpl3Plus;
-    maintainers = [ lib.maintainers.schmitthenner ];
-    homepage = "http://nevidal.org/sad.en.html";
-    platforms = lib.platforms.linux;
-    broken = true; # ghc-8.4.4 is gone from Nixpkgs
-  };
-}
diff --git a/pkgs/applications/science/logic/sad/monoid.patch b/pkgs/applications/science/logic/sad/monoid.patch
deleted file mode 100644
index da9c21bcae918..0000000000000
--- a/pkgs/applications/science/logic/sad/monoid.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff --git a/Alice/Core/Check.hs b/Alice/Core/Check.hs
-index 0700fa0388f..69815864710 100644
---- a/Alice/Core/Check.hs
-+++ b/Alice/Core/Check.hs
-@@ -18,8 +18,12 @@
-  -  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-  -}
- 
-+{-# LANGUAGE NoImplicitPrelude #-}
-+
- module Alice.Core.Check (fillDef) where
- 
-+import Prelude hiding ((<>))
-+
- import Control.Monad
- import Data.Maybe
- 
-diff --git a/Alice/Core/Reason.hs b/Alice/Core/Reason.hs
-index c361bcf220d..4e493d8c91b 100644
---- a/Alice/Core/Reason.hs
-+++ b/Alice/Core/Reason.hs
-@@ -17,9 +17,12 @@
-  -  You should have received a copy of the GNU General Public License
-  -  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-  -}
-+{-# LANGUAGE NoImplicitPrelude #-}
- 
- module Alice.Core.Reason where
- 
-+import Prelude hiding ((<>))
-+
- import Control.Monad
- 
- import Alice.Core.Base
-diff --git a/Alice/Core/Verify.hs b/Alice/Core/Verify.hs
-index 4f8550bdf11..0f59d135b16 100644
---- a/Alice/Core/Verify.hs
-+++ b/Alice/Core/Verify.hs
-@@ -18,8 +18,12 @@
-  -  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-  -}
- 
-+{-# LANGUAGE NoImplicitPrelude #-}
-+
- module Alice.Core.Verify (verify) where
- 
-+import Prelude hiding ((<>))
-+
- import Control.Monad
- import Data.IORef
- import Data.Maybe
diff --git a/pkgs/applications/science/logic/sad/patch.patch b/pkgs/applications/science/logic/sad/patch.patch
deleted file mode 100644
index a5b1d61770837..0000000000000
--- a/pkgs/applications/science/logic/sad/patch.patch
+++ /dev/null
@@ -1,200 +0,0 @@
-diff -aur serious/sad-2.3-25/Alice/Core/Base.hs sad-2.3-25/Alice/Core/Base.hs
---- serious/sad-2.3-25/Alice/Core/Base.hs	2008-03-29 18:24:12.000000000 +0000
-+++ sad-2.3-25/Alice/Core/Base.hs	2015-11-27 06:38:28.740840823 +0000
-@@ -21,6 +21,7 @@
- module Alice.Core.Base where
- 
- import Control.Monad
-+import Control.Applicative
- import Data.IORef
- import Data.List
- import Data.Time
-@@ -61,10 +62,21 @@
- type CRMC a b = IORef RState -> IO a -> (b -> IO a) -> IO a
- newtype CRM b = CRM { runCRM :: forall a . CRMC a b }
- 
-+instance Functor CRM where
-+  fmap = liftM
-+  
-+instance Applicative CRM where
-+  pure = return
-+  (<*>) = ap
-+
- instance Monad CRM where
-   return r  = CRM $ \ _ _ k -> k r
-   m >>= n   = CRM $ \ s z k -> runCRM m s z (\ r -> runCRM (n r) s z k)
- 
-+instance Alternative CRM where
-+  (<|>) = mplus
-+  empty = mzero
-+  
- instance MonadPlus CRM where
-   mzero     = CRM $ \ _ z _ -> z
-   mplus m n = CRM $ \ s z k -> runCRM m s (runCRM n s z k) k
-diff -aur serious/sad-2.3-25/Alice/Core/Thesis.hs sad-2.3-25/Alice/Core/Thesis.hs
---- serious/sad-2.3-25/Alice/Core/Thesis.hs	2008-03-05 13:10:50.000000000 +0000
-+++ sad-2.3-25/Alice/Core/Thesis.hs	2015-11-27 06:35:08.311015166 +0000
-@@ -21,6 +21,7 @@
- module Alice.Core.Thesis (thesis) where
- 
- import Control.Monad
-+import Control.Applicative
- import Data.List
- import Data.Maybe
- 
-@@ -126,11 +127,22 @@
- 
- newtype TM res = TM { runTM :: [String] -> [([String], res)] }
- 
-+instance Functor TM where
-+  fmap = liftM
-+
-+instance Applicative TM where
-+  pure = return
-+  (<*>) = ap
-+
- instance Monad TM where
-   return r  = TM $ \ s -> [(s, r)]
-   m >>= k   = TM $ \ s -> concatMap apply (runTM m s)
-     where apply (s, r) = runTM (k r) s
- 
-+instance Alternative TM where
-+  (<|>) = mplus
-+  empty = mzero
-+    
- instance MonadPlus TM where
-   mzero     = TM $ \ _ -> []
-   mplus m k = TM $ \ s -> runTM m s ++ runTM k s
-diff -aur serious/sad-2.3-25/Alice/Export/Base.hs sad-2.3-25/Alice/Export/Base.hs
---- serious/sad-2.3-25/Alice/Export/Base.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/Export/Base.hs	2015-11-27 06:32:47.782738005 +0000
-@@ -39,7 +39,7 @@
- -- Database reader
- 
- readPrDB :: String -> IO [Prover]
--readPrDB file = do  inp <- catch (readFile file) $ die . ioeGetErrorString
-+readPrDB file = do  inp <- catchIOError (readFile file) $ die . ioeGetErrorString
- 
-                     let dws = dropWhile isSpace
-                         cln = reverse . dws . reverse . dws
-diff -aur serious/sad-2.3-25/Alice/Export/Prover.hs sad-2.3-25/Alice/Export/Prover.hs
---- serious/sad-2.3-25/Alice/Export/Prover.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/Export/Prover.hs	2015-11-27 06:36:47.632919161 +0000
-@@ -60,7 +60,7 @@
-       when (askIB IBPdmp False ins) $ putStrLn tsk
- 
-       seq (length tsk) $ return $
--        do  (wh,rh,eh,ph) <- catch run
-+        do  (wh,rh,eh,ph) <- catchIOError run
-                 $ \ e -> die $ "run error: " ++ ioeGetErrorString e
- 
-             hPutStrLn wh tsk ; hClose wh
-diff -aur serious/sad-2.3-25/Alice/ForTheL/Base.hs sad-2.3-25/Alice/ForTheL/Base.hs
---- serious/sad-2.3-25/Alice/ForTheL/Base.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/ForTheL/Base.hs	2015-11-27 06:31:51.921230428 +0000
-@@ -226,7 +226,7 @@
- varlist = do  vs <- chainEx (char ',') var
-               nodups vs ; return vs
- 
--nodups vs = unless (null $ dups vs) $
-+nodups vs = unless ((null :: [a] -> Bool) $ dups vs) $
-               fail $ "duplicate names: " ++ show vs
- 
- hidden  = askPS psOffs >>= \ n -> return ('h':show n)
-diff -aur serious/sad-2.3-25/Alice/Import/Reader.hs sad-2.3-25/Alice/Import/Reader.hs
---- serious/sad-2.3-25/Alice/Import/Reader.hs	2008-03-09 09:36:39.000000000 +0000
-+++ sad-2.3-25/Alice/Import/Reader.hs	2015-11-27 06:36:41.818866167 +0000
-@@ -24,7 +24,7 @@
- import Control.Monad
- import System.IO
- import System.IO.Error
--import System.Exit
-+import System.Exit hiding (die)
- 
- import Alice.Data.Text
- import Alice.Data.Instr
-@@ -44,7 +44,7 @@
- readInit ""   = return []
- 
- readInit file =
--  do  input <- catch (readFile file) $ die file . ioeGetErrorString
-+  do  input <- catchIOError (readFile file) $ die file . ioeGetErrorString
-       let tkn = tokenize input ; ips = initPS ()
-           inp = ips { psRest = tkn, psFile = file, psLang = "Init" }
-       liftM fst $ fireLPM instf inp
-@@ -74,7 +74,7 @@
- reader lb fs (ps:ss) [TI (InStr ISfile file)] =
-   do  let gfl = if null file  then hGetContents stdin
-                               else readFile file
--      input <- catch gfl $ die file . ioeGetErrorString
-+      input <- catchIOError gfl $ die file . ioeGetErrorString
-       let tkn = tokenize input
-           ips = initPS $ (psProp ps) { tvr_expr = [] }
-           sps = ips { psRest = tkn, psFile = file, psOffs = psOffs ps }
-diff -aur serious/sad-2.3-25/Alice/Parser/Base.hs sad-2.3-25/Alice/Parser/Base.hs
---- serious/sad-2.3-25/Alice/Parser/Base.hs	2008-03-09 09:36:40.000000000 +0000
-+++ sad-2.3-25/Alice/Parser/Base.hs	2015-11-27 06:14:28.616734527 +0000
-@@ -20,6 +20,7 @@
- 
- module Alice.Parser.Base where
- 
-+import Control.Applicative
- import Control.Monad
- import Data.List
- 
-@@ -45,11 +46,22 @@
- type CPMC a b c = (c -> CPMS a b) -> (String -> CPMS a b) -> CPMS a b
- newtype CPM a c = CPM { runCPM :: forall b . CPMC a b c }
- 
-+instance Functor (CPM a) where
-+  fmap = liftM
-+
-+instance Applicative (CPM a) where
-+  pure = return
-+  (<*>) = ap
-+
- instance Monad (CPM a) where
-   return r  = CPM $ \ k _ -> k r
-   m >>= n   = CPM $ \ k l -> runCPM m (\ b -> runCPM (n b) k l) l
-   fail e    = CPM $ \ _ l -> l e
- 
-+instance Alternative (CPM a) where
-+    (<|>) = mplus
-+    empty = mzero
-+  
- instance MonadPlus (CPM a) where
-   mzero     = CPM $ \ _ _ _ z -> z
-   mplus m n = CPM $ \ k l s -> runCPM m k l s . runCPM n k l s
-diff -aur serious/sad-2.3-25/init.opt sad-2.3-25/init.opt
---- serious/sad-2.3-25/init.opt	2007-10-11 15:25:45.000000000 +0000
-+++ sad-2.3-25/init.opt	2015-11-27 07:23:41.372816854 +0000
-@@ -1,6 +1,6 @@
- # Alice init options
--[library examples]
--[provers provers/provers.dat]
-+[library @out@/examples]
-+[provers @out@/provers/provers.dat]
- [prover spass]
- [timelimit 3]
- [depthlimit 7]
-diff -aur serious/sad-2.3-25/provers/provers.dat sad-2.3-25/provers/provers.dat
---- serious/sad-2.3-25/provers/provers.dat	2008-08-26 21:20:25.000000000 +0000
-+++ sad-2.3-25/provers/provers.dat	2015-11-27 07:24:18.878169702 +0000
-@@ -3,7 +3,7 @@
- Pmoses
- LMoses
- Fmoses
--Cprovers/moses
-+C@out@/provers/moses
- Yproved in
- Nfound unprovable in
- Utimeout in
-@@ -12,7 +12,7 @@
- Pspass
- LSPASS
- Fdfg
--Cprovers/SPASS -CNFOptSkolem=0 -PProblem=0 -PGiven=0 -Stdin -TimeLimit=%d
-+C@spass@/bin/SPASS -CNFOptSkolem=0 -PProblem=0 -PGiven=0 -Stdin -TimeLimit=%d
- YSPASS beiseite: Proof found.
- NSPASS beiseite: Completion found.
- USPASS beiseite: Ran out of time.
diff --git a/pkgs/applications/science/logic/tlaplus/default.nix b/pkgs/applications/science/logic/tlaplus/default.nix
index 4572a06d63378..abbcd417693e4 100644
--- a/pkgs/applications/science/logic/tlaplus/default.nix
+++ b/pkgs/applications/science/logic/tlaplus/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tlaplus";
-  version = "1.7.2";
+  version = "1.7.3";
 
   src = fetchurl {
     url = "https://github.com/tlaplus/tlaplus/releases/download/v${version}/tla2tools.jar";
-    sha256 = "sha256-+hhUPkTtWXSoW9LGDA3BZiCuEXaA6o5pPSaRmZ7ZCyI=";
+    sha256 = "sha256-5P8V6oH05voSXAgwBDclSxdxdMalrfaNpElkar4IUZ0=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/science/logic/z3/default.nix b/pkgs/applications/science/logic/z3/default.nix
index f810a5a56739a..e2842d9d15a4f 100644
--- a/pkgs/applications/science/logic/z3/default.nix
+++ b/pkgs/applications/science/logic/z3/default.nix
@@ -92,8 +92,8 @@ in
     sha256 = "sha256-ItmtZHDhCeLAVtN7K80dqyAh20o7TM4xk2sTb9QgHvk=";
   };
   z3_4_8 = common {
-    version = "4.8.15";
-    sha256 = "0xkwqz0y5d1lfb6kfqy8wn8n2dqalzf4c8ghmjsajc1bpdl70yc5";
+    version = "4.8.17";
+    sha256 = "sha256-BSwjgOU9EgCcm18Zx0P9mnoPc9ZeYsJwEu0ffnACa+8=";
   };
   z3_4_8_5 = common {
     tag = "Z3";
diff --git a/pkgs/applications/science/machine-learning/streamlit/default.nix b/pkgs/applications/science/machine-learning/streamlit/default.nix
index ad22d57882ed6..3db5356b49643 100755
--- a/pkgs/applications/science/machine-learning/streamlit/default.nix
+++ b/pkgs/applications/science/machine-learning/streamlit/default.nix
@@ -26,12 +26,12 @@
 
 buildPythonApplication rec {
   pname = "streamlit";
-  version = "1.18.1";
+  version = "1.21.0";
   format = "wheel"; # source currently requires pipenv
 
   src = fetchPypi {
     inherit pname version format;
-    hash = "sha256-lO2QfM/G+4M55f8JCZBwk10SkMp4gXb68KncHm90k7g=";
+    hash = "sha256-BYYlmJUqkSbhZlLKpbyI7u6nsnc68lLi2szxyEzqrvQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/science/math/form/default.nix b/pkgs/applications/science/math/form/default.nix
index 73fe0cfb5dc36..c56ee432bdae0 100644
--- a/pkgs/applications/science/math/form/default.nix
+++ b/pkgs/applications/science/math/form/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchurl, gmp, zlib }:
 
 stdenv.mkDerivation {
-  version = "4.3.0";
+  version = "4.3.1";
   pname = "form";
 
   # This tarball is released by author, it is not downloaded from tag, so can't use fetchFromGitHub
   src = fetchurl {
-    url = "https://github.com/vermaseren/form/releases/download/v4.3.0/form-4.3.0.tar.gz";
-    sha256 = "sha256-sjTg0JX3PssJBM3DsNjYMjqfp/RncKUvsiJnxiSq+/Y=";
+    url = "https://github.com/vermaseren/form/releases/download/v4.3.1/form-4.3.1.tar.gz";
+    sha256 = "sha256-8fUS3DT+m71rGfLf7wX8uZEt+0PINop1t5bsRy7ou84=";
   };
 
   buildInputs = [ gmp zlib ];
diff --git a/pkgs/applications/science/math/glsurf/default.nix b/pkgs/applications/science/math/glsurf/default.nix
index ec3bb4c795b32..b4e8c6fb23db0 100644
--- a/pkgs/applications/science/math/glsurf/default.nix
+++ b/pkgs/applications/science/math/glsurf/default.nix
@@ -67,5 +67,6 @@ stdenv.mkDerivation rec {
     homepage = "https://raffalli.eu/~christophe/glsurf/";
     description = "A program to draw implicit surfaces and curves";
     license = lib.licenses.gpl2Plus;
+    platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/science/math/jags/default.nix b/pkgs/applications/science/math/jags/default.nix
index 1acc6a287ca50..0878070136943 100644
--- a/pkgs/applications/science/math/jags/default.nix
+++ b/pkgs/applications/science/math/jags/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "JAGS";
-  version = "4.3.1";
+  version = "4.3.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/mcmc-jags/JAGS-${version}.tar.gz";
-    sha256 = "sha256-+SWDVbXp6xO9M8X6cg8MvrrOp9CkpCtxsPsUUB7hQik=";
+    sha256 = "sha256-hx9VavQDp8LOag8C8Vz4WlcnY+CT0mZY66xVxKtHL8g=";
   };
 
   nativeBuildInputs = [ gfortran ];
diff --git a/pkgs/applications/science/math/nasc/default.nix b/pkgs/applications/science/math/nasc/default.nix
index f420c940f35c6..d25f0ad344966 100644
--- a/pkgs/applications/science/math/nasc/default.nix
+++ b/pkgs/applications/science/math/nasc/default.nix
@@ -60,6 +60,8 @@ stdenv.mkDerivation rec {
     substituteInPlace subprojects/libqalculate/libqalculate/Calculator-plot.cc \
       --replace 'commandline = "gnuplot"' 'commandline = "${gnuplot}/bin/gnuplot"' \
       --replace '"gnuplot - ' '"${gnuplot}/bin/gnuplot - '
+    substituteInPlace subprojects/libqalculate/libqalculate/meson.build \
+      --replace "link_with: 'libqalculate_lib_static'" "link_with: libqalculate_lib_static"
   '';
 
   passthru = {
@@ -80,6 +82,5 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     license = licenses.gpl3Plus;
     mainProgram = "com.github.parnold_x.nasc";
-    broken = true; # at 2022-09-23
   };
 }
diff --git a/pkgs/applications/science/math/qalculate-gtk/default.nix b/pkgs/applications/science/math/qalculate-gtk/default.nix
index 0c82e7ebf376b..573b42c39f622 100644
--- a/pkgs/applications/science/math/qalculate-gtk/default.nix
+++ b/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qalculate-gtk";
-  version = "4.6.0";
+  version = "4.6.1";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-gtk";
     rev = "v${version}";
-    sha256 = "sha256-RdvoBs/QeBR032nMh79TLMGU6U7dsY6Ep+QKq4IKRTk=";
+    sha256 = "sha256-eBclDq9Uiu5rA74tlBkOiP3fRwAZn84F3LPA2cKkuw8=";
   };
 
   hardeningDisable = [ "format" ];
diff --git a/pkgs/applications/science/math/qalculate-qt/default.nix b/pkgs/applications/science/math/qalculate-qt/default.nix
index 67c7f6fb4a61e..21ab877b7a0ce 100644
--- a/pkgs/applications/science/math/qalculate-qt/default.nix
+++ b/pkgs/applications/science/math/qalculate-qt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qalculate-qt";
-  version = "4.6.0";
+  version = "4.6.1";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-qt";
     rev = "v${version}";
-    hash = "sha256-/TDzjlB8rW/TorndcLbxY9pc3q7vY3M6eLxBRfnBs9Y=";
+    hash = "sha256-9DT1U0iKj5C/Tc9MggEr/RwHhVr4GSOJQVhTiLFk9NY=";
   };
 
   nativeBuildInputs = [ qmake intltool pkg-config wrapQtAppsHook ];
diff --git a/pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch b/pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch
deleted file mode 100644
index b0f3634340f53..0000000000000
--- a/pkgs/applications/science/math/sage/patches/ipywidgets-on_submit-deprecationwarning.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/sage/interacts/library.py b/src/sage/interacts/library.py
-index 06d680109a..139b00bfd1 100644
---- a/src/sage/interacts/library.py
-+++ b/src/sage/interacts/library.py
-@@ -1434,6 +1434,8 @@ def riemann_sum(
-     creates the mathlet::
- 
-         sage: interacts.calculus.riemann_sum()
-+        ...
-+        DeprecationWarning: on_submit is deprecated. Instead, set the .continuous_update attribute to False and observe the value changing with: mywidget.observe(callback, 'value').
-         Manual interactive function <function riemann_sum at ...> with 9 widgets
-           title: HTMLText(value='<h2>Riemann integral with random sampling</h2>')
-           f: EvalText(value='x^2+1', description='$f(x)=$', layout=Layout(max_width='41em'))
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index 8913d636fae98..f2e02685416cd 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -141,12 +141,23 @@ stdenv.mkDerivation rec {
       sha256 = "sha256-YdPnMsjXBm9ZRm6a8hH8rSynkrABjLoIzqwp3F/rKAw=";
     })
 
+    # https://github.com/sagemath/sage/pull/35336, merged in 10.0.beta8
+    (fetchpatch {
+      name = "ipywidgets-8.0.5-upgrade.patch";
+      url = "https://github.com/sagemath/sage/commit/7ab3e3aa81d47a35d09161b965bba8ab16fd5c9e.diff";
+      sha256 = "sha256-WjdsPTui6uv92RerlV0mqltmLaxADvz+3aqSvxBFmfU=";
+    })
+
+    # https://github.com/sagemath/sage/pull/35499
+    (fetchpatch {
+      name = "ipywidgets-8.0.5-upgrade-part-deux.patch";
+      url = "https://github.com/sagemath/sage/pull/35499.diff";
+      sha256 = "sha256-uNCjLs9qrARTQNsq1+kTdvuV2A1M4xx5b1gWh5c55X0=";
+    })
+
     # rebased from https://github.com/sagemath/sage/pull/34994, merged in sage 10.0.beta2
     ./patches/numpy-1.24-upgrade.patch
 
-    # temporarily paper over https://github.com/jupyter-widgets/ipywidgets/issues/3669
-    ./patches/ipywidgets-on_submit-deprecationwarning.patch
-
     # Sage uses mixed integer programs (MIPs) to find edge disjoint
     # spanning trees. For some reason, aarch64 glpk takes much longer
     # than x86_64 glpk to solve such MIPs. Since the MIP formulation
diff --git a/pkgs/applications/science/misc/foldingathome/client.nix b/pkgs/applications/science/misc/foldingathome/client.nix
index 47a86fa2aeaf1..c927df9a54916 100644
--- a/pkgs/applications/science/misc/foldingathome/client.nix
+++ b/pkgs/applications/science/misc/foldingathome/client.nix
@@ -1,6 +1,6 @@
 { lib, stdenv
 , autoPatchelfHook
-, buildFHSUserEnv
+, buildFHSEnv
 , dpkg
 , fetchurl
 , gcc-unwrapped
@@ -35,7 +35,7 @@ let
     installPhase = "cp -ar usr $out";
   };
 in
-buildFHSUserEnv {
+buildFHSEnv {
   name = fahclient.name;
 
   targetPkgs = pkgs': [
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix
index 037b8dfa09c75..2ebfd4a1a87a7 100644
--- a/pkgs/applications/science/misc/root/default.nix
+++ b/pkgs/applications/science/misc/root/default.nix
@@ -191,7 +191,7 @@ stdenv.mkDerivation rec {
     "-Dpythia6=OFF"
     "-Dpythia8=OFF"
     "-Drfio=OFF"
-    "-Droot7=OFF"
+    "-Droot7=ON"
     "-Dsqlite=OFF"
     "-Dssl=ON"
     "-Dtmva=ON"
diff --git a/pkgs/applications/science/misc/sasview/default.nix b/pkgs/applications/science/misc/sasview/default.nix
index ca94be96d64e3..ddc0cdfa4e5b8 100644
--- a/pkgs/applications/science/misc/sasview/default.nix
+++ b/pkgs/applications/science/misc/sasview/default.nix
@@ -25,6 +25,12 @@ python3.pkgs.buildPythonApplication rec {
     })
   ];
 
+  # AttributeError: module 'numpy' has no attribute 'float'.
+  postPatch = ''
+    substituteInPlace src/sas/sascalc/pr/p_invertor.py \
+      --replace "dtype=np.float)" "dtype=float)"
+  '';
+
   nativeBuildInputs = [
     python3.pkgs.pyqt5
     wrapQtAppsHook