mirror of
https://gitlab.univ-nantes.fr/glicid-public/guix-glicid.git
synced 2025-04-29 21:58:36 +02:00
125 lines
7.3 KiB
Scheme
125 lines
7.3 KiB
Scheme
(define-module (glicid packages science)
|
|
#:use-module (guix licenses)
|
|
#:use-module (guix packages)
|
|
#:use-module (guix download)
|
|
#:use-module (guix utils)
|
|
#:use-module (guix build utils)
|
|
#:use-module (guix build-system cmake)
|
|
#:use-module (guix build-system gnu)
|
|
#:use-module (gnu packages)
|
|
#:use-module (gnu packages pkg-config)
|
|
#:use-module (gnu packages qt)
|
|
#:use-module (gnu packages gl)
|
|
#:use-module (gnu packages boost)
|
|
#:use-module (gnu packages algebra)
|
|
#:use-module (gnu packages gdb)
|
|
#:use-module (gnu packages sqlite)
|
|
#:use-module (gnu packages image-processing)
|
|
#:use-module (gnu packages graphics)
|
|
#:use-module (gnu packages maths)
|
|
#:use-module (gnu packages mpi)
|
|
#:use-module (gnu packages python)
|
|
#:use-module (gnu packages python-xyz)
|
|
#:use-module (gnu packages sphinx)
|
|
#:use-module (gnu packages commencement)
|
|
#:use-module (gnu packages graphviz)
|
|
#:use-module (gnu packages multiprecision)
|
|
#:use-module (glicid packages mpi)
|
|
#:use-module (glicid utils))
|
|
|
|
(define-public loki
|
|
(package
|
|
(name "loki")
|
|
(version "0.1.7")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append
|
|
"https://downloads.sourceforge.net/project/loki-lib/Loki/Loki%200.1.7/loki-"
|
|
version ".zip"))
|
|
(sha256 (base32 "0p23k4dipk5nnfpvhhqj9apz8rhnd62qdydjmzx8q78sxpwims4w"))))
|
|
(build-system gnu-build-system)
|
|
(inputs `(("gcc-toolchain" ,gcc-toolchain)))
|
|
(synopsis "Loki is a C++ library of designs, containing flexible implementations of common design patterns and idioms.")
|
|
(description "Loki is the name of a C++ software library written by Andrei Alexandrescu as part of his book Modern C++ Design.
|
|
The library makes extensive use of C++ template metaprogramming and implements several commonly used tools: typelist, functor, singleton, smart pointer, object factory, visitor and multimethods.")
|
|
(home-page "http://loki-lib.sourceforge.net/index.php?n=Main.HomePage")
|
|
(license gpl3+)))
|
|
|
|
(define-public yade-2022.01a
|
|
(package
|
|
(name "yade")
|
|
(version "2022.01a")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://gitlab.com/yade-dev/trunk/-/archive/2022.01a/trunk-" version ".tar.gz"))
|
|
(sha256 (base32 "0k4hnvi70cqzl0q54kkbij6jwxydhfwcacp9s49n3fkaf1dihxiv"))))
|
|
(build-system cmake-build-system)
|
|
(arguments
|
|
`(#:configure-flags (list "-DENABLE_POTENTIAL_BLOCKS=OFF"
|
|
(string-append "-DCMAKE_INSTALL_PREFIX=" (assoc-ref %outputs "out"))
|
|
(string-append "-DQGLVIEWER_INCLUDE_DIR=" (assoc-ref %build-inputs "libqglviewer")))
|
|
#:phases (modify-phases %standard-phases
|
|
(add-after 'unpack 'post-unpack
|
|
(lambda* (#:key outputs inputs #:allow-other-keys)
|
|
(mkdir-p "./build")
|
|
(chdir "./build")))
|
|
(replace 'configure
|
|
(lambda* (#:key inputs outputs configure-flags
|
|
#:allow-other-keys)
|
|
(let ((out (assoc-ref outputs "out")))
|
|
(apply invoke "cmake" "../" configure-flags)))))
|
|
#:tests? #f))
|
|
(propagated-inputs `(("gdb" ,gdb)
|
|
("sqlite" ,sqlite)
|
|
("openmpi" ,openmpi)
|
|
("python" ,python)
|
|
("python-numpy" ,python-numpy)
|
|
("python-matplotlib" ,python-matplotlib)
|
|
("python-sphinx" ,python-sphinx)
|
|
("python-ipython" ,python-ipython)
|
|
("python-mpi4py" ,python-mpi4py)
|
|
("python-mpmath" ,python-mpmath)
|
|
("python-pygraphviz" ,python-pygraphviz)
|
|
("python-xlib" ,python-xlib)
|
|
("python-future" ,python-future)
|
|
("python-pyqt" ,python-pyqt)
|
|
("python-pyqtwebengine" ,python-pyqtwebengine)
|
|
("python-qtpy" ,python-qtpy)))
|
|
(inputs `(("boost" ,boost)
|
|
("qtbase-5" ,qtbase-5)
|
|
("freeglut" ,freeglut)
|
|
("gts" ,gts)
|
|
("pkg-config" ,pkg-config)
|
|
("libqglviewer" ,libqglviewer)
|
|
("eigen" ,eigen)
|
|
("openblas" ,openblas)
|
|
("suitesparse" ,suitesparse)
|
|
("gcc-toolchain" ,gcc-toolchain)
|
|
("metis" ,metis)
|
|
("cgal" ,cgal)
|
|
("qtsvg" ,qtsvg)
|
|
("qtwebengine" ,qtwebengine)
|
|
("mpfr" ,mpfr)))
|
|
|
|
(synopsis "Yade is an extensible open-source framework for discrete numerical models, focused on Discrete Element Method.")
|
|
(description "Yade is an extensible open-source framework for discrete numerical models, focused on Discrete Element Method. The computation parts are written in c++ using flexible object model, allowing independent implementation of new algorithms and interfaces. Python is used for rapid and concise scene construction, simulation control, postprocessing and debugging.")
|
|
(home-page "https://www.yade-dem.org/")
|
|
(license gpl3+)))
|
|
|
|
(define-public yade-2023.02a
|
|
(package
|
|
(inherit yade-2022.01a)
|
|
(version "2023.02a")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://gitlab.com/yade-dev/trunk/-/archive/2023.02a/trunk-" version ".tar.gz"))
|
|
(sha256 (base32 "1hdhxyaqdavrwpvam759835zyhn49c777kclz9p720pjlw55lszp"))))))
|
|
|
|
(define-public yade yade-2022.01a)
|
|
|
|
(define-public yade-glicid-waves
|
|
(package
|
|
(inherit yade)
|
|
(name "yade-glicid-waves")))
|
|
|
|
|