[bug#78293,1/2] gnu: Add manifold
Commit Message
* gnu/packages/engineering.scm (manifold): New variable
Change-Id: Id400803644cf3256a1e79c4ec2e16381c230f370
---
gnu/packages/engineering.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
@@ -42,6 +42,7 @@
;;; Copyright © 2024 Juliana Sims <juli@incana.org>
;;; Copyright © 2024 Nguyễn Gia Phong <mcsinyx@disroot.org>
;;; Copyright © 2025 Frederick Muriuki Muriithi <fredmanglis@gmail.com>
+;;; Copyright © 2025 nomike Postmann <nomike@nomike.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2918,6 +2919,34 @@ (define-public lib3mf
(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")