28 assert (!blas.isILP64) && (!lapack.isILP64);
29 assert (blas.isILP64 == arpack.isILP64);
31 stdenv.mkDerivation rec {
35 src = fetchFromGitLab {
36 owner = "octopus-code";
39 hash = "sha256-8wZR+bYdxJFsUPMWbIGYxRdNzjLgHm+KFLjY7fSN7io=";
64 (python3.withPackages (ps: [ ps.pyyaml ]))
65 ] ++ lib.optional enableMpi scalapack;
67 propagatedBuildInputs = lib.optional enableMpi mpi;
68 propagatedUserEnvPkgs = lib.optional enableMpi mpi;
71 (lib.cmakeBool "OCTOPUS_MPI" enableMpi)
72 (lib.cmakeBool "OCTOPUS_ScaLAPACK" enableMpi)
73 (lib.cmakeBool "OCTOPUS_OpenMP" true)
76 nativeCheckInputs = lib.optional.enableMpi mpi;
78 checkTarget = "check-short";
85 patchShebangs testsuite/oct-run_testsuite.sh
88 enableParallelBuilding = true;
90 passthru = lib.attrsets.optionalAttrs enableMpi { inherit mpi; };
93 description = "Real-space time dependent density-functional theory code";
94 homepage = "https://octopus-code.org";
95 maintainers = with maintainers; [ markuskowa ];
96 license = with licenses; [ gpl2Only asl20 lgpl3Plus bsd3 ];
97 platforms = [ "x86_64-linux" ];