[PATCH 00/10] WIP Ultimaker Cura

OpenSubmitted by Malte Frank Gerdes.
Details
2 participants
  • Efraim Flashner
  • Malte Frank Gerdes
Owner
unassigned
Severity
normal
M
M
Malte Frank Gerdes wrote 4 days ago
(address . guix-patches@gnu.org)
86v9f95eip.fsf@gmail.com
Hi,
this series adds Ultimakers Cura software to Guix. It's WIP because the curaprogram itself segfaults while starting and i am not getting further as to whythis happens. It would be great if someone interested could take a look :-)
The trimesh python library cannot be built, because pyinstrument-cext can't bebuilt. This is due to the fact that the used URLs to fetch the source archivedon't exist. I have yet to find out how they are generated.
The python packages should be at the correct place, but i'm not usre where thecura packages should be placed. Is engineering.scm the right place? If so i willsort them alphabetically.

Malte
Malte Frank Gerdes (10): gnu: Add libArcus. gnu: Add cura-engine. gnu: Add cura-binary-data. gnu: Add uranium. gnu: Add libCharon. gnu: Add libSavitar. gnu: Add cura. gnu: Add python-pyinstrument-cext. gnu: Add python-pyinstrument. gnu: Add python-trimesh.
gnu/packages/engineering.scm | 293 ++++++++++++++++++++++++++++++++ gnu/packages/python-check.scm | 39 +++++ gnu/packages/python-science.scm | 29 ++++ 3 files changed, 361 insertions(+)
--2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 01/10] gnu: Add libArcus.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-1-malte.f.gerdes@gmail.com
* gnu/packages/engineering.scm (libArcus): New variable.--- gnu/packages/engineering.scm | 47 ++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+)
Toggle diff (71 lines)diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scmindex 2e1ffa1355..5c5db6a17e 100644--- a/gnu/packages/engineering.scm+++ b/gnu/packages/engineering.scm@@ -21,6 +21,7 @@ ;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;;@@ -101,6 +102,7 @@ #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config)+ #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt)@@ -2825,3 +2827,48 @@ GUI.") provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them.") (license license:gpl3+))))++(define-public libArcus+ (let ((commit "3925125768bac03fafd9b51dceeae2ca1de0f37f")+ (revision "0"))+ (package+ (name "libArcus")+ (version (string-append "4.7.1-" revision "."+ (string-take commit 7)))+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/Ultimaker/libArcus")+ (commit commit)))+ (file-name (string-append name "-" version "-checkout"))+ (sha256+ (base32 "0kbv0pi8y4a4lrmac595nm0kx4sfxilf3qj7fcda5pzxv9xkvxk9"))))+ (build-system cmake-build-system)+ (inputs+ `(("protobuf" ,protobuf)+ ("python" ,python)+ ("python-sip" ,python-sip)))+ (arguments+ `(#:tests? #false+ #:configure-flags '("-DBUILD_EXAMPLES=OFF")+ #:phases (modify-phases %standard-phases+ (add-before 'configure 'fix-python-sitearch+ (lambda* (#:key outputs #:allow-other-keys)+ (substitute* "cmake/FindSIP.cmake"+ (("\\$\\{_process_output\\} Python3_SITEARCH")+ (string-append (assoc-ref outputs "out")+ "/lib/python"+ ,(version-major+minor+ (package-version python))+ "/site-packages"+ " Python3_SITEARCH"))))))))+ (home-page "https://github.com/Ultimaker/libArcus")+ (synopsis "Communication library between internal components for+Ultimaker software")+ (description "This library contains C++ code and Python3 bindings for+creating a socket in a thread and using this socket to send and receive+messages based on the Protocol Buffers library. It is designed to+facilitate the communication between Cura and its backend and similar code.")+ (license license:lgpl3))))+-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 02/10] gnu: Add cura-engine.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-2-malte.f.gerdes@gmail.com
* gnu/packages/engineering.scm (cura-engine): New variable.--- gnu/packages/engineering.scm | 46 ++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+)
Toggle diff (63 lines)diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scmindex 5c5db6a17e..c06b9aebf9 100644--- a/gnu/packages/engineering.scm+++ b/gnu/packages/engineering.scm@@ -107,6 +107,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages readline)+ #:use-module (gnu packages stb) #:use-module (gnu packages swig) #:use-module (gnu packages tbb) #:use-module (gnu packages tcl)@@ -2872,3 +2873,48 @@ messages based on the Protocol Buffers library. It is designed to facilitate the communication between Cura and its backend and similar code.") (license license:lgpl3)))) +(define-public cura-engine+ (package+ (name "cura-engine")+ (version "4.7.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/Ultimaker/CuraEngine")+ (commit version)))+ (file-name (git-file-name name version))+ (sha256+ (base32 "177fk6j4gn3ssi8j1qxj8p4486f7jkz328vc75agxnh7vhd4mwsm"))))+ (build-system cmake-build-system)+ (native-inputs+ `(("pkg-config" ,pkg-config)+ ("googletest" ,googletest)))+ (inputs+ `(("protobuf" ,protobuf)+ ("libArcus" ,libArcus)+ ("stb-image" ,stb-image)))+ (arguments+ `(#:configure-flags '("-DBUILD_TESTS=ON")+ #:phases (modify-phases %standard-phases+ (add-before 'configure 'patch-source+ (lambda* (#:key inputs #:allow-other-keys)+ (substitute* "../source/cmake/FindStb.cmake"+ (("/usr/include")+ (string-append (assoc-ref inputs "stb-image")+ "/include"))+ (("stb/stb_image_resize.h")+ "stb_image.h"))+ (substitute*+ "../source/src/infill/ImageBasedDensityProvider.cpp"+ (("stb/stb_image.h")+ "stb_image.h"))+ #true)))))+ (home-page "https://github.com/Ultimaker/CuraEngine")+ (synopsis "Cura slicing engine")+ (description "CuraEngine is a powerful, fast and robust engine for+processing 3D models into 3D printing instruction for Ultimaker and other+GCode based 3D printers. It is part of the larger open source project called+Cura.")+ (license license:agpl3)))+-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 03/10] gnu: Add cura-binary-data.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-3-malte.f.gerdes@gmail.com
* gnu/packages/engineering.scm (cura-binary-data): New variable.--- gnu/packages/engineering.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+)
Toggle diff (33 lines)diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scmindex c06b9aebf9..e36abe0dbd 100644--- a/gnu/packages/engineering.scm+++ b/gnu/packages/engineering.scm@@ -2918,3 +2918,26 @@ GCode based 3D printers. It is part of the larger open source project called Cura.") (license license:agpl3))) +(define-public cura-binary-data+ (package+ (name "cura-binary-data")+ (version "4.7.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/Ultimaker/cura-binary-data")+ (commit version)))+ (file-name (git-file-name name version))+ (sha256+ (base32 "17gsfv32dynx70g4bbrcxf3jn9bzplbfpfb4f4gvhrd4p3cn6q6k"))))+ (build-system cmake-build-system)+ (arguments+ `(#:tests? #false+ #:configure-flags '("-DENABLE_FIRMWARE_INSTALL=OFF")))+ (home-page "https://github.com/Ultimaker/cura-binary-data")+ (synopsis "Binary data for Cura, like compiled translations.")+ (description "Contains binary data for Cura releases, like compiled+translations. Prebuilt Firmware files are removed.")+ (license license:agpl3)))+-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 05/10] gnu: Add libCharon.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-5-malte.f.gerdes@gmail.com
* gnu/packages/engineering.scm (libCharon): New variable.--- gnu/packages/engineering.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+)
Toggle diff (34 lines)diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scmindex 1b4cb391b3..27d4eae948 100644--- a/gnu/packages/engineering.scm+++ b/gnu/packages/engineering.scm@@ -3009,3 +3009,27 @@ related Desktop Applications using PyQt5. It belongs to the Cura project from Ultimaker.") (license license:lgpl3))) +(define-public libCharon+ (package+ (name "libCharon")+ (version "4.7.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/Ultimaker/libCharon")+ (commit version)))+ (file-name (git-file-name name version))+ (sha256+ (base32 "1hcjbn29rlvy4xcscnnnyck91fg9cvnc73x50g1ir3y3l1gplc2k"))))+ (build-system cmake-build-system)+ (native-inputs+ `(("pytest" ,python-pytest)))+ (inputs+ `(("python" ,python)))+ (home-page "https://github.com/Ultimaker/libCharon")+ (synopsis "File metadata and streaming library")+ (description "libCharon is a python file metadata and streaming library. It+belongs to the Cura project from Ultimaker.")+ (license license:lgpl3)))+-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 04/10] gnu: Add uranium.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-4-malte.f.gerdes@gmail.com
* gnu/packages/engineering.scm (uranium): New variable.--- gnu/packages/engineering.scm | 68 ++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+)
Toggle diff (85 lines)diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scmindex e36abe0dbd..1b4cb391b3 100644--- a/gnu/packages/engineering.scm+++ b/gnu/packages/engineering.scm@@ -104,6 +104,10 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages protobuf) #:use-module (gnu packages python)+ #:use-module (gnu packages python-check)+ #:use-module (gnu packages python-crypto)+ #:use-module (gnu packages python-science)+ #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages readline)@@ -2941,3 +2945,67 @@ Cura.") translations. Prebuilt Firmware files are removed.") (license license:agpl3))) +(define-public uranium+ (package+ (name "uranium")+ (version "4.7.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/Ultimaker/Uranium")+ (commit version)))+ (file-name (git-file-name name version))+ (sha256+ (base32 "1h5d3scy3cnbyhh0pbavflpqklhn2lbp7hl193rc5gx8yzr3mqbh"))))+ (build-system cmake-build-system)+ (native-inputs+ `(("pkg-config" ,pkg-config)+ ("pytest" ,python-pytest)+ ("mypy" ,python-mypy)+ ("certifi" ,python-certifi)+ ("twisted" ,python-twisted)+ ("doxygen" ,doxygen)+ ("graphviz" ,graphviz)+ ("gettext" ,gettext-minimal)))+ (propagated-inputs+ `(("cura-binary-data" ,cura-binary-data)+ ("qtbase" ,qtbase)+ ("qtdeclarative" ,qtdeclarative)+ ("qtcontrols2" ,qtquickcontrols2)+ ("qtcontrols" ,qtquickcontrols)+ ("qtgraphicaleffects" ,qtgraphicaleffects)+ ("pyQt5" ,python-pyqt)+ ("numpy" ,python-numpy)+ ("arcus" ,libArcus)+ ("shapely" ,python-shapely)+ ("scipy" ,python-scipy)+ ("python" ,python)+ ("cryptography" ,python-cryptography)+ ;; ("trimesh" ,python-trimesh)+ ))+ (arguments+ `(#:tests? #false ;; tests are disabled, because they cause an infinite loop+ #:configure-flags+ `(,(string-append "-DGETTEXT_MSGINIT_EXECUTABLE="+ (assoc-ref %build-inputs "gettext") "/bin/msginit")+ ,(string-append "-DCURA_BINARY_DATA_DIRECTORY="+ (assoc-ref %build-inputs "cura-binary-data")))+ #:phases+ (modify-phases %standard-phases+ (add-before 'configure 'fix-uranium-plugin-path+ (lambda* (#:key outputs #:allow-other-keys)+ (substitute* "UM/Application.py"+ (("app_root =.*$")+ (string-append "app_root = \""+ (assoc-ref outputs "out") "\"\n"))+ (("app_root, \"share\", \"uranium\", \"plugins\"")+ "app_root, \"lib\", \"uranium\", \"plugins\""))+ #true)))))+ (home-page "https://github.com/Ultimaker/Uranium")+ (synopsis "Python Framework for building Desktop applications")+ (description "Uranium is a Python Framework for building 3D Printing+related Desktop Applications using PyQt5. It belongs to the Cura project+from Ultimaker.")+ (license license:lgpl3)))+-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 06/10] gnu: Add libSavitar.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-6-malte.f.gerdes@gmail.com
* gnu/packages/engineering.scm (libSavitar): New variable.--- gnu/packages/engineering.scm | 42 ++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+)
Toggle diff (52 lines)diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scmindex 27d4eae948..a65cbb81e8 100644--- a/gnu/packages/engineering.scm+++ b/gnu/packages/engineering.scm@@ -3033,3 +3033,45 @@ from Ultimaker.") belongs to the Cura project from Ultimaker.") (license license:lgpl3))) +(define-public libSavitar+ (let ((commit "85abbec0d947e6646b5172b6716c49c17e241632")+ (revision "0"))+ (package+ (name "libSavitar")+ (version (string-append "4.7.1-" revision "."+ (string-take commit 7)))+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/Ultimaker/libSavitar")+ (commit commit)))+ (file-name (string-append name "-" version "-checkout"))+ (sha256+ (base32 "1i895d5r7c32z61m88xjkqs9j72bwmxllshs4y2rwgzxpq3rk1k5"))))+ (build-system cmake-build-system)+ (inputs+ `(("python" ,python)+ ("sip" ,python-sip)))+ (arguments+ `(#:tests? #false ;; this library doesn't have tests+ #:phases (modify-phases %standard-phases+ (add-before 'configure 'fix-python-sitearch+ (lambda* (#:key outputs #:allow-other-keys)+ (let ((path (string-append (assoc-ref outputs "out")+ "/lib/python"+ ,(version-major+minor+ (package-version python))+ "/site-packages")))+ (substitute* "cmake/FindSIP.cmake"+ (("\\$\\{_process_output\\} Python3_SITEARCH")+ (string-append path " Python3_SITEARCH"))+ (("\\$\\{_process_output\\} Python3_SITELIB")+ (string-append path " Python3_SITELIB"))))+ #true)))))+ (home-page "https://github.com/Ultimaker/libSavitar")+ (synopsis "C++ implementation of 3mf loading with SIP python bindings")+ (description "libSavitar is a C++ implementation of 3mf loading with SIP+python bindings. It belongs to the Cura project from Ultimaker.")+ (license license:lgpl3))))+-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 07/10] gnu: Add cura.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-7-malte.f.gerdes@gmail.com
* gnu/packages/engineering.scm (cura): New variable.--- gnu/packages/engineering.scm | 43 ++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+)
Toggle diff (53 lines)diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scmindex a65cbb81e8..2a7dfe470f 100644--- a/gnu/packages/engineering.scm+++ b/gnu/packages/engineering.scm@@ -3075,3 +3075,46 @@ belongs to the Cura project from Ultimaker.") python bindings. It belongs to the Cura project from Ultimaker.") (license license:lgpl3)))) +(define-public cura+ (package+ (name "cura")+ (version "4.7.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/Ultimaker/Cura")+ (commit version)))+ (file-name (git-file-name name version))+ (sha256+ (base32 "19an168iad3cb5w8i71c0wbr79qnz5qnpxqx1j6dgh64qz6ffn2r"))))+ (build-system cmake-build-system)+ (native-inputs+ `(("mypy" ,python-mypy)+ ("pytest" ,python-pytest)+ ("certifi" ,python-certifi)+ ("requests" ,python-requests)))+ (inputs+ `(("uranium" ,uranium)+ ("cura-engine" ,cura-engine)+ ("serial" ,python-pyserial)+ ("savitar" ,libSavitar)+ ("charon" ,libCharon)+ ("sip" ,python-sip)))+ (arguments+ `(#:tests? #false+ #:configure-flags '("-DURANIUM_SCRIPTS_DIR=")+ #:phases+ (modify-phases %standard-phases+ (add-after 'install 'link-to-CuraEngine+ (lambda* (#:key inputs outputs #:allow-other-keys)+ (symlink (string-append (assoc-ref inputs "cura-engine")+ "/bin/CuraEngine")+ (string-append (assoc-ref outputs "out")+ "/bin/CuraEngine"))+ #true)))))+ (home-page "https://github.com/Ultimaker/Cura")+ (synopsis "Cura Slicer")+ (description "Cura is a slicing software from Ultimaker. A @emph{Slicer}+generates G-Code for 3D printers.")+ (license license:lgpl3)))-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 08/10] gnu: Add python-pyinstrument-cext.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-8-malte.f.gerdes@gmail.com
* gnu/packages/python-check.scm (python-pyinstrument-cext): New variable.--- gnu/packages/python-check.scm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+)
Toggle diff (37 lines)diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scmindex 498f495584..6d068a9cd8 100644--- a/gnu/packages/python-check.scm+++ b/gnu/packages/python-check.scm@@ -9,6 +9,7 @@ ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;;@@ -82,6 +83,22 @@ This package provides seamless integration with coverage.py (and thus pytest, nosetests, etc...) in Python projects.") (license license:expat))) +(define-public python-pyinstrument-cext+ (package+ (name "python-pyinstrument-cext")+ (version "0.2.2")+ (source+ (origin+ (method url-fetch)+ (uri (pypi-uri "pyinstrument-cext" version))+ (sha256+ (base32 "0nycf7nhx2xzba49m8208agx5xghzxkma3iim5f43h3l3pvjb7pj"))))+ (build-system python-build-system)+ (home-page "https://github.com/joerick/pyinstrument_cext")+ (synopsis "A CPython extension supporting pyinstrument")+ (description "A CPython extension supporting pyinstrument")+ (license license:bsd-3)))+ (define-public python-vcrpy (package (name "python-vcrpy")-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 09/10] gnu: Add python-pyinstrument.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-9-malte.f.gerdes@gmail.com
* gnu/packages/python-check.scm (python-pyinstrument)@ New variable.--- gnu/packages/python-check.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+)
Toggle diff (35 lines)diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scmindex 6d068a9cd8..4fcc382913 100644--- a/gnu/packages/python-check.scm+++ b/gnu/packages/python-check.scm@@ -99,6 +99,28 @@ nosetests, etc...) in Python projects.") (description "A CPython extension supporting pyinstrument") (license license:bsd-3))) +(define-public python-pyinstrument+ (package+ (name "python-pyinstrument")+ (version "3.2.0")+ (source+ (origin+ (method url-fetch)+ (uri (pypi-uri "pyinstrument" version))+ (sha256+ (base32+ "0r8n2ajhjx9mlsy7hsvf6ihw1lk4zn1l95vd1c3g0jc3m1pfz3yf"))))+ (build-system python-build-system)+ (propagated-inputs+ `(("python-pyinstrument-cext" ,python-pyinstrument-cext)))+ (home-page+ "https://github.com/joerick/pyinstrument")+ (synopsis+ "Call stack profiler for Python. Shows you why your code is slow!")+ (description+ "Call stack profiler for Python. Shows you why your code is slow!")+ (license license:bsd-3)))+ (define-public python-vcrpy (package (name "python-vcrpy")-- 2.28.0
M
M
Malte Frank Gerdes wrote 4 days ago
[PATCH 10/10] gnu: Add python-trimesh.
(address . 44045@debbugs.gnu.org)(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)
20201017103547.13769-10-malte.f.gerdes@gmail.com
* gnu/packages/python-science.scm (python-trimesh): New variable.--- gnu/packages/python-science.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+)
Toggle diff (56 lines)diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scmindex 101c8fb640..1d5835bff5 100644--- a/gnu/packages/python-science.scm+++ b/gnu/packages/python-science.scm@@ -10,6 +10,7 @@ ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;;@@ -35,6 +36,7 @@ #:use-module (gnu packages maths) #:use-module (gnu packages perl) #:use-module (gnu packages python)+ #:use-module (gnu packages python-check) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages sphinx)@@ -285,6 +287,33 @@ logic, also known as grey logic.") of the SGP4 satellite tracking algorithm.") (license license:expat))) +(define-public python-trimesh+ (package+ (name "python-trimesh")+ (version "3.8.10")+ (source+ (origin+ (method url-fetch)+ (uri (pypi-uri "trimesh" version))+ (sha256+ (base32+ "0sf0wms2zhyljhiqjmyp77kx7b123gmr98hmna0y2ic7idzhzyr4"))))+ (build-system python-build-system)+ (propagated-inputs+ `(("python-numpy" ,python-numpy)+ ("python-setuptools" ,python-setuptools)))+ (native-inputs+ `(("python-coveralls" ,python-coveralls)+ ("python-pyinstrument" ,python-pyinstrument)+ ("python-pytest" ,python-pytest)+ ("python-pytest-cov" ,python-pytest-cov)))+ (home-page "https://github.com/mikedh/trimesh")+ (synopsis+ "Import, export, process, analyze and view triangular meshes.")+ (description+ "Import, export, process, analyze and view triangular meshes.")+ (license license:expat)))+ (define-public python-pandas (package (name "python-pandas")-- 2.28.0
E
E
Efraim Flashner wrote 3 days ago
Re: [bug#44045] [PATCH 00/10] WIP Ultimaker Cura
(name . Malte Frank Gerdes)(address . malte.f.gerdes@gmail.com)(address . 44045@debbugs.gnu.org)
20201019070814.GK974@E5400
On Sat, Oct 17, 2020 at 12:32:30PM +0200, Malte Frank Gerdes wrote:
Toggle quote (10 lines)> Hi,> > this series adds Ultimakers Cura software to Guix. It's WIP because the cura> program itself segfaults while starting and i am not getting further as to why> this happens. It would be great if someone interested could take a look :-)> > The trimesh python library cannot be built, because pyinstrument-cext can't be> built. This is due to the fact that the used URLs to fetch the source archive> don't exist. I have yet to find out how they are generated.
for pyinstrument-cext, try replacing the string in pypi-uri to"pyinstrument_cext", with an underscore.
Toggle quote (30 lines)> The python packages should be at the correct place, but i'm not usre where the> cura packages should be placed. Is engineering.scm the right place? If so i will> sort them alphabetically.> > > Malte> > Malte Frank Gerdes (10):> gnu: Add libArcus.> gnu: Add cura-engine.> gnu: Add cura-binary-data.> gnu: Add uranium.> gnu: Add libCharon.> gnu: Add libSavitar.> gnu: Add cura.> gnu: Add python-pyinstrument-cext.> gnu: Add python-pyinstrument.> gnu: Add python-trimesh.> > gnu/packages/engineering.scm | 293 ++++++++++++++++++++++++++++++++> gnu/packages/python-check.scm | 39 +++++> gnu/packages/python-science.scm | 29 ++++> 3 files changed, 361 insertions(+)> > --> 2.28.0> > >
-- Efraim Flashner <efraim@flashner.co.il> אפרים פלשנרGPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl+NO1sACgkQQarn3Mo9g1H8gRAAsk+UmcaY7ltBxcjcbk1tFzyasC5f2qaP9LGUQpd36tIyJF6rwH5S0VioXSOrpGiKTrZzG//9VvneI8JfDPr4DcPQeuTtuAKOlsJmzx0fIw0HTj6V+HgljjXvGjALiqQqzC32JSx60O+qOoDoJ7GfPqy52L2r6PgREtR/wIdYaSlY9b2KCbLFjl3WktMA6X+FwCDsUMQBNsadgVCjRy+IpXkYDC21YpEAlvRSROElAbpRp3ssOgbtnuxw18AcGbNMSXc2oJXIGIq6UXC+pJWliPQYrJ6wOpfr9q29Io3UjlIYEai44211LRMAHL2iSNJgwijW2wJSd7QkEUBCwXSlM+WqPpvoy+iHzrqUIGnMwYK2cFl6S9wXwVT0TvBFW0ymCj8+TwYzCMjeVaOQ/qxpZw+lvAVwCVrJ1jNg+qEuynaOinnQ7PYufwWam/LELgJVcXk3p4GmoivsaqyKqP0h7xsemDnjjv0bANyZR02HP8mv1wNvGSbilQl9VatlPe2SSDQRyLKIY1+Na8b4MRCPxeRueeQTXC3Wz+4hhxUWk7LayQkiobeY1bBXkGxK/F/n4z/lA6R5c3B7ZgWBrMb2x33FKtnMlXsCXb7iCel9wfZ6QpOrkJubn/lYGpw40LF+cfcAMXcNBPl9DIQLh+suadkVlM2hch+g2uNZol89hOQ==Iy+F-----END PGP SIGNATURE-----

M
M
Malte Frank Gerdes wrote 6 hours ago
[bug#44045] [PATCH 10/10 v2] WIP Ultimaker Cura
(address . 44045@debbugs.gnu.org)(address . efraim@flashner.co.il)
861rhrlleo.fsf@gmail.com
Efraim Flashner <efraim@flashner.co.il> writes:
Toggle quote (14 lines)> On Sat, Oct 17, 2020 at 12:32:30PM +0200, Malte Frank Gerdes wrote:>> Hi,>> >> this series adds Ultimakers Cura software to Guix. It's WIP because the cura>> program itself segfaults while starting and i am not getting further as to why>> this happens. It would be great if someone interested could take a look :-)>> >> The trimesh python library cannot be built, because pyinstrument-cext can't be>> built. This is due to the fact that the used URLs to fetch the source archive>> don't exist. I have yet to find out how they are generated.>> for pyinstrument-cext, try replacing the string in pypi-uri to> "pyinstrument_cext", with an underscore.
Thanks for the s/-/_/ tip! This works :-)
Having that out of the way i noticed that trimesh's testsuite dependes(for whatever reason) on a javascript library which has to be generatedvia npm, which is currently not available in Guix. Therefore i disabledthe testsuite from trimesh.
Attached is a corresponding patch.

Malte
From c39889e9a89662d702d8149c5d9600122e099209 Mon Sep 17 00:00:00 2001From: Malte Frank Gerdes <malte.f.gerdes@gmail.com>Date: Sat, 17 Oct 2020 12:04:29 +0200Subject: [PATCH] gnu: Add python-trimesh.
* gnu/packages/python-science.scm (python-trimesh): New variable.--- gnu/packages/python-science.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+)
Toggle diff (60 lines)diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scmindex 101c8fb640..738ac1111e 100644--- a/gnu/packages/python-science.scm+++ b/gnu/packages/python-science.scm@@ -10,6 +10,7 @@ ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;;@@ -35,6 +36,7 @@ #:use-module (gnu packages maths) #:use-module (gnu packages perl) #:use-module (gnu packages python)+ #:use-module (gnu packages python-check) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages sphinx)@@ -285,6 +287,37 @@ logic, also known as grey logic.") of the SGP4 satellite tracking algorithm.") (license license:expat))) +(define-public python-trimesh+ (package+ (name "python-trimesh")+ (version "3.8.11")+ (source+ (origin+ (method url-fetch)+ (uri (pypi-uri "trimesh" version))+ (sha256+ (base32+ "1pi7v9rdaakjfrqpc3zk77pg3z6vaz7qh1wy322sj9bq4824h2vr"))))+ (build-system python-build-system)+ (propagated-inputs+ `(("python-numpy" ,python-numpy)+ ("python-setuptools" ,python-setuptools)))+ (native-inputs+ `(("python-coveralls" ,python-coveralls)+ ("python-pytest" ,python-pytest)+ ("python-pytest-cov" ,python-pytest-cov)))+ (arguments+ `(;; tests need to be disabled because pyinstrument+ ;; can't be built, because it depends on npm for+ ;; JS generation.+ #:tests? #false))+ (home-page "https://github.com/mikedh/trimesh")+ (synopsis+ "Import, export, process, analyze and view triangular meshes.")+ (description+ "Import, export, process, analyze and view triangular meshes.")+ (license license:expat)))+ (define-public python-pandas (package (name "python-pandas")-- 2.28.0
M
M
Malte Frank Gerdes wrote 6 hours ago
[bug#44045] [PATCH 08/10 v2] WIP Ultimaker Cura
(address . 44045@debbugs.gnu.org)
86wnzjk6l8.fsf@gmail.com
This is the updated definition for python-pyinstrument-cext :)

Malte
From 8cd0fb113041b792b48834c07dd6765ecf80baf6 Mon Sep 17 00:00:00 2001From: Malte Frank Gerdes <malte.f.gerdes@gmail.com>Date: Sat, 17 Oct 2020 12:02:05 +0200Subject: [PATCH] gnu: Add python-pyinstrument-cext.
* gnu/packages/python-check.scm (python-pyinstrument-cext): New variable.--- gnu/packages/python-check.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
Toggle diff (39 lines)diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scmindex 498f495584..f62121cf1b 100644--- a/gnu/packages/python-check.scm+++ b/gnu/packages/python-check.scm@@ -9,6 +9,7 @@ ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;;@@ -82,6 +83,24 @@ This package provides seamless integration with coverage.py (and thus pytest, nosetests, etc...) in Python projects.") (license license:expat))) +(define-public python-pyinstrument-cext+ (package+ (name "python-pyinstrument-cext")+ (version "0.2.2")+ (source+ (origin+ (method url-fetch)+ (uri (pypi-uri "pyinstrument_cext" version))+ (sha256+ (base32 "0nycf7nhx2xzba49m8208agx5xghzxkma3iim5f43h3l3pvjb7pj"))))+ (build-system python-build-system)+ (inputs+ `(("nose" ,python-nose)))+ (home-page "https://github.com/joerick/pyinstrument_cext")+ (synopsis "A CPython extension supporting pyinstrument")+ (description "A CPython extension supporting pyinstrument")+ (license license:bsd-3)))+ (define-public python-vcrpy (package (name "python-vcrpy")-- 2.28.0
?