about summary refs log tree commit diff
path: root/pkgs/development/python-modules/gpaw/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/gpaw/default.nix')
-rw-r--r--pkgs/development/python-modules/gpaw/default.nix77
1 files changed, 48 insertions, 29 deletions
diff --git a/pkgs/development/python-modules/gpaw/default.nix b/pkgs/development/python-modules/gpaw/default.nix
index 37b12c6f5ed49..9b647af6e2b18 100644
--- a/pkgs/development/python-modules/gpaw/default.nix
+++ b/pkgs/development/python-modules/gpaw/default.nix
@@ -1,27 +1,29 @@
-{ buildPythonPackage
-, lib
-, fetchFromGitLab
-, writeTextFile
-, fetchurl
-, blas
-, lapack
-, mpi
-, scalapack
-, libxc
-, libvdwxc
-, which
-, ase
-, numpy
-, scipy
-, pyyaml
-, inetutils
+{
+  buildPythonPackage,
+  lib,
+  fetchFromGitLab,
+  writeTextFile,
+  fetchurl,
+  blas,
+  lapack,
+  mpi,
+  fftw,
+  scalapack,
+  libxc,
+  libvdwxc,
+  which,
+  ase,
+  numpy,
+  scipy,
+  pyyaml,
+  inetutils,
 }:
 
-assert lib.asserts.assertMsg (!blas.isILP64)
-  "A 32 bit integer implementation of BLAS is required.";
+assert lib.asserts.assertMsg (!blas.isILP64) "A 32 bit integer implementation of BLAS is required.";
 
-assert lib.asserts.assertMsg (!lapack.isILP64)
-  "A 32 bit integer implementation of LAPACK is required.";
+assert lib.asserts.assertMsg (
+  !lapack.isILP64
+) "A 32 bit integer implementation of LAPACK is required.";
 
 let
   gpawConfig = writeTextFile {
@@ -71,8 +73,8 @@ let
     url = "https://wiki.fysik.dtu.dk/gpaw-files/gpaw-setups-${setupVersion}.tar.gz";
     sha256 = "07yldxnn38gky39fxyv3rfzag9p4lb0xfpzn15wy2h9aw4mnhwbc";
   };
-
-in buildPythonPackage rec {
+in
+buildPythonPackage rec {
   pname = "gpaw";
   version = "24.1.0";
   format = "setuptools";
@@ -87,11 +89,26 @@ in buildPythonPackage rec {
   # `inetutils` is required because importing `gpaw`, as part of
   # pythonImportsCheck, tries to execute its binary, which in turn tries to
   # execute `rsh` as a side-effect.
-  nativeBuildInputs = [ which inetutils ];
-
-  buildInputs = [ blas scalapack libxc libvdwxc ];
-
-  propagatedBuildInputs = [ ase scipy numpy mpi pyyaml ];
+  nativeBuildInputs = [
+    which
+    inetutils
+  ];
+
+  buildInputs = [
+    blas
+    scalapack
+    libxc
+    libvdwxc
+    fftw
+  ];
+
+  propagatedBuildInputs = [
+    ase
+    scipy
+    numpy
+    (lib.getBin mpi)
+    pyyaml
+  ];
 
   patches = [ ./SetupPath.patch ];
 
@@ -117,7 +134,9 @@ in buildPythonPackage rec {
   doCheck = false; # Requires MPI runtime to work in the sandbox
   pythonImportsCheck = [ "gpaw" ];
 
-  passthru = { inherit mpi; };
+  passthru = {
+    inherit mpi;
+  };
 
   meta = with lib; {
     description = "Density functional theory and beyond within the projector-augmented wave method";