Package: guix-patches;
Reported by: nomike <nomike <at> nomike.com>
Date: Wed, 7 May 2025 05:22:02 UTC
Severity: normal
Tags: patch
Done: Danny Milosavljevic <dannym <at> friendly-machines.com>
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 78293 in the body.
You can then email your comments to 78293 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
guix-patches <at> gnu.org
:bug#78293
; Package guix-patches
.
(Wed, 07 May 2025 05:22:02 GMT) Full text and rfc822 format available.nomike <nomike <at> nomike.com>
:guix-patches <at> gnu.org
.
(Wed, 07 May 2025 05:22:02 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 0/2] Update openscad to 2025.05.02 and add manifold Date: Wed, 7 May 2025 07:20:52 +0200
This is an update for openscad. The last official release was in 2021.01 and the project is currently preparing the next one, but it's uncertain when this will be out. In the meantime users are encouraged to use nightly builds and the devs claim they are stable and quite mature. Thus I worked on upgrading the package to a recent commit. Once the new release is out, it should be easy to update the package definition. I encountered a few bugs for which I opened tickets with the openscad project. I've put links to those in the comments. The upstream project also bundles the library manifold via git submodules. I have extracted it into it's own project. Someone from the project proposed a set of [build-flags](https://github.com/openscad/openscad/issues/5880#issuecomment-2848904434) which I ended up using. I couldn't get most of the tests to succeed which is probably due to the lack of a physical GPU inside the build container, so I disabled them. I also updated the package description with the one they have in their readme. nomike (2): gnu: Add manifold gnu: openscad: Upate to 2025.05.02 gnu/packages/engineering.scm | 253 +++++++++++++++++++++-------------- 1 file changed, 155 insertions(+), 98 deletions(-) -- 2.49.0
nomike <at> nomike.com, guix-patches <at> gnu.org
:bug#78293
; Package guix-patches
.
(Wed, 07 May 2025 05:33:02 GMT) Full text and rfc822 format available.Message #8 received at 78293 <at> debbugs.gnu.org (full text, mbox):
From: nomike <nomike <at> nomike.com> To: 78293 <at> debbugs.gnu.org Cc: nomike <nomike <at> nomike.com> Subject: [PATCH 1/2] gnu: Add manifold Date: Wed, 7 May 2025 07:31:49 +0200
* gnu/packages/engineering.scm (manifold): New variable Change-Id: Id400803644cf3256a1e79c4ec2e16381c230f370 --- gnu/packages/engineering.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 6d2aa021bb..3c0dcde0ea 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -42,6 +42,7 @@ ;;; Copyright © 2024 Juliana Sims <juli <at> incana.org> ;;; Copyright © 2024 Nguyễn Gia Phong <mcsinyx <at> disroot.org> ;;; Copyright © 2025 Frederick Muriuki Muriithi <fredmanglis <at> gmail.com> +;;; Copyright © 2025 nomike Postmann <nomike <at> 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") -- 2.49.0
nomike <at> nomike.com, guix-patches <at> gnu.org
:bug#78293
; Package guix-patches
.
(Wed, 07 May 2025 05:33:02 GMT) Full text and rfc822 format available.Message #11 received at 78293 <at> debbugs.gnu.org (full text, mbox):
From: nomike <nomike <at> nomike.com> To: 78293 <at> debbugs.gnu.org Cc: nomike <nomike <at> nomike.com> Subject: [PATCH 2/2] gnu: openscad: Upate to 2025.05.02 Date: Wed, 7 May 2025 07:31:50 +0200
* gnu/packages/engineering.scm (openscad): Upate to 2025.05.02 Change-Id: Ie260ce208f03c34bc29f01dadabf94ae840b8164 --- gnu/packages/engineering.scm | 224 ++++++++++++++++++++--------------- 1 file changed, 126 insertions(+), 98 deletions(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 3c0dcde0ea..1bc90b47c2 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -123,6 +123,7 @@ (define-module (gnu packages engineering) #:use-module (gnu packages imagemagick) #:use-module (gnu packages image-processing) #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages libcanberra) #:use-module (gnu packages libevent) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) ;FIXME: for pcb @@ -3182,104 +3183,131 @@ (define-public python-lcapy (license license:lgpl2.1+))) (define-public openscad - (package - (name "openscad") - (version "2021.01") - (source - (origin - (method url-fetch) - (uri (string-append "https://files.openscad.org/openscad-" version - ".src.tar.gz")) - (sha256 - (base32 - "0n83szr88h8snccjrslr96mgw3f65x3sq726n6x5vxp5wybw4f6r")) - (patches - ;; Upstream patches to make version 2021.01 build with recent versions - ;; of boost and cgal. - (search-patches "openscad-with-cgal-5.3.patch" - "openscad-with-cgal-5.4.patch" - "openscad-fix-boost-join.patch")))) - (build-system cmake-build-system) - (inputs - (list boost - cgal - double-conversion - eigen - fontconfig - glew - gmp - harfbuzz - lib3mf - libxml2 - libzip - mpfr - opencsg - qscintilla - qtbase-5 - qtmultimedia-5)) - (native-inputs - (list bison - flex - gettext-minimal - pkg-config - which - ;; the following are only needed for tests - imagemagick - procps - python - xorg-server-for-tests)) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (invoke "qmake" - (string-append "PREFIX=" (assoc-ref outputs "out"))))) - (replace 'check - (lambda _ - (with-directory-excursion "tests" - (invoke "cmake" ".") - (invoke "make") - (invoke "ctest" "--exclude-regex" - (string-join - (list - "astdumptest_allexpressions" - "echotest_function-literal-compare" - "echotest_function-literal-tests" - "echotest_allexpressions" - "lazyunion-*" - "pdfexporttest_centered" - "pdfexporttest_simple-pdf" - - ;; Broken due since cgal <at> 5.2 + - ;; https://github.com/CGAL/cgal/pull/5371 (security) - ;; FIXME: Investigate or wait for future releases to - ;; fix it. - ;; Unsure if wrong test-suite or wrong security - ;; patch. - "cgalpngtest_nef3_broken" - "opencsgtest_nef3_broken" - "csgpngtest_nef3_broken" - "throwntogethertest_nef3_broken" - - ;; FIXME: Tests probably broken by the patches allowing - ;; to build with recent cgal versions. - "cgalpngtest_polyhedron-nonplanar-tests" - "csgpngtest_polyhedron-nonplanar-tests" - "monotonepngtest_polyhedron-nonplanar-tests" - "cgalstlcgalpngtest_polyhedron-nonplanar-tests" - "cgalbinstlcgalpngtest_polyhedron-nonplanar-tests") - "|"))) - ;; strip python test files since lib dir ends up in out/share - (for-each delete-file - (find-files "libraries/MCAD" ".*\\.py"))))))) - (synopsis "Script-based 3D modeling application") - (description - "OpenSCAD is a 3D Computer-aided Design (CAD) application. Unlike an -interactive modeler, OpenSCAD generates 3D models from a script, giving you -full programmatic control over your models.") - (home-page "https://www.openscad.org/") - (license license:gpl2+))) + (let ((commit "d1351d6282abfd239cdd0c657f755d8c4a123ff8") + (version "2025.05.02") + (revision "0")) + (package + (name "openscad") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/openscad/openscad") + (commit commit) + (recursive? #t))) + (sha256 + (base32 "0cgls75dk9hjfym8rp0vpnnlz1fdawd746nnw3343gvhljqv36cn")) + (file-name (git-file-name name version)))) + (build-system qt-build-system) + (arguments + (list + #:configure-flags + #~(list "-DCMAKE_BUILD_TYPE=Release" + "-DUSE_BUILTIN_OPENCSG=ON" + "-DMANIFOLD_PYBIND=OFF" + "-DMANIFOLD_TEST=OFF" + "-DENABLE_TESTS=OFF" + "-DEXPERIMENTAL=ON" + "-DSNAPSHOT=ON" + "-DUSE_BUILTIN_CLIPPER2=OFF" + (string-append "-DOPENSCAD_VERSION=" + #$version) + (string-append "-DOPENSCAD_COMMIT=" + #$commit) + "-DENABLE_EGL=ON" + "-DENABLE_GLX=ON") + #:phases + #~(modify-phases %standard-phases + (delete 'check) + (add-after 'unpack 'patch-source + (lambda* (#:key inputs #:allow-other-keys) + ;; https://github.com/openscad/openscad/issues/5877 + (substitute* "cmake/Modules/FindLib3MF.cmake" + (("PC_LIB3MF_INCLUDE_DIRS") + "PC_LIB3MF_INCLUDEDIR")) + (substitute* "CMakeLists.txt" + ;; https://github.com/openscad/openscad/issues/5880 + (("target_link_libraries\\(OpenSCAD PRIVATE OpenGL::EGL\\)") + " find_package(ECM REQUIRED NO_MODULE) + list(APPEND CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) + find_package(EGL REQUIRED) + target_link_libraries(OpenSCAD PRIVATE EGL::EGL)") + ;; Use the system sanitizers-cmake module. + (("\\$\\{CMAKE_SOURCE_DIR\\}/submodules/sanitizers-cmake/cmake") + (string-append (assoc-ref inputs "sanitizers-cmake") + "/share/sanitizers-cmake/cmake")))))))) + (inputs (list boost + cairomm + cgal + clipper2 + double-conversion + eigen + egl-wayland + fontconfig + freetype + glew + glib + gmp + harfbuzz + hidapi + lib3mf + libcanberra + libspnav + libxml2 + libzip + manifold + mesa + ;; mesa-glvnd + mimalloc + mpfr + opencsg + qscintilla + qtbase-5 + qtmultimedia-5 + qtsvg-5 + qtwayland-5 + sanitizers-cmake + tbb)) + (native-inputs (list bison + extra-cmake-modules + flex + gettext-minimal + pkg-config + which + xvfb-run + ;; the following are only needed for tests + imagemagick + ghostscript + procps + python-numpy + python-pillow + python + xorg-server-for-tests)) + (synopsis "Script-based 3D modeling application") + (description + "OpenSCAD is a software for creating solid 3D CAD objects. It is free +software and available for Linux/UNIX, MS Windows and macOS. +Unlike most free software for creating 3D models (such as the famous +application Blender), OpenSCAD focuses on the CAD aspects rather than the +artistic aspects of 3D modeling. Thus this might be the application you are +looking for when you are planning to create 3D models of machine parts but +probably not the tool for creating computer-animated movies. +OpenSCAD is not an interactive modeler. Instead it is more like a 3D-compiler +that reads a script file that describes the object and renders the 3D model +from this script file. This gives you, the designer, complete control over the +modeling process and enables you to easily change any step in the modeling +process or make designs that are defined by configurable parameters. +OpenSCAD provides two main modeling techniques: First there is constructive +solid geometry (aka CSG) and second there is extrusion of 2D outlines. As the +data exchange format for these 2D outlines Autocad DXF files are used. In +addition to 2D paths for extrusion it is also possible to read design +parameters from DXF files. Besides DXF files OpenSCAD can read and create 3D +models in the STL and OFF file formats.") + (home-page "https://openscad.org/") + (license license:gpl2+)))) + + (define-public emacs-scad-mode (package -- 2.49.0
Danny Milosavljevic <dannym <at> friendly-machines.com>
to control <at> debbugs.gnu.org
.
(Fri, 09 May 2025 17:55:02 GMT) Full text and rfc822 format available.Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Sat, 07 Jun 2025 11:24:18 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.