GNU bug report logs - #78171
[PATCH] gnu: Add manifold

Previous Next

Package: guix-patches;

Reported by: nomike <nomike <at> nomike.com>

Date: Thu, 1 May 2025 02:45:02 UTC

Severity: normal

Tags: patch

Done: Nicolas Graves <ngraves <at> ngraves.fr>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 78171 in the body.
You can then email your comments to 78171 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#78171; Package guix-patches. (Thu, 01 May 2025 02:45:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to nomike <nomike <at> nomike.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Thu, 01 May 2025 02:45:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: nomike <nomike <at> nomike.com>
To: guix-patches <at> gnu.org
Cc: nomike <nomike <at> nomike.com>
Subject: [PATCH] gnu: Add manifold
Date: Thu,  1 May 2025 04:44:20 +0200
* gnu/packages/engineering.scm (manifold): New variable

Change-Id: If275c2dea4b799256b78b8efd4411ecf069a5e8d
---
 gnu/packages/engineering.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index f472d1127f..f7d9126753 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -2917,6 +2917,38 @@ (define-public lib3mf
     (home-page "https://3mf.io/")
     (license license:bsd-2)))
 
+(define-public manifold
+  (package
+    (name "manifold")
+    (version "v3.0.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/elalish/manifold")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1f0k8937gk7b9100k99pmz1f17nzczpdk7797p2aijla0z29ddy1"))))
+    (build-system cmake-build-system)
+    (native-inputs (list))
+    (inputs (list tbb clipper2 assimp python-nanobind googletest))
+    (arguments
+     `(#:configure-flags '("-DMANIFOLD_JSBIND=OFF"))) ;can be removed when emscripten is packaged
+    (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.
+     Our primary goal is reliability: guaranteed manifold output without
+     caveats or edge cases. Our secondary goal is performance: efficient
+     algorithms that make extensive use of parallelization, or pipelining
+     when only a single thread is available.")
+    (home-page "https://github.com/elalish/manifold")
+    (license license:asl2.0)))
+
 (define-public python-keithley2600
   (package
     (name "python-keithley2600")
-- 
2.49.0





Information forwarded to guix-patches <at> gnu.org:
bug#78171; Package guix-patches. (Thu, 01 May 2025 02:57:02 GMT) Full text and rfc822 format available.

Message #8 received at 78171 <at> debbugs.gnu.org (full text, mbox):

From: nomike <nomike <at> nomike.com>
To: 78171 <at> debbugs.gnu.org
Cc: nomike <nomike <at> nomike.com>
Subject: [PATCH] gnu: Add manifold
Date: Thu,  1 May 2025 04:56:02 +0200
* gnu/packages/engineering.scm (manifold): New variable

Change-Id: I13c0e5369923e5e972ee2a8b95ae892fadfd4154
---
v2 as I initially forgot to remove the "v" prefix from the version number.

 gnu/packages/engineering.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index f472d1127f..3d8e6780dd 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -2917,6 +2917,38 @@ (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)
+    (native-inputs (list))
+    (inputs (list tbb clipper2 assimp python-nanobind googletest))
+    (arguments
+     `(#:configure-flags '("-DMANIFOLD_JSBIND=OFF"))) ; can be removed when emscripten is packaged
+    (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.
+     Our primary goal is reliability: guaranteed manifold output without
+     caveats or edge cases. Our secondary goal is performance: efficient
+     algorithms that make extensive use of parallelization, or pipelining
+     when only a single thread is available.")
+    (home-page "https://github.com/elalish/manifold")
+    (license license:asl2.0)))
+
 (define-public python-keithley2600
   (package
     (name "python-keithley2600")
-- 
2.49.0





Information forwarded to guix-patches <at> gnu.org:
bug#78171; Package guix-patches. (Mon, 05 May 2025 11:15:01 GMT) Full text and rfc822 format available.

Message #11 received at 78171 <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Graves <ngraves <at> ngraves.fr>
To: nomike <nomike <at> nomike.com>, 78171 <at> debbugs.gnu.org
Cc: nomike <nomike <at> nomike.com>
Subject: Re: [bug#78171] [PATCH] gnu: Add manifold
Date: Mon, 05 May 2025 13:13:56 +0200
On 2025-05-01 04:56, nomike <at> nomike.com wrote:

> * gnu/packages/engineering.scm (manifold): New variable
>
> Change-Id: I13c0e5369923e5e972ee2a8b95ae892fadfd4154
> ---
> v2 as I initially forgot to remove the "v" prefix from the version number.
>
>  gnu/packages/engineering.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
> index f472d1127f..3d8e6780dd 100644
> --- a/gnu/packages/engineering.scm
> +++ b/gnu/packages/engineering.scm
> @@ -2917,6 +2917,38 @@ (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)
> +    (native-inputs (list))

If you don't need native-inputs, you can drop the field instead.

> +    (inputs (list tbb clipper2 assimp python-nanobind googletest))
> +    (arguments
> +     `(#:configure-flags '("-DMANIFOLD_JSBIND=OFF"))) ; can be removed when emscripten is packaged
> +    (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.
> +     Our primary goal is reliability: guaranteed manifold output without
> +     caveats or edge cases. Our secondary goal is performance: efficient
                              ^ You forgot a space here.
                             
> +     algorithms that make extensive use of parallelization, or pipelining
> +     when only a single thread is available.")
> +    (home-page "https://github.com/elalish/manifold")
> +    (license license:asl2.0)))
> +
>  (define-public python-keithley2600
>    (package
>      (name "python-keithley2600")

-- 
Best regards,
Nicolas Graves




Information forwarded to guix-patches <at> gnu.org:
bug#78171; Package guix-patches. (Mon, 05 May 2025 11:35:01 GMT) Full text and rfc822 format available.

Message #14 received at 78171 <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Graves <ngraves <at> ngraves.fr>
To: nomike <nomike <at> nomike.com>, 78171 <at> debbugs.gnu.org
Cc: nomike <nomike <at> nomike.com>
Subject: Re: [bug#78171] [PATCH] gnu: Add manifold
Date: Mon, 05 May 2025 13:33:57 +0200
On 2025-05-01 04:56, nomike <at> nomike.com wrote:

> * gnu/packages/engineering.scm (manifold): New variable
>
> Change-Id: I13c0e5369923e5e972ee2a8b95ae892fadfd4154
> ---
> v2 as I initially forgot to remove the "v" prefix from the version number.
>
>  gnu/packages/engineering.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
> index f472d1127f..3d8e6780dd 100644
> --- a/gnu/packages/engineering.scm
> +++ b/gnu/packages/engineering.scm
> @@ -2917,6 +2917,38 @@ (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)
> +    (native-inputs (list))
> +    (inputs (list tbb clipper2 assimp python-nanobind googletest))
> +    (arguments
> +     `(#:configure-flags '("-DMANIFOLD_JSBIND=OFF"))) ; can be removed when emscripten is packaged

The above line is too long.  You can move the comment in a ;; XXX: Can be...
above this line.

> +    (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.
> +     Our primary goal is reliability: guaranteed manifold output without
> +     caveats or edge cases. Our secondary goal is performance: efficient
> +     algorithms that make extensive use of parallelization, or pipelining
> +     when only a single thread is available.")

This description is not right.
1) Here you add a few spaces with each line, but description is a single
string, so you shouldn't have such line blank prefix.
2) "Our primary/secondary goal" is not right for Guix descriptions.  You
could rewrite somethign like
Manifold focusses first on reliability : guaranteed [...] ; but also on
performance : efficient [...].
Or you can drop them, they don't add a lot of descriptive value.


TY Nomike! Otherwise it looks good to me.
 
> +    (home-page "https://github.com/elalish/manifold")
> +    (license license:asl2.0)))
> +
>  (define-public python-keithley2600
>    (package
>      (name "python-keithley2600")

-- 
Best regards,
Nicolas Graves




Information forwarded to guix-patches <at> gnu.org:
bug#78171; Package guix-patches. (Wed, 07 May 2025 06:01:01 GMT) Full text and rfc822 format available.

Message #17 received at 78171 <at> debbugs.gnu.org (full text, mbox):

From: "nomike (they/them)" <nomike <at> nomike.com>
To: 78171 <at> debbugs.gnu.org
Subject: Re: [bug#78171] [PATCH] gnu: Add manifold
Date: Wed, 7 May 2025 08:00:25 +0200
Thanks a lot for the feedback Nicolas.

manifold is a prerequisite for updating openscad and as I've just 
finalized it's updated package definition, I decided to [submit both 
packages together](https://issues.guix.gnu.org/78293).

I took your feedback into account of course.

IMHO this bug here can be closed.





bug closed, send any further explanations to 78171 <at> debbugs.gnu.org and nomike <nomike <at> nomike.com> Request was from Nicolas Graves <ngraves <at> ngraves.fr> to control <at> debbugs.gnu.org. (Wed, 07 May 2025 07:51:01 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 04 Jun 2025 11:24:20 GMT) Full text and rfc822 format available.

This bug report was last modified 13 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.