diff options
-rw-r--r-- | pkgs/applications/science/chemistry/openmolcas/default.nix | 72 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
2 files changed, 74 insertions, 0 deletions
diff --git a/pkgs/applications/science/chemistry/openmolcas/default.nix b/pkgs/applications/science/chemistry/openmolcas/default.nix new file mode 100644 index 000000000000..5e1628a4fba7 --- /dev/null +++ b/pkgs/applications/science/chemistry/openmolcas/default.nix @@ -0,0 +1,72 @@ +{ stdenv, pkgs, fetchFromGitLab, cmake, gfortran, perl +, openblas, hdf5-cpp, python3, texlive +, armadillo, openmpi, globalarrays, openssh +, makeWrapper +} : + +let + version = "20180529"; + gitLabRev = "b6b9ceffccae0dd7f14c099468334fee0b1071fc"; + + python = python3.withPackages (ps : with ps; [ six pyparsing ]); + +in stdenv.mkDerivation { + name = "openmolcas-${version}"; + + src = fetchFromGitLab { + owner = "Molcas"; + repo = "OpenMolcas"; + rev = gitLabRev; + sha256 = "1wbjjdv07lg1x4kdnf28anyrjgy33gdgrd5d7zi1c97nz7vhdjaz"; + }; + + nativeBuildInputs = [ perl cmake texlive.combined.scheme-minimal makeWrapper ]; + buildInputs = [ + gfortran + openblas + hdf5-cpp + python + armadillo + openmpi + globalarrays + openssh + ]; + + enableParallelBuilding = true; + + cmakeFlags = [ + "-DOPENMP=ON" + "-DGA=ON" + "-DMPI=ON" + "-DLINALG=OpenBLAS" + "-DTOOLS=ON" + "-DHDF5=ON" + "-DFDE=ON" + "-DOPENBLASROOT=${openblas}" + ]; + + GAROOT=globalarrays; + + postConfigure = '' + # The Makefile will install pymolcas during the build grrr. + mkdir -p $out/bin + export PATH=$PATH:$out/bin + ''; + + postFixup = '' + # Wrong store path in shebang (no Python pkgs), force re-patching + sed -i "1s:/.*:/usr/bin/env python:" $out/bin/pymolcas + patchShebangs $out/bin + + wrapProgram $out/bin/pymolcas --set MOLCAS $out + ''; + + meta = with stdenv.lib; { + description = "Advanced quantum chemistry software package"; + homepage = https://gitlab.com/Molcas/OpenMolcas; + maintainers = [ maintainers.markuskowa ]; + license = licenses.lgpl21; + platforms = platforms.linux; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5b179ef8490e..e09406cdefe9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20278,6 +20278,8 @@ with pkgs; octopus = callPackage ../applications/science/chemistry/octopus { openblas=openblasCompat; }; + openmolcas = callPackage ../applications/science/chemistry/openmolcas { }; + pymol = callPackage ../applications/science/chemistry/pymol { }; ### SCIENCE/GEOMETRY |