super-slicer-latest: 2.4.58.3 -> 2.4.58.5; super-slicer-beta: init at 2.5.59.2

* super-slicer-latest: 2.4.58.3 -> 2.4.58.5

* super-slicer-beta: init at 2.5.59.2

* super-slicer: Remove old workaround

* super-slicer: Add maintainer tmarkus

* prusa-slicer: Add maintainer tmarkus

* super-slicer: Move to tbb_2021_8

super-slicer.latest requires tbb_2021_8 in order to build correctly.
Move super-slicer over to tbb_2021_8 and remove the
no longer required TBB discovery patches.

* prusa-slicer: Remove unused gtest dependency

* prusa-slicer: Exclude tests in custom checkPhase

* prusa-slicer: Remove compiler warning override

Eigen disables -Wignored-attributes on its own now.

* super-slicer: Fix libexpat linking issue

---------

Co-authored-by: André-Patrick Bubel <code@apb.name>

authored by hesiod André-Patrick Bubel and committed by GitHub 02fad9ee 8ab0e6fd

+49 -41
+14 -14
pkgs/applications/misc/prusa-slicer/default.nix
··· 18 , glew 19 , glib 20 , gmp 21 - , gtest 22 , gtk3 23 , hicolor-icon-theme 24 , ilmbase ··· 105 xorg.libX11 106 ] ++ lib.optionals withSystemd [ 107 systemd 108 - ] ++ finalAttrs.nativeCheckInputs; 109 - 110 - doCheck = true; 111 - nativeCheckInputs = [ gtest ]; 112 113 separateDebugInfo = true; 114 ··· 117 # library, which doesn't pick up the package in the nix store. We 118 # additionally need to set the path via the NLOPT environment variable. 119 NLOPT = nlopt; 120 - 121 - # Disable compiler warnings that clutter the build log. 122 - # It seems to be a known issue for Eigen: 123 - # http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1221 124 - env.NIX_CFLAGS_COMPILE = "-Wno-ignored-attributes"; 125 126 # prusa-slicer uses dlopen on `libudev.so` at runtime 127 NIX_LDFLAGS = lib.optionalString withSystemd "-ludev"; ··· 150 # Fix resources folder location on macOS 151 substituteInPlace src/PrusaSlicer.cpp \ 152 --replace "#ifdef __APPLE__" "#if 0" 153 - '' + lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) '' 154 - # Disable segfault tests 155 - sed -i '/libslic3r/d' tests/CMakeLists.txt 156 ''; 157 158 patches = [ ··· 193 ) 194 ''; 195 196 meta = with lib; { 197 description = "G-code generator for 3D printer"; 198 homepage = "https://github.com/prusa3d/PrusaSlicer"; 199 license = licenses.agpl3; 200 - maintainers = with maintainers; [ moredread tweber ]; 201 } // lib.optionalAttrs (stdenv.isDarwin) { 202 mainProgram = "PrusaSlicer"; 203 };
··· 18 , glew 19 , glib 20 , gmp 21 , gtk3 22 , hicolor-icon-theme 23 , ilmbase ··· 104 xorg.libX11 105 ] ++ lib.optionals withSystemd [ 106 systemd 107 + ]; 108 109 separateDebugInfo = true; 110 ··· 113 # library, which doesn't pick up the package in the nix store. We 114 # additionally need to set the path via the NLOPT environment variable. 115 NLOPT = nlopt; 116 117 # prusa-slicer uses dlopen on `libudev.so` at runtime 118 NIX_LDFLAGS = lib.optionalString withSystemd "-ludev"; ··· 141 # Fix resources folder location on macOS 142 substituteInPlace src/PrusaSlicer.cpp \ 143 --replace "#ifdef __APPLE__" "#if 0" 144 ''; 145 146 patches = [ ··· 181 ) 182 ''; 183 184 + doCheck = true; 185 + 186 + checkPhase = '' 187 + runHook preCheck 188 + 189 + ctest \ 190 + --force-new-ctest-process \ 191 + -E 'libslic3r_tests|sla_print_tests' 192 + 193 + runHook postCheck 194 + ''; 195 + 196 meta = with lib; { 197 description = "G-code generator for 3D printer"; 198 homepage = "https://github.com/prusa3d/PrusaSlicer"; 199 license = licenses.agpl3; 200 + maintainers = with maintainers; [ moredread tweber tmarkus ]; 201 } // lib.optionalAttrs (stdenv.isDarwin) { 202 mainProgram = "PrusaSlicer"; 203 };
+33 -27
pkgs/applications/misc/prusa-slicer/super-slicer.nix
··· 1 - { lib, fetchFromGitHub, fetchpatch, makeDesktopItem, wxGTK31, prusa-slicer }: 2 let 3 appname = "SuperSlicer"; 4 pname = "super-slicer"; 5 description = "PrusaSlicer fork with more features and faster development cycle"; 6 7 versions = { 8 stable = { 9 version = "2.3.57.12"; ··· 11 patches = null; 12 }; 13 latest = { 14 - version = "2.4.58.3"; 15 - sha256 = "sha256-pEZcBEvK4Mq8nytiXLJvta7Bk6qZRJfTNrYz7N/aUAE="; 16 - patches = [ 17 - # Fix detection of TBB, see https://github.com/prusa3d/PrusaSlicer/issues/6355 18 - (fetchpatch { 19 - url = "https://github.com/prusa3d/PrusaSlicer/commit/76f4d6fa98bda633694b30a6e16d58665a634680.patch"; 20 - sha256 = "1r806ycp704ckwzgrw1940hh1l6fpz0k1ww3p37jdk6mygv53nv6"; 21 - }) 22 - # Fix compile error with boost 1.79. See https://github.com/supermerill/SuperSlicer/issues/2823 23 - (fetchpatch { 24 - url = "https://raw.githubusercontent.com/gentoo/gentoo/81e3ca3b7c131e8345aede89e3bbcd700e1ad567/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch"; 25 - # Excludes Linux-only patches 26 - excludes = [ 27 - "src/slic3r/GUI/FreeCADDialog.cpp" 28 - "src/slic3r/GUI/Tab.cpp" 29 - "src/slic3r/Utils/Http.cpp" 30 - ]; 31 - sha256 = "sha256-v0q2MhySayij7+qBTE5q01IOq/DyUcWnjpbzB/AV34c="; 32 - }) 33 - ]; 34 }; 35 }; 36 ··· 45 fetchSubmodules = true; 46 }; 47 48 - # wxScintilla is not used on macOS 49 prePatch = super.prePatch + '' 50 substituteInPlace src/CMakeLists.txt \ 51 - --replace "scintilla" "" 52 ''; 53 54 # We don't need PS overrides anymore, and gcode-viewer is embedded in the binary. 55 postInstall = null; 56 separateDebugInfo = true; 57 58 - # See https://github.com/supermerill/SuperSlicer/issues/432 59 - cmakeFlags = super.cmakeFlags ++ [ 60 - "-DSLIC3R_BUILD_TESTS=0" 61 ]; 62 63 desktopItems = [ ··· 76 inherit description; 77 homepage = "https://github.com/supermerill/SuperSlicer"; 78 license = licenses.agpl3; 79 - maintainers = with maintainers; [ cab404 moredread ]; 80 mainProgram = "superslicer"; 81 }; 82
··· 1 + { lib, fetchFromGitHub, fetchpatch, makeDesktopItem, wxGTK31, prusa-slicer, libspnav }: 2 let 3 appname = "SuperSlicer"; 4 pname = "super-slicer"; 5 description = "PrusaSlicer fork with more features and faster development cycle"; 6 7 + patches = [ 8 + # Fix compile error with boost 1.79. See https://github.com/supermerill/SuperSlicer/issues/2823 9 + (fetchpatch { 10 + url = "https://raw.githubusercontent.com/gentoo/gentoo/81e3ca3b7c131e8345aede89e3bbcd700e1ad567/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch"; 11 + # Excludes Linux-only patches 12 + excludes = [ 13 + "src/slic3r/GUI/FreeCADDialog.cpp" 14 + "src/slic3r/GUI/Tab.cpp" 15 + "src/slic3r/Utils/Http.cpp" 16 + ]; 17 + sha256 = "sha256-v0q2MhySayij7+qBTE5q01IOq/DyUcWnjpbzB/AV34c="; 18 + }) 19 + ]; 20 + 21 versions = { 22 stable = { 23 version = "2.3.57.12"; ··· 25 patches = null; 26 }; 27 latest = { 28 + version = "2.4.58.5"; 29 + sha256 = "sha256-UywxEGedXaBUTKojEkbkuejI6SdPSkPxTJMwUDNW6W0="; 30 + inherit patches; 31 + }; 32 + beta = { 33 + version = "2.5.59.2"; 34 + sha256 = "sha256-IgE+NWy2DUrPR2ROfK1F67e8B3eoM9yRVQ0GZTxJ42I="; 35 + inherit patches; 36 }; 37 }; 38 ··· 47 fetchSubmodules = true; 48 }; 49 50 + # - wxScintilla is not used on macOS 51 + # - Partially applied upstream changes cause a bug when trying to link against a nonexistent libexpat 52 prePatch = super.prePatch + '' 53 substituteInPlace src/CMakeLists.txt \ 54 + --replace "scintilla" "" \ 55 + --replace "list(APPEND wxWidgets_LIBRARIES libexpat)" "list(APPEND wxWidgets_LIBRARIES EXPAT::EXPAT)" 56 + 57 + substituteInPlace src/libslic3r/CMakeLists.txt \ 58 + --replace "libexpat" "EXPAT::EXPAT" 59 ''; 60 61 # We don't need PS overrides anymore, and gcode-viewer is embedded in the binary. 62 postInstall = null; 63 separateDebugInfo = true; 64 65 + buildInputs = super.buildInputs ++ [ 66 + libspnav 67 ]; 68 69 desktopItems = [ ··· 82 inherit description; 83 homepage = "https://github.com/supermerill/SuperSlicer"; 84 license = licenses.agpl3; 85 + maintainers = with maintainers; [ cab404 moredread tmarkus ]; 86 mainProgram = "superslicer"; 87 }; 88
+2
pkgs/top-level/all-packages.nix
··· 35456 35457 super-slicer = darwin.apple_sdk_11_0.callPackage ../applications/misc/prusa-slicer/super-slicer.nix { }; 35458 35459 super-slicer-latest = super-slicer.latest; 35460 35461 snapmaker-luban = callPackage ../applications/misc/snapmaker-luban { };
··· 35456 35457 super-slicer = darwin.apple_sdk_11_0.callPackage ../applications/misc/prusa-slicer/super-slicer.nix { }; 35458 35459 + super-slicer-beta = super-slicer.beta; 35460 + 35461 super-slicer-latest = super-slicer.latest; 35462 35463 snapmaker-luban = callPackage ../applications/misc/snapmaker-luban { };