diff options
Diffstat (limited to 'pkgs/applications/science')
73 files changed, 851 insertions, 548 deletions
diff --git a/pkgs/applications/science/astronomy/kstars/default.nix b/pkgs/applications/science/astronomy/kstars/default.nix index ab141666c0aa0..863c5b70e0211 100644 --- a/pkgs/applications/science/astronomy/kstars/default.nix +++ b/pkgs/applications/science/astronomy/kstars/default.nix @@ -1,36 +1,84 @@ -{ - lib, mkDerivation, extra-cmake-modules, fetchurl, - - kconfig, kdoctools, kguiaddons, ki18n, kinit, kiconthemes, kio, - knewstuff, kplotting, kwidgetsaddons, kxmlgui, knotifyconfig, - - - qtx11extras, qtwebsockets, qtkeychain, libsecret, - - eigen, zlib, - - cfitsio, indi-full, xplanet, libnova, libraw, gsl, wcslib, stellarsolver +{ lib +, stdenv +, mkDerivation +, extra-cmake-modules +, fetchurl +, kconfig +, kdoctools +, kguiaddons +, ki18n +, kinit +, kiconthemes +, kio +, knewstuff +, kplotting +, kwidgetsaddons +, kxmlgui +, knotifyconfig +, qtx11extras +, qtwebsockets +, qtkeychain +, qtdatavis3d +, wrapQtAppsHook +, breeze-icons +, libsecret +, eigen +, zlib +, cfitsio +, indi-full +, xplanet +, libnova +, libraw +, gsl +, wcslib +, stellarsolver +, libxisf }: -mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "kstars"; - version = "3.6.7"; + version = "3.7.0"; src = fetchurl { - url = "mirror://kde/stable/kstars/kstars-${version}.tar.xz"; - sha256 = "sha256-uEgzvhlHHpXyvi3Djfwg3GmYeZq+r48m7OJFIDARpe4="; + url = "mirror://kde/stable/kstars/kstars-${finalAttrs.version}.tar.xz"; + hash = "sha256-yvN1k0LqUi5Odb34Nk8UP5qoIbFUcvUiyESpoMKmuqg="; }; - nativeBuildInputs = [ extra-cmake-modules kdoctools ]; + nativeBuildInputs = [ + extra-cmake-modules + kdoctools + wrapQtAppsHook + ]; buildInputs = [ - kconfig kdoctools kguiaddons ki18n kinit kiconthemes kio - knewstuff kplotting kwidgetsaddons kxmlgui knotifyconfig - - qtx11extras qtwebsockets qtkeychain libsecret - - eigen zlib - - cfitsio indi-full xplanet libnova libraw gsl wcslib stellarsolver + kconfig + kdoctools + kguiaddons + ki18n + kinit + kiconthemes + kio + knewstuff + kplotting + kwidgetsaddons + kxmlgui + knotifyconfig + qtx11extras + qtwebsockets + qtkeychain + qtdatavis3d + breeze-icons + libsecret + eigen + zlib + cfitsio + indi-full + xplanet + libnova + libraw + gsl + wcslib + stellarsolver + libxisf ]; cmakeFlags = [ @@ -51,4 +99,4 @@ mkDerivation rec { platforms = platforms.linux; maintainers = with maintainers; [ timput hjones2199 ]; }; -} +}) diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix index 59472c4b25ce8..35d6bd8aba925 100644 --- a/pkgs/applications/science/astronomy/stellarium/default.nix +++ b/pkgs/applications/science/astronomy/stellarium/default.nix @@ -24,13 +24,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "stellarium"; - version = "23.4"; + version = "24.1"; src = fetchFromGitHub { owner = "Stellarium"; repo = "stellarium"; rev = "v${finalAttrs.version}"; - hash = "sha256-rDqDs6sFaZQbqJcCRhY5w8sFM2mYHHvw0Ud2Niimg4Y="; + hash = "sha256-t3eFmiG9X2cmnjc/PQwZ2bw1SCHaNRA83wiT1cPbKJc="; }; patches = [ diff --git a/pkgs/applications/science/biology/astral/default.nix b/pkgs/applications/science/biology/astral/default.nix index ffe0326239cc0..34077949b97d1 100644 --- a/pkgs/applications/science/biology/astral/default.nix +++ b/pkgs/applications/science/biology/astral/default.nix @@ -2,49 +2,67 @@ , stdenvNoCC , fetchFromGitHub , jdk8 -, makeWrapper , jre8 +, strip-nondeterminism +, makeWrapper , zip }: + let jdk = jdk8; jre = jre8; in -stdenvNoCC.mkDerivation rec { +stdenvNoCC.mkDerivation (finalAttrs: { pname = "astral"; version = "5.7.1"; src = fetchFromGitHub { owner = "smirarab"; repo = "ASTRAL"; - rev = "v${version}"; - sha256 = "043w2z6gbrisqirdid022f4b8jps1pp5syi344krv2bis1gjq5sn"; + rev = "v${finalAttrs.version}"; + hash = "sha256-VhcsX9BxiZ0nISN6Xe4N+kq0iBMCtNhyxDrm9cwXfBA="; }; - nativeBuildInputs = [ jdk makeWrapper jre zip ]; + patches = [ + # we can't use stripJavaArchivesHook here, because the build process puts a .jar file into a zip file + # this patch calls strip-nondeterminism manually + ./make-deterministic.patch + ]; + + nativeBuildInputs = [ + jdk + zip + strip-nondeterminism + makeWrapper + ]; buildPhase = '' + runHook preBuild patchShebangs ./make.sh ./make.sh + runHook postBuild ''; doCheck = true; checkPhase = '' runHook preCheck - java -jar astral.${version}.jar -i main/test_data/song_primates.424.gene.tre + java -jar astral.${finalAttrs.version}.jar -i main/test_data/song_primates.424.gene.tre runHook postCheck ''; installPhase = '' - mkdir -p $out/share/lib - mkdir -p $out/bin - mv astral.${version}.jar $out/share/ - mv lib/*.jar $out/share/lib - mv Astral.${version}.zip $out/share/ - cp -a main/test_data $out/share/ + runHook preInstall + + install -Dm644 astral.${finalAttrs.version}.jar -t $out/share + install -Dm644 lib/*.jar -t $out/share/lib + install -Dm644 Astral.${finalAttrs.version}.zip -t $out/share + cp -a main/test_data $out/share + makeWrapper ${jre}/bin/java $out/bin/astral \ - --add-flags "-jar $out/share/astral.${version}.jar" + --add-flags "-jar $out/share/astral.${finalAttrs.version}.jar" + + runHook postInstall ''; meta = with lib; { @@ -53,9 +71,9 @@ stdenvNoCC.mkDerivation rec { mainProgram = "astral"; sourceProvenance = with sourceTypes; [ fromSource - binaryBytecode # source bundles dependencies as jars + binaryBytecode # source bundles dependencies as jars ]; license = licenses.asl20; - maintainers = with maintainers; [ bzizou ]; + maintainers = with maintainers; [ bzizou tomasajt ]; }; -} +}) diff --git a/pkgs/applications/science/biology/astral/make-deterministic.patch b/pkgs/applications/science/biology/astral/make-deterministic.patch new file mode 100644 index 0000000000000..940182e2f49f9 --- /dev/null +++ b/pkgs/applications/science/biology/astral/make-deterministic.patch @@ -0,0 +1,21 @@ +diff --git a/make.sh b/make.sh +index 3ff6529..937b1a2 100644 +--- a/make.sh ++++ b/make.sh +@@ -17,6 +17,8 @@ jar cvfm ../astral.$version.jar ../manifest.text phylonet/util/BitSet.* phylonet + + cd .. + ++strip-nondeterminism --type jar astral.$version.jar ++ + chmod +x astral.$version.jar + sed -e "s/__astral.jar__/astral.$version.jar/g" -e "s/__astral.zip__/Astral.$version.zip/g" README.template.md > README.md + sed -e "s/__astral.jar__/astral.$version.jar/g" -e "s/__astral.zip__/Astral.$version.zip/g" astral-tutorial-template.md > astral-tutorial.md +@@ -32,6 +34,7 @@ ln -s ../astral-tutorial.pdf . + cd .. + rm -f Astral.$version.zip + zip -r Astral.$version.zip Astral ++strip-nondeterminism --type zip Astral.$version.zip + + set +x + echo " diff --git a/pkgs/applications/science/biology/bcftools/default.nix b/pkgs/applications/science/biology/bcftools/default.nix index 19e5f99fe2f63..cafc952dec4c7 100644 --- a/pkgs/applications/science/biology/bcftools/default.nix +++ b/pkgs/applications/science/biology/bcftools/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "bcftools"; - version = "1.19"; + version = "1.20"; src = fetchurl { url = "https://github.com/samtools/bcftools/releases/download/${version}/${pname}-${version}.tar.bz2"; - sha256 = "sha256-eCtfG8aQQVGSIx6CITs0k7BH9F5jDcjvbxVNYSarPmg="; + sha256 = "sha256-MSuDKd5RMN06N2eMcSlR5h5XcVV8cSmnCjJ6MA/ahiA="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/science/biology/conglomerate/default.nix b/pkgs/applications/science/biology/conglomerate/default.nix index fe1c1f5511d1e..d9092b9eeb11b 100644 --- a/pkgs/applications/science/biology/conglomerate/default.nix +++ b/pkgs/applications/science/biology/conglomerate/default.nix @@ -32,6 +32,6 @@ stdenv.mkDerivation rec { description = "More command-line utilities for working with MINC files"; maintainers = with maintainers; [ bcdarwin ]; platforms = platforms.unix; - license = licenses.free; + license = licenses.hpndUc; }; } diff --git a/pkgs/applications/science/biology/iqtree/default.nix b/pkgs/applications/science/biology/iqtree/default.nix index 17b2ba9f9bdec..d8e90789f4d5f 100644 --- a/pkgs/applications/science/biology/iqtree/default.nix +++ b/pkgs/applications/science/biology/iqtree/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "iqtree"; - version = "2.2.2.7"; + version = "2.3.2"; src = fetchFromGitHub { owner = "iqtree"; repo = "iqtree2"; rev = "v${version}"; - hash = "sha256-XyjVo5TYMoB+ZOAGc4ivYqFGnEO1M7mhxXrG45TP44Y="; + hash = "sha256-hAJs48PhIyZSKSRZjQJKQwoJlt6DPRQwaDsuZ00VZII="; fetchSubmodules = true; }; diff --git a/pkgs/applications/science/biology/macs2/default.nix b/pkgs/applications/science/biology/macs2/default.nix index 73f12af6a6057..26ec138048f7e 100644 --- a/pkgs/applications/science/biology/macs2/default.nix +++ b/pkgs/applications/science/biology/macs2/default.nix @@ -21,7 +21,7 @@ python3.pkgs.buildPythonPackage rec { ]; nativeBuildInputs = with python3.pkgs; [ - cython + cython_0 numpy setuptools wheel diff --git a/pkgs/applications/science/biology/messer-slim/default.nix b/pkgs/applications/science/biology/messer-slim/default.nix index d4ce4071a274e..d463b4fe53665 100644 --- a/pkgs/applications/science/biology/messer-slim/default.nix +++ b/pkgs/applications/science/biology/messer-slim/default.nix @@ -1,14 +1,14 @@ { lib, stdenv, fetchFromGitHub, cmake, gcc, gcc-unwrapped }: stdenv.mkDerivation rec { - version = "4.1"; + version = "4.2.1"; pname = "messer-slim"; src = fetchFromGitHub { owner = "MesserLab"; repo = "SLiM"; rev = "v${version}"; - sha256 = "sha256-mb6xcu28QYAFm2906lRNY0zciQBKSGcz3q/cvOEh/VE="; + sha256 = "sha256-ba5I/bsDNAhDb1Kq0lWTC6YgpZ1PpeHPmB/vXx/JRK0="; }; nativeBuildInputs = [ cmake gcc gcc-unwrapped ]; diff --git a/pkgs/applications/science/biology/minia/default.nix b/pkgs/applications/science/biology/minia/default.nix index cc60fa4f7265f..3665639a2cd93 100644 --- a/pkgs/applications/science/biology/minia/default.nix +++ b/pkgs/applications/science/biology/minia/default.nix @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { description = "Short read genome assembler"; mainProgram = "minia"; homepage = "https://github.com/GATB/minia"; - license = licenses.agpl3; + license = licenses.agpl3Plus; maintainers = with maintainers; [ jbedo ]; platforms = [ "x86_64-linux" ]; }; diff --git a/pkgs/applications/science/biology/minimap2/default.nix b/pkgs/applications/science/biology/minimap2/default.nix index eeb31dee0538a..923d72f7fb387 100644 --- a/pkgs/applications/science/biology/minimap2/default.nix +++ b/pkgs/applications/science/biology/minimap2/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "minimap2"; - version = "2.27"; + version = "2.28"; src = fetchFromGitHub { repo = pname; owner = "lh3"; rev = "v${version}"; - sha256 = "sha256-F6IJrYD2dk+5bKKVIahLiNnD/Hd/CjNQQd9zz0Gkans="; + sha256 = "sha256-cBl2BKgPCP/xHZW6fTH51cY9/lV/1HVLsN7a1R1Blv4="; }; buildInputs = [ zlib ]; diff --git a/pkgs/applications/science/biology/nest/default.nix b/pkgs/applications/science/biology/nest/default.nix index 5f0ad540f696e..807af7ce488ac 100644 --- a/pkgs/applications/science/biology/nest/default.nix +++ b/pkgs/applications/science/biology/nest/default.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation rec { pname = "nest"; - version = "3.6"; + version = "3.7"; src = fetchFromGitHub { owner = "nest"; repo = "nest-simulator"; rev = "v${version}"; - hash = "sha256-sXtF4JmHYoLp0t3o4KF6R2E0qLnKrzSPMXOxVJAm+sU="; + hash = "sha256-EwhpsfRmBLJnPiH6hXQXgG9jSNoC2oqq5lZ6t038VpI="; }; postPatch = '' diff --git a/pkgs/applications/science/biology/seqkit/default.nix b/pkgs/applications/science/biology/seqkit/default.nix index 1c572ba563541..5c46e25f5d6de 100644 --- a/pkgs/applications/science/biology/seqkit/default.nix +++ b/pkgs/applications/science/biology/seqkit/default.nix @@ -5,13 +5,13 @@ buildGoModule rec { pname = "seqkit"; - version = "2.8.0"; + version = "2.8.1"; src = fetchFromGitHub { owner = "shenwei356"; repo = "seqkit"; rev = "v${version}"; - sha256 = "sha256-JsrmRUbSNCFJ58tIblKq+VRXCD1mBeCAcosDGiVb5Gs="; + sha256 = "sha256-LtPf99spy2ByTnSMJ5k1mWkh+Nct3Fg4Y9mXARxuXlA="; }; vendorHash = "sha256-0//kySYhNmfiwiys/Ku0/8RzKpnxO0+byD8pcIkvDY0="; diff --git a/pkgs/applications/science/chemistry/gwyddion/default.nix b/pkgs/applications/science/chemistry/gwyddion/default.nix index 7c1312f27f25b..a4b1cd943e1bb 100644 --- a/pkgs/applications/science/chemistry/gwyddion/default.nix +++ b/pkgs/applications/science/chemistry/gwyddion/default.nix @@ -1,5 +1,4 @@ { lib, stdenv, fetchurl, gtk2, pkg-config, fftw, file, - pythonSupport ? false, python2Packages, gnome2, openexrSupport ? true, openexr, libzipSupport ? true, libzip, @@ -15,10 +14,6 @@ openglSupport ? !stdenv.isDarwin, libGL }: -let - inherit (python2Packages) pygtk pygobject2 python; -in - stdenv.mkDerivation rec { pname = "gwyddion"; version = "2.65"; @@ -43,9 +38,6 @@ stdenv.mkDerivation rec { optional libuniqueSupport libunique ++ optional libzipSupport libzip; - propagatedBuildInputs = with lib; - optionals pythonSupport [ pygtk pygobject2 python gnome2.gtksourceview ]; - # This patch corrects problems with python support, but should apply cleanly # regardless of whether python support is enabled, and have no effects if # it is disabled. diff --git a/pkgs/applications/science/chemistry/octopus/default.nix b/pkgs/applications/science/chemistry/octopus/default.nix index 93fec7149604b..a3a385802aaaa 100644 --- a/pkgs/applications/science/chemistry/octopus/default.nix +++ b/pkgs/applications/science/chemistry/octopus/default.nix @@ -1,6 +1,9 @@ { lib , stdenv , fetchFromGitLab +, cmake +, pkg-config +, ninja , gfortran , which , perl @@ -14,15 +17,12 @@ , gsl , netcdf , arpack -, autoreconfHook +, spglib +, metis , scalapack , mpi , enableMpi ? true , python3 -, enableFma ? stdenv.hostPlatform.fmaSupport -, enableFma4 ? stdenv.hostPlatform.fma4Support -, enableAvx ? stdenv.hostPlatform.avx2Support -, enableAvx512 ? stdenv.hostPlatform.avx512Support }: assert (!blas.isILP64) && (!lapack.isILP64); @@ -30,21 +30,23 @@ assert (blas.isILP64 == arpack.isILP64); stdenv.mkDerivation rec { pname = "octopus"; - version = "13.0"; + version = "14.0"; src = fetchFromGitLab { owner = "octopus-code"; repo = "octopus"; rev = version; - sha256 = "sha256-CZ+Qmv6aBQ6w11mLvTP6QAJzaGs+vmmXuNGnSyAqVDU="; + sha256 = "sha256-wQ2I+10ZHLKamW3j6AUtq2KZVm6d29+JxYgwvBKz9DU="; }; nativeBuildInputs = [ which perl procps - autoreconfHook + cmake gfortran + pkg-config + ninja ]; buildInputs = [ @@ -57,34 +59,20 @@ stdenv.mkDerivation rec { netcdf arpack libvdwxc + spglib + metis (python3.withPackages (ps: [ ps.pyyaml ])) ] ++ lib.optional enableMpi scalapack; propagatedBuildInputs = lib.optional enableMpi mpi; propagatedUserEnvPkgs = lib.optional enableMpi mpi; - configureFlags = with lib; [ - "--with-yaml-prefix=${lib.getDev libyaml}" - "--with-blas=-lblas" - "--with-lapack=-llapack" - "--with-fftw-prefix=${lib.getDev fftw}" - "--with-gsl-prefix=${lib.getDev gsl}" - "--with-libxc-prefix=${lib.getDev libxc}" - "--with-libvdwxc" - "--enable-openmp" - ] - ++ optional enableFma "--enable-fma3" - ++ optional enableFma4 "--enable-fma4" - ++ optional enableAvx "--enable-avx" - ++ optional enableAvx512 "--enable-avx512" - ++ optionals enableMpi [ - "--enable-mpi" - "--with-scalapack=-lscalapack" - "CC=mpicc" - "FC=mpif90" + cmakeFlags = [ + (lib.cmakeBool "OCTOPUS_MPI" enableMpi) + (lib.cmakeBool "OCTOPUS_ScaLAPACK" enableMpi) + (lib.cmakeBool "OCTOPUS_OpenMP" true) ]; - nativeCheckInputs = lib.optional.enableMpi mpi; doCheck = false; checkTarget = "check-short"; diff --git a/pkgs/applications/science/electronics/dataexplorer/default.nix b/pkgs/applications/science/electronics/dataexplorer/default.nix index 8fd9dcc5eaa88..224d804ee1f69 100644 --- a/pkgs/applications/science/electronics/dataexplorer/default.nix +++ b/pkgs/applications/science/electronics/dataexplorer/default.nix @@ -1,26 +1,32 @@ { lib , stdenv , fetchurl -, jdk , ant +, jdk , makeWrapper +, strip-nondeterminism }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "dataexplorer"; - version = "3.8.3"; + version = "3.8.5"; src = fetchurl { - url = "mirror://savannah/dataexplorer/dataexplorer-${version}-src.tar.gz"; - sha256 = "sha256-vU9klb6Mweg8yxnClsIdelG4uW92if64SJ7UHumYYbs="; + url = "mirror://savannah/dataexplorer/dataexplorer-${finalAttrs.version}-src.tar.gz"; + hash = "sha256-b68xIZNbzHdPyZwLngcnjcoBtI6AeTdrblz/qx/HbGQ="; }; - nativeBuildInputs = [ ant makeWrapper ]; - - buildInputs = [ jdk ]; + nativeBuildInputs = [ + ant + jdk + makeWrapper + strip-nondeterminism + ]; buildPhase = '' + runHook preBuild ant -f build/build.xml dist + runHook postBuild ''; doCheck = false; @@ -30,6 +36,8 @@ stdenv.mkDerivation rec { #''; installPhase = '' + runHook preInstall + ant -Dprefix=$out/share/ -f build/build.xml install # The sources contain a wrapper script in $out/share/DataExplorer/DataExplorer @@ -49,6 +57,14 @@ stdenv.mkDerivation rec { $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 + + runHook postInstall + ''; + + # manually call strip-nondeterminism because using stripJavaArchivesHook takes + # too long to strip bundled jars + postFixup = '' + strip-nondeterminism --type jar $out/share/DataExplorer/{DataExplorer.jar,devices/*.jar} ''; meta = with lib; { @@ -63,4 +79,4 @@ stdenv.mkDerivation rec { binaryBytecode # contains thirdparty jar files, e.g. javax.json, org.glassfish.json ]; }; -} +}) diff --git a/pkgs/applications/science/electronics/kicad/base.nix b/pkgs/applications/science/electronics/kicad/base.nix index bff63f3b2d7ea..209d47875f8d0 100644 --- a/pkgs/applications/science/electronics/kicad/base.nix +++ b/pkgs/applications/science/electronics/kicad/base.nix @@ -21,6 +21,10 @@ , libpthreadstubs , libXdmcp , unixODBC +, libgit2 +, libsecret +, libgcrypt +, libgpg-error , util-linux , libselinux @@ -92,12 +96,11 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DKICAD_USE_EGL=ON" "-DOCC_INCLUDE_DIR=${opencascade-occt}/include/opencascade" + # https://gitlab.com/kicad/code/kicad/-/issues/17133 + "-DCMAKE_CTEST_ARGUMENTS='--exclude-regex;qa_spice'" ] - ++ optionals (stable) [ - # https://gitlab.com/kicad/code/kicad/-/issues/12491 - # should be resolved in the next major? release - "-DCMAKE_CTEST_ARGUMENTS='--exclude-regex;qa_eeschema'" - ] + ++ optional (stdenv.hostPlatform.system == "aarch64-linux") + "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;'qa_spice|qa_cli'" ++ optional (stable && !withNgspice) "-DKICAD_SPICE=OFF" ++ optionals (!withScripting) [ "-DKICAD_SCRIPTING_WXPYTHON=OFF" @@ -126,6 +129,10 @@ stdenv.mkDerivation rec { doxygen graphviz pkg-config + libgit2 + libsecret + libgcrypt + libgpg-error ] # wanted by configuration on linux, doesn't seem to affect performance # no effect on closure size @@ -180,13 +187,14 @@ stdenv.mkDerivation rec { doInstallCheck = !(debug); installCheckTarget = "test"; - pythonForTests = python.withPackages(ps: with ps; [ - numpy - pytest - cairosvg - pytest-image-diff - ]); - nativeInstallCheckInputs = optional (!stable) pythonForTests; + nativeInstallCheckInputs = [ + (python.withPackages(ps: with ps; [ + numpy + pytest + cairosvg + pytest-image-diff + ])) + ]; dontStrip = debug; @@ -196,7 +204,7 @@ stdenv.mkDerivation rec { Just the build products, the libraries are passed via an env var in the wrapper, default.nix ''; homepage = "https://www.kicad.org/"; - license = lib.licenses.agpl3; + license = lib.licenses.gpl3Plus; platforms = lib.platforms.all; }; } diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix index fa0c7ae7a75e2..99670eee8a46b 100644 --- a/pkgs/applications/science/electronics/kicad/default.nix +++ b/pkgs/applications/science/electronics/kicad/default.nix @@ -205,9 +205,9 @@ stdenv.mkDerivation rec { "--prefix GIO_EXTRA_MODULES : ${dconf}/lib/gio/modules" # required to open a bug report link in firefox-wayland "--set-default MOZ_DBUS_REMOTE 1" - "--set-default KICAD7_FOOTPRINT_DIR ${footprints}/share/kicad/footprints" - "--set-default KICAD7_SYMBOL_DIR ${symbols}/share/kicad/symbols" - "--set-default KICAD7_TEMPLATE_DIR ${template_dir}" + "--set-default KICAD8_FOOTPRINT_DIR ${footprints}/share/kicad/footprints" + "--set-default KICAD8_SYMBOL_DIR ${symbols}/share/kicad/symbols" + "--set-default KICAD8_TEMPLATE_DIR ${template_dir}" ] ++ optionals (addons != [ ]) ( let stockDataPath = symlinkJoin { @@ -218,11 +218,11 @@ stdenv.mkDerivation rec { ]; }; in - [ "--set-default NIX_KICAD7_STOCK_DATA_PATH ${stockDataPath}" ] + [ "--set-default NIX_KICAD8_STOCK_DATA_PATH ${stockDataPath}" ] ) ++ optionals (with3d) [ - "--set-default KICAD7_3DMODEL_DIR ${packages3d}/share/kicad/3dmodels" + "--set-default KICAD8_3DMODEL_DIR ${packages3d}/share/kicad/3dmodels" ] ++ optionals (withNgspice) [ "--prefix LD_LIBRARY_PATH : ${libngspice}/lib" ] diff --git a/pkgs/applications/science/electronics/kicad/runtime_stock_data_path.patch b/pkgs/applications/science/electronics/kicad/runtime_stock_data_path.patch index 16f7e493c6238..43e99a531cf5a 100644 --- a/pkgs/applications/science/electronics/kicad/runtime_stock_data_path.patch +++ b/pkgs/applications/science/electronics/kicad/runtime_stock_data_path.patch @@ -6,7 +6,7 @@ index a74cdd9..790cc58 100644 { wxString path; -+ if( wxGetEnv( wxT( "NIX_KICAD7_STOCK_DATA_PATH" ), &path ) ) { ++ if( wxGetEnv( wxT( "NIX_KICAD8_STOCK_DATA_PATH" ), &path ) ) { + return path; + } + diff --git a/pkgs/applications/science/electronics/kicad/versions.nix b/pkgs/applications/science/electronics/kicad/versions.nix index 11837638e1abb..36114fff73a35 100644 --- a/pkgs/applications/science/electronics/kicad/versions.nix +++ b/pkgs/applications/science/electronics/kicad/versions.nix @@ -3,67 +3,67 @@ { "kicad" = { kicadVersion = { - version = "7.0.10"; + version = "8.0.1"; src = { - rev = "7daac78752749fc919e932be6156914aa83c926f"; - sha256 = "0z459yi0s02mwdgbr3xxw43gn9yjhvfkjnsxmns5mksgzsr5nmhh"; + rev = "20421d65e5a7ede894345d337ab47b469f5ba154"; + sha256 = "096kvmm96ccxir1rspgzzjkp6y2j80l3w2vphg9iv3drxmjp7qjv"; }; }; libVersion = { - version = "7.0.10"; + version = "8.0.1"; libSources = { - symbols.rev = "eedf6c9ddac2816023e817d4dc91032f9d7390b9"; - symbols.sha256 = "0nlgmxf9z1vf4g350dfkxql1dawgmw275wqxkgszsfxmhdfpmi9v"; - templates.rev = "9ce98cc45f3778e05c404edebf0f98de5c247ffe"; - templates.sha256 = "0mykfwwik7472i4r0isc5szj3dnmvd0538p0vlmzh4rcgj3pj3vm"; - footprints.rev = "7061fc9847ecc1b838e60dc6826db534028494f6"; - footprints.sha256 = "1az6fzh1lma71mj12bc4bblnmzjayrxhkb8w9rjvlhvvgv33cdmy"; - packages3d.rev = "d7345b34daaa23acf0d4506ed937fb424b5b18cd"; - packages3d.sha256 = "0xzyi4mgyifwc6dppdzh6jq294mkj0a71cwkqw2ymz1kfbksw626"; + symbols.rev = "d6aff3948edfca2bacf36900ff080f6b3f65fe4c"; + symbols.sha256 = "00xnvikmqd1zkg9p1f89kvryvkybl5f20baij6babqyc29nbzkwy"; + templates.rev = "0a6c4f798a68a5c639d54b4d3093460ab9267816"; + templates.sha256 = "0m9bggz3cm27kqpjjwxy19mqzk0c69bywcjkqcni7kafr21c6k4z"; + footprints.rev = "226b4f3d5c10a4126d88b895188bdab629fe60b0"; + footprints.sha256 = "1bb3mb2a7vkridgmqqm9ib3hv2m4zx1i14mglb11sribypy0ma5p"; + packages3d.rev = "49c1cd4017499b8a7f6dedbe7ede834d1713eb28"; + packages3d.sha256 = "0b5jwr5bbd0kzb75nj3028knjrv0872dk54sbsnxaz669q8zaxap"; }; }; }; "kicad-testing" = { kicadVersion = { - version = "7.0-2024-01-27"; + version = "8.0-2024-02-23"; src = { - rev = "13fcb571f7e5bf4bf142d151651fc577aca32053"; - sha256 = "0wvk3wx5lm2jvyip6b96ja464hdzp9klb7b7ng5i3mdldabh0jba"; + rev = "14d71c8ca6b48d2eb956bb069acf05a37b1b2652"; + sha256 = "0xqd0xbpnvsvba75526nwgzr8l2cfxy99sjmg13sjxfx7rq16kqi"; }; }; libVersion = { - version = "7.0-2024-01-27"; + version = "8.0-2024-02-23"; libSources = { - symbols.rev = "eedf6c9ddac2816023e817d4dc91032f9d7390b9"; - symbols.sha256 = "0nlgmxf9z1vf4g350dfkxql1dawgmw275wqxkgszsfxmhdfpmi9v"; - templates.rev = "9ce98cc45f3778e05c404edebf0f98de5c247ffe"; - templates.sha256 = "0mykfwwik7472i4r0isc5szj3dnmvd0538p0vlmzh4rcgj3pj3vm"; - footprints.rev = "7061fc9847ecc1b838e60dc6826db534028494f6"; - footprints.sha256 = "1az6fzh1lma71mj12bc4bblnmzjayrxhkb8w9rjvlhvvgv33cdmy"; - packages3d.rev = "d7345b34daaa23acf0d4506ed937fb424b5b18cd"; - packages3d.sha256 = "0xzyi4mgyifwc6dppdzh6jq294mkj0a71cwkqw2ymz1kfbksw626"; + symbols.rev = "e228d4e8b295364e90e36c57f4023d8285ba88cd"; + symbols.sha256 = "049h2a7yn6ks8sybppixa872dbvyd0rwf9r6nixvdg6d13fl6rwf"; + templates.rev = "2e00c233b67e35323f90d04c190bf70237a252f2"; + templates.sha256 = "0m9bggz3cm27kqpjjwxy19mqzk0c69bywcjkqcni7kafr21c6k4z"; + footprints.rev = "6e5329a6d4aaa81290e23af3eba88f505c2f61b0"; + footprints.sha256 = "0ypjlbmzmcl3pha3q2361va70c988b1drxy8320gm66jkzfc21a1"; + packages3d.rev = "d1e521228d9f5888836b1a6a35fb05fb925456fa"; + packages3d.sha256 = "0lcy1av7ixg1f7arflk50jllpc1749sfvf3h62hkxsz97wkr97xj"; }; }; }; "kicad-unstable" = { kicadVersion = { - version = "2023-08-15"; + version = "2024-02-23"; src = { - rev = "e0d4cf2d5b023a7e5b70d854452376aa3510acd8"; - sha256 = "0666j4q3vz24smcjw9m4ib3ca2dqiqgx2amhv7ys4rzqb6v2pvn2"; + rev = "b7b64d959f37f00bb0d14b007c3b3908196e1024"; + sha256 = "1gl7mjqpmqq4m55z6crwb77983g00gi2161ichsc7hsfhs4c8grh"; }; }; libVersion = { - version = "2023-08-15"; + version = "2024-02-23"; libSources = { - symbols.rev = "06d20a4b9f7e5375329194d141b096dcdcb7518a"; - symbols.sha256 = "1wr754m4ykidds3i14gqhvyrj3mbkchp2hkfnr0rjsdaqf4zmqdf"; - templates.rev = "867eef383a0f61015cb69677d5c632d78a2ea01a"; - templates.sha256 = "1qi20mrsfn4fxmr1fyphmil2i9p2nzmwk5rlfchc5aq2194nj3lq"; - footprints.rev = "5d2ac73ae72bfe8b8ee9eeb081a7851b2ca84c24"; - footprints.sha256 = "1qg016ysf0ddm3bd5bkjawlrc0z4r3zhmdjkqkwaaaydnpwp23qz"; - packages3d.rev = "f1dae9f95e59216f3b974f585e5b420db853da9e"; - packages3d.sha256 = "0ciri6lhnh0w9i00z167snj5acnjndi1rgmyls08p45zj4rma8y2"; + symbols.rev = "8b0c343d8694fe0a968e5c4af69fd161bacf7da1"; + symbols.sha256 = "049h2a7yn6ks8sybppixa872dbvyd0rwf9r6nixvdg6d13fl6rwf"; + templates.rev = "0a6c4f798a68a5c639d54b4d3093460ab9267816"; + templates.sha256 = "0m9bggz3cm27kqpjjwxy19mqzk0c69bywcjkqcni7kafr21c6k4z"; + footprints.rev = "ded6b053460faae5783c538a38e91e2b4bddcf2e"; + footprints.sha256 = "035bf37n4vrihaj4zfdncisdx9fly1vya7lhkxhlsbv5blpi4a5y"; + packages3d.rev = "984667325076d4e50dab14e755aeacf97f42194c"; + packages3d.sha256 = "0lkaxv02h4sxrnm8zr17wl9d07mazlisad78r35gry741i362cdg"; }; }; }; diff --git a/pkgs/applications/science/electronics/librepcb/default.nix b/pkgs/applications/science/electronics/librepcb/default.nix index dfd679d4d5313..67bc014646e09 100644 --- a/pkgs/applications/science/electronics/librepcb/default.nix +++ b/pkgs/applications/science/electronics/librepcb/default.nix @@ -1,22 +1,21 @@ { stdenv, lib, fetchFromGitHub -, qtbase, qttools, qtquickcontrols2, opencascade-occt, libGLU, libSM, freeimage, cmake, wrapQtAppsHook +, qtbase, qttools, qtquickcontrols2, opencascade-occt, libGLU, cmake, wrapQtAppsHook }: stdenv.mkDerivation rec { pname = "librepcb"; - version = "1.0.0"; + version = "1.1.0"; src = fetchFromGitHub { owner = pname; repo = pname; rev = version; - sha256 = "sha256-2o2Gue/RnDWxe8jk/Ehx9CM+B3ac5rEQn0H7yodUEZ8="; + sha256 = "sha256-Vyp7asVqvKFkkEb67LXapMkT1AQSburN3+B2dXIPcEU="; fetchSubmodules = true; }; nativeBuildInputs = [ cmake qttools wrapQtAppsHook qtquickcontrols2 opencascade-occt libGLU ]; buildInputs = [ qtbase ]; - propagatedBuildInputs = [ libSM freeimage ]; meta = with lib; { description = "A free EDA software to develop printed circuit boards"; diff --git a/pkgs/applications/science/electronics/magic-vlsi/default.nix b/pkgs/applications/science/electronics/magic-vlsi/default.nix index 50be90716e094..5fc4b0036f9fb 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.464"; + version = "8.3.465"; src = fetchurl { url = "http://opencircuitdesign.com/magic/archive/magic-${version}.tgz"; - sha256 = "sha256-ICXFskoB/mqKPgjWeIoJ81H2eg4dPSj0bHY7S5/A858="; + sha256 = "sha256-cb9A8rpjD3x3fJo+xexlyzn+/3M5iUJmSoBraom9zd8="; }; nativeBuildInputs = [ python3 ]; diff --git a/pkgs/applications/science/electronics/nvc/default.nix b/pkgs/applications/science/electronics/nvc/default.nix index 48c9b17816e99..9bab9991baf82 100644 --- a/pkgs/applications/science/electronics/nvc/default.nix +++ b/pkgs/applications/science/electronics/nvc/default.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "nvc"; - version = "1.11.3"; + version = "1.12.0"; src = fetchFromGitHub { owner = "nickg"; repo = "nvc"; rev = "r${version}"; - hash = "sha256-Z4YxXPf8uKlASSK9v6fbtHtkUibc9EeA4i+3kD/vBmY="; + hash = "sha256-7g4Ki5lhmX/13XCv0on1PgvEthCTfe9wh8EFjMcP1+c="; }; nativeBuildInputs = [ @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { llvm zlib zstd - ] ++ lib.optionals stdenv.isLinux [ + ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [ elfutils ]; diff --git a/pkgs/applications/science/electronics/picoscope/default.nix b/pkgs/applications/science/electronics/picoscope/default.nix index c7242117b68ca..3aa5cb22aa52c 100644 --- a/pkgs/applications/science/electronics/picoscope/default.nix +++ b/pkgs/applications/science/electronics/picoscope/default.nix @@ -49,7 +49,7 @@ let # If we don't have a platform available, put a dummy version here, so at # least evaluation succeeds. sources = - (lib.importJSON ./sources.json).${stdenv.system} or { picoscope.version = "unknown"; }; + (lib.importJSON ./sources.json).${stdenv.system} or (throw "unsupported system ${stdenv.system}"); scopePkg = name: { url, version, sha256 }: diff --git a/pkgs/applications/science/electronics/simulide/default.nix b/pkgs/applications/science/electronics/simulide/default.nix index fbd76a0e0ffc6..613ec21dbd961 100644 --- a/pkgs/applications/science/electronics/simulide/default.nix +++ b/pkgs/applications/science/electronics/simulide/default.nix @@ -121,9 +121,9 @@ in simulide_1_1_0 = generic { version = "1.1.0"; - release = "RC1"; + release = "SR0"; branch = "1.1.0"; - rev = "1912"; - sha256 = "sha256-bgRAqt7h2LtU2Ze6Jiz8APhyPcV15v4ofxIilIeZV9E="; + rev = "1917"; + sha256 = "sha256-qNBaGWl89Le9uC1VFK+xYhrLzIvOIWjkQbutnrAmZ2M="; }; } diff --git a/pkgs/applications/science/engineering/strictdoc/default.nix b/pkgs/applications/science/engineering/strictdoc/default.nix deleted file mode 100644 index 0caac7a4fe932..0000000000000 --- a/pkgs/applications/science/engineering/strictdoc/default.nix +++ /dev/null @@ -1,76 +0,0 @@ -{ lib -, fetchFromGitHub -, python3 -}: - -python3.pkgs.buildPythonApplication rec { - pname = "strictdoc"; - version = "0.0.40"; - pyproject = true; - - src = fetchFromGitHub { - owner = "strictdoc-project"; - repo = "strictdoc"; - rev = "refs/tags/${version}"; - hash = "sha256-kZ8qVhroSPSGAcgUFZb1vRI6JoFyjeg/0qYosbRnwyc="; - }; - - pythonRelaxDeps = true; - - nativeBuildInputs = with python3.pkgs; [ - hatchling - pythonRelaxDepsHook - ]; - - propagatedBuildInputs = with python3.pkgs; [ - beautifulsoup4 - datauri - docutils - fastapi - html5lib - jinja2 - lxml - markupsafe - pybtex - pygments - python-multipart - reqif - selenium - setuptools - spdx-tools - textx - toml - uvicorn - webdriver-manager - websockets - xlrd - xlsxwriter - ] ++ uvicorn.optional-dependencies.standard; - - nativeCheckInputs = with python3.pkgs; [ - httpx - pytestCheckHook - ]; - - pythonImportsCheck = [ - "strictdoc" - ]; - - disabledTests = [ - # fixture 'fs' not found - "test_001_load_from_files" - ]; - - disabledTestPaths = [ - "tests/end2end/" - ]; - - meta = with lib; { - description = "Software requirements specification tool"; - mainProgram = "strictdoc"; - homepage = "https://github.com/strictdoc-project/strictdoc"; - changelog = "https://github.com/strictdoc-project/strictdoc/releases/tag/${version}"; - license = licenses.asl20; - maintainers = with maintainers; [ yuu ]; - }; -} diff --git a/pkgs/applications/science/logic/alt-ergo/default.nix b/pkgs/applications/science/logic/alt-ergo/default.nix index d84aa5b6918ac..9d151b947b406 100644 --- a/pkgs/applications/science/logic/alt-ergo/default.nix +++ b/pkgs/applications/science/logic/alt-ergo/default.nix @@ -2,11 +2,11 @@ let pname = "alt-ergo"; - version = "2.5.2"; + version = "2.5.3"; src = fetchurl { url = "https://github.com/OCamlPro/alt-ergo/releases/download/v${version}/alt-ergo-${version}.tbz"; - hash = "sha256-9GDBcBH49sheO5AjmDsznMEbw0JSrnSOcIIRN40/aJU="; + hash = "sha256-tmWLZBLfdmfYlCQq+zcUneeueDAE6AJeZMy8kfNCC04="; }; in diff --git a/pkgs/applications/science/logic/bitwuzla/default.nix b/pkgs/applications/science/logic/bitwuzla/default.nix index bacf8620e5fdc..1fa78849db6e8 100644 --- a/pkgs/applications/science/logic/bitwuzla/default.nix +++ b/pkgs/applications/science/logic/bitwuzla/default.nix @@ -1,70 +1,72 @@ { stdenv , fetchFromGitHub +, fetchpatch , lib , python3 -, cmake -, lingeling +, meson +, ninja +, git , btor2tools , symfpu , gtest , gmp , cadical -, minisat -, picosat , cryptominisat , zlib , pkg-config - # "*** internal error in 'lglib.c': watcher stack overflow" on aarch64-linux -, withLingeling ? !stdenv.hostPlatform.isAarch64 }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "bitwuzla"; - version = "unstable-2022-10-03"; + version = "0.4.0"; src = fetchFromGitHub { owner = "bitwuzla"; repo = "bitwuzla"; - rev = "3bc0f9f1aca04afabe1aff53dd0937924618b2ad"; - hash = "sha256-UXZERl7Nedwex/oUrcf6/GkDSgOQ537WDYm117RfvWo="; + rev = finalAttrs.version; + hash = "sha256-ZEdV4ml1LwrYwscgOcL2gLx/ijPYqRktXMQH/Njh8OI="; }; - nativeBuildInputs = [ cmake pkg-config ]; + patches = [ + # fix parser on aarch64 + # remove on next release + (fetchpatch { + url = "https://github.com/bitwuzla/bitwuzla/commit/4d914aa5ec34076c37749f0cf6dce976ea510386.patch"; + hash = "sha256-gp+HEamOySjPXCC39tt5DIMdQqEew26a+M15sNdCmTM="; + }) + ]; + + strictDeps = true; + + nativeBuildInputs = [ meson pkg-config git ninja ]; buildInputs = [ cadical cryptominisat - picosat - minisat btor2tools symfpu gmp zlib - ] ++ lib.optional withLingeling lingeling; + ]; + + mesonFlags = [ + # note: the default value for default_library fails to link dynamic dependencies + # but setting it to shared works even in pkgsStatic + "-Ddefault_library=shared" - cmakeFlags = [ - "-DBUILD_SHARED_LIBS=ON" - "-DPicoSAT_INCLUDE_DIR=${lib.getDev picosat}/include/picosat" - "-DBtor2Tools_INCLUDE_DIR=${lib.getDev btor2tools}/include/btor2parser" - "-DBtor2Tools_LIBRARIES=${lib.getLib btor2tools}/lib/libbtor2parser${stdenv.hostPlatform.extensions.sharedLibrary}" - ] ++ lib.optional doCheck "-DTESTING=YES"; + (lib.strings.mesonEnable "testing" finalAttrs.doCheck) + ]; - nativeCheckInputs = [ python3 gtest ]; - # two tests fail on darwin and 3 on aarch64-linux - doCheck = stdenv.hostPlatform.isLinux && (!stdenv.hostPlatform.isAarch64); - preCheck = let - var = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH"; - in - '' - export ${var}=$(readlink -f lib) - patchShebangs .. - ''; + nativeCheckInputs = [ python3 ]; + checkInputs = [ gtest ]; + # two tests fail on darwin + doCheck = stdenv.hostPlatform.isLinux; - meta = with lib; { + meta = { description = "A SMT solver for fixed-size bit-vectors, floating-point arithmetic, arrays, and uninterpreted functions"; mainProgram = "bitwuzla"; homepage = "https://bitwuzla.github.io"; - license = licenses.mit; - platforms = platforms.unix; - maintainers = with maintainers; [ symphorien ]; + license = lib.licenses.mit; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [ symphorien ]; }; -} +}) diff --git a/pkgs/applications/science/logic/cadical/default.nix b/pkgs/applications/science/logic/cadical/default.nix index 873b3836b73e0..12b01dea1a3dd 100644 --- a/pkgs/applications/science/logic/cadical/default.nix +++ b/pkgs/applications/science/logic/cadical/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenv, fetchFromGitHub, copyPkgconfigItems, makePkgconfigItem }: stdenv.mkDerivation rec { pname = "cadical"; @@ -14,6 +14,35 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" "lib" ]; doCheck = true; + nativeBuildInputs = [ copyPkgconfigItems ]; + + pkgconfigItems = [ + (makePkgconfigItem { + name = "cadical"; + inherit version; + cflags = [ "-I\${includedir}" ]; + libs = [ "-L\${libdir}" "-lcadical" ]; + variables = { + includedir = "@includedir@"; + libdir = "@libdir@"; + }; + inherit (meta) description; + }) + ]; + + env = { + # copyPkgconfigItems will substitute these in the pkg-config file + includedir = "${placeholder "dev"}/include"; + libdir = "${placeholder "lib"}/lib"; + }; + + enableParallelBuilding = true; + + # fix static build + postPatch = '' + substituteInPlace makefile.in --replace-fail "ar rc" '$(AR) rc' + ''; + # the configure script is not generated by autotools and does not accept the # arguments that the default configurePhase passes like --prefix and --libdir configurePhase = '' diff --git a/pkgs/applications/science/logic/cryptominisat/default.nix b/pkgs/applications/science/logic/cryptominisat/default.nix index 4be57a1946356..4040cdb797290 100644 --- a/pkgs/applications/science/logic/cryptominisat/default.nix +++ b/pkgs/applications/science/logic/cryptominisat/default.nix @@ -17,8 +17,14 @@ stdenv.mkDerivation rec { hash = "sha256-8oH9moMjQEWnQXKmKcqmXuXcYkEyvr4hwC1bC4l26mo="; }; - buildInputs = [ python3 boost ]; - nativeBuildInputs = [ cmake ]; + strictDeps = true; + buildInputs = [ boost ]; + nativeBuildInputs = [ python3 cmake ]; + + # musl does not have sys/unistd.h + postPatch = '' + substituteInPlace src/picosat/picosat.c --replace-fail '<sys/unistd.h>' '<unistd.h>' + ''; meta = with lib; { description = "An advanced SAT Solver"; diff --git a/pkgs/applications/science/logic/dafny/default.nix b/pkgs/applications/science/logic/dafny/default.nix index 83d472c1abb18..acf4f05000bf1 100644 --- a/pkgs/applications/science/logic/dafny/default.nix +++ b/pkgs/applications/science/logic/dafny/default.nix @@ -8,13 +8,13 @@ buildDotnetModule rec { pname = "Dafny"; - version = "4.5.0"; + version = "4.6.0"; src = fetchFromGitHub { owner = "dafny-lang"; repo = "dafny"; rev = "v${version}"; - hash = "sha256-NsQhJY++IaLyFc5jqo7TyZBcz0P8VUizGLxdIe9KEO4="; + hash = "sha256-3t0drxM7PZzrLbxBKYa6Gja2u6GK6Pc+ejoswag3P3k="; }; postPatch = '' diff --git a/pkgs/applications/science/logic/klee/default.nix b/pkgs/applications/science/logic/klee/default.nix index 68f68355f8160..4f17558b340e4 100644 --- a/pkgs/applications/science/logic/klee/default.nix +++ b/pkgs/applications/science/logic/klee/default.nix @@ -6,7 +6,6 @@ , clang , llvm , python3 -, zlib , z3 , stp , cryptominisat @@ -45,13 +44,13 @@ let }; in stdenv.mkDerivation rec { pname = "klee"; - version = "3.0"; + version = "3.1"; src = fetchFromGitHub { owner = "klee"; repo = "klee"; rev = "v${version}"; - hash = "sha256-y5lWmtIcLAthQ0oHYQNd+ir75YaxHZR9Jgiz+ZUFQjY="; + hash = "sha256-5js1N8qVF0lCkahSU3ojT7+p/a9IaUpPWhIyFHEzqto="; }; nativeBuildInputs = [ cmake ]; @@ -98,6 +97,9 @@ in stdenv.mkDerivation rec { patchShebangs . ''; + # https://github.com/klee/klee/issues/1690 + hardeningDisable = [ "fortify" ]; + doCheck = true; passthru = { diff --git a/pkgs/applications/science/logic/klee/klee-uclibc.nix b/pkgs/applications/science/logic/klee/klee-uclibc.nix index 91086ae84627d..a8e459a6bdaee 100644 --- a/pkgs/applications/science/logic/klee/klee-uclibc.nix +++ b/pkgs/applications/science/logic/klee/klee-uclibc.nix @@ -26,12 +26,12 @@ let }); in stdenv.mkDerivation rec { pname = "klee-uclibc"; - version = "1.3"; + version = "1.4"; src = fetchFromGitHub { owner = "klee"; repo = "klee-uclibc"; rev = "klee_uclibc_v${version}"; - sha256 = "sha256-xQ8GWa0Gmd3lbwKodJhrsZeuR4j7NT4zIUh+kNhVY/w="; + sha256 = "sha256-sogQK5Ed0k5tf4rrYwCKT4YRKyEovgT25p0BhGvJ1ok="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/science/logic/lean4/default.nix b/pkgs/applications/science/logic/lean4/default.nix index fbc41a67d73ba..479b8a21744ce 100644 --- a/pkgs/applications/science/logic/lean4/default.nix +++ b/pkgs/applications/science/logic/lean4/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "lean4"; - version = "4.6.1"; + version = "4.7.0"; src = fetchFromGitHub { owner = "leanprover"; repo = "lean4"; rev = "v${finalAttrs.version}"; - hash = "sha256-wUqGADwSocg2ciycCxg9qp+vJLJ2otA/5JpTrkFrDoQ="; + hash = "sha256-jHY8BhDotfGcMS0Xzl5iawqCaug3dDEKuD5Y1WcM06I="; }; postPatch = '' @@ -50,11 +50,6 @@ stdenv.mkDerivation (finalAttrs: { "-DINSTALL_LICENSE=OFF" ]; - # Work around https://github.com/NixOS/nixpkgs/issues/166205. - env = lib.optionalAttrs stdenv.cc.isClang { - NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}"; - }; - passthru.tests = { version = testers.testVersion { package = finalAttrs.finalPackage; diff --git a/pkgs/applications/science/logic/logisim-evolution/default.nix b/pkgs/applications/science/logic/logisim-evolution/default.nix index b83302b6ea373..3d86c8cafdbc2 100644 --- a/pkgs/applications/science/logic/logisim-evolution/default.nix +++ b/pkgs/applications/science/logic/logisim-evolution/default.nix @@ -1,25 +1,45 @@ -{ lib, stdenv, fetchurl, jre, makeWrapper, copyDesktopItems, makeDesktopItem, unzip }: +{ lib +, stdenv +, fetchurl +, jre +, makeBinaryWrapper +, copyDesktopItems +, makeDesktopItem +, desktopToDarwinBundle +, unzip +}: -stdenv.mkDerivation rec { +let + icon = fetchurl { + url = "https://github.com/logisim-evolution/logisim-evolution/raw/9e0afa3cd6a8bfa75dab61830822cde83c70bb4b/artwork/logisim-evolution-icon.svg"; + hash = "sha256-DNRimhNFt6jLdjqv7o2cNz38K6XnevxD0rGymym3xBs="; + }; +in +stdenv.mkDerivation (finalAttrs: { pname = "logisim-evolution"; version = "3.8.0"; src = fetchurl { - url = "https://github.com/logisim-evolution/logisim-evolution/releases/download/v${version}/logisim-evolution-${version}-all.jar"; - sha256 = "sha256-TFm+fa3CMp0OMhnKBc6cLIWGQbIG/OpOOCG7ea7wbCw="; + url = "https://github.com/logisim-evolution/logisim-evolution/releases/download/v${finalAttrs.version}/logisim-evolution-${finalAttrs.version}-all.jar"; + hash = "sha256-TFm+fa3CMp0OMhnKBc6cLIWGQbIG/OpOOCG7ea7wbCw="; }; - dontUnpack = true; - nativeBuildInputs = [ makeWrapper copyDesktopItems unzip ]; + nativeBuildInputs = [ + makeBinaryWrapper + copyDesktopItems + unzip + ] ++ lib.optionals stdenv.isDarwin [ + desktopToDarwinBundle + ]; desktopItems = [ (makeDesktopItem { - name = pname; + name = "logisim-evolution"; desktopName = "Logisim-evolution"; exec = "logisim-evolution"; icon = "logisim-evolution"; - comment = meta.description; + comment = finalAttrs.meta.description; categories = [ "Education" ]; }) ]; @@ -29,23 +49,19 @@ stdenv.mkDerivation rec { mkdir -p $out/bin makeWrapper ${jre}/bin/java $out/bin/logisim-evolution --add-flags "-jar $src" - - # Create icons - unzip $src "resources/logisim/img/*" - for size in 16 32 48 128 256; do - install -D "./resources/logisim/img/logisim-icon-$size.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/logisim-evolution.png" - done + install -Dm444 ${icon} $out/share/icons/hicolor/scalable/apps/logisim-evolution.svg runHook postInstall ''; - meta = with lib; { + meta = { + changelog = "https://github.com/logisim-evolution/logisim-evolution/releases/tag/v${finalAttrs.version}"; homepage = "https://github.com/logisim-evolution/logisim-evolution"; description = "Digital logic designer and simulator"; mainProgram = "logisim-evolution"; - maintainers = with maintainers; [ emilytrau ]; - sourceProvenance = with sourceTypes; [ binaryBytecode ]; - license = licenses.gpl2Plus; - platforms = platforms.unix; + maintainers = with lib.maintainers; [ emilytrau ]; + sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.unix; }; -} +}) diff --git a/pkgs/applications/science/logic/logisim/default.nix b/pkgs/applications/science/logic/logisim/default.nix index 7d298b3c98ad1..d278f1e784687 100644 --- a/pkgs/applications/science/logic/logisim/default.nix +++ b/pkgs/applications/science/logic/logisim/default.nix @@ -1,25 +1,39 @@ -{ lib, stdenv, fetchurl, jre, makeWrapper, copyDesktopItems, makeDesktopItem, unzip }: +{ lib +, stdenv +, fetchurl +, jre +, makeBinaryWrapper +, copyDesktopItems +, makeDesktopItem +, desktopToDarwinBundle +, unzip +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "logisim"; version = "2.7.1"; src = fetchurl { - url = "mirror://sourceforge/project/circuit/${lib.versions.majorMinor version}.x/${version}/logisim-generic-${version}.jar"; - sha256 = "1hkvc9zc7qmvjbl9579p84hw3n8wl3275246xlzj136i5b0phain"; + url = "mirror://sourceforge/project/circuit/${lib.versions.majorMinor finalAttrs.version}.x/${finalAttrs.version}/logisim-generic-${finalAttrs.version}.jar"; + hash = "sha256-Nip4wSrRjCA/7YaIcsSgHNnBIUE3nZLokrviw35ie8I="; }; - dontUnpack = true; - nativeBuildInputs = [ makeWrapper copyDesktopItems unzip ]; + nativeBuildInputs = [ + makeBinaryWrapper + copyDesktopItems + unzip + ] ++ lib.optionals stdenv.isDarwin [ + desktopToDarwinBundle + ]; desktopItems = [ (makeDesktopItem { - name = pname; + name = "logisim"; desktopName = "Logisim"; exec = "logisim"; icon = "logisim"; - comment = meta.description; + comment = finalAttrs.meta.description; categories = [ "Education" ]; }) ]; @@ -34,19 +48,19 @@ stdenv.mkDerivation rec { unzip $src "resources/logisim/img/*" for size in 16 20 24 48 64 128 do - install -D "./resources/logisim/img/logisim-icon-$size.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/logisim.png" + install -Dm444 "./resources/logisim/img/logisim-icon-$size.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/logisim.png" done runHook postInstall ''; - meta = with lib; { + meta = { homepage = "http://www.cburch.com/logisim/"; description = "Educational tool for designing and simulating digital logic circuits"; mainProgram = "logisim"; - maintainers = with maintainers; [ emilytrau ]; - sourceProvenance = with sourceTypes; [ binaryBytecode ]; - license = licenses.gpl2Plus; - platforms = platforms.unix; + maintainers = with lib.maintainers; [ emilytrau ]; + sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; + license = lib.licenses.gpl2Only; + platforms = lib.platforms.unix; }; -} +}) diff --git a/pkgs/applications/science/logic/surelog/default.nix b/pkgs/applications/science/logic/surelog/default.nix index 3b58331562a23..7b4c85fe9b215 100644 --- a/pkgs/applications/science/logic/surelog/default.nix +++ b/pkgs/applications/science/logic/surelog/default.nix @@ -16,13 +16,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "surelog"; - version = "1.80"; + version = "1.82"; src = fetchFromGitHub { owner = "chipsalliance"; repo = finalAttrs.pname; rev = "v${finalAttrs.version}"; - hash = "sha256-jpt/5h0HnkiJowyVDoMSyiuL6/dokB4xg1sdyctHrDs="; + hash = "sha256-iW2mQPmKfbAWaiEURyVly5IjJ3YpXjVBkm/UbUuwb6k="; fetchSubmodules = false; # we use all dependencies from nix }; diff --git a/pkgs/applications/science/logic/symfpu/default.nix b/pkgs/applications/science/logic/symfpu/default.nix index af61b7c617c78..2c83793114a15 100644 --- a/pkgs/applications/science/logic/symfpu/default.nix +++ b/pkgs/applications/science/logic/symfpu/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenv, fetchFromGitHub, copyPkgconfigItems, makePkgconfigItem }: stdenv.mkDerivation rec { pname = "symfpu"; @@ -11,9 +11,32 @@ stdenv.mkDerivation rec { sha256 = "1jf5lkn67q136ppfacw3lsry369v7mdr1rhidzjpbz18jfy9zl9q"; }; + nativeBuildInputs = [ copyPkgconfigItems ]; + + pkgconfigItems = [ + (makePkgconfigItem { + name = "symfpu"; + inherit version; + cflags = [ "-I\${includedir}" ]; + variables = { + includedir = "@includedir@"; + }; + inherit (meta) description; + }) + ]; + + env = { + # copyPkgconfigItems will substitute this in the pkg-config file + includedir = "${placeholder "out"}/include"; + }; + installPhase = '' - mkdir -p $out/symfpu - cp -r * $out/symfpu/ + runHook preInstall + + mkdir -p $out/include/symfpu + cp -r * $out/include/symfpu/ + + runHook postInstall ''; meta = with lib; { diff --git a/pkgs/applications/science/logic/tamarin-prover/default.nix b/pkgs/applications/science/logic/tamarin-prover/default.nix index 09ef2d7d46372..2aa92118b03a7 100644 --- a/pkgs/applications/science/logic/tamarin-prover/default.nix +++ b/pkgs/applications/science/logic/tamarin-prover/default.nix @@ -1,17 +1,23 @@ -{ haskellPackages, mkDerivation, fetchFromGitHub, fetchpatch, lib, stdenv +{ haskellPackages, mkDerivation, fetchFromGitHub, applyPatches, lib, stdenv # the following are non-haskell dependencies , makeWrapper, which, maude, graphviz, glibcLocales }: let version = "1.8.0"; - src = fetchFromGitHub { - owner = "tamarin-prover"; - repo = "tamarin-prover"; - rev = version; - sha256 = "sha256-ujnaUdbjqajmkphOS4Fs4QBCRGX4JZkQ2p1X2jripww="; + src = applyPatches { + src = fetchFromGitHub { + owner = "tamarin-prover"; + repo = "tamarin-prover"; + rev = version; + sha256 = "sha256-ujnaUdbjqajmkphOS4Fs4QBCRGX4JZkQ2p1X2jripww="; + }; + patches = [ + ./tamarin-prover-1.8.0-ghc-9.6.patch + ]; }; + # tamarin has its own dependencies, but they're kept inside the repo, # no submodules. this factors out the common metadata among all derivations common = pname: src: { @@ -34,7 +40,7 @@ let tamarin-prover-utils = mkDerivation (common "tamarin-prover-utils" (src + "/lib/utils") // { postPatch = replaceSymlinks; libraryHaskellDepends = with haskellPackages; [ - base64-bytestring blaze-builder + base64-bytestring blaze-builder list-t dlist exceptions fclabels safe SHA syb ]; }); @@ -93,8 +99,6 @@ mkDerivation (common "tamarin-prover" src // { isLibrary = false; isExecutable = true; - patches = [ ]; - # strip out unneeded deps manually doHaddock = false; enableSharedExecutables = false; diff --git a/pkgs/applications/science/logic/tamarin-prover/tamarin-prover-1.8.0-ghc-9.6.patch b/pkgs/applications/science/logic/tamarin-prover/tamarin-prover-1.8.0-ghc-9.6.patch new file mode 100644 index 0000000000000..f6a07f3646cad --- /dev/null +++ b/pkgs/applications/science/logic/tamarin-prover/tamarin-prover-1.8.0-ghc-9.6.patch @@ -0,0 +1,237 @@ +commit 084bd5474d9ac687656c2a3a6b2e1d507febaa98 +Author: Artur Cygan <arczicygan@gmail.com> +Date: Mon Feb 26 10:04:48 2024 +0100 + + Update to GHC 9.6 (#618) + + Cherry-picked from b3e18f61e45d701d42d794bc91ccbb4c0e3834ec. + + Removing Control.Monad.List + +diff --git a/lib/sapic/src/Sapic/Exceptions.hs b/lib/sapic/src/Sapic/Exceptions.hs +index 146b721e..b9962478 100644 +--- a/lib/sapic/src/Sapic/Exceptions.hs ++++ b/lib/sapic/src/Sapic/Exceptions.hs +@@ -23,7 +23,6 @@ import Theory.Sapic + import Data.Label + import qualified Data.Maybe + import Theory.Text.Pretty +-import Sapic.Annotation --toAnProcess + import Theory.Sapic.Print (prettySapic) + import qualified Theory.Text.Pretty as Pretty + +@@ -67,14 +66,14 @@ data ExportException = UnsupportedBuiltinMS + | UnsupportedTypes [String] + + instance Show ExportException where +- ++ + show (UnsupportedTypes incorrectFunctionUsages) = do + let functionsString = List.intercalate ", " incorrectFunctionUsages + (case length functionsString of + 1 -> "The function " ++ functionsString ++ ", which is declared with a user-defined type, appears in a rewrite rule. " + _ -> "The functions " ++ functionsString ++ ", which are declared with a user-defined type, appear in a rewrite rule. ") + ++ "However, the translation of rules only works with bitstrings at the moment." +- show unsuppBuiltin = ++ show unsuppBuiltin = + "The builtins bilinear-pairing and multiset are not supported for export. However, your model uses " ++ + (case unsuppBuiltin of + UnsupportedBuiltinBP -> "bilinear-pairing." +@@ -93,7 +92,7 @@ instance Show (SapicException an) where + show (InvalidPosition p) = "Invalid position:" ++ prettyPosition p + show (NotImplementedError s) = "This feature is not implemented yet. Sorry! " ++ s + show (ImplementationError s) = "You've encountered an error in the implementation: " ++ s +- show a@(ProcessNotWellformed e p) = "Process not well-formed: " ++ Pretty.render (text (show e) $-$ nest 2 (maybe emptyDoc prettySapic p)) ++ show (ProcessNotWellformed e p) = "Process not well-formed: " ++ Pretty.render (text (show e) $-$ nest 2 (maybe emptyDoc prettySapic p)) + show ReliableTransmissionButNoProcess = "The builtin support for reliable channels currently only affects the process calculus, but you have not specified a top-level process. Please remove \"builtins: reliable-channel\" to proceed." + show (CannotExpandPredicate facttag rstr) = "Undefined predicate " + ++ showFactTagArity facttag +@@ -135,7 +134,7 @@ instance Show WFerror where + ++ prettySapicFunType t2 + ++ "." + show (FunctionNotDefined sym ) = "Function not defined " ++ show sym +- ++ + + instance Exception WFerror + instance (Typeable an) => Exception (SapicException an) +diff --git a/lib/term/src/Term/Narrowing/Narrow.hs b/lib/term/src/Term/Narrowing/Narrow.hs +index 56f145d9..88f89aa1 100644 +--- a/lib/term/src/Term/Narrowing/Narrow.hs ++++ b/lib/term/src/Term/Narrowing/Narrow.hs +@@ -12,6 +12,7 @@ module Term.Narrowing.Narrow ( + import Term.Unification + import Term.Positions + ++import Control.Monad + import Control.Monad.Reader + + import Extension.Prelude +diff --git a/lib/term/src/Term/Unification.hs b/lib/term/src/Term/Unification.hs +index b5c107cd..fcf52128 100644 +--- a/lib/term/src/Term/Unification.hs ++++ b/lib/term/src/Term/Unification.hs +@@ -61,7 +61,7 @@ module Term.Unification ( + , pairDestMaudeSig + , symEncDestMaudeSig + , asymEncDestMaudeSig +- , signatureDestMaudeSig ++ , signatureDestMaudeSig + , locationReportMaudeSig + , revealSignatureMaudeSig + , hashMaudeSig +@@ -80,7 +80,7 @@ module Term.Unification ( + , module Term.Rewriting.Definitions + ) where + +--- import Control.Applicative ++import Control.Monad + import Control.Monad.RWS + import Control.Monad.Except + import Control.Monad.State +diff --git a/lib/theory/src/Theory/Constraint/System/Guarded.hs b/lib/theory/src/Theory/Constraint/System/Guarded.hs +index 99f985a8..3f0cd8d8 100644 +--- a/lib/theory/src/Theory/Constraint/System/Guarded.hs ++++ b/lib/theory/src/Theory/Constraint/System/Guarded.hs +@@ -88,6 +88,7 @@ module Theory.Constraint.System.Guarded ( + + import Control.Arrow + import Control.DeepSeq ++import Control.Monad + import Control.Monad.Except + import Control.Monad.Fresh (MonadFresh, scopeFreshness) + import qualified Control.Monad.Trans.PreciseFresh as Precise (Fresh, evalFresh, evalFreshT) +diff --git a/lib/utils/src/Control/Monad/Trans/Disj.hs b/lib/utils/src/Control/Monad/Trans/Disj.hs +index 96dae742..b3b63825 100644 +--- a/lib/utils/src/Control/Monad/Trans/Disj.hs ++++ b/lib/utils/src/Control/Monad/Trans/Disj.hs +@@ -18,10 +18,10 @@ module Control.Monad.Trans.Disj ( + , runDisjT + ) where + +--- import Control.Applicative +-import Control.Monad.List +-import Control.Monad.Reader ++import Control.Monad + import Control.Monad.Disj.Class ++import Control.Monad.Reader ++import ListT + + + ------------------------------------------------------------------------------ +@@ -33,12 +33,12 @@ newtype DisjT m a = DisjT { unDisjT :: ListT m a } + deriving (Functor, Applicative, MonadTrans ) + + -- | Construct a 'DisjT' action. +-disjT :: m [a] -> DisjT m a +-disjT = DisjT . ListT ++disjT :: (Monad m, Foldable m) => m a -> DisjT m a ++disjT = DisjT . fromFoldable + + -- | Run a 'DisjT' action. +-runDisjT :: DisjT m a -> m [a] +-runDisjT = runListT . unDisjT ++runDisjT :: Monad m => DisjT m a -> m [a] ++runDisjT = toList . unDisjT + + + +@@ -47,8 +47,6 @@ runDisjT = runListT . unDisjT + ------------ + + instance Monad m => Monad (DisjT m) where +- {-# INLINE return #-} +- return = DisjT . return + {-# INLINE (>>=) #-} + m >>= f = DisjT $ (unDisjT . f) =<< unDisjT m + +diff --git a/lib/utils/tamarin-prover-utils.cabal b/lib/utils/tamarin-prover-utils.cabal +index 75ed2b46..bb54d1e5 100644 +--- a/lib/utils/tamarin-prover-utils.cabal ++++ b/lib/utils/tamarin-prover-utils.cabal +@@ -47,6 +47,7 @@ library + , deepseq + , dlist + , fclabels ++ , list-t + , mtl + , pretty + , safe +diff --git a/src/Main/Mode/Batch.hs b/src/Main/Mode/Batch.hs +index e7710682..d370da85 100644 +--- a/src/Main/Mode/Batch.hs ++++ b/src/Main/Mode/Batch.hs +@@ -32,7 +32,8 @@ import Main.TheoryLoader + import Main.Utils + + import Theory.Module +-import Control.Monad.Except (MonadIO(liftIO), runExceptT) ++import Control.Monad.Except (runExceptT) ++import Control.Monad.IO.Class (MonadIO(liftIO)) + import System.Exit (die) + import Theory.Tools.Wellformedness (prettyWfErrorReport) + import Text.Printf (printf) +diff --git a/src/Main/TheoryLoader.hs b/src/Main/TheoryLoader.hs +index 7fffb85b..71fba2b9 100644 +--- a/src/Main/TheoryLoader.hs ++++ b/src/Main/TheoryLoader.hs +@@ -42,8 +42,6 @@ module Main.TheoryLoader ( + + ) where + +--- import Debug.Trace +- + import Prelude hiding (id, (.)) + + import Data.Char (toLower) +@@ -58,8 +56,10 @@ import Data.Bifunctor (Bifunctor(bimap)) + import Data.Bitraversable (Bitraversable(bitraverse)) + + import Control.Category +-import Control.Exception (evaluate) + import Control.DeepSeq (force) ++import Control.Exception (evaluate) ++import Control.Monad ++import Control.Monad.IO.Class (MonadIO(liftIO)) + + import System.Console.CmdArgs.Explicit + import System.Timeout (timeout) +@@ -387,10 +387,10 @@ closeTheory version thyOpts sign srcThy = do + deducThy <- bitraverse (return . addMessageDeductionRuleVariants) + (return . addMessageDeductionRuleVariantsDiff) transThy + +- derivCheckSignature <- Control.Monad.Except.liftIO $ toSignatureWithMaude (get oMaudePath thyOpts) $ maudePublicSig (toSignaturePure sign) ++ derivCheckSignature <- liftIO $ toSignatureWithMaude (get oMaudePath thyOpts) $ maudePublicSig (toSignaturePure sign) + variableReport <- case compare derivChecks 0 of + EQ -> pure $ Just [] +- _ -> Control.Monad.Except.liftIO $ timeout (1000000 * derivChecks) $ evaluate . force $ (either (\t -> checkVariableDeducability t derivCheckSignature autoSources defaultProver) ++ _ -> liftIO $ timeout (1000000 * derivChecks) $ evaluate . force $ (either (\t -> checkVariableDeducability t derivCheckSignature autoSources defaultProver) + (\t-> diffCheckVariableDeducability t derivCheckSignature autoSources defaultProver defaultDiffProver) deducThy) + + let report = wellformednessReport ++ (fromMaybe [(underlineTopic "Derivation Checks", Pretty.text "Derivation checks timed out. Use --derivcheck-timeout=INT to configure timeout, 0 to deactivate.")] variableReport) +diff --git a/stack.yaml b/stack.yaml +index 7267ba17..b53f6ff8 100644 +--- a/stack.yaml ++++ b/stack.yaml +@@ -7,7 +7,7 @@ packages: + - lib/sapic/ + - lib/export/ + - lib/accountability/ +-resolver: lts-20.26 ++resolver: lts-22.11 + ghc-options: + "$everything": -Wall + nix: +diff --git a/tamarin-prover.cabal b/tamarin-prover.cabal +index 89a7e3a8..986274ea 100644 +--- a/tamarin-prover.cabal ++++ b/tamarin-prover.cabal +@@ -106,7 +106,7 @@ executable tamarin-prover + default-language: Haskell2010 + + if flag(threaded) +- ghc-options: -threaded -eventlog ++ ghc-options: -threaded + + -- -XFlexibleInstances + diff --git a/pkgs/applications/science/logic/uhdm/default.nix b/pkgs/applications/science/logic/uhdm/default.nix index 6698e47844a22..182f6eb81eeb2 100644 --- a/pkgs/applications/science/logic/uhdm/default.nix +++ b/pkgs/applications/science/logic/uhdm/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "UHDM"; # When updating this package, also consider updating science/logic/surelog - version = "1.80"; + version = "1.82"; src = fetchFromGitHub { owner = "chipsalliance"; repo = finalAttrs.pname; rev = "v${finalAttrs.version}"; - hash = "sha256-/aWiN+DPlIjI89u5kx6QoyrGD4DOJTHXxIZ0qHJNDls="; + hash = "sha256-sl83l6nLN/bluED5bnFShviD1Vv8hmRazxIcLUg/ego="; fetchSubmodules = false; # we use all dependencies from nix }; diff --git a/pkgs/applications/science/machine-learning/labelimg/default.nix b/pkgs/applications/science/machine-learning/labelimg/default.nix index 244eaa05d695d..21174305b9e3e 100644 --- a/pkgs/applications/science/machine-learning/labelimg/default.nix +++ b/pkgs/applications/science/machine-learning/labelimg/default.nix @@ -1,38 +1,51 @@ -{ lib, python3Packages, fetchFromGitHub, qt5 }: - python3Packages.buildPythonApplication rec { - pname = "labelImg"; - version = "1.8.3"; - src = fetchFromGitHub { - owner = "tzutalin"; - repo = "labelImg"; - rev = "v${version}"; - sha256 = "07v106fzlmxrbag4xm06m4mx9m0gckb27vpwsn7sap1bbgc1pap5"; - }; - nativeBuildInputs = with python3Packages; [ - pyqt5 - qt5.wrapQtAppsHook - ]; - propagatedBuildInputs = with python3Packages; [ - pyqt5 - lxml - sip4 - ]; - preBuild = '' - make qt5py3 - ''; - postInstall = '' - cp libs/resources.py $out/${python3Packages.python.sitePackages}/libs - ''; - dontWrapQtApps = true; - preFixup = '' - makeWrapperArgs+=("''${qtWrapperArgs[@]}") - ''; - meta = with lib; { - description = "A graphical image annotation tool and label object bounding boxes in images"; - mainProgram = "labelImg"; - homepage = "https://github.com/tzutalin/labelImg"; - license = licenses.mit; - platforms = platforms.linux; - maintainers = [ maintainers.cmcdragonkai ]; - }; - } +{ + lib, + python3Packages, + fetchFromGitHub, + fetchpatch, + qt5, +}: +python3Packages.buildPythonApplication rec { + pname = "labelImg"; + version = "1.8.6"; + src = fetchFromGitHub { + owner = "tzutalin"; + repo = "labelImg"; + rev = "v${version}"; + hash = "sha256-RJxCtiDOePajlrjy9cpKETSKsWlH/Dlu1iFMj2aO4XU="; + }; + nativeBuildInputs = with python3Packages; [ + pyqt5 + qt5.wrapQtAppsHook + ]; + patches = [ + # fixes https://github.com/heartexlabs/labelImg/issues/838 + # can be removed after next upstream version bump + (fetchpatch { + url = "https://github.com/heartexlabs/labelImg/commit/5c38b6bcddce895d646e944e3cddcb5b43bf8b8b.patch"; + hash = "sha256-BmbnJS95RBfoNQT0E6JDJ/IZfBa+tv1C69+RVOSFdRA="; + }) + ]; + propagatedBuildInputs = with python3Packages; [ + pyqt5 + lxml + ]; + preBuild = '' + make qt5py3 + ''; + postInstall = '' + cp libs/resources.py $out/${python3Packages.python.sitePackages}/libs + ''; + dontWrapQtApps = true; + preFixup = '' + makeWrapperArgs+=("''${qtWrapperArgs[@]}") + ''; + meta = with lib; { + description = "A graphical image annotation tool and label object bounding boxes in images"; + mainProgram = "labelImg"; + homepage = "https://github.com/tzutalin/labelImg"; + license = licenses.mit; + platforms = platforms.linux; + maintainers = [ maintainers.cmcdragonkai ]; + }; +} diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix index f4cc1f1fbfeaa..acfc38686ea42 100644 --- a/pkgs/applications/science/math/R/default.nix +++ b/pkgs/applications/science/math/R/default.nix @@ -15,13 +15,13 @@ assert (!blas.isILP64) && (!lapack.isILP64); stdenv.mkDerivation (finalAttrs: { pname = "R"; - version = "4.3.2"; + version = "4.3.3"; src = let inherit (finalAttrs) pname version; in fetchurl { url = "https://cran.r-project.org/src/base/R-${lib.versions.major version}/${pname}-${version}.tar.gz"; - sha256 = "sha256-s/V2CsLu6AJqPw7vyyW0dyPZeAOO7o6ER2IJTIYMRSo="; + sha256 = "sha256-gIUSMTk7hb84d+6eObKC51Dthkxexgy9aObhOfBSAzA="; }; outputs = [ "out" "tex" ]; diff --git a/pkgs/applications/science/math/almonds/default.nix b/pkgs/applications/science/math/almonds/default.nix index 2b05b552253dd..7717458d0dac2 100644 --- a/pkgs/applications/science/math/almonds/default.nix +++ b/pkgs/applications/science/math/almonds/default.nix @@ -22,6 +22,6 @@ with python3.pkgs; buildPythonApplication rec { mainProgram = "almonds"; homepage = "https://github.com/Tenchi2xh/Almonds"; license = licenses.mit; - maintainers = with maintainers; [ infinisil ]; + maintainers = [ ]; }; } diff --git a/pkgs/applications/science/math/caffe/default.nix b/pkgs/applications/science/math/caffe/default.nix index 25f7229a845ae..2a84d4b27b141 100644 --- a/pkgs/applications/science/math/caffe/default.nix +++ b/pkgs/applications/science/math/caffe/default.nix @@ -22,7 +22,7 @@ }: let - inherit (cudaPackages) cudatoolkit nccl; + inherit (cudaPackages) backendStdenv cudatoolkit nccl; # The default for cudatoolkit 10.1 is CUDNN 8.0.5, the last version to support CUDA 10.1. # However, this caffe does not build with CUDNN 8.x, so we use CUDNN 7.6.5 instead. # Earlier versions of cudatoolkit use pre-8.x CUDNN, so we use the default. @@ -59,7 +59,7 @@ stdenv.mkDerivation rec { "-DBLAS=open" ] ++ (if cudaSupport then [ "-DCUDA_ARCH_NAME=All" - "-DCUDA_HOST_COMPILER=${cudatoolkit.cc}/bin/cc" + "-DCUDA_HOST_COMPILER=${backendStdenv.cc}/bin/cc" ] else [ "-DCPU_ONLY=ON" ]) ++ ["-DUSE_NCCL=${toggle ncclSupport}"] ++ ["-DUSE_LEVELDB=${toggle leveldbSupport}"] diff --git a/pkgs/applications/science/math/eigenmath/default.nix b/pkgs/applications/science/math/eigenmath/default.nix index 90a67efd5f05d..b39d7ae26079d 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-2024-03-11"; + version = "unstable-2024-04-08"; src = fetchFromGitHub { owner = "georgeweigt"; repo = pname; - rev = "dfa24af6c747e1c90d79a462c2a5a0716b3a1dc0"; - hash = "sha256-kgC+E/ecgl27Hs+qCyqg8CjbEyB91AgN397DST/dPMI="; + rev = "c0be6c47309aa40d44784a3a4c4c07bc4e8fb6fa"; + hash = "sha256-UVCazX0P03+e1exnpXrGNc/1vHxLH04Xtvgsy00UAoI="; }; checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in '' diff --git a/pkgs/applications/science/math/gfan/default.nix b/pkgs/applications/science/math/gfan/default.nix index 11a42d1cfdf8a..8fa6da16e336b 100644 --- a/pkgs/applications/science/math/gfan/default.nix +++ b/pkgs/applications/science/math/gfan/default.nix @@ -14,6 +14,10 @@ stdenv.mkDerivation rec { postPatch = lib.optionalString stdenv.cc.isClang '' substituteInPlace Makefile --replace "-fno-guess-branch-probability" "" + + for f in $(find -name "*.h" -or -name "*.cpp"); do + substituteInPlace "$f" --replace-quiet "log2" "_log2" + done ''; buildFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "CXX=${stdenv.cc.targetPrefix}c++" ]; diff --git a/pkgs/applications/science/math/gmsh/default.nix b/pkgs/applications/science/math/gmsh/default.nix index 669d3a3ab8f1e..57b20fe12d7c2 100644 --- a/pkgs/applications/science/math/gmsh/default.nix +++ b/pkgs/applications/science/math/gmsh/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, fetchpatch, cmake, blas, lapack, gfortran, gmm, fltk, libjpeg +{ lib, stdenv, fetchurl, cmake, blas, lapack, gfortran, gmm, fltk, libjpeg , zlib, libGL, libGLU, xorg, opencascade-occt , python ? null, enablePython ? false }: @@ -7,11 +7,11 @@ assert enablePython -> (python != null); stdenv.mkDerivation rec { pname = "gmsh"; - version = "4.11.1"; + version = "4.12.2"; src = fetchurl { url = "https://gmsh.info/src/gmsh-${version}-source.tgz"; - sha256 = "sha256-xf4bfL1AOIioFJKfL9D11p4nYAIioYx4bbW3boAFs2U="; + hash = "sha256-E+CdnKgQLlxAFx1u4VDGaHQrmMOmylf4N/e2Th4q9I8="; }; buildInputs = [ @@ -26,19 +26,6 @@ stdenv.mkDerivation rec { patches = [ ./fix-python.patch - - # Pull upstream fix git gcc-13: - # https://gitlab.onelab.info/gmsh/gmsh/-/issues/2416 - (fetchpatch { - name = "gcc-13-p1.patch"; - url = "https://gitlab.onelab.info/gmsh/gmsh/-/commit/fb81a9c9026700e078de947b4522cb39e543a86b.patch"; - hash = "sha256-1GInFqQZvOgflC3eQTjmZ9uBGFASRNCpCwDACN3yTQ4="; - }) - (fetchpatch { - name = "gcc-13-p2.patch"; - url = "https://gitlab.onelab.info/gmsh/gmsh/-/commit/aceb09c807b78ea26555f99fcb16c4f87c31fb5a.patch"; - hash = "sha256-6FI0hIvj8hglCvxoKV0GzT2/F/Wz+ddkxV/TLzzJBLU="; - }) ]; postPatch = '' diff --git a/pkgs/applications/science/math/gmsh/fix-python.patch b/pkgs/applications/science/math/gmsh/fix-python.patch index ac07c169c99b8..41c5c3b8f9760 100644 --- a/pkgs/applications/science/math/gmsh/fix-python.patch +++ b/pkgs/applications/science/math/gmsh/fix-python.patch @@ -1,50 +1,13 @@ diff --git a/api/gmsh.py b/api/gmsh.py -index 747acb203..02004da5d 100644 +index f525284..a225c85 100644 --- a/api/gmsh.py +++ b/api/gmsh.py -@@ -44,44 +44,7 @@ moduledir = os.path.dirname(os.path.realpath(__file__)) - parentdir1 = os.path.dirname(moduledir) - parentdir2 = os.path.dirname(parentdir1) +@@ -78,6 +78,8 @@ if not libpath: + else: + libpath = find_library("gmsh") --if platform.system() == "Windows": -- libname = "gmsh-4.11.dll" --elif platform.system() == "Darwin": -- libname = "libgmsh.4.11.dylib" --else: -- libname = "libgmsh.so.4.11" -- --# check if the library is in the same directory as the module... --libpath = os.path.join(moduledir, libname) -- --# ... or in the parent directory or its lib or Lib subdirectory --if not os.path.exists(libpath): -- libpath = os.path.join(parentdir1, libname) --if not os.path.exists(libpath): -- libpath = os.path.join(parentdir1, "lib", libname) --if not os.path.exists(libpath): -- libpath = os.path.join(parentdir1, "Lib", libname) -- --# ... or in the parent of the parent directory or its lib or Lib subdirectory --if not os.path.exists(libpath): -- libpath = os.path.join(parentdir2, libname) --if not os.path.exists(libpath): -- libpath = os.path.join(parentdir2, "lib", libname) --if not os.path.exists(libpath): -- libpath = os.path.join(parentdir2, "Lib", libname) -- --# if we couldn't find it, use ctype's find_library utility... --if not os.path.exists(libpath): -- if platform.system() == "Windows": -- libpath = find_library("gmsh-4.11") -- if not libpath: -- libpath = find_library("gmsh") -- else: -- libpath = find_library("gmsh") -- --# ... and print a warning if everything failed --if not os.path.exists(libpath): -- print("Warning: could not find Gmsh shared library " + libname) +libpath = "@LIBPATH@" - - lib = CDLL(libpath) - ++ + # ... and print a warning if everything failed + if not libpath: + print("Warning: could not find Gmsh shared library " + libname + diff --git a/pkgs/applications/science/math/gurobi/default.nix b/pkgs/applications/science/math/gurobi/default.nix index 35b9e9d7a8d4a..53091e6a84e50 100644 --- a/pkgs/applications/science/math/gurobi/default.nix +++ b/pkgs/applications/science/math/gurobi/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "gurobi"; - version = "9.5.1"; + version = "11.0.1"; src = fetchurl { url = "https://packages.gurobi.com/${lib.versions.majorMinor version}/gurobi${version}_linux64.tar.gz"; - sha256 = "sha256-+oKFnTPwj7iuudpmsPvZFxjtVzxTT1capSNyyd64kdo="; + hash = "sha256-oZ7Oz22e4k6cVF3TDFxp/pE+RuU+3p/CatTWj1ci5ZY="; }; sourceRoot = "gurobi${builtins.replaceStrings ["."] [""] version}/linux64"; @@ -52,6 +52,6 @@ stdenv.mkDerivation rec { ]; license = licenses.unfree; platforms = [ "x86_64-linux" ]; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ wegank ]; }; } diff --git a/pkgs/applications/science/math/msieve/default.nix b/pkgs/applications/science/math/msieve/default.nix index 3d4d5b8a197dc..1de6d416a0e64 100644 --- a/pkgs/applications/science/math/msieve/default.nix +++ b/pkgs/applications/science/math/msieve/default.nix @@ -1,12 +1,13 @@ -{ lib, stdenv, fetchurl, zlib, gmp, ecm }: +{ lib, stdenv, fetchsvn, zlib, gmp, ecm }: stdenv.mkDerivation rec { pname = "msieve"; - version = "1.53"; + version = "r1050"; - src = fetchurl { - url = "mirror://sourceforge/msieve/msieve/Msieve%20v${version}/msieve${lib.replaceStrings ["."] [""] version}_src.tar.gz"; - sha256 = "1d1vv7j4rh3nnxsmvafi73qy7lw7n3akjlm5pjl3m936yapvmz65"; + src = fetchsvn { + url = "svn://svn.code.sf.net/p/msieve/code/trunk"; + rev = "1050"; + hash = "sha256-cn6OhE4zhrpB7BFrRdOnucjATbfo5mLkK7O0Usx1quE="; }; buildInputs = [ zlib gmp ecm ]; diff --git a/pkgs/applications/science/math/mxnet/default.nix b/pkgs/applications/science/math/mxnet/default.nix index 993da2b898981..839537438962b 100644 --- a/pkgs/applications/science/math/mxnet/default.nix +++ b/pkgs/applications/science/math/mxnet/default.nix @@ -5,7 +5,7 @@ }: let - inherit (cudaPackages) cudatoolkit cudaFlags cudnn; + inherit (cudaPackages) backendStdenv cudatoolkit cudaFlags cudnn; in assert cudnnSupport -> cudaSupport; @@ -49,7 +49,7 @@ stdenv.mkDerivation rec { ++ (if cudaSupport then [ "-DUSE_OLDCMAKECUDA=ON" # see https://github.com/apache/incubator-mxnet/issues/10743 "-DCUDA_ARCH_NAME=All" - "-DCUDA_HOST_COMPILER=${cudatoolkit.cc}/bin/cc" + "-DCUDA_HOST_COMPILER=${backendStdenv.cc}/bin/cc" "-DMXNET_CUDA_ARCH=${builtins.concatStringsSep ";" cudaFlags.realArches}" ] else [ "-DUSE_CUDA=OFF" ]) ++ lib.optional (!cudnnSupport) "-DUSE_CUDNN=OFF"; diff --git a/pkgs/applications/science/math/nauty/default.nix b/pkgs/applications/science/math/nauty/default.nix index ef8c041039b15..c1feeffdcb6d9 100644 --- a/pkgs/applications/science/math/nauty/default.nix +++ b/pkgs/applications/science/math/nauty/default.nix @@ -4,11 +4,11 @@ }: stdenv.mkDerivation rec { pname = "nauty"; - version = "2.7r4"; + version = "2.8.8"; src = fetchurl { - url = "https://pallini.di.uniroma1.it/nauty${builtins.replaceStrings ["."] [""] version}.tar.gz"; - sha256 = "sha256-uBDIWm/imfO0yfJKr5KcrH+VRsLzXCDh3Qrbx0CISKY="; + url = "https://pallini.di.uniroma1.it/nauty${builtins.replaceStrings ["."] ["_"] version}.tar.gz"; + sha256 = "sha256-FZ0hVoEKa7JAQQzWHrZBrdhQiNnxXIiM2qN7hoH5Kc4="; }; outputs = [ "out" "dev" ]; @@ -44,7 +44,7 @@ stdenv.mkDerivation rec { # I'm not sure if the filename will remain the same for future changelog or # if it will track changes to minor releases. Lets see. Better than nothing # in any case. - changelog = "https://pallini.di.uniroma1.it/changes24-27.txt"; + changelog = "https://pallini.di.uniroma1.it/changes24-28.txt"; homepage = "https://pallini.di.uniroma1.it/"; }; } diff --git a/pkgs/applications/science/math/palp/default.nix b/pkgs/applications/science/math/palp/default.nix index ffe17bc3dec21..2fe77aa14a650 100644 --- a/pkgs/applications/science/math/palp/default.nix +++ b/pkgs/applications/science/math/palp/default.nix @@ -10,11 +10,11 @@ let in stdenv.mkDerivation rec { pname = "palp"; - version = "2.20"; + version = "2.21"; src = fetchurl { url = "http://hep.itp.tuwien.ac.at/~kreuzer/CY/palp/${pname}-${version}.tar.gz"; - sha256 = "1q1cl3vpdir16szy0jcadysydcrjp48hqxyx42kr8g9digkqjgkj"; + sha256 = "sha256-fkp78hmZioRMC8zgoXbknQdDy0tQWg4ZUym/LsGW3dc="; }; hardeningDisable = [ diff --git a/pkgs/applications/science/math/polymake/default.nix b/pkgs/applications/science/math/polymake/default.nix index fe9210641d2e7..9c2623651517d 100644 --- a/pkgs/applications/science/math/polymake/default.nix +++ b/pkgs/applications/science/math/polymake/default.nix @@ -14,14 +14,11 @@ , ninja , ant , openjdk -, perl536Packages +, perl +, perlPackages , makeWrapper }: -let - # log says: polymake does not work with perl 5.37 or newer; - perlPackages = perl536Packages; - inherit (perlPackages) perl; -in + # polymake compiles its own version of sympol and atint because we # don't have those packages. other missing optional dependencies: # javaview, libnormaliz, scip, soplex, jreality. diff --git a/pkgs/applications/science/math/pspp/default.nix b/pkgs/applications/science/math/pspp/default.nix index 032ae257c5641..420b495e736e6 100644 --- a/pkgs/applications/science/math/pspp/default.nix +++ b/pkgs/applications/science/math/pspp/default.nix @@ -6,11 +6,11 @@ stdenv.mkDerivation rec { pname = "pspp"; - version = "2.0.0"; + version = "2.0.1"; src = fetchurl { url = "mirror://gnu/pspp/${pname}-${version}.tar.gz"; - sha256 = "sha256-qPbLiGr1sIOENXm81vsZHAVKzOKMxotY58XwmZai2N8="; + sha256 = "sha256-jtuw8J6M+AEMrZ4FWeAjDX/FquRyHHVsNQVU3zMCTAA="; }; nativeBuildInputs = [ pkg-config texinfo python3 makeWrapper ]; diff --git a/pkgs/applications/science/math/rofi-calc/default.nix b/pkgs/applications/science/math/rofi-calc/default.nix index 6b15073675f73..be126e5fa3974 100644 --- a/pkgs/applications/science/math/rofi-calc/default.nix +++ b/pkgs/applications/science/math/rofi-calc/default.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation rec { pname = "rofi-calc"; - version = "2.2.0"; + version = "2.2.1"; src = fetchFromGitHub { owner = "svenstaro"; repo = pname; rev = "v${version}"; - sha256 = "sha256-SGDORHX+lk6PS5/sPAmKZLfZD99/A7XvDPDnuAygDAM="; + sha256 = "sha256-uXaI8dwTRtg8LnFxopgXr9x/vEl8ixzIGOsSQQkAkoQ="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/science/math/sage/default.nix b/pkgs/applications/science/math/sage/default.nix index 765c691c95551..6624dcc36528b 100644 --- a/pkgs/applications/science/math/sage/default.nix +++ b/pkgs/applications/science/math/sage/default.nix @@ -15,7 +15,7 @@ let pkgs = pkgs.python3.pkgs.overrideScope (self: super: { # `sagelib`, i.e. all of sage except some wrappers and runtime dependencies sagelib = self.callPackage ./sagelib.nix { - inherit flint arb; + inherit flint3; inherit sage-src env-locations singular; inherit (maxima) lisp-compiler; linbox = pkgs.linbox.override { withSage = true; }; @@ -73,7 +73,7 @@ let sagelib = python3.pkgs.sagelib; sage-docbuild = python3.pkgs.sage-docbuild; inherit env-locations; - inherit python3 singular palp flint pythonEnv maxima; + inherit python3 singular palp flint3 pythonEnv maxima; pkg-config = pkgs.pkg-config; # not to confuse with pythonPackages.pkg-config }; @@ -125,9 +125,7 @@ let ignoreCollisions = true; } // { extraLibs = pythonRuntimeDeps; }; # make the libs accessible - arb = pkgs.arb.override { inherit flint; }; - - singular = pkgs.singular.override { inherit flint; }; + singular = pkgs.singular.override { inherit flint3; }; maxima = pkgs.maxima-ecl.override { lisp-compiler = pkgs.ecl.override { @@ -149,7 +147,7 @@ let # openblas instead of openblasCompat. Apparently other packages somehow use flints # blas when it is available. Alternative would be to override flint to use # openblasCompat. - flint = pkgs.flint.override { withBlas = false; }; + flint3 = pkgs.flint3.override { withBlas = false; }; # Multiple palp dimensions need to be available and sage expects them all to be # in the same folder. diff --git a/pkgs/applications/science/math/sage/env-locations.nix b/pkgs/applications/science/math/sage/env-locations.nix index 39d358a1f9a83..1ca0f471a7ee2 100644 --- a/pkgs/applications/science/math/sage/env-locations.nix +++ b/pkgs/applications/science/math/sage/env-locations.nix @@ -3,7 +3,6 @@ , pari , singular , maxima -, conway_polynomials , graphs , elliptic_curves , polytopes_db @@ -27,16 +26,13 @@ writeTextFile rec { export GPDOCDIR="${pari}/share/pari/doc" export SINGULARPATH='${singular}/share/singular' export SINGULAR_SO='${singular}/lib/libSingular.so' - export GAP_SO='${gap}/lib/libgap.so' export SINGULAR_EXECUTABLE='${singular}/bin/Singular' export MAXIMA_FAS='${maxima}/lib/maxima/${maxima.version}/binary-ecl/maxima.fas' export MAXIMA_PREFIX="${maxima}" - export CONWAY_POLYNOMIALS_DATA_DIR='${conway_polynomials}/share/conway_polynomials' export GRAPHS_DATA_DIR='${graphs}/share/graphs' export ELLCURVE_DATA_DIR='${elliptic_curves}/share/ellcurves' export POLYTOPE_DATA_DIR='${polytopes_db}/share/reflexive_polytopes' - export GAP_LIB_DIR='${gap}/lib/gap' - export GAP_SHARE_DIR='${gap}/share/gap' + export GAP_ROOT_PATHS='${gap}/lib/gap;${gap}/share/gap' export ECLDIR='${maxima.lisp-compiler}/lib/${maxima.lisp-compiler.pname}-${maxima.lisp-compiler.version}/' export COMBINATORIAL_DESIGN_DATA_DIR="${combinatorial_designs}/share/combinatorial_designs" export CREMONA_MINI_DATA_DIR="${elliptic_curves}/share/cremona" diff --git a/pkgs/applications/science/math/sage/python-modules/sage-docbuild.nix b/pkgs/applications/science/math/sage/python-modules/sage-docbuild.nix index fb8c3ec8a204e..b45998bbcb86d 100644 --- a/pkgs/applications/science/math/sage/python-modules/sage-docbuild.nix +++ b/pkgs/applications/science/math/sage/python-modules/sage-docbuild.nix @@ -4,6 +4,7 @@ , jupyter-sphinx , sphinx , sphinx-copybutton +, sphinx-inline-tabs }: buildPythonPackage rec { @@ -15,6 +16,7 @@ buildPythonPackage rec { jupyter-sphinx sphinx sphinx-copybutton + sphinx-inline-tabs ]; preBuild = '' 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 a96f7ccd5d4c0..e1c497678d50b 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_3 +, cython , jinja2 , pkgconfig # the python module, not the pkg-config alias }: @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "sage-setup"; src = sage-src; - nativeBuildInputs = [ cython_3 ]; + nativeBuildInputs = [ cython ]; buildInputs = [ pkgconfig ]; propagatedBuildInputs = [ jinja2 ]; diff --git a/pkgs/applications/science/math/sage/sage-env.nix b/pkgs/applications/science/math/sage/sage-env.nix index 4c22470de9109..f95e08c51ff4d 100644 --- a/pkgs/applications/science/math/sage/sage-env.nix +++ b/pkgs/applications/science/math/sage/sage-env.nix @@ -39,10 +39,9 @@ , ecm , lcalc , rubiks -, flintqs , blas , lapack -, flint +, flint3 , gmp , mpfr , zlib @@ -93,7 +92,6 @@ let ecm lcalc rubiks - flintqs jdk # only needed for `jmol` which may be replaced in the future less # needed to prevent transient test errors until https://github.com/ipython/ipython/pull/11864 is resolved ] @@ -155,7 +153,7 @@ writeTextFile rec { # cython needs to find these libraries, otherwise will fail with `ld: cannot find -lflint` or similar export LDFLAGS='${ lib.concatStringsSep " " (map (pkg: "-L${pkg}/lib") [ - flint + flint3 gap glpk gmp @@ -174,7 +172,7 @@ writeTextFile rec { singular gmp.dev glpk - flint + flint3 gap mpfr.dev ]) diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix index a77565e4072ac..00ef5d428337d 100644 --- a/pkgs/applications/science/math/sage/sage-src.nix +++ b/pkgs/applications/science/math/sage/sage-src.nix @@ -10,14 +10,14 @@ # all get the same sources with the same patches applied. stdenv.mkDerivation rec { - version = "10.2"; + version = "10.3"; pname = "sage-src"; src = fetchFromGitHub { owner = "sagemath"; repo = "sage"; rev = version; - sha256 = "sha256-VXnPdJhtw5Y/anecrVpevJDCyBVfnjksyuuZslNipm4="; + hash = "sha256-OHtMv8t0RrP6R8XIREU+C1vpazeQLWa75wx9Mv6BN1U="; }; # contains essential files (e.g., setup.cfg) generated by the bootstrap script. @@ -25,8 +25,8 @@ stdenv.mkDerivation rec { 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="; + url = "mirror://sageupstream/configure/configure-ab1a517b64b02bf15bbcb8d7c2d4d643bd5eff9b.tar.gz"; + hash = "sha256-pe9AxTM+gFSR4/eVfUzay+4bwjoubbYeDPc+avKjlaw="; }; # Patches needed because of particularities of nix or the way this is packaged. @@ -53,6 +53,13 @@ stdenv.mkDerivation rec { # algorithm soon, disable this test for now. # https://github.com/sagemath/sage/issues/34575 ./patches/disable-slow-glpk-test.patch + + # https://github.com/sagemath/sage/pull/37489, landed in 10.4.beta1 + (fetchpatch { + name = "quaternionalgebra-random-failure.patch"; + url = "https://github.com/sagemath/sage/commit/1c3f991b9d3c5778e409e5414c6cfcd456113f19.diff"; + hash = "sha256-uCXchYx26DdxTjR1k2748KCEHPnekKS2fAM7SpyhNvM="; + }) ]; # Patches needed because of package updates. We could just pin the versions of @@ -62,11 +69,11 @@ 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/37123, to land in 10.3.beta7 + # https://github.com/sagemath/sage/pull/37492 (fetchpatch { - name = "scipy-1.12-upgrade.patch"; - url = "https://github.com/sagemath/sage/commit/54eec464e9fdf18b411d9148aecb918178e95909.diff"; - sha256 = "sha256-9wyNrcSfF6mYFTIV4ev2OdD7igb0AeyZZYWSc/+JrIU="; + name = "singular-4.3.2p14-upgrade.patch"; + url = "https://github.com/sagemath/sage/commit/a0c56816b051e97da44ac0a4e4d4f6915cf7fa0f.diff"; + sha256 = "sha256-WGMmPeBoj2LUC+2qxWuaJL89QUuGt6axGvxWkpM9LYg="; }) ]; diff --git a/pkgs/applications/science/math/sage/sage-with-env.nix b/pkgs/applications/science/math/sage/sage-with-env.nix index b2c0843d3100a..88c753e89c9da 100644 --- a/pkgs/applications/science/math/sage/sage-with-env.nix +++ b/pkgs/applications/science/math/sage/sage-with-env.nix @@ -13,7 +13,6 @@ , gmp , gfan , python3 -, flintqs , eclib , ntl , ecm @@ -40,7 +39,6 @@ let gfan maxima eclib - flintqs ntl ecm ]; diff --git a/pkgs/applications/science/math/sage/sagelib.nix b/pkgs/applications/science/math/sage/sagelib.nix index 5a1f4ee473c9b..0a2bd8011b0bd 100644 --- a/pkgs/applications/science/math/sage/sagelib.nix +++ b/pkgs/applications/science/math/sage/sagelib.nix @@ -10,7 +10,6 @@ , iml , libpng , readline -, arb , blas , boost , brial @@ -18,7 +17,7 @@ , eclib , ecm , fflas-ffpack -, flint +, flint3 , gap , giac , givaro @@ -45,10 +44,11 @@ , singular , sqlite , symmetrica +, conway-polynomials , cvxopt , cypari2 , cysignals -, cython_3 +, cython , fpylll , gmpy2 , importlib-metadata @@ -92,6 +92,7 @@ buildPythonPackage rec { version = src.version; pname = "sagelib"; src = sage-src; + pyproject = true; nativeBuildInputs = [ iml @@ -112,7 +113,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ # native dependencies (TODO: determine which ones need to be propagated) - arb blas boost brial @@ -120,7 +120,7 @@ buildPythonPackage rec { eclib ecm fflas-ffpack - flint + flint3 gap giac givaro @@ -149,10 +149,11 @@ buildPythonPackage rec { symmetrica # from src/sage/setup.cfg and requirements.txt + conway-polynomials cvxopt cypari2 cysignals - cython_3 + cython fpylll gmpy2 importlib-metadata @@ -202,11 +203,7 @@ buildPythonPackage rec { mkdir -p "$SAGE_SHARE/sage/ext/notebook-ipython" mkdir -p "var/lib/sage/installed" - # 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/, <[^, ]*//' build/pkgs/*/install-requires.txt + sed -i "/sage-conf/d" src/{setup.cfg,pyproject.toml,requirements.txt} cd build/pkgs/sagelib/src ''; diff --git a/pkgs/applications/science/math/singular/default.nix b/pkgs/applications/science/math/singular/default.nix index f77bd5a92243c..d079134aec76d 100644 --- a/pkgs/applications/science/math/singular/default.nix +++ b/pkgs/applications/science/math/singular/default.nix @@ -5,7 +5,7 @@ , sharutils , file , getconf -, flint +, flint3 , ntl , cddlib , gfan @@ -13,10 +13,7 @@ , doxygen , graphviz , latex2html -# upstream generates docs with texinfo 4. later versions of texinfo -# use letters instead of numbers for post-appendix chapters, and we -# want it to match the upstream format because sage depends on it. -, texinfo4 +, texinfo , texliveSmall , enableDocs ? !stdenv.isDarwin , enableGfanlib ? true @@ -24,7 +21,7 @@ stdenv.mkDerivation rec { pname = "singular"; - version = "4.3.2p2"; + version = "4.3.2p16"; # since the tarball does not contain tests, we fetch from GitHub. src = fetchFromGitHub { @@ -34,7 +31,7 @@ stdenv.mkDerivation rec { # if a release is tagged (which sometimes does not happen), it will # be in the format below. rev = "Release-${lib.replaceStrings ["."] ["-"] version}"; - sha256 = "sha256-dtZmN8xUCZ9eSgmtBxqfJeWsM4W5Baq7xWXuNAxNLjA="; + sha256 = "sha256-5JZgI5lnfX4JlBSEAL7Wv6uao/57GBaMqwgslJt9Bjk="; # the repository's .gitattributes file contains the lines "/Tst/ # export-ignore" and "/doc/ export-ignore" so some directories are @@ -68,7 +65,7 @@ stdenv.mkDerivation rec { ncurses readline ntl - flint + flint3 lrcalc gfan ] ++ lib.optionals enableGfanlib [ @@ -85,7 +82,7 @@ stdenv.mkDerivation rec { doxygen graphviz latex2html - texinfo4 + texinfo texliveSmall ] ++ lib.optionals stdenv.isDarwin [ getconf ]; depsBuildBuild = [ buildPackages.stdenv.cc ]; diff --git a/pkgs/applications/science/misc/boinc/default.nix b/pkgs/applications/science/misc/boinc/default.nix index b2a76f5fb2526..6a0aafad3e914 100644 --- a/pkgs/applications/science/misc/boinc/default.nix +++ b/pkgs/applications/science/misc/boinc/default.nix @@ -27,14 +27,14 @@ stdenv.mkDerivation rec { pname = "boinc"; - version = "7.24.3"; + version = "8.0.1"; src = fetchFromGitHub { name = "${pname}-${version}-src"; owner = "BOINC"; repo = "boinc"; rev = "client_release/${lib.versions.majorMinor version}/${version}"; - hash = "sha256-0gyCO5t8t0SbOCBClVVu+C2VpBlxsnoRHBRYgI8nNO4="; + hash = "sha256-pjk9+VRWrFIoHolIEEWlRx89hifLNeFtIi34F1OBD38="; }; nativeBuildInputs = [ libtool automake autoconf m4 pkg-config ]; diff --git a/pkgs/applications/science/misc/colmap/default.nix b/pkgs/applications/science/misc/colmap/default.nix index a029f5440b251..d071c90562cd4 100644 --- a/pkgs/applications/science/misc/colmap/default.nix +++ b/pkgs/applications/science/misc/colmap/default.nix @@ -1,7 +1,9 @@ { mkDerivation, lib, fetchFromGitHub, cmake, boost179, ceres-solver, eigen, freeimage, glog, libGLU, glew, qtbase, + autoAddDriverRunpath, config, - cudaSupport ? config.cudaSupport, cudaPackages }: + cudaSupport ? config.cudaSupport, cudaPackages +}: assert cudaSupport -> cudaPackages != { }; @@ -37,7 +39,7 @@ mkDerivation rec { nativeBuildInputs = [ cmake ] ++ lib.optionals cudaSupport [ - cudaPackages.autoAddOpenGLRunpathHook + autoAddDriverRunpath ]; meta = with lib; { diff --git a/pkgs/applications/science/misc/cwltool/default.nix b/pkgs/applications/science/misc/cwltool/default.nix index 9b4c711aba8f2..7919dfd176828 100644 --- a/pkgs/applications/science/misc/cwltool/default.nix +++ b/pkgs/applications/science/misc/cwltool/default.nix @@ -7,14 +7,14 @@ python3.pkgs.buildPythonApplication rec { pname = "cwltool"; - version = "3.1.20240112164112"; + version = "3.1.20240404144621"; pyproject = true; src = fetchFromGitHub { owner = "common-workflow-language"; repo = "cwltool"; rev = "refs/tags/${version}"; - hash = "sha256-Y0DORypXlTDv04qh796oXPSTxCXGb7rLQ8Su+/As7Lo="; + hash = "sha256-atpXkMIQ60POuUk99uiiuCoRXt4Seg11g/eHCeTDe+Q="; }; postPatch = '' diff --git a/pkgs/applications/science/misc/cytoscape/default.nix b/pkgs/applications/science/misc/cytoscape/default.nix index f4aaac1a38234..1d42600d9770d 100644 --- a/pkgs/applications/science/misc/cytoscape/default.nix +++ b/pkgs/applications/science/misc/cytoscape/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "cytoscape"; - version = "3.10.1"; + version = "3.10.2"; src = fetchurl { url = "https://github.com/cytoscape/cytoscape/releases/download/${version}/${pname}-unix-${version}.tar.gz"; - sha256 = "sha256-fqxAsnpMYCYj0hW2oxu/NH4PqesRlWPs5eDSeSjy1aU="; + sha256 = "sha256-ArT+g3GbtSxq3FvRi1H4z/kpsmcFCmKhzEJI4bCK44E="; }; patches = [ diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix index 628b40cd13008..e543c10d4bcbf 100644 --- a/pkgs/applications/science/misc/snakemake/default.nix +++ b/pkgs/applications/science/misc/snakemake/default.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication rec { pname = "snakemake"; - version = "8.4.12"; + version = "8.10.7"; format = "setuptools"; src = fetchFromGitHub { owner = "snakemake"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-ehQIrTw1+klFW+Hu4WsWaCJ0YoN2hIqryqqaoNQb1us="; + hash = "sha256-tRjyv7pTTTDj3LrcIP3OWOX+9FldHV6rtbPdOYr70E4="; # 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})"#' @@ -48,6 +48,7 @@ python3.pkgs.buildPythonApplication rec { snakemake-interface-executor-plugins snakemake-interface-common snakemake-interface-storage-plugins + snakemake-interface-report-plugins stopit tabulate throttler diff --git a/pkgs/applications/science/molecular-dynamics/lammps/default.nix b/pkgs/applications/science/molecular-dynamics/lammps/default.nix index db27bb188cf5e..b881d339300c4 100644 --- a/pkgs/applications/science/molecular-dynamics/lammps/default.nix +++ b/pkgs/applications/science/molecular-dynamics/lammps/default.nix @@ -7,7 +7,7 @@ , blas , lapack , cmake -, cudaPackages +, autoAddDriverRunpath , pkg-config # Available list of packages can be found near here: # @@ -63,7 +63,7 @@ stdenv.mkDerivation (finalAttrs: { pkg-config # Although not always needed, it is needed if cmakeFlags include # GPU_API=cuda, and it doesn't users that don't enable the GPU package. - cudaPackages.autoAddOpenGLRunpathHook + autoAddDriverRunpath ]; passthru = { diff --git a/pkgs/applications/science/robotics/mujoco/default.nix b/pkgs/applications/science/robotics/mujoco/default.nix index 15d2e156a5899..3013ce74a334b 100644 --- a/pkgs/applications/science/robotics/mujoco/default.nix +++ b/pkgs/applications/science/robotics/mujoco/default.nix @@ -129,7 +129,7 @@ let in stdenv.mkDerivation rec { pname = "mujoco"; - version = "3.1.3"; + version = "3.1.4"; # Bumping version? Make sure to look though the MuJoCo's commit # history for bumped dependency pins! @@ -137,7 +137,7 @@ in stdenv.mkDerivation rec { owner = "google-deepmind"; repo = "mujoco"; rev = "refs/tags/${version}"; - hash = "sha256-22yH3zAD479TRNS3XSqy6PuuLqyWmjvwScUTVfKumzY="; + hash = "sha256-VgD6ditMDpHki7l23Gjip2roA8Oi4MGpxl+4gSLTEFs="; }; patches = [ ./mujoco-system-deps-dont-fetch.patch ]; |