Re: UPDATE: cad/prusaslicer-2.9.6
Renato Aguiar <[email protected]>
| Newsgroups | gmane.os.openbsd.ports |
|---|---|
| Message-ID | <[email protected]> |
On Sun, Aug 02 2026, Johannes Thyssen Tishman wrote: > 2026-07-26T16:08:35-0700 Renato Aguiar <[email protected]>: >> Diff updating cad/prusaslicer to 2.9.6. > > Hi Renato. Thanks for the update. > > I built this without issues and all tests are passing, but I have a few > comments: > > - The 'Program Name' section in the pkg/README seems unnecessary to me, > and I would personally leave it out. Keeping it as suggested by Ian. > > - I noticed that the build uses the bundled IGL library, because it fails > to find one in the system. This is fine, but I would explicitly > disable looking for it during configure time to avoid picking it up in > case it is ported (potentially causing a build failure): > > -DCMAKE_DISABLE_FIND_PACKAGE_libigl=ON Done. > > - I removed the .{cache,local/share}/prusa-slicer and > .config/PrusaSlicer directories to test runtime as if had just > installed prusaslicer and after finishing the setup wizard I got the > following error: > > > PrusaSlicer has encountered an error. It was likely caused by running > > out of memory. If you are sure you have enough RAM on your system, > > this may also be a bug and we would be glad if you reported it. > > > The application will now terminate. > > > std::bad_alloc > > My system should have enough RAM, 64Gb, and my user has the staff > login class. I tried getting a backtrace from the core file (after > installing debug-prusaslicer), but egdb crashes too with 'Recursive > internal problem. Abort trap (core dumped)'. Oh well... > > After restarting prusaslicer, I don't get the setup > wizard anymore and it seems to work (tested importing a model and > slicing it). > Thanks for reporting that. It seems to be an issue even before this update. I added a section to the README about bumping datasize memory limits. Updated diff: diff --git a/cad/prusaslicer/Makefile b/cad/prusaslicer/Makefile index bf393651319..a04f689a693 100644 --- a/cad/prusaslicer/Makefile +++ b/cad/prusaslicer/Makefile @@ -2,8 +2,7 @@ COMMENT = g-code generator for 3D printers ONLY_FOR_ARCHS = ${LP64_ARCHS} DPB_PROPERTIES = parallel -V = 2.9.4 -REVISION = 3 +V = 2.9.6 PKGNAME = prusaslicer-${V} GH_ACCOUNT = prusa3d @@ -74,6 +73,7 @@ LIB_DEPENDS = cad/opencascade \ x11/wxWidgets,-webview CONFIGURE_ARGS += -DCMAKE_MODULE_PATH=${PREFIX}/lib/cmake/OpenVDB \ + -DCMAKE_DISABLE_FIND_PACKAGE_libigl=ON \ -DSLIC3R_FHS=1 \ -DSLIC3R_GTK=3 \ -DSLIC3R_PCH=OFF diff --git a/cad/prusaslicer/distinfo b/cad/prusaslicer/distinfo index 819d0d35454..f29c0fbf660 100644 --- a/cad/prusaslicer/distinfo +++ b/cad/prusaslicer/distinfo @@ -1,2 +1,2 @@ -SHA256 (PrusaSlicer-version_2.9.4.tar.gz) = Ty2NMFYQR6gvY+wj61MPmWsI1ZnA2ey66660SqShyEk= -SIZE (PrusaSlicer-version_2.9.4.tar.gz) = 79411287 +SHA256 (PrusaSlicer-version_2.9.6.tar.gz) = j59A2Tg4uRK9ntNeWYwLfqvQgCTLGKpiDGqp+dSdC1c= +SIZE (PrusaSlicer-version_2.9.6.tar.gz) = 82103739 diff --git a/cad/prusaslicer/patches/patch-src_slic3r_Utils_FontConfigHelp_hpp b/cad/prusaslicer/patches/patch-src_slic3r_Utils_FontConfigHelp_hpp new file mode 100644 index 00000000000..80936b715c7 --- /dev/null +++ b/cad/prusaslicer/patches/patch-src_slic3r_Utils_FontConfigHelp_hpp @@ -0,0 +1,12 @@ +Index: src/slic3r/Utils/FontConfigHelp.hpp +--- src/slic3r/Utils/FontConfigHelp.hpp.orig ++++ src/slic3r/Utils/FontConfigHelp.hpp +@@ -6,7 +6,7 @@ + #define slic3r_FontConfigHelp_hpp_ + + #include <string> +-#ifdef __linux__ ++#if defined(__linux__) || defined(__OpenBSD__) + #define EXIST_FONT_CONFIG_INCLUDE + #endif + diff --git a/cad/prusaslicer/patches/patch-src_slic3r_Utils_WxFontUtils_cpp b/cad/prusaslicer/patches/patch-src_slic3r_Utils_WxFontUtils_cpp new file mode 100644 index 00000000000..da4ddd81f78 --- /dev/null +++ b/cad/prusaslicer/patches/patch-src_slic3r_Utils_WxFontUtils_cpp @@ -0,0 +1,39 @@ +Index: src/slic3r/Utils/WxFontUtils.cpp +--- src/slic3r/Utils/WxFontUtils.cpp.orig ++++ src/slic3r/Utils/WxFontUtils.cpp +@@ -19,7 +19,7 @@ + #include <wx/uri.h> + #include <wx/fontutil.h> // wxNativeFontInfo + #include <wx/osx/core/cfdictionary.h> +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__OpenBSD__) + #include "slic3r/Utils/FontConfigHelp.hpp" + #endif + +@@ -83,7 +83,7 @@ bool WxFontUtils::can_load(const wxFont &font) + #elif defined(__APPLE__) + return true; + //return is_valid_ttf(get_file_path(font)); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__OpenBSD__) + return true; + // font config check file path take about 4000ms for chech them all + //std::string font_path = Slic3r::GUI::get_font_path(font); +@@ -104,7 +104,7 @@ std::unique_ptr<Emboss::FontFile> WxFontUtils::create_ + return nullptr; + } + return Emboss::create_font_file(file_path.c_str()); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__OpenBSD__) + std::string font_path = Slic3r::GUI::get_font_path(font); + if (font_path.empty()){ + BOOST_LOG_TRIVIAL(error) << "Can not read font('" << get_human_readable_name(font) << "'), " +@@ -125,7 +125,7 @@ EmbossStyle::Type WxFontUtils::get_current_type() + return EmbossStyle::Type::wx_win_font_descr; + #elif defined(__APPLE__) + return EmbossStyle::Type::wx_mac_font_descr; +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__OpenBSD__) + return EmbossStyle::Type::wx_lin_font_descr; + #else + return EmbossStyle::Type::undefined; diff --git a/cad/prusaslicer/pkg/PLIST b/cad/prusaslicer/pkg/PLIST index e0caac6b081..a67a679b810 100644 --- a/cad/prusaslicer/pkg/PLIST +++ b/cad/prusaslicer/pkg/PLIST @@ -9,6 +9,7 @@ share/PrusaSlicer/data/printer_gantries/ share/PrusaSlicer/data/printer_gantries/geometries.json share/PrusaSlicer/data/printer_gantries/prusa3d_coreoneL_gantry.stl share/PrusaSlicer/data/printer_gantries/prusa3d_coreone_gantry.stl +share/PrusaSlicer/data/printer_gantries/prusa3d_coreone_indx_gantry.stl share/PrusaSlicer/data/printer_gantries/prusa3d_ht90_actuator.stl share/PrusaSlicer/data/printer_gantries/prusa3d_mini_gantry.stl share/PrusaSlicer/data/printer_gantries/prusa3d_mk3s_gantry.stl @@ -254,6 +255,7 @@ share/PrusaSlicer/icons/printer_placeholder.png share/PrusaSlicer/icons/printer_white.svg share/PrusaSlicer/icons/question.svg share/PrusaSlicer/icons/re_slice.svg +share/PrusaSlicer/icons/recipe_add.svg share/PrusaSlicer/icons/redo.svg share/PrusaSlicer/icons/redo_menu.svg share/PrusaSlicer/icons/redo_toolbar.svg @@ -329,6 +331,7 @@ share/PrusaSlicer/icons/toggle_on.svg share/PrusaSlicer/icons/toolbar_arrow.svg share/PrusaSlicer/icons/toolbar_arrow_2.svg share/PrusaSlicer/icons/toolbar_background.png +share/PrusaSlicer/icons/trash.svg share/PrusaSlicer/icons/undo.svg share/PrusaSlicer/icons/undo_f.svg share/PrusaSlicer/icons/undo_menu.svg @@ -787,8 +790,12 @@ share/PrusaSlicer/profiles/Print4Taste/MC2.0_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/ share/PrusaSlicer/profiles/PrusaResearch.idx share/PrusaSlicer/profiles/PrusaResearch.ini +share/PrusaSlicer/profiles/PrusaResearch/C1INDX_4T_thumbnail.png +share/PrusaSlicer/profiles/PrusaResearch/C1INDX_8T_thumbnail.png +share/PrusaSlicer/profiles/PrusaResearch/COREONELMMU3_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/COREONEL_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/COREONEMMU3_thumbnail.png +share/PrusaSlicer/profiles/PrusaResearch/COREONEOAK_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/COREONE_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/MINIIS_ALPHA_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/MINIIS_BETA_thumbnail.png @@ -831,8 +838,11 @@ share/PrusaSlicer/profiles/PrusaResearch/XLIS_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/XL_thumbnail.png share/PrusaSlicer/profiles/PrusaResearch/coreone.svg share/PrusaSlicer/profiles/PrusaResearch/coreone_bed.stl +share/PrusaSlicer/profiles/PrusaResearch/coreone_indx.stl +share/PrusaSlicer/profiles/PrusaResearch/coreone_indx.svg share/PrusaSlicer/profiles/PrusaResearch/coreonel.svg share/PrusaSlicer/profiles/PrusaResearch/coreonel_bed.stl +share/PrusaSlicer/profiles/PrusaResearch/coreoneoak.svg share/PrusaSlicer/profiles/PrusaResearch/mini.svg share/PrusaSlicer/profiles/PrusaResearch/miniIS.svg share/PrusaSlicer/profiles/PrusaResearch/miniISbeta.svg @@ -1034,6 +1044,11 @@ share/PrusaSlicer/profiles/Voron/Voron_v2_300_afterburner_thumbnail.png share/PrusaSlicer/profiles/Voron/Voron_v2_300_thumbnail.png share/PrusaSlicer/profiles/Voron/Voron_v2_350_afterburner_thumbnail.png share/PrusaSlicer/profiles/Voron/Voron_v2_350_thumbnail.png +share/PrusaSlicer/profiles/Voron/bedmodel_120x120.stl +share/PrusaSlicer/profiles/Voron/bedmodel_250x250.stl +share/PrusaSlicer/profiles/Voron/bedmodel_252x241.stl +share/PrusaSlicer/profiles/Voron/bedmodel_300x300.stl +share/PrusaSlicer/profiles/Voron/bedmodel_350x350.stl share/PrusaSlicer/profiles/Voron/bedtexture-SW-250x210.png share/PrusaSlicer/profiles/Voron/bedtexture-v0-120.png share/PrusaSlicer/profiles/Voron/bedtexture-v1-250.png @@ -1041,6 +1056,11 @@ share/PrusaSlicer/profiles/Voron/bedtexture-v1-300.png share/PrusaSlicer/profiles/Voron/bedtexture-v2-250.png share/PrusaSlicer/profiles/Voron/bedtexture-v2-300.png share/PrusaSlicer/profiles/Voron/bedtexture-v2-350.png +share/PrusaSlicer/profiles/Voron/bedtexture_120x120-dark.png +share/PrusaSlicer/profiles/Voron/bedtexture_250x250-dark.png +share/PrusaSlicer/profiles/Voron/bedtexture_252x241-dark.png +share/PrusaSlicer/profiles/Voron/bedtexture_300x300-dark.png +share/PrusaSlicer/profiles/Voron/bedtexture_350x350-dark.png share/PrusaSlicer/profiles/Voron/printbed-SW-MK52.stl share/PrusaSlicer/profiles/Voron/printbed-v0-120.stl share/PrusaSlicer/profiles/Voron/printbed-v1-250.stl @@ -1049,6 +1069,14 @@ share/PrusaSlicer/profiles/Voron/printbed-v1-350.stl share/PrusaSlicer/profiles/Voron/printbed-v2-250.stl share/PrusaSlicer/profiles/Voron/printbed-v2-300.stl share/PrusaSlicer/profiles/Voron/printbed-v2-350.stl +share/PrusaSlicer/profiles/Voron/thumbnail_v0.png +share/PrusaSlicer/profiles/Voron/thumbnail_v0_miniab.png +share/PrusaSlicer/profiles/Voron/thumbnail_v2.png +share/PrusaSlicer/profiles/Voron/thumbnail_v2_afterburner.png +share/PrusaSlicer/profiles/Voron/thumbnail_vs.png +share/PrusaSlicer/profiles/Voron/thumbnail_vs_afterburner.png +share/PrusaSlicer/profiles/Voron/thumbnail_vt.png +share/PrusaSlicer/profiles/Voron/thumbnail_vt_afterburner.png share/PrusaSlicer/profiles/Zonestar/ share/PrusaSlicer/profiles/Zonestar.idx share/PrusaSlicer/profiles/Zonestar.ini @@ -1217,8 +1245,11 @@ share/PrusaSlicer/web/connect_loading.html share/PrusaSlicer/web/error_no_reload.html share/PrusaSlicer/web/other_error.html share/PrusaSlicer/web/other_loading.html +share/PrusaSlicer/workflows/ +share/PrusaSlicer/workflows/workflows.json share/applications/PrusaGcodeviewer.desktop share/applications/PrusaSlicer.desktop +share/doc/pkg-readmes/${PKGSTEM} share/icons/hicolor/128x128/apps/PrusaSlicer-gcodeviewer.png share/icons/hicolor/128x128/apps/PrusaSlicer.png share/icons/hicolor/192x192/apps/PrusaSlicer-gcodeviewer.png diff --git a/cad/prusaslicer/pkg/README b/cad/prusaslicer/pkg/README new file mode 100644 index 00000000000..44cbe63d8fd --- /dev/null +++ b/cad/prusaslicer/pkg/README @@ -0,0 +1,31 @@ ++------------------------------------------------------------------------------- +| Running ${PKGSTEM} on OpenBSD ++------------------------------------------------------------------------------- + +Program Name +============ + +The program's name is PrusaSlicer, but for historical reasons the binary is +named prusa-slicer. The desktop file appears under Graphics because cad is not +an available option on some window managers. + +Memory limits +============= + +The initial setup wizard is known to use more memory than the limits set by the +user's default login class, causing PrusaSlicer to crash with a 'std::bad_alloc' +error. To avoid this, increase datasize memory limits in +${SYSCONFDIR}/login.conf or make sure your user is in the 'staff' class, and +bump the limits with 'ulimit'. Setting the datasize to 2048M (ulimit -d 2097152) +should be enough when using default options with all standard printers, but you +may need to bump it up even further depending your configuration. + +Font issues - Fixed in 2.9.6 +============================ + +Before version 2.9.6, the mechanism for adding text to an object didn't work, +e.g. the "Add Object->Text" or "Add Negative Space->Text" context-menu items. +This release contains a fix for font selection. If you are upgrading from an +older version and fonts are not loading properly, e.g., the Add...Text item +pop-up neither shows, nor lets you choose, a font name, try deleting +"~/.config/PrusaSlicer/cache/fonts.cereal" and restarting PrusaSlicer.