Package: guix-patches;
Reported by: "Artyom V. Poptsov" <poptsov.artyom <at> gmail.com>
Date: Sat, 11 May 2024 17:58:02 UTC
Severity: normal
Tags: moreinfo, patch
Done: Sharlatan Hellseher <sharlatanus <at> gmail.com>
Bug is archived. No further changes may be made.
Message #103 received at 70880 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: "Artyom V. Poptsov" <poptsov.artyom <at> gmail.com> Cc: 70880 <at> debbugs.gnu.org Subject: Re: [bug#70880] [PATCH v2 8/8] gnu: prusa-slicer: Update to 2.7.4. Date: Tue, 09 Jul 2024 22:42:22 -0400
Hello, "Artyom V. Poptsov" <poptsov.artyom <at> gmail.com> writes: > * gnu/packages/engineering.scm (prusa-slicer): Update to 2.7.4. [source]: > Remove "prusa-slicer-boost-fixes.patch" and Nitpick: no need for hanging indent :-) > "prusa-slicer-with-cereal-1.3.1.patch". Move some part of the snippet code > to custom build phases. > [arguments]: In configure flags add paths to external libraries. > Add "fix-include-paths" phase. Suggestion: I'd use either directly [configure-flags] or [arguments] <configure-flags> to make description of change more terse. > [native-inputs]: Add "catch2". > [inputs]: Use "prusa-wxwidgets" instead of "wxwidgets" to fix segfaults. > Ad "qhull", "nanosvg", "heatshrink" and "prusa-libbgcode". Nitpick: variable names are not typically quoted in the ChangeLog. > * gnu/packages/patches/prusa-slicer-boost-fixes.patch, > gnu/packages/patches/prusa-slicer-with-cereal-1.3.1.patch: Remove unused > patches. > * gnu/local.mk (dist_patch_DATA): De-register "prusa-slicer-boost-fixes.patch" > and "prusa-slicer-with-cereal-1.3.1.patch". > > Change-Id: I15e85d63c9ad6c731c8040ef2d8ec8b2f31f2ab7 > --- > gnu/local.mk | 2 - > gnu/packages/engineering.scm | 53 ++++++---- > .../patches/prusa-slicer-boost-fixes.patch | 97 ------------------- > .../prusa-slicer-with-cereal-1.3.1.patch | 52 ---------- > 4 files changed, 35 insertions(+), 169 deletions(-) > delete mode 100644 gnu/packages/patches/prusa-slicer-boost-fixes.patch > delete mode 100644 gnu/packages/patches/prusa-slicer-with-cereal-1.3.1.patch > > diff --git a/gnu/local.mk b/gnu/local.mk > index 29107a618b..d9760557df 100644 > --- a/gnu/local.mk > +++ b/gnu/local.mk > @@ -1839,9 +1839,7 @@ dist_patch_DATA = \ > %D%/packages/patches/pokerth-boost.patch \ > %D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \ > %D%/packages/patches/procps-strtod-test.patch \ > - %D%/packages/patches/prusa-slicer-boost-fixes.patch \ > %D%/packages/patches/prusa-slicer-fix-tests.patch \ > - %D%/packages/patches/prusa-slicer-with-cereal-1.3.1.patch \ > %D%/packages/patches/prusa-wxwidgets-makefile-fix.patch \ > %D%/packages/patches/pthreadpool-system-libraries.patch \ > %D%/packages/patches/python-3.12-fix-tests.patch \ > diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm > index de4b4a5825..2a3671b01d 100644 > --- a/gnu/packages/engineering.scm > +++ b/gnu/packages/engineering.scm > @@ -3802,7 +3802,7 @@ (define-public prusa-libbgcode > (define-public prusa-slicer > (package > (name "prusa-slicer") > - (version "2.5.2") > + (version "2.7.4") > (source > (origin > (method git-fetch) > @@ -3811,13 +3811,11 @@ (define-public prusa-slicer > (url "https://github.com/prusa3d/PrusaSlicer") > (commit (string-append "version_" version)))) > (file-name (git-file-name name version)) > - (sha256 (base32 "02qcrw3fa0d8ldbp73hp14l1qxbp3f4608j4csc07ny00ra42151")) > - (patches (search-patches "prusa-slicer-boost-fixes.patch" > - "prusa-slicer-fix-tests.patch" > - "prusa-slicer-with-cereal-1.3.1.patch")) > + (sha256 (base32 "0s1cfvhfilyv0y98asr61c6rwlgyr1hf5v5hg8q9zwmzm2bkcql3")) > + (patches (search-patches "prusa-slicer-fix-tests.patch")) > (modules '((guix build utils))) > (snippet > - '(begin > + `(begin > ;; Prusa slicer bundles a lot of dependencies in src/ directory. > ;; Most of them contain prusa-specific modifications (e.g. avrdude), > ;; but others do not. Here we replace the latter with Guix packages. > @@ -3825,10 +3823,12 @@ (define-public prusa-slicer > (delete-file-recursively "src/hidapi") > (delete-file-recursively "src/eigen") > (delete-file-recursively "src/libigl/igl") > + (substitute* "CMakeLists.txt" > + (("add_library\\(libexpat INTERFACE\\)") > + "")) > + (substitute* "src/libigl/CMakeLists.txt" > + (("target_link_libraries\\(libigl INTERFACE igl::core\\)") "")) > (substitute* "src/CMakeLists.txt" > - (("add_subdirectory\\(libigl\\)" all) > - (string-append > - all "\ninclude_directories(libigl INTERFACE libigl::core)")) > (("add_subdirectory\\(hidapi\\)") > "pkg_check_modules(HIDAPI REQUIRED hidapi-hidraw)") > (("include_directories\\(hidapi/include\\)") > @@ -3841,13 +3841,26 @@ (define-public prusa-slicer > (("\\bhidapi\\b") "${HIDAPI_LIBRARIES}")))))) > (build-system cmake-build-system) > (arguments > - `(#:configure-flags > - '("-DSLIC3R_FHS=1" ;; Use The Filesystem Hierarchy Standard. > - "-DSLIC3R_GTK=3" ;; Use GTK+ > - ;; Use wxWidgets 3.0.x.x to prevent GUI crashes when adding support enforcers. > - "-DSLIC3R_WX_STABLE=1"))) > + (list #:configure-flags > + #~(list "-DSLIC3R_FHS=1" ;; Use The Filesystem Hierarchy Standard. > + "-DSLIC3R_GTK=3" ;; Use GTK+ > + ;; Use wxWidgets 3.0.x.x to prevent GUI crashes when adding support enforcers. > + "-DSLIC3R_WX_STABLE=1" > + (format #f "-Dlibigl_DIR=~a" > + (search-input-directory %build-inputs > + "lib/cmake/igl/")) > + (format #f "-DCatch2_DIR=~a" > + (search-input-directory %build-inputs > + "lib/cmake/Catch2/"))) > + #:phases > + #~(modify-phases %standard-phases > + (add-after 'unpack 'fix-include-paths > + (lambda _ > + (substitute* "tests/libslic3r/test_quadric_edge_collapse.cpp" > + (("#include <libigl/igl/qslim.h>") > + "#include <igl/qslim.h>"))))))) > (native-inputs > - (list pkg-config)) > + (list pkg-config catch2)) > (inputs > (list boost > cereal > @@ -3873,9 +3886,13 @@ (define-public prusa-slicer > pango > tbb > eudev > - ;; prusa-slicer 2.5 segfaults on startup with wxwidgets 3.2 > - ;; See https://github.com/prusa3d/PrusaSlicer/issues/8299 > - wxwidgets-3.0 > + qhull > + nanosvg > + heatshrink > + ;; XXX: Using Prusa wxWidgets fork as PrusaSlicer segfaults when compiled > + ;; with regular wxwidgets. > + prusa-wxwidgets > + prusa-libbgcode Please sort inputs alphabetically. The rest LGTM. Could you please resubmit a v3 with the small things I've spotted in my reading of v2? Sorry for missing some of these things in v1. -- Thanks, Maxim
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.