diff --git a/glicid-non-free/packages/staging.scm b/glicid-non-free/packages/staging.scm new file mode 100644 index 0000000..a87cf91 --- /dev/null +++ b/glicid-non-free/packages/staging.scm @@ -0,0 +1,137 @@ +(define-module (glicid-non-free packages staging) + #: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 + (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"))) + ;; (string-append "-DQGLVIEWER_INCLUDE_DIR=" + ;; 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)) + ;; (lambda _ (invoke + ;; "cmake" "../trunk" + ;; configure-flags)))))) + (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) + ;; ("qt" ,qt) + ("freeglut" ,freeglut) + ("gts" ,gts) + ("pkg-config" ,pkg-config) + ("libqglviewer" ,libqglviewer) + ("eigen" ,eigen) + ;; ("loki" ,loki) + ;; ("vtk" ,vtk) +; ("qtwebkit" ,qtwebkit) + ("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-glicid-waves + (package + (inherit (transform-package ((instead-of "openmpi-glicid-waves" openmpi) + yade) "waves")) + (name "yade-glicid-waves"))) + +yade-glicid-waves \ No newline at end of file