diff --git a/pkgs/applications/science/biology/mrtrix/default.nix b/pkgs/applications/science/biology/mrtrix/default.nix index ef8c738055fc..b098cd354ba5 100644 --- a/pkgs/applications/science/biology/mrtrix/default.nix +++ b/pkgs/applications/science/biology/mrtrix/default.nix @@ -4,7 +4,7 @@ fetchFromGitHub, python, makeWrapper, - eigen, + eigen_3_4_0, fftw, libtiff, libpng, @@ -18,41 +18,8 @@ libXext, less, withGui ? true, - fetchFromGitLab, - fetchpatch, }: -let - # reverts 'eigen: 3.4.0 -> 3.4.0-unstable-2022-05-19' - # https://github.com/NixOS/nixpkgs/commit/d298f046edabc84b56bd788e11eaf7ed72f8171c - eigen' = ( - eigen.overrideAttrs (old: rec { - version = "3.4.0"; - src = fetchFromGitLab { - owner = "libeigen"; - repo = "eigen"; - tag = version; - hash = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw="; - }; - patches = (old.patches or [ ]) ++ [ - # Fixes e.g. onnxruntime on aarch64-darwin: - # https://hydra.nixos.org/build/248915128/nixlog/1, - # originally suggested in https://github.com/NixOS/nixpkgs/pull/258392. - # - # The patch is from - # ["Fix vectorized reductions for Eigen::half"](https://gitlab.com/libeigen/eigen/-/merge_requests/699) - # which is two years old, - # but Eigen hasn't had a release in two years either: - # https://gitlab.com/libeigen/eigen/-/issues/2699. - (fetchpatch { - url = "https://gitlab.com/libeigen/eigen/-/commit/d0e3791b1a0e2db9edd5f1d1befdb2ac5a40efe0.patch"; - hash = "sha256-8qiNpuYehnoiGiqy0c3Mcb45pwrmc6W4rzCxoLDSvj0="; - }) - ]; - }) - ); -in - stdenv.mkDerivation rec { pname = "mrtrix"; version = "3.0.4-unstable-2025-04-09"; @@ -74,7 +41,7 @@ stdenv.mkDerivation rec { buildInputs = [ ants - eigen' + eigen_3_4_0 python fftw libtiff @@ -113,7 +80,7 @@ stdenv.mkDerivation rec { configurePhase = '' runHook preConfigure - export EIGEN_CFLAGS="-isystem ${eigen'}/include/eigen3" + export EIGEN_CFLAGS="-isystem ${eigen_3_4_0}/include/eigen3" unset LD # similar to https://github.com/MRtrix3/mrtrix3/issues/1519 ./configure ${lib.optionalString (!withGui) "-nogui"}; runHook postConfigure diff --git a/pkgs/by-name/cu/curv/package.nix b/pkgs/by-name/cu/curv/package.nix index 060efc4c84a4..2f63ddd9534f 100644 --- a/pkgs/by-name/cu/curv/package.nix +++ b/pkgs/by-name/cu/curv/package.nix @@ -2,13 +2,11 @@ lib, stdenv, fetchFromGitea, - fetchFromGitLab, - fetchpatch, cmake, git, pkg-config, boost, - eigen, + eigen_3_4_0, glm, libGL, libpng, @@ -43,33 +41,7 @@ stdenv.mkDerivation { buildInputs = [ boost - # https://codeberg.org/doug-moen/curv/issues/228 - # reverts 'eigen: 3.4.0 -> 3.4.0-unstable-2022-05-19' - # https://github.com/nixos/nixpkgs/commit/d298f046edabc84b56bd788e11eaf7ed72f8171c - (eigen.overrideAttrs (old: rec { - version = "3.4.0"; - src = fetchFromGitLab { - owner = "libeigen"; - repo = "eigen"; - rev = version; - hash = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw="; - }; - patches = (old.patches or [ ]) ++ [ - # Fixes e.g. onnxruntime on aarch64-darwin: - # https://hydra.nixos.org/build/248915128/nixlog/1, - # originally suggested in https://github.com/NixOS/nixpkgs/pull/258392. - # - # The patch is from - # ["Fix vectorized reductions for Eigen::half"](https://gitlab.com/libeigen/eigen/-/merge_requests/699) - # which is two years old, - # but Eigen hasn't had a release in two years either: - # https://gitlab.com/libeigen/eigen/-/issues/2699. - (fetchpatch { - url = "https://gitlab.com/libeigen/eigen/-/commit/d0e3791b1a0e2db9edd5f1d1befdb2ac5a40efe0.patch"; - hash = "sha256-8qiNpuYehnoiGiqy0c3Mcb45pwrmc6W4rzCxoLDSvj0="; - }) - ]; - })) + eigen_3_4_0 glm libGL libpng diff --git a/pkgs/by-name/ks/kstars/package.nix b/pkgs/by-name/ks/kstars/package.nix index 69620c4ad5fc..4f48e54fedcc 100644 --- a/pkgs/by-name/ks/kstars/package.nix +++ b/pkgs/by-name/ks/kstars/package.nix @@ -2,12 +2,10 @@ lib, stdenv, fetchurl, - fetchFromGitLab, - fetchpatch, cfitsio, cmake, curl, - eigen, + eigen_3_4_0, gsl, indi-full, kdePackages, @@ -22,35 +20,6 @@ zlib, }: -let - # reverts 'eigen: 3.4.0 -> 3.4.0-unstable-2022-05-19' - # https://github.com/nixos/nixpkgs/commit/d298f046edabc84b56bd788e11eaf7ed72f8171c - eigen' = eigen.overrideAttrs (old: rec { - version = "3.4.0"; - src = fetchFromGitLab { - owner = "libeigen"; - repo = "eigen"; - rev = version; - hash = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw="; - }; - patches = (old.patches or [ ]) ++ [ - # Fixes e.g. onnxruntime on aarch64-darwin: - # https://hydra.nixos.org/build/248915128/nixlog/1, - # originally suggested in https://github.com/NixOS/nixpkgs/pull/258392. - # - # The patch is from - # ["Fix vectorized reductions for Eigen::half"](https://gitlab.com/libeigen/eigen/-/merge_requests/699) - # which is two years old, - # but Eigen hasn't had a release in two years either: - # https://gitlab.com/libeigen/eigen/-/issues/2699. - (fetchpatch { - url = "https://gitlab.com/libeigen/eigen/-/commit/d0e3791b1a0e2db9edd5f1d1befdb2ac5a40efe0.patch"; - hash = "sha256-8qiNpuYehnoiGiqy0c3Mcb45pwrmc6W4rzCxoLDSvj0="; - }) - ]; - }); -in - stdenv.mkDerivation (finalAttrs: { pname = "kstars"; version = "3.7.5"; @@ -70,7 +39,7 @@ stdenv.mkDerivation (finalAttrs: { breeze-icons cfitsio curl - eigen' + eigen_3_4_0 gsl indi-full kconfig diff --git a/pkgs/development/libraries/eigen/3.4.0.nix b/pkgs/development/libraries/eigen/3.4.0.nix new file mode 100644 index 000000000000..069f486cb285 --- /dev/null +++ b/pkgs/development/libraries/eigen/3.4.0.nix @@ -0,0 +1,49 @@ +{ + lib, + stdenv, + fetchFromGitLab, + fetchpatch, + cmake, +}: + +stdenv.mkDerivation rec { + pname = "eigen"; + version = "3.4.0"; + + src = fetchFromGitLab { + owner = "libeigen"; + repo = "eigen"; + rev = version; + hash = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw="; + }; + + patches = [ + ./include-dir.patch + # Fixes e.g. onnxruntime on aarch64-darwin: + # https://hydra.nixos.org/build/248915128/nixlog/1, + # originally suggested in https://github.com/NixOS/nixpkgs/pull/258392. + # + # The patch is from + # ["Fix vectorized reductions for Eigen::half"](https://gitlab.com/libeigen/eigen/-/merge_requests/699) + # which is two years old, + # but Eigen hasn't had a release in two years either: + # https://gitlab.com/libeigen/eigen/-/issues/2699. + (fetchpatch { + url = "https://gitlab.com/libeigen/eigen/-/commit/d0e3791b1a0e2db9edd5f1d1befdb2ac5a40efe0.patch"; + hash = "sha256-8qiNpuYehnoiGiqy0c3Mcb45pwrmc6W4rzCxoLDSvj0="; + }) + ]; + + nativeBuildInputs = [ cmake ]; + + meta = with lib; { + homepage = "https://eigen.tuxfamily.org"; + description = "C++ template library for linear algebra: vectors, matrices, and related algorithms"; + license = licenses.lgpl3Plus; + maintainers = with maintainers; [ + sander + raskin + ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/libfive/default.nix b/pkgs/development/libraries/libfive/default.nix index dbb9fc8109ce..141bd8f17b2c 100644 --- a/pkgs/development/libraries/libfive/default.nix +++ b/pkgs/development/libraries/libfive/default.nix @@ -3,13 +3,11 @@ stdenv, wrapQtAppsHook, fetchFromGitHub, - fetchFromGitLab, - fetchpatch, unstableGitUpdater, cmake, ninja, pkg-config, - eigen, + eigen_3_4_0, zlib, libpng, boost, @@ -38,32 +36,7 @@ stdenv.mkDerivation { python.pkgs.pythonImportsCheckHook ]; buildInputs = [ - # reverts 'eigen: 3.4.0 -> 3.4.0-unstable-2022-05-19' - # https://github.com/nixos/nixpkgs/commit/d298f046edabc84b56bd788e11eaf7ed72f8171c - (eigen.overrideAttrs (old: rec { - version = "3.4.0"; - src = fetchFromGitLab { - owner = "libeigen"; - repo = "eigen"; - rev = version; - hash = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw="; - }; - patches = (old.patches or [ ]) ++ [ - # Fixes e.g. onnxruntime on aarch64-darwin: - # https://hydra.nixos.org/build/248915128/nixlog/1, - # originally suggested in https://github.com/NixOS/nixpkgs/pull/258392. - # - # The patch is from - # ["Fix vectorized reductions for Eigen::half"](https://gitlab.com/libeigen/eigen/-/merge_requests/699) - # which is two years old, - # but Eigen hasn't had a release in two years either: - # https://gitlab.com/libeigen/eigen/-/issues/2699. - (fetchpatch { - url = "https://gitlab.com/libeigen/eigen/-/commit/d0e3791b1a0e2db9edd5f1d1befdb2ac5a40efe0.patch"; - hash = "sha256-8qiNpuYehnoiGiqy0c3Mcb45pwrmc6W4rzCxoLDSvj0="; - }) - ]; - })) + eigen_3_4_0 zlib libpng boost diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 83f48cfe8b1f..2f5c84ae72e6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9178,6 +9178,8 @@ with pkgs; eigen = callPackage ../development/libraries/eigen { }; + eigen_3_4_0 = callPackage ../development/libraries/eigen/3.4.0.nix { }; + eigen2 = callPackage ../development/libraries/eigen/2.0.nix { }; vapoursynth-editor = libsForQt5.callPackage ../by-name/va/vapoursynth/editor.nix { };