diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index bec1efc245..5feef64efc 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -42,6 +42,7 @@ ;;; Copyright © 2024 Juliana Sims ;;; Copyright © 2024 Nguyễn Gia Phong ;;; Copyright © 2025 Frederick Muriuki Muriithi +;;; Copyright © 2025 nomike Postmann ;;; ;;; This file is part of GNU Guix. ;;; @@ -2919,6 +2920,34 @@ specification can be downloaded at @url{http://3mf.io/specification/}.") (home-page "https://3mf.io/") (license license:bsd-2))) +(define-public manifold + (package + (name "manifold") + (version "3.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/elalish/manifold") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1f0k8937gk7b9100k99pmz1f17nzczpdk7797p2aijla0z29ddy1")))) + (build-system cmake-build-system) + (inputs (list tbb clipper2 assimp python-nanobind googletest)) + (arguments + ;; can be removed when emscripten is packaged + `(#:configure-flags '("-DMANIFOLD_JSBIND=OFF"))) + (synopsis "Geometry library for topological robustness") + (description + "Manifold is a geometry library dedicated to creating and operating on +manifold triangle meshes. A manifold mesh is a mesh that represents a solid +object, and so is very important in manufacturing, CAD, structural analysis, +etc.. Manifold also supports arbitrary vertex properties and enables mapping +of materials for rendering use-cases.") + (home-page "https://github.com/elalish/manifold") + (license license:asl2.0))) + (define-public python-keithley2600 (package (name "python-keithley2600")