summaryrefslogtreecommitdiff
path: root/media-gfx
diff options
context:
space:
mode:
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/Manifest.gzbin37869 -> 37873 bytes
-rw-r--r--media-gfx/prusaslicer/Manifest2
-rw-r--r--media-gfx/prusaslicer/files/prusaslicer-2.5.0_boost-1.81-std-wxString-to-std-wstring.patch40
-rw-r--r--media-gfx/prusaslicer/prusaslicer-2.5.0-r1.ebuild88
-rw-r--r--media-gfx/superslicer/Manifest2
-rw-r--r--media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch40
-rw-r--r--media-gfx/superslicer/superslicer-2.5.59.0-r2.ebuild99
7 files changed, 271 insertions, 0 deletions
diff --git a/media-gfx/Manifest.gz b/media-gfx/Manifest.gz
index a9196ba498c8..f4afa74f18b9 100644
--- a/media-gfx/Manifest.gz
+++ b/media-gfx/Manifest.gz
Binary files differ
diff --git a/media-gfx/prusaslicer/Manifest b/media-gfx/prusaslicer/Manifest
index 1334d03f634e..a6a8275f88be 100644
--- a/media-gfx/prusaslicer/Manifest
+++ b/media-gfx/prusaslicer/Manifest
@@ -1,10 +1,12 @@
AUX prusaslicer-2.4.0-fix-build-with-cereal-1.3.1.patch 1601 BLAKE2B 0c30817c51c1cf2a914b1faad9923109cbae111e8538d6c7257885ab29b5944bdb97b0927ced972133ffd8fe12d2fe36f0826bb9839e3cbedd716719b0d26881 SHA512 21377080026fa43bf23dc06c4925decd6c6e7827599caebc2ba2e7b3f4f4428fcd6fe4044f3bc3d0f059cf2ede043cafe2928622046bf9443bdd3f21f1ff6c59
AUX prusaslicer-2.5.0_alpha2-boost-fixes.patch 3836 BLAKE2B 92bd4d4e43eceb67a1356552ee75431d05d61f5983986d109f6601b3fb86b195a39d18f26add58426fa535200af778864ff643a38d6771cb5e7de6a3a91f0192 SHA512 3a13e2e0fb0fd53571ea2b44403c810729b80c715a8fcaa5c596f680eb9c67e9f86c2194e09af4de54baa5bd95023b32f27cb475ccfe9ac71ea583b5ab02aba5
+AUX prusaslicer-2.5.0_boost-1.81-std-wxString-to-std-wstring.patch 2581 BLAKE2B 8c2ec83db05e97949aa9fb43d3980748be1324cb2ac90c8caec45b772fb2bad34f56365381bb371d0094079b42065a65c00595388ec861e127b846e6859a0281 SHA512 6f454745d8f84dbcded092a1a16b2903757b36d76888a4c40e1f019f75ba6bea9b245c980347cc7feb0a9bdd22e8eb4e4b12e639594f1fe6e928eea5298081ec
AUX prusaslicer-2.5.0_rc1-cereal-1.3.1.patch 1384 BLAKE2B 080b05c64f181759616557ebe6d83f91dd9a7b45f0f3833f9c3fa7f3d74df3d3399b353898967a51597b0422a611e8a86f85a8825de1a8fe818b389384e70373 SHA512 c325f7fed4bcdb380221c3b63ad525a53d26bab8baf7c7347035c8d22474ab38af944e445fc58da7f7979d9ec53f61b17a9edc1e7d86c65ac796e479a0316ce6
AUX prusaslicer-2.5.0_rc1-fix-tests.patch 363 BLAKE2B 49c2dd3da996148497ab09854421cadd5054d06d5d78c2fd973f274857817c4fa0da7dfdb5efed03125422c2cab432d0f946f0f84929e08756ca3180bebd6709 SHA512 952958b687bf1b0d454ed921799d283b08fe56acaccbd909c41269243839cd5c02b1aca594d1fa947aff73c853ef6dcfd52e938f4f39a54396ec32d2e9cb284b
DIST prusaslicer-2.5.0.tar.gz 48591956 BLAKE2B e353e30d91b5bb60d8885783fcba8e5fc412f388f80c35df4b20733090cb19b54a851e00b9fb6a2a813a3c734da7fccc73259c5e6033de182a73eaaf4599f431 SHA512 b31c1bf5c0692ce34e965e356cc27a07819712a524a514100bcb9372a08d3c4c9200a097b72f6b4e3efd0d3e9253bc3d813a9fe24d1f8a3d5a2933c9e3712665
DIST prusaslicer-2.5.0_alpha2.tar.gz 48053741 BLAKE2B 161462ee4dc061ee1816c165b0e85688bcce1ee010451f3d6d724a71526ccea4eb006c9610124ec006ff19b030af2fcb74993016658069222d98152f29660c7e SHA512 8c29d79349e834df284374131659b863d1df592ee5304f2bae7cdbe1825feac465eaf78e0932d4184f4077a44d6add3194db31f12c5202cb064020fbaf4beecd
DIST prusaslicer-2.5.0_rc2.tar.gz 48596343 BLAKE2B 41df2c34929ee6797604f87d5444f252c6f751cef1de2f5275b67d675217ff2fe7bf98ecad3a551528be1f18bf926d3660cddce2ab07911a3f8c154499dd918e SHA512 94ce4b335cc89ce7c8949cdc35013bd6166ed09aa8bda556328630d7977be5d293e6ba7a143af2d1485ea7a6f6b613514ed874287793e7edcaba3453d63e37f3
+EBUILD prusaslicer-2.5.0-r1.ebuild 2004 BLAKE2B 61e4097dcb70885bb9002899bbc322133f0aa2ed67c212367866b3d69614cd2d8e60d269781c4cbe2b2de673aea7ab66d8ad9e6eb6eece20eb4e93e8854095d5 SHA512 771a01d860257896b7e87eb718fa761b10bca59a477abf85e9792845f4ddef16622688a3b4872457957dd4392e219846c7537b072b39427caf22575b0880d349
EBUILD prusaslicer-2.5.0.ebuild 1932 BLAKE2B fcb64f0b0f4b3c7fa756b6d2f6700849a962f70914bae276b06f735483778dd3e332417ee6a16fd34f35c7b069b022565e34696ac13c18cd66032e76536c8061 SHA512 ba6097e3d532d2ec57fa043a136195fc79eee5a2361ef6430e1d0244e888478db2d0fddb9924af3928aa6c83d238ac288d4f87ed9d51f3d3442cf6a9b05fb0ff
EBUILD prusaslicer-2.5.0_alpha2-r1.ebuild 1732 BLAKE2B bae5a2fbc6649c0e7508e51af3626273bac81d0ebb59feec20163bf71bf13e4a6a78d8c2dfd04d0b1e07544b05d70fb56dfd59c72ea50de4c0ae1b961134260e SHA512 df6f53be75ce105c990c4f8320646e5dfd9577aa08b0bcb04e90226138bc7ab69b7e3e9d22f805cb00153185cf23054a76a0c78d71266db4d65e6fa8bc766f29
EBUILD prusaslicer-2.5.0_rc2.ebuild 1950 BLAKE2B acfa0d7285f0d7fdb878be0387a6f4c42a7a2472b532fa3921baf77885f63aab64d321f723d3d3af95b0365dcfac250967429babebc158eb8102b31af72d08e0 SHA512 e3653c4f6ea2dd06d63424bb656f043034ee74c46e3b5d47fc6f00e18f42761b9f6cd6240cda10e02eead03e479cb910142903109ba8bffa2b4fd5415ba48160
diff --git a/media-gfx/prusaslicer/files/prusaslicer-2.5.0_boost-1.81-std-wxString-to-std-wstring.patch b/media-gfx/prusaslicer/files/prusaslicer-2.5.0_boost-1.81-std-wxString-to-std-wstring.patch
new file mode 100644
index 000000000000..1cb0d9f1afff
--- /dev/null
+++ b/media-gfx/prusaslicer/files/prusaslicer-2.5.0_boost-1.81-std-wxString-to-std-wstring.patch
@@ -0,0 +1,40 @@
+--- a/src/slic3r/GUI/PrintHostDialogs.cpp 2022-12-21 10:21:43.583075853 +1100
++++ b/src/slic3r/GUI/PrintHostDialogs.cpp 2022-12-21 10:23:03.902694287 +1100
+@@ -79,8 +79,8 @@ PrintHostSendDialog::PrintHostSendDialog
+ if (size_t extension_start = recent_path.find_last_of('.'); extension_start != std::string::npos)
+ m_valid_suffix = recent_path.substr(extension_start);
+ // .gcode suffix control
+- auto validate_path = [this](const wxString &path) -> bool {
+- if (! path.Lower().EndsWith(m_valid_suffix.Lower())) {
++ auto validate_path = [this](const std::wstring &path) -> bool {
++ if (! wxString(path).Lower().EndsWith(m_valid_suffix.Lower())) {
+ MessageDialog msg_wingow(this, wxString::Format(_L("Upload filename doesn't end with \"%s\". Do you wish to continue?"), m_valid_suffix), wxString(SLIC3R_APP_NAME), wxYES | wxNO);
+ if (msg_wingow.ShowModal() == wxID_NO)
+ return false;
+@@ -90,7 +90,7 @@ PrintHostSendDialog::PrintHostSendDialog
+
+ auto* btn_ok = add_button(wxID_OK, true, _L("Upload"));
+ btn_ok->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) {
+- if (validate_path(txt_filename->GetValue())) {
++ if (validate_path(txt_filename->GetValue().ToStdWstring())) {
+ post_upload_action = PrintHostPostUploadAction::None;
+ EndDialog(wxID_OK);
+ }
+@@ -100,7 +100,7 @@ PrintHostSendDialog::PrintHostSendDialog
+ if (post_actions.has(PrintHostPostUploadAction::StartPrint)) {
+ auto* btn_print = add_button(wxID_YES, false, _L("Upload and Print"));
+ btn_print->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) {
+- if (validate_path(txt_filename->GetValue())) {
++ if (validate_path(txt_filename->GetValue().ToStdWstring())) {
+ post_upload_action = PrintHostPostUploadAction::StartPrint;
+ EndDialog(wxID_OK);
+ }
+@@ -111,7 +111,7 @@ PrintHostSendDialog::PrintHostSendDialog
+ // Using wxID_MORE as a button identifier to be different from the other buttons, wxID_MORE has no other meaning here.
+ auto* btn_simulate = add_button(wxID_MORE, false, _L("Upload and Simulate"));
+ btn_simulate->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) {
+- if (validate_path(txt_filename->GetValue())) {
++ if (validate_path(txt_filename->GetValue().ToStdWstring())) {
+ post_upload_action = PrintHostPostUploadAction::StartSimulation;
+ EndDialog(wxID_OK);
+ }
diff --git a/media-gfx/prusaslicer/prusaslicer-2.5.0-r1.ebuild b/media-gfx/prusaslicer/prusaslicer-2.5.0-r1.ebuild
new file mode 100644
index 000000000000..2e02b49090b4
--- /dev/null
+++ b/media-gfx/prusaslicer/prusaslicer-2.5.0-r1.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.0-gtk3"
+MY_PN="PrusaSlicer"
+MY_PV="$(ver_rs 3 -)"
+
+inherit cmake wxwidgets xdg
+
+DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
+HOMEPAGE="https://www.prusa3d.com/prusaslicer/"
+SRC_URI="https://github.com/prusa3d/PrusaSlicer/archive/refs/tags/version_${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RESTRICT="test"
+
+RDEPEND="
+ dev-cpp/eigen:3
+ dev-cpp/tbb:=
+ dev-libs/boost:=[nls]
+ dev-libs/cereal
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/gmp:=
+ dev-libs/mpfr:=
+ >=media-gfx/openvdb-8.2:=
+ net-misc/curl[adns]
+ media-libs/glew:0=
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:0=
+ media-libs/qhull:=
+ sci-libs/libigl
+ sci-libs/nlopt
+ =sci-libs/opencascade-7.6*:=
+ >=sci-mathematics/cgal-5.0:=
+ sys-apps/dbus
+ sys-libs/zlib:=
+ virtual/opengl
+ x11-libs/gtk+:3
+ x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
+"
+DEPEND="${RDEPEND}
+ media-libs/qhull[static-libs]
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.5.0_alpha2-boost-fixes.patch"
+ "${FILESDIR}/${PN}-2.5.0_rc1-cereal-1.3.1.patch"
+ "${FILESDIR}/${PN}-2.5.0_rc1-fix-tests.patch"
+ "${FILESDIR}/${PN}-2.5.0_boost-1.81-std-wxString-to-std-wstring.patch"
+)
+
+S="${WORKDIR}/${MY_PN}-version_${MY_PV}"
+
+src_prepare() {
+ sed -i -e 's/PrusaSlicer-${SLIC3R_VERSION}+UNKNOWN/PrusaSlicer-${SLIC3R_VERSION}+Gentoo/g' version.inc || die
+
+ sed -i -e 's/find_package(OpenCASCADE 7.6.2 REQUIRED)/find_package(OpenCASCADE REQUIRED)/g' \
+ src/occt_wrapper/CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ CMAKE_BUILD_TYPE="Release"
+
+ setup-wxwidgets
+
+ local mycmakeargs=(
+ -DOPENVDB_FIND_MODULE_PATH="/usr/$(get_libdir)/cmake/OpenVDB"
+
+ -DSLIC3R_BUILD_TESTS=$(usex test)
+ -DSLIC3R_FHS=ON
+ -DSLIC3R_GTK=3
+ -DSLIC3R_GUI=ON
+ -DSLIC3R_PCH=OFF
+ -DSLIC3R_STATIC=OFF
+ -DSLIC3R_WX_STABLE=ON
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
diff --git a/media-gfx/superslicer/Manifest b/media-gfx/superslicer/Manifest
index 10712fba8ca5..ac6179e52141 100644
--- a/media-gfx/superslicer/Manifest
+++ b/media-gfx/superslicer/Manifest
@@ -4,6 +4,7 @@ AUX superslicer-2.4.58.3-boost-1.79-port-v2.patch 9044 BLAKE2B cec6f33857de0b304
AUX superslicer-2.4.58.3-cereal.patch 2628 BLAKE2B 26001908801db3c7acfa12eb0e37094818b57577c99f90579e15b93b0e2aa796345e6facc807c929ccd63d566ebbf0497dbaa8bc518a397a0ac68e03d53763c3 SHA512 0f8ed92d5662bddc0ce09cbdd8c67736957febe317753c5111b9cc7dcfe99335fa4eb722e03940951b89c82d2d237898716cd66d2d2e54cd250b5c872047a48f
AUX superslicer-2.4.58.3-openexr3.patch 2357 BLAKE2B 0d8c889817aaa7ddcdfd9ee434a668ce56b8c6906d61e73f118d8d37ef6a86d1315191956316e7d459629a9e60291ff86f0915bc5a877722ff99f8ce55af0351 SHA512 d3516333ce841b75c4da4f178e6e099b18fe64254484c286ad5b71d284407aa2e9cd4187b4c192b7ff3557170c0cee818d252b1c11e6b09263f9c2dc216e8aeb
AUX superslicer-2.4.58.3-wxgtk3-wayland.patch 485 BLAKE2B a6a12b7b6b0da28593ee417e45bc97d9c297ce40b8f4a3adb3defa237ca4849238d82f58b4e8e7a4432d3167613845dd828db37529db6dbc9626bb89aa29437c SHA512 515c9b4b00cdfdc268febba8614fe9d2f33c5721ab17935a19055a25ef870ec04a51fc9af801f159dd48fb1a2d882695df373ee3b28dc676ac50f0fbaf73d474
+AUX superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch 2581 BLAKE2B 8c2ec83db05e97949aa9fb43d3980748be1324cb2ac90c8caec45b772fb2bad34f56365381bb371d0094079b42065a65c00595388ec861e127b846e6859a0281 SHA512 6f454745d8f84dbcded092a1a16b2903757b36d76888a4c40e1f019f75ba6bea9b245c980347cc7feb0a9bdd22e8eb4e4b12e639594f1fe6e928eea5298081ec
AUX superslicer-2.5.59.0-boost.patch 9423 BLAKE2B 8e797ed961fe2c1c8f0b5e67b6aaee8efa17933cecd190b1623e7df4f2724edb4e1c6559a839c4dc1d3b67f8f9db080476640e48187a03ec0541114863cdffc6 SHA512 f72eb91230c0e3aa2254533e5377a6aedcd806529c0cf3795eee883d4b8aaf6c618c7f2e064e80de3f688bf9f2a97d913e72d0b1c227d64caa7585cad1c97a84
AUX superslicer-2.5.59.0-cereal.patch 1974 BLAKE2B b28be995a1c258c1848ad78a00061c73ccb173da0f790573273123f8f1481131a75ec3fb84fd8cee26dc7cef750650c827b39b685343d9defd44edec48e698a6 SHA512 50510b349f43354da7a5712d662b94a0276081c9af28d04b8d63885ed0053b52522b686ecfffa45d0b197097ee7c08ea1c831f0995a337c44becd453c392a539
AUX superslicer-2.5.59.0-dont-install-bundled-angelscript.patch 1671 BLAKE2B 211bbd88a3db29312bfd1b0a7fac23ade2fb1e38c99cd1c7125e2c5d5fda46adc2cb232345085783e37404c6fbc10cb831196b546ca3a76f4d59d8095f254f54 SHA512 a206103eac2969e68540d564149e843a24a16445b6157fc3409ff1c577657d35ef05493259e3fc3615d641eaad96832231aa969c53eaac87e11d1b365ffd99b1
@@ -17,4 +18,5 @@ DIST superslicer-2.5.59.0-profiles.tar.gz 15322406 BLAKE2B cfa89697e832e0601746c
DIST superslicer-2.5.59.0.tar.gz 45360646 BLAKE2B da65610270ed4c7d55b5bc495d9970812af94f424345088782b3a45b97fcf0f4b58bdc0417b89ed49e21d8c250535baa7cb74344f43438fbde8daf1b3acfacdd SHA512 1d2c0316c91bf0d65fb366806e9ea868bc93fae33deb580a324ce065fd3789ff1b600e9ace400db4988b371b1c36ef0c3ea2b52cde0d48984f312dd8d7ef3a1c
EBUILD superslicer-2.4.58.3-r1.ebuild 2105 BLAKE2B 20cbba8ea3066567c4878e56788455d03799b7d00172ade89e476fdceba1ae88d025ed08b818b1ab1867d892ff353b49343a6d121a5d4af4930c09efbcb582d4 SHA512 9e983deee4597c285aec3cd7e359df9792363763524b8983faf2d03c832a72efa0caa5450570188aeb8be3504ef2b910fe3e2620fa02fa4e6907d1a2440ce327
EBUILD superslicer-2.5.59.0-r1.ebuild 2130 BLAKE2B 701f37cd47ba8f95c96d8e1c78ba3f6874e8a1805f5043bd5d30f2dbe6efb61056dba653ce7e4add0ca03ab5d11b46d806e218f95e7e842a5d0689000813b8ba SHA512 91e7fc8bfdfc1dc1f20060a27ea4e6f99fc48e33cbede293cf1d594124cb6c93c8bc9c3c9da6affaa127420b128dae45ff375400a1d8e2e9c5b35af8ad49534e
+EBUILD superslicer-2.5.59.0-r2.ebuild 2195 BLAKE2B aceb6d93d5db050312c52047e18f1a5ac3da0aacbdd0f07830b04c4d5a21aaefabcd6d7a5f68f1f2a095a34b354adcd841bc9f3adbb164d107dd8ea650a3a98c SHA512 2b9235337c54b62b7e8df6f3d043666b1da14d5f257231947fe283585539d5701437a981f3dc37583a72117cccdb4a220d1bb7524aad49819227340f03e6de5b
MISC metadata.xml 413 BLAKE2B a43550366844e53b0ebed37197d33bf38efb555eee344f053f90e35e939263e3959301fdd072d5b6925d1e3e0d1fd629e2f459356e2f227006f8784a4364fc11 SHA512 8e1abc223f2e24cca551b08cbc37910f2a43319fce7299e52dd586dd6454c83e98e59b8d14c18613c8894fdca33d04297affa2da1f4aa001a5e200e4b5f2c331
diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch
new file mode 100644
index 000000000000..1cb0d9f1afff
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch
@@ -0,0 +1,40 @@
+--- a/src/slic3r/GUI/PrintHostDialogs.cpp 2022-12-21 10:21:43.583075853 +1100
++++ b/src/slic3r/GUI/PrintHostDialogs.cpp 2022-12-21 10:23:03.902694287 +1100
+@@ -79,8 +79,8 @@ PrintHostSendDialog::PrintHostSendDialog
+ if (size_t extension_start = recent_path.find_last_of('.'); extension_start != std::string::npos)
+ m_valid_suffix = recent_path.substr(extension_start);
+ // .gcode suffix control
+- auto validate_path = [this](const wxString &path) -> bool {
+- if (! path.Lower().EndsWith(m_valid_suffix.Lower())) {
++ auto validate_path = [this](const std::wstring &path) -> bool {
++ if (! wxString(path).Lower().EndsWith(m_valid_suffix.Lower())) {
+ MessageDialog msg_wingow(this, wxString::Format(_L("Upload filename doesn't end with \"%s\". Do you wish to continue?"), m_valid_suffix), wxString(SLIC3R_APP_NAME), wxYES | wxNO);
+ if (msg_wingow.ShowModal() == wxID_NO)
+ return false;
+@@ -90,7 +90,7 @@ PrintHostSendDialog::PrintHostSendDialog
+
+ auto* btn_ok = add_button(wxID_OK, true, _L("Upload"));
+ btn_ok->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) {
+- if (validate_path(txt_filename->GetValue())) {
++ if (validate_path(txt_filename->GetValue().ToStdWstring())) {
+ post_upload_action = PrintHostPostUploadAction::None;
+ EndDialog(wxID_OK);
+ }
+@@ -100,7 +100,7 @@ PrintHostSendDialog::PrintHostSendDialog
+ if (post_actions.has(PrintHostPostUploadAction::StartPrint)) {
+ auto* btn_print = add_button(wxID_YES, false, _L("Upload and Print"));
+ btn_print->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) {
+- if (validate_path(txt_filename->GetValue())) {
++ if (validate_path(txt_filename->GetValue().ToStdWstring())) {
+ post_upload_action = PrintHostPostUploadAction::StartPrint;
+ EndDialog(wxID_OK);
+ }
+@@ -111,7 +111,7 @@ PrintHostSendDialog::PrintHostSendDialog
+ // Using wxID_MORE as a button identifier to be different from the other buttons, wxID_MORE has no other meaning here.
+ auto* btn_simulate = add_button(wxID_MORE, false, _L("Upload and Simulate"));
+ btn_simulate->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) {
+- if (validate_path(txt_filename->GetValue())) {
++ if (validate_path(txt_filename->GetValue().ToStdWstring())) {
+ post_upload_action = PrintHostPostUploadAction::StartSimulation;
+ EndDialog(wxID_OK);
+ }
diff --git a/media-gfx/superslicer/superslicer-2.5.59.0-r2.ebuild b/media-gfx/superslicer/superslicer-2.5.59.0-r2.ebuild
new file mode 100644
index 000000000000..08c74ac46f52
--- /dev/null
+++ b/media-gfx/superslicer/superslicer-2.5.59.0-r2.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.0-gtk3"
+MY_PN="SuperSlicer"
+
+inherit cmake wxwidgets xdg
+
+DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
+HOMEPAGE="https://github.com/supermerill/SuperSlicer/"
+SRC_URI="
+ https://github.com/supermerill/SuperSlicer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/slic3r/slic3r-profiles/archive/748fbdfd2ac077e4e415868e7bc963740b92aa8e.tar.gz -> ${P}-profiles.tar.gz
+"
+
+LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RESTRICT="test"
+
+# No dep on sci-libs/libigl, in-tree version cannot build
+# static library currently. Using bundled one.
+RDEPEND="
+ dev-cpp/eigen:3
+ dev-cpp/tbb:=
+ dev-libs/boost:=[nls]
+ dev-libs/cereal
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/gmp:=
+ dev-libs/mpfr:=
+ dev-libs/imath:=
+ >=media-gfx/openvdb-8.2:=
+ net-misc/curl[adns]
+ media-libs/glew:0=
+ media-libs/libpng:0=
+ media-libs/qhull:=
+ sci-libs/nlopt
+ >=sci-mathematics/cgal-5.0:=
+ sys-apps/dbus
+ sys-libs/zlib:=
+ virtual/glu
+ virtual/opengl
+ x11-libs/gtk+:3
+ x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
+"
+DEPEND="${RDEPEND}
+ media-libs/qhull[static-libs]
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-openexr3.patch"
+ "${FILESDIR}/${P}-wxgtk3-wayland.patch"
+ "${FILESDIR}/${P}-cereal.patch"
+ "${FILESDIR}/${P}-boost.patch"
+ "${FILESDIR}/${P}-boost-1.81-std-wxString-to-std-wstring.patch"
+ "${FILESDIR}/${P}-missing-includes.patch"
+ "${FILESDIR}/${P}-dont-install-bundled-angelscript.patch"
+ "${FILESDIR}/${P}-fix-gcodeviewer-symlink.patch"
+)
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+src_unpack() {
+ default
+
+ mv slic3r-profiles-*/* "${S}"/resources/profiles/ || die
+}
+
+src_configure() {
+ CMAKE_BUILD_TYPE="Release"
+
+ setup-wxwidgets
+
+ local mycmakeargs=(
+ -DOPENVDB_FIND_MODULE_PATH="/usr/$(get_libdir)/cmake/OpenVDB"
+
+ -DSLIC3R_BUILD_TESTS=$(usex test)
+ -DSLIC3R_FHS=ON
+ -DSLIC3R_GTK=3
+ -DSLIC3R_GUI=ON
+ -DSLIC3R_PCH=OFF
+ -DSLIC3R_STATIC=OFF
+ -DSLIC3R_WX_STABLE=ON
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ rm "${ED}/usr/lib/udev/rules.d/90-3dconnexion.rules" || die
+}