;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net>
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
+;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;;
;;; This file is part of GNU Guix.
;;;
(define-module (gnu packages chemistry)
#:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
+ #:use-module (gnu packages boost)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages documentation)
+ #:use-module (gnu packages gl)
#:use-module (gnu packages gv)
#:use-module (gnu packages maths)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages xml)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python))
+(define-public avogadro
+ (package
+ (name "avogadro")
+ (version "1.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/cryos/avogadro.git")
+ (commit version)))
+ (sha256
+ (base32 "0258py3lkba85qhs5ynancinyym61vlp0zaq9yrfs3hhnhpzv9n2"))
+ (file-name (git-file-name name version))
+ (patches
+ (search-patches "avogadro-eigen3-update.patch"
+ "avogadro-python-eigen-lib.patch"
+ "avogadro-boost148.patch"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f
+ #:configure-flags
+ (list "-DENABLE_GLSL=ON"
+ (string-append "-DPYTHON_LIBRARIES="
+ (assoc-ref %build-inputs "python")
+ "/lib")
+ (string-append "-DPYTHON_INCLUDE_DIRS="
+ (assoc-ref %build-inputs "python")
+ "/include/python"
+ ,(version-major+minor
+ (package-version python))))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-python-lib-path
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; This is necessary to install the Python module in the correct
+ ;; directory.
+ (substitute* "libavogadro/src/python/CMakeLists.txt"
+ (("^EXECUTE_PROCESS.*$") "")
+ (("^.*from sys import stdout.*$") "")
+ (("^.*OUTPUT_VARIABLE.*")
+ (string-append "set(PYTHON_LIB_PATH \""
+ (assoc-ref outputs "out")
+ "/lib/python"
+ ,(version-major+minor
+ (package-version python))
+ "/site-packages\")")))
+ #t))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Make sure 'avogadro' runs with the correct PYTHONPATH.
+ (let* ((out (assoc-ref outputs "out")))
+ (setenv "PYTHONPATH"
+ (string-append
+ (assoc-ref outputs "out")
+ "/lib/python"
+ ,(version-major+minor
+ (package-version python))
+ "/site-packages:"
+ (getenv "PYTHONPATH")))
+ (wrap-program (string-append out "/bin/avogadro")
+ `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))))
+ #t)))))
+ (native-inputs
+ `(("doxygen" ,doxygen)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("boost" ,boost)
+ ("eigen" ,eigen)
+ ("glew" ,glew)
+ ("openbabel" ,openbabel)
+ ("python" ,python-2)
+ ("python-numpy" ,python2-numpy)
+ ("python-pyqt" ,python2-pyqt-4)
+ ("python-sip" ,python2-sip)
+ ("qt" ,qt-4)
+ ("zlib" ,zlib)))
+ (home-page "https://avogadro.cc")
+ (synopsis "Advanced molecule editor")
+ (description
+ "Avogadro is an advanced molecule editor and visualizer designed for use
+in computational chemistry, molecular modeling, bioinformatics, materials
+science, and related areas. It offers flexible high quality rendering and a
+powerful plugin architecture.")
+ (license license:gpl2+)))
+
(define-public domainfinder
(package
(name "domainfinder")
`(#:python ,python-2
;; No test suite
#:tests? #f))
- (home-page "http://dirac.cnrs-orleans.fr/DomainFinder")
+ (home-page "http://dirac.cnrs-orleans.fr/DomainFinder.html")
(synopsis "Analysis of dynamical domains in proteins")
(description "DomainFinder is an interactive program for the determination
and characterization of dynamical domains in proteins. It can infer dynamical
(version "3.0.11")
(source
(origin
- (method url-fetch)
- (uri (string-append "https://bitbucket.org/khinsen/"
- "nmoldyn3/downloads/nMOLDYN-"
- version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/khinsen/nMOLDYN3")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1mvmz3lkr217kdrd8cvdr1d82y58wp1403c9rnd943mijgq8xb5a"))))
+ "016h4bqg419p6s7bcx55q5iik91gqmk26hbnfgj2j6zl0j36w51r"))))
(build-system python-build-system)
(inputs
`(("python-matplotlib" ,(with-numpy-1.8 python2-matplotlib))
;; Show documentation as PDF
(("PREFERENCES\\['documentation_style'\\] = 'html'")
"PREFERENCES['documentation_style'] = 'pdf'") ))))))
- (home-page "http://dirac.cnrs-orleans.fr/nMOLDYN/")
+ (home-page "http://dirac.cnrs-orleans.fr/nMOLDYN.html")
(synopsis "Analysis software for Molecular Dynamics trajectories")
(description "nMOLDYN is an interactive analysis program for Molecular Dynamics
simulations. It is especially designed for the computation and decomposition of