superslicer / discord
This commit is contained in:
		
							parent
							
								
									1da06f8e22
								
							
						
					
					
						commit
						3f8434c8c2
					
				
							
								
								
									
										18
									
								
								media-gfx/superslicer/Manifest
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								media-gfx/superslicer/Manifest
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					AUX superslicer-2.5.59.8-additional-imports-fixes.patch 3266 BLAKE2B 9016a6baa5c97681b0caadbffb6b2a890f9f69083ccf6201e9945ca1b3ff3aebb04b4eab1b94bc2f69b6e21d212281e0a2d0aeaa26b3fc3ecc0afbaa2db845f1 SHA512 8ae0692cd708cb14e268f10740629c9a69fad5ddce1d2c11bc73cccceb4ec91a5a9dc508deb78743828ea366ef8924e149306ce3674c55074b86800cc25c575a
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-boost-replace-load-string-file.patch 1753 BLAKE2B 009f44faffbe83ea15d029e4f36bfe0182c13df1bd80c4732f3f9460046c5ac38a77bf8a6294c70931aaab55f95ca554838a8f17b8983ccd7bc9e1e6553bff67 SHA512 5b61c2de780b645237e5fa9018667d94e90cde3f1d5a6c6c29db96bede7cfd023f8ca272f0172b859914b6bec0fe5b4e6013512fff1a54b7975f1b2a93a42ef6
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-boost.patch 12854 BLAKE2B 167df5bf7c97ebc34e3e85120c2059a66ee3cf2bd936bcfc821d26ac5846a59c8e34a2318e14ed55d2a0f8678a41e4729d19d163d2c05aa1c1e7c1913f648071 SHA512 a011cddbce17134e421e7a2f10d5daffb12de1ff2888a0b14a753013b981ccd1c2a95cb5e54e5ed4fcbba1878f4af15e5b87716164fdb44ec97d66a1bafb5838
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-cereal.patch 1807 BLAKE2B 0ab8eb8e7f283e09e19c55d95bd6fe874797cc3d67f153a7c3920e1ff02e3b974c64f0dfc510b0cf3dde2484eeb00f550eab636e304bb6ba3c76b066bf537caf SHA512 503d3e8483315affb77f9bf9299e529455b73484cb278eda413a7e17f27f687b24158210b2fbf50581a970821930511934c994fa70c2ef8b68702f7614528d38
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-dont-install-angelscript.patch 427 BLAKE2B 8f853d1c8c861bcb18e3272467c5a4ca745b67790d88be9943d4cf92f1f5dfdd3b4e022ba697c90997ead2c8ad77debf7ea96fc262a21caa2087cd7b62901bdb SHA512 c4a718ead714b9d2a22cff7e9a48846954f9606290ad533c0e491429b3455f43dee7a10a93a34f564e03e9e3b2eeef87d8276f6062d770f57afef27a7fbdb868
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-fix-compilation-error-gnu17.patch 812 BLAKE2B b9348bfc8ba5b9c63e269b453d39f3b56de7b1c62f5dd8ad376a6fb0abe7c520cb13c3befdd18521f4abfe4cb1eccae574f9d80ae355236733b8f0e683db5a95 SHA512 bbb36ed9572f2422c69be356b8f62531f4dabe0d9a731dff0697a0358d6bc4846dbe854c4e044ca06ba0ee6f87c2f80cb137ecf27f59d11cff829791376c9508
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-fix-dereferencing-in-std-unique_ptr-to-nullptr.patch 5193 BLAKE2B fcd3b72d51a67dc1670526f7b40e10a1b364f59201724db2739ad85aa99ae5184c6491c7d825b75df608d30d407be4a0c39e5b023ae9a320c918bb0f1aec5ea5 SHA512 385b017212241c4daa678fa4f83ec11833f2aa17294a68d2a6ce60deafe03710dfa55f262072fe8ef96d06247a9c2dd55433091699b173c5b8c49c8f8ad1bf98
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-gcodeviewer-symlink-fix.patch 686 BLAKE2B 869ba2516ecfb72cc59b50be5590ff07879b146dcec7b5b7e9cebd6d42d5bb011f353e89bf921b825392f4b0dbaa0cef5032f0a5a5b691e829ae7ad84e4e31a2 SHA512 5eb73e13d691e9b5a89a5f06181e7b8a5e13e7b26a9ce80b33618ab945aaaf2d7a29bf85aa4cf702212f33994ad28f19e11359ee29055175194e13173704f3ec
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-libnest2d-link-xcb.patch 678 BLAKE2B 7e6328a9058206d325c77a73d7621dffe3a92c187e9d27d8173e2f0f77211fba3a87421f3827124cfe819649afbba4e5767df6636bd0b70c84f12e785e5879a9 SHA512 d6152f9465e752e0f88bd69c4cfe0b39cbd6df05f27df7b98b174bf8100b93f69feb7ba00086f67b4962a3a544bd91dcafa24679286318f9abe5609454c2eb43
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-link-occtwrapper-statically.patch 2916 BLAKE2B 9f28ba510235b20ad5cc8cd919bce00137b62ac1b64141ccaf0559f2e5d263b9c71539cc302a7e2ed046b3965aa5de36dff6131491a666fd90275bbbee95f450 SHA512 b49f2db32814c1bc467751f6d1b73bf22bba75e37b84b42bb0b8f42b5aa712a30cc9bb70f2210abed124509ca3d037e2450700a82d0994e8c3e4bafe498c6dc9
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-missing-includes-fix.patch 3042 BLAKE2B bc0d9e39abd204fefd59b0c1bb1077d0264f2a9bcfdf19bfb36d79dbbf8a1c08329dd8fedf60ab3bae6598131a98fd9712f2a6a598677fd2a557841c4a30f319 SHA512 e461c0111197c915aebe084c59ec1f84fe711cc29ae8f8aacd33309c52dd528ad9f4b85f25a14eeb06ce5d7b141f80a4bdd7fac56b428ec183cfeb84d2164106
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-openexr3.patch 2357 BLAKE2B 0d8c889817aaa7ddcdfd9ee434a668ce56b8c6906d61e73f118d8d37ef6a86d1315191956316e7d459629a9e60291ff86f0915bc5a877722ff99f8ce55af0351 SHA512 d3516333ce841b75c4da4f178e6e099b18fe64254484c286ad5b71d284407aa2e9cd4187b4c192b7ff3557170c0cee818d252b1c11e6b09263f9c2dc216e8aeb
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-relax-OpenCASCADE-dep.patch 384 BLAKE2B 25be6671e091d04dca0896448786d90a36e4b6ae5c9b31c8a249aa226788f338f0e40c9a8f849e7a731ce0ba1e5e531dd314138d6c5295d64067cecd9e0be6de SHA512 57a42c6936b369ebadcefb91da32125d265a763f073d7e8d0209a87481c057066848799bac998a83ab4aacdbe4da01fa4d721794d982d52d2f5cda1df59d47b5
 | 
				
			||||||
 | 
					AUX superslicer-2.5.59.8-wxgtk3-wayland-fix.patch 485 BLAKE2B 4bd5634f39ba6132bb4216807fef254a88f07f5eb1162de12589c22b038c2876185a801ed481738d9fbbb04796952d304f17010fd61eb347213b649b13f3064d SHA512 4867192b069829ff0fd3d2bf86e2117979e505f4764223f7d0b874c15fad9cffca58d8e55a518a56cf156fee2187040115866a10e92aa903e87dc6ec909d0339
 | 
				
			||||||
 | 
					DIST superslicer-2.5.59.8-profiles.tar.gz 17931886 BLAKE2B 953a777dd12971c355a5f48148d4c3831b9435cf08f1baecb32ff0ef6245678f81c53bf5078cc4d6d04642e9ee18e1023d5d1578ebdf1384c7c1ce44a1153c50 SHA512 2e4561de7c57308a91c8964c8a957bc10c5e4cedc47c5fc37633bbcf78e3576ed1eaa6d7126485e94eb0aa593940c73a460f3d5ad65f33001d32953caa2fb4e1
 | 
				
			||||||
 | 
					DIST superslicer-2.5.59.8.tar.gz 46021260 BLAKE2B 04abffd1a9cdf417d544539d5cde9b3559f2da7c1cb24cfa0e4a5d11359bca53cb25a90a3a14b26ee10e33e283ba4774d404265e6740b5457f82110be2a44af9 SHA512 57ef6c129c24378d6f4f78d34a60ed15668a8c5c266fa706937edebbd7b52d145657aae1e46a7b1d19dabaf403465bc5af50a94fa70205456bfc87a1458bac6e
 | 
				
			||||||
 | 
					EBUILD superslicer-2.5.59.8.ebuild 2642 BLAKE2B 3c54738bf511ea2c36470d4caa08728a609852518d4062e0926838266890329810d9ddace085cee56f668e4935be8bbc840527f8ab28cd8bd467f62b8962052c SHA512 b9a10f8d95397fbf18586c2d68cb3f7b8c183d8d4a6529b29159dcb37059be5e1a20e06b15b031ee925eee045b4732a288175363f89b610e006b1b207c87e438
 | 
				
			||||||
 | 
					MISC metadata.xml 413 BLAKE2B a43550366844e53b0ebed37197d33bf38efb555eee344f053f90e35e939263e3959301fdd072d5b6925d1e3e0d1fd629e2f459356e2f227006f8784a4364fc11 SHA512 8e1abc223f2e24cca551b08cbc37910f2a43319fce7299e52dd586dd6454c83e98e59b8d14c18613c8894fdca33d04297affa2da1f4aa001a5e200e4b5f2c331
 | 
				
			||||||
@ -0,0 +1,111 @@
 | 
				
			|||||||
 | 
					diff --git a/src/libslic3r/Extruder.hpp b/src/libslic3r/Extruder.hpp
 | 
				
			||||||
 | 
					index e4e16d263..629fd6e0b 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Extruder.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Extruder.hpp
 | 
				
			||||||
 | 
					@@ -3,6 +3,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include "libslic3r.h"
 | 
				
			||||||
 | 
					 #include "Point.hpp"
 | 
				
			||||||
 | 
					+#include <optional>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace Slic3r {
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/Field.cpp b/src/slic3r/GUI/Field.cpp
 | 
				
			||||||
 | 
					index 10cae794d..c82969e20 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/Field.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/Field.cpp
 | 
				
			||||||
 | 
					@@ -20,6 +20,7 @@
 | 
				
			||||||
 | 
					 #include <wx/tglbtn.h>
 | 
				
			||||||
 | 
					 #endif
 | 
				
			||||||
 | 
					 #include <wx/tokenzr.h>
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string.hpp>
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/predicate.hpp>
 | 
				
			||||||
 | 
					 #include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 #include "OG_CustomCtrl.hpp"
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp
 | 
				
			||||||
 | 
					index ab6039ff0..be01e890a 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/Preferences.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/Preferences.cpp
 | 
				
			||||||
 | 
					@@ -8,6 +8,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <wx/notebook.h>
 | 
				
			||||||
 | 
					 #include <wx/scrolwin.h>
 | 
				
			||||||
 | 
					+#include <wx/display.h>
 | 
				
			||||||
 | 
					 #include "Notebook.hpp"
 | 
				
			||||||
 | 
					 #include "ButtonsDescription.hpp"
 | 
				
			||||||
 | 
					 #include "OG_CustomCtrl.hpp"
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
 | 
				
			||||||
 | 
					index a6c7b580e..1e1566f37 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/Tab.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/Tab.cpp
 | 
				
			||||||
 | 
					@@ -29,6 +29,7 @@
 | 
				
			||||||
 | 
					 #include <wx/settings.h>
 | 
				
			||||||
 | 
					 #include <wx/filedlg.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string.hpp>
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/split.hpp>
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/predicate.hpp>
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/replace.hpp>
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/ObjectID.hpp b/src/libslic3r/ObjectID.hpp
 | 
				
			||||||
 | 
					index 782c58741..08dfba661 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/ObjectID.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/ObjectID.hpp
 | 
				
			||||||
 | 
					@@ -2,6 +2,7 @@
 | 
				
			||||||
 | 
					 #define slic3r_ObjectID_hpp_
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <cereal/access.hpp>
 | 
				
			||||||
 | 
					+#include <cereal/types/base_class.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace Slic3r {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Format/BBConfig.hpp b/src/libslic3r/Format/BBConfig.hpp
 | 
				
			||||||
 | 
					index a4b27675c..8d821bed5 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Format/BBConfig.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Format/BBConfig.hpp
 | 
				
			||||||
 | 
					@@ -2,6 +2,13 @@
 | 
				
			||||||
 | 
					 #define slic3r_Format_BBconfig_hpp_
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include "miniz_extension.hpp"
 | 
				
			||||||
 | 
					+#include <fstream>
 | 
				
			||||||
 | 
					+#include <map>
 | 
				
			||||||
 | 
					+#include "libslic3r/Config.hpp"
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string/replace.hpp>
 | 
				
			||||||
 | 
					+#include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					+#include <boost/property_tree/ptree.hpp>
 | 
				
			||||||
 | 
					+#include <boost/property_tree/ini_parser.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #ifdef __APPLE__
 | 
				
			||||||
 | 
					     #include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/GCode/FanMover.cpp b/src/libslic3r/GCode/FanMover.cpp
 | 
				
			||||||
 | 
					index 8a39d92c5..68e8c9254 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/GCode/FanMover.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/GCode/FanMover.cpp
 | 
				
			||||||
 | 
					@@ -13,9 +13,8 @@
 | 
				
			||||||
 | 
					 #include "../PrintConfig.hpp"
 | 
				
			||||||
 | 
					 #include "../Utils.hpp"
 | 
				
			||||||
 | 
					 #include "Print.hpp"
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-#include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					+#include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace Slic3r {
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Format/bbs_3mf.cpp b/src/libslic3r/Format/bbs_3mf.cpp
 | 
				
			||||||
 | 
					index f1570b7a4..777f1d722 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Format/bbs_3mf.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Format/bbs_3mf.cpp
 | 
				
			||||||
 | 
					@@ -43,11 +43,13 @@
 | 
				
			||||||
 | 
					 #include <boost/property_tree/ptree.hpp>
 | 
				
			||||||
 | 
					 #include <boost/property_tree/xml_parser.hpp>
 | 
				
			||||||
 | 
					 #include <boost/foreach.hpp>
 | 
				
			||||||
 | 
					+#include <boost/thread/mutex.hpp>
 | 
				
			||||||
 | 
					 //#include <openssl/md5.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace pt = boost::property_tree;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <tbb/parallel_reduce.h>
 | 
				
			||||||
 | 
					+#include <tbb/parallel_for.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <expat.h>
 | 
				
			||||||
 | 
					 #include <Eigen/Dense>
 | 
				
			||||||
@ -0,0 +1,43 @@
 | 
				
			|||||||
 | 
					diff --git a/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp
 | 
				
			||||||
 | 
					index f32e44204..272af5ec3 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/ScriptExecutor.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/ScriptExecutor.cpp
 | 
				
			||||||
 | 
					@@ -5,8 +5,11 @@
 | 
				
			||||||
 | 
					 #include "libslic3r/PresetBundle.hpp"
 | 
				
			||||||
 | 
					 #include "libslic3r/Print.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <fstream>
 | 
				
			||||||
 | 
					 #include <string>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 #include <angelscript/source/as_config.h>
 | 
				
			||||||
 | 
					 #include <angelscript/add_on/autowrapper/aswrappedcall.h>
 | 
				
			||||||
 | 
					 #include <angelscript/add_on/scriptarray/scriptarray.h>
 | 
				
			||||||
 | 
					@@ -616,6 +619,17 @@ bool as_is_enabled(std::string &key)
 | 
				
			||||||
 | 
					     return f->is_enabled();
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+inline
 | 
				
			||||||
 | 
					+void load_string_file(const boost::filesystem::path& p, std::string& str)
 | 
				
			||||||
 | 
					+{
 | 
				
			||||||
 | 
					+       std::ifstream file;
 | 
				
			||||||
 | 
					+       file.exceptions(std::ifstream::failbit | std::ifstream::badbit);
 | 
				
			||||||
 | 
					+       file.open(p, std::ios_base::binary);
 | 
				
			||||||
 | 
					+       std::size_t sz = static_cast<std::size_t>(boost::filesystem::file_size(p));
 | 
				
			||||||
 | 
					+       str.resize(sz, '\0');
 | 
				
			||||||
 | 
					+       file.read(&str[0], sz);
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 //function to reset a field
 | 
				
			||||||
 | 
					 void as_back_initial_value(std::string& key) {
 | 
				
			||||||
 | 
					     current_script->add_to_reset(key);
 | 
				
			||||||
 | 
					@@ -745,7 +759,7 @@ void ScriptContainer::init(const std::string& tab_key, Tab* tab)
 | 
				
			||||||
 | 
					         //res = builder.AddSectionFromFile(ui_script_file.string().c_str()); //seems to be problematic on cyrillic locale
 | 
				
			||||||
 | 
					         {
 | 
				
			||||||
 | 
					             std::string all_file;
 | 
				
			||||||
 | 
					-            boost::filesystem::load_string_file(ui_script_file, all_file);
 | 
				
			||||||
 | 
					+            load_string_file(ui_script_file, all_file);
 | 
				
			||||||
 | 
					             res = builder.AddSectionFromMemory(ui_script_file.string().c_str(), all_file.c_str(), (unsigned int)(all_file.length()), 0);
 | 
				
			||||||
 | 
					         }
 | 
				
			||||||
 | 
					         if (res < 0) throw CompileErrorException("Error, can't build the script for tab " + tab_key);
 | 
				
			||||||
							
								
								
									
										323
									
								
								media-gfx/superslicer/files/superslicer-2.5.59.8-boost.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										323
									
								
								media-gfx/superslicer/files/superslicer-2.5.59.8-boost.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,323 @@
 | 
				
			|||||||
 | 
					diff --git a/src/hints/HintsToPot.cpp b/src/hints/HintsToPot.cpp
 | 
				
			||||||
 | 
					index 7c8029c..4791f06 100644
 | 
				
			||||||
 | 
					--- a/src/hints/HintsToPot.cpp
 | 
				
			||||||
 | 
					+++ b/src/hints/HintsToPot.cpp
 | 
				
			||||||
 | 
					@@ -9,7 +9,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 bool write_to_pot(boost::filesystem::path path, const std::vector<std::pair<std::string, std::string>>& data)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					-	boost::filesystem::ofstream file(std::move(path), std::ios_base::app);
 | 
				
			||||||
 | 
					+	boost::nowide::ofstream file(path.string(), std::ios_base::app);
 | 
				
			||||||
 | 
					 	for (const auto& element : data)
 | 
				
			||||||
 | 
					 	{
 | 
				
			||||||
 | 
					 		//Example of .pot element 
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
 | 
				
			||||||
 | 
					index e7c81f8..a626986 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/AppConfig.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/AppConfig.cpp
 | 
				
			||||||
 | 
					@@ -1,3 +1,4 @@
 | 
				
			||||||
 | 
					+#include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 #include "libslic3r/libslic3r.h"
 | 
				
			||||||
 | 
					 #include "libslic3r/Utils.hpp"
 | 
				
			||||||
 | 
					 #include "AppConfig.hpp"
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp
 | 
				
			||||||
 | 
					index 35e36c0..5e8059b 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/AppConfig.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/AppConfig.hpp
 | 
				
			||||||
 | 
					@@ -5,6 +5,7 @@
 | 
				
			||||||
 | 
					 #include <map>
 | 
				
			||||||
 | 
					 #include <string>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <boost/filesystem/path.hpp>
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/trim_all.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include "libslic3r/Config.hpp"
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Flow.cpp b/src/libslic3r/Flow.cpp
 | 
				
			||||||
 | 
					index 269c1cb..acea297 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Flow.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Flow.cpp
 | 
				
			||||||
 | 
					@@ -6,6 +6,7 @@
 | 
				
			||||||
 | 
					 #include <assert.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/predicate.hpp>
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string/replace.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 // Mark string for localization and translate.
 | 
				
			||||||
 | 
					 #define L(s) Slic3r::I18N::translate(s)
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/GCode/WipeTower.cpp b/src/libslic3r/GCode/WipeTower.cpp
 | 
				
			||||||
 | 
					index 132c9a7..c311d05 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/GCode/WipeTower.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/GCode/WipeTower.cpp
 | 
				
			||||||
 | 
					@@ -12,7 +12,9 @@
 | 
				
			||||||
 | 
					 #include "LocalesUtils.hpp"
 | 
				
			||||||
 | 
					 #include "Flow.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/predicate.hpp>
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace Slic3r
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/LocalesUtils.cpp b/src/libslic3r/LocalesUtils.cpp
 | 
				
			||||||
 | 
					index 5bf5205..7b87052 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/LocalesUtils.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/LocalesUtils.cpp
 | 
				
			||||||
 | 
					@@ -1,3 +1,4 @@
 | 
				
			||||||
 | 
					+#include <boost/lexical_cast.hpp>
 | 
				
			||||||
 | 
					 #include "LocalesUtils.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #ifdef _WIN32
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp
 | 
				
			||||||
 | 
					index 106f26e..c81cd1d 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Preset.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Preset.cpp
 | 
				
			||||||
 | 
					@@ -84,7 +84,7 @@ ConfigFileType guess_config_file_type(const ptree &tree)
 | 
				
			||||||
 | 
					 VendorProfile VendorProfile::from_ini(const boost::filesystem::path &path, bool load_all)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					     ptree tree;
 | 
				
			||||||
 | 
					-    boost::filesystem::ifstream ifs(path);
 | 
				
			||||||
 | 
					+    boost::nowide::ifstream ifs(path.string());
 | 
				
			||||||
 | 
					     boost::property_tree::read_ini(ifs, tree);
 | 
				
			||||||
 | 
					     return VendorProfile::from_ini(tree, path, load_all);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Utils.hpp b/src/libslic3r/Utils.hpp
 | 
				
			||||||
 | 
					index f525c98..839f0f5 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Utils.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Utils.hpp
 | 
				
			||||||
 | 
					@@ -7,6 +7,7 @@
 | 
				
			||||||
 | 
					 #include <type_traits>
 | 
				
			||||||
 | 
					 #include <system_error>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 #include <boost/system/error_code.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include "libslic3r.h"
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
 | 
				
			||||||
 | 
					index cef390f..553a183 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
 | 
				
			||||||
 | 
					@@ -18,6 +18,11 @@
 | 
				
			||||||
 | 
					 #include <wx/notebook.h>
 | 
				
			||||||
 | 
					 #include "Notebook.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					+#include <boost/property_tree/ptree.hpp>
 | 
				
			||||||
 | 
					+#include <boost/property_tree/ini_parser.hpp>
 | 
				
			||||||
 | 
					+#include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 #include "MainFrame.hpp"
 | 
				
			||||||
 | 
					 #include "wxExtensions.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/DesktopIntegrationDialog.cpp b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
 | 
				
			||||||
 | 
					index fcb7472..866ebae 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/DesktopIntegrationDialog.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
 | 
				
			||||||
 | 
					@@ -14,6 +14,7 @@
 | 
				
			||||||
 | 
					 #include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 #include <boost/dll/runtime_symbol_info.hpp>
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/replace.hpp>
 | 
				
			||||||
 | 
					+#include <boost/nowide/fstream.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <wx/filename.h>
 | 
				
			||||||
 | 
					 #include <wx/stattext.h>
 | 
				
			||||||
 | 
					@@ -503,4 +504,4 @@ DesktopIntegrationDialog::~DesktopIntegrationDialog()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 } // namespace GUI
 | 
				
			||||||
 | 
					 } // namespace Slic3r
 | 
				
			||||||
 | 
					-#endif // __linux__
 | 
				
			||||||
 | 
					\ No newline at end of file
 | 
				
			||||||
 | 
					+#endif // __linux__
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/FreeCADDialog.cpp b/src/slic3r/GUI/FreeCADDialog.cpp
 | 
				
			||||||
 | 
					index d519626..a14fb61 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/FreeCADDialog.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/FreeCADDialog.cpp
 | 
				
			||||||
 | 
					@@ -38,6 +38,7 @@
 | 
				
			||||||
 | 
					 #include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 #include <boost/property_tree/ptree.hpp>
 | 
				
			||||||
 | 
					 #include <boost/property_tree/json_parser.hpp>
 | 
				
			||||||
 | 
					+#include <boost/nowide/fstream.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 // hack for process.hpp : it uses pid_t to set it as alias of int, but vc_x64_lib (wx thingy) as a '#define pid_t int'
 | 
				
			||||||
 | 
					 // and so boost/process has a line 'typedef int int'instead of 'typedef int pid_t' that makes it crash
 | 
				
			||||||
 | 
					@@ -322,7 +323,7 @@ bool FreeCADDialog::load_text_from_file(const boost::filesystem::path &path) {
 | 
				
			||||||
 | 
					         try {
 | 
				
			||||||
 | 
					             std::locale loc = boost::locale::generator()("en_US.UTF-8");
 | 
				
			||||||
 | 
					             // Open the stream to 'lock' the file.
 | 
				
			||||||
 | 
					-            boost::filesystem::ifstream in;
 | 
				
			||||||
 | 
					+            boost::nowide::ifstream in;
 | 
				
			||||||
 | 
					             in.imbue(loc);
 | 
				
			||||||
 | 
					             in.open(path);
 | 
				
			||||||
 | 
					             // Obtain the size of the file.
 | 
				
			||||||
 | 
					@@ -369,7 +370,7 @@ bool FreeCADDialog::write_text_in_file(const wxString &towrite, const boost::fil
 | 
				
			||||||
 | 
					         boost::filesystem::create_directories(file.parent_path());
 | 
				
			||||||
 | 
					         std::locale loc = boost::locale::generator()("en_US.UTF-8");
 | 
				
			||||||
 | 
					         // Open the stream to 'lock' the file.
 | 
				
			||||||
 | 
					-        boost::filesystem::ofstream out;
 | 
				
			||||||
 | 
					+        boost::nowide::ofstream out;
 | 
				
			||||||
 | 
					         out.imbue(loc);
 | 
				
			||||||
 | 
					         out.open(file);
 | 
				
			||||||
 | 
					         out << towrite;
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp
 | 
				
			||||||
 | 
					index 2f32d04..813ef1c 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/GUI_App.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/GUI_App.cpp
 | 
				
			||||||
 | 
					@@ -19,6 +19,7 @@
 | 
				
			||||||
 | 
					 #include <boost/lexical_cast.hpp>
 | 
				
			||||||
 | 
					 #include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 #include <boost/nowide/convert.hpp>
 | 
				
			||||||
 | 
					+#include <boost/nowide/fstream.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <wx/stdpaths.h>
 | 
				
			||||||
 | 
					 #include <wx/imagpng.h>
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/HintNotification.cpp b/src/slic3r/GUI/HintNotification.cpp
 | 
				
			||||||
 | 
					index dbedd0a..25182cc 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/HintNotification.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/HintNotification.cpp
 | 
				
			||||||
 | 
					@@ -14,12 +14,14 @@
 | 
				
			||||||
 | 
					 #include "libslic3r/Config.hpp"
 | 
				
			||||||
 | 
					 #include "libslic3r/PrintConfig.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <map>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 #include <boost/algorithm/string/replace.hpp>
 | 
				
			||||||
 | 
					 #include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 #include <boost/nowide/fstream.hpp>
 | 
				
			||||||
 | 
					 #include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 #include <boost/property_tree/ini_parser.hpp>
 | 
				
			||||||
 | 
					-#include <map>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 #include <cereal/archives/binary.hpp>
 | 
				
			||||||
 | 
					 #include <cereal/types/string.hpp>
 | 
				
			||||||
 | 
					 #include <cereal/types/vector.hpp>
 | 
				
			||||||
 | 
					@@ -65,7 +67,7 @@ inline void push_style_color(ImGuiCol idx, const ImVec4& col, bool fading_out, f
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 void write_used_binary(const std::vector<std::string>& ids)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					-	boost::filesystem::ofstream file((boost::filesystem::path(data_dir()) / "cache" / "hints.cereal"), std::ios::binary);
 | 
				
			||||||
 | 
					+	boost::nowide::ofstream file((boost::filesystem::path(data_dir()) / "cache" / "hints.cereal").string(), std::ios::binary);
 | 
				
			||||||
 | 
					 	cereal::BinaryOutputArchive archive(file);
 | 
				
			||||||
 | 
					 		HintsCerealData cd { ids };
 | 
				
			||||||
 | 
					 	try
 | 
				
			||||||
 | 
					@@ -84,7 +86,7 @@ void read_used_binary(std::vector<std::string>& ids)
 | 
				
			||||||
 | 
					 		BOOST_LOG_TRIVIAL(warning) << "Failed to load to hints.cereal. File does not exists. " << path.string();
 | 
				
			||||||
 | 
					 		return;
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					-	boost::filesystem::ifstream file(path);
 | 
				
			||||||
 | 
					+	boost::nowide::ifstream file(path.string());
 | 
				
			||||||
 | 
					 	cereal::BinaryInputArchive archive(file);
 | 
				
			||||||
 | 
					 	HintsCerealData cd;
 | 
				
			||||||
 | 
					 	try
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp
 | 
				
			||||||
 | 
					index ffc600b..c8080d1 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/Preferences.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/Preferences.cpp
 | 
				
			||||||
 | 
					@@ -12,6 +12,7 @@
 | 
				
			||||||
 | 
					 #include "OG_CustomCtrl.hpp"
 | 
				
			||||||
 | 
					 #include "wxExtensions.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string/split.hpp>
 | 
				
			||||||
 | 
					 #include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 #include <boost/filesystem/path.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/PrintHostDialogs.cpp b/src/slic3r/GUI/PrintHostDialogs.cpp
 | 
				
			||||||
 | 
					index 87bef23..d097d58 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/PrintHostDialogs.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/PrintHostDialogs.cpp
 | 
				
			||||||
 | 
					@@ -81,8 +81,8 @@ PrintHostSendDialog::PrintHostSendDialog(const fs::path &path, PrintHostPostUplo
 | 
				
			||||||
 | 
					     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;
 | 
				
			||||||
 | 
					@@ -92,7 +92,7 @@ PrintHostSendDialog::PrintHostSendDialog(const fs::path &path, PrintHostPostUplo
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					     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);
 | 
				
			||||||
 | 
					         }
 | 
				
			||||||
 | 
					@@ -102,7 +102,7 @@ PrintHostSendDialog::PrintHostSendDialog(const fs::path &path, PrintHostPostUplo
 | 
				
			||||||
 | 
					     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);
 | 
				
			||||||
 | 
					             }
 | 
				
			||||||
 | 
					@@ -113,7 +113,7 @@ PrintHostSendDialog::PrintHostSendDialog(const fs::path &path, PrintHostPostUplo
 | 
				
			||||||
 | 
					         // 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/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp
 | 
				
			||||||
 | 
					index e923bb5..354c79b 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/ScriptExecutor.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/ScriptExecutor.cpp
 | 
				
			||||||
 | 
					@@ -4,6 +4,12 @@
 | 
				
			||||||
 | 
					 #include "Tab.hpp"
 | 
				
			||||||
 | 
					 #include "libslic3r/PresetBundle.hpp"
 | 
				
			||||||
 | 
					 #include "libslic3r/Print.hpp"
 | 
				
			||||||
 | 
					+#include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					+#include <boost/lexical_cast.hpp>
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string/trim_all.hpp>
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string/erase.hpp>
 | 
				
			||||||
 | 
					+#include <boost/algorithm/string/split.hpp>
 | 
				
			||||||
 | 
					+#include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <string>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
 | 
				
			||||||
 | 
					index 340369e..837982e 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/Tab.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/Tab.cpp
 | 
				
			||||||
 | 
					@@ -36,6 +36,8 @@
 | 
				
			||||||
 | 
					 #include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 #include <boost/filesystem/path.hpp>
 | 
				
			||||||
 | 
					 #include <boost/lexical_cast.hpp>
 | 
				
			||||||
 | 
					+#include <boost/nowide/fstream.hpp>
 | 
				
			||||||
 | 
					+#include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include "wxExtensions.hpp"
 | 
				
			||||||
 | 
					 #include "PresetComboBoxes.hpp"
 | 
				
			||||||
 | 
					@@ -1701,7 +1703,7 @@ std::vector<Slic3r::GUI::PageShp> Tab::create_pages(std::string setting_type_nam
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					     //read file
 | 
				
			||||||
 | 
					     //std::ifstream filestream(ui_layout_file.c_str());
 | 
				
			||||||
 | 
					-    boost::filesystem::ifstream filestream(ui_layout_file);
 | 
				
			||||||
 | 
					+    boost::nowide::ifstream filestream(ui_layout_file);
 | 
				
			||||||
 | 
					     std::string full_line;
 | 
				
			||||||
 | 
					     while (std::getline(filestream, full_line)) {
 | 
				
			||||||
 | 
					         //remove spaces
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/Utils/Http.cpp b/src/slic3r/Utils/Http.cpp
 | 
				
			||||||
 | 
					index 62461cd..7a02c04 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/Utils/Http.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/Utils/Http.cpp
 | 
				
			||||||
 | 
					@@ -11,6 +11,7 @@
 | 
				
			||||||
 | 
					 #include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 #include <boost/format.hpp>
 | 
				
			||||||
 | 
					 #include <boost/log/trivial.hpp>
 | 
				
			||||||
 | 
					+#include <boost/nowide/fstream.hpp>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <curl/curl.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					@@ -52,7 +53,7 @@ namespace Slic3r {
 | 
				
			||||||
 | 
					 						% error;
 | 
				
			||||||
 | 
					 			})
 | 
				
			||||||
 | 
					 			.on_complete([&](std::string body, unsigned /* http_status */) {
 | 
				
			||||||
 | 
					-				boost::filesystem::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
 | 
				
			||||||
 | 
					+				boost::nowide::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
 | 
				
			||||||
 | 
					 				file.write(body.c_str(), body.size());
 | 
				
			||||||
 | 
					 				file.close();
 | 
				
			||||||
 | 
					 				boost::filesystem::rename(tmp_path, target_path);
 | 
				
			||||||
@ -0,0 +1,53 @@
 | 
				
			|||||||
 | 
					diff --git a/CMakeLists.txt b/CMakeLists.txt
 | 
				
			||||||
 | 
					index 18f26ba..c0a1f1f 100644
 | 
				
			||||||
 | 
					--- a/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -468,6 +468,9 @@ endif ()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 # Find the Cereal serialization library
 | 
				
			||||||
 | 
					 find_package(cereal REQUIRED)
 | 
				
			||||||
 | 
					+if (NOT TARGET cereal::cereal)
 | 
				
			||||||
 | 
					+    add_library(cereal::cereal ALIAS cereal)
 | 
				
			||||||
 | 
					+endif ()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 # l10n
 | 
				
			||||||
 | 
					 set(L10N_DIR "${SLIC3R_RESOURCES_DIR}/localization")
 | 
				
			||||||
 | 
					diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					index 7b2defe..f63aaad 100644
 | 
				
			||||||
 | 
					--- a/src/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -141,7 +141,7 @@ if (NOT WIN32)
 | 
				
			||||||
 | 
					     set_target_properties(Slic3r PROPERTIES OUTPUT_NAME "${SLIC3R_APP_CMD}")
 | 
				
			||||||
 | 
					 endif ()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-target_link_libraries(Slic3r libslic3r cereal)
 | 
				
			||||||
 | 
					+target_link_libraries(Slic3r libslic3r cereal::cereal)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 if (APPLE)
 | 
				
			||||||
 | 
					 #    add_compile_options(-stdlib=libc++)
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					index 0ab5584..36917f3 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -416,7 +416,7 @@ find_package(JPEG REQUIRED)
 | 
				
			||||||
 | 
					 target_link_libraries(libslic3r
 | 
				
			||||||
 | 
					     libnest2d
 | 
				
			||||||
 | 
					     admesh
 | 
				
			||||||
 | 
					-    cereal
 | 
				
			||||||
 | 
					+    cereal::cereal
 | 
				
			||||||
 | 
					     libigl
 | 
				
			||||||
 | 
					     miniz
 | 
				
			||||||
 | 
					     boost_libs
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					index c11f860..4ca2523 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/slic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -302,7 +302,7 @@ target_compile_definitions(libslic3r_gui PRIVATE $<$<BOOL:${SLIC3R_ALPHA}>:SLIC3
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 encoding_check(libslic3r_gui)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
 | 
				
			||||||
 | 
					+target_link_libraries(libslic3r_gui libslic3r avrdude cereal::cereal imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 if (MSVC)
 | 
				
			||||||
 | 
					     target_link_libraries(libslic3r_gui Setupapi.lib)
 | 
				
			||||||
@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					index f63aaad..ba2fe01 100644
 | 
				
			||||||
 | 
					--- a/src/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -28,7 +28,7 @@ if (SLIC3R_GUI)
 | 
				
			||||||
 | 
					     include_directories(hidapi/include)
 | 
				
			||||||
 | 
					     add_subdirectory(exif)
 | 
				
			||||||
 | 
					     include_directories(exif/include)
 | 
				
			||||||
 | 
					-    add_subdirectory(angelscript)
 | 
				
			||||||
 | 
					+    add_subdirectory(angelscript EXCLUDE_FROM_ALL)
 | 
				
			||||||
 | 
					     # include_directories(angelscript/include)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					     if(WIN32)
 | 
				
			||||||
@ -0,0 +1,20 @@
 | 
				
			|||||||
 | 
					# https://github.com/prusa3d/PrusaSlicer/commit/4aa7366fafb7a3f91cc68d4a808f5195a4aa3dcf
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/MeshBoolean.cpp b/src/libslic3r/MeshBoolean.cpp
 | 
				
			||||||
 | 
					index d76bf468c7f..22232573953 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/MeshBoolean.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/MeshBoolean.cpp
 | 
				
			||||||
 | 
					@@ -152,12 +152,12 @@ indexed_triangle_set cgal_to_indexed_triangle_set(const _Mesh &cgalmesh)
 | 
				
			||||||
 | 
					     const auto &vertices = cgalmesh.vertices();
 | 
				
			||||||
 | 
					     int vsize = int(vertices.size());
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-    for (auto &vi : vertices) {
 | 
				
			||||||
 | 
					+    for (const auto &vi : vertices) {
 | 
				
			||||||
 | 
					         auto &v = cgalmesh.point(vi); // Don't ask...
 | 
				
			||||||
 | 
					         its.vertices.emplace_back(to_vec3f(v));
 | 
				
			||||||
 | 
					     }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-    for (auto &face : faces) {
 | 
				
			||||||
 | 
					+    for (const auto &face : faces) {
 | 
				
			||||||
 | 
					         auto vtc = cgalmesh.vertices_around_face(cgalmesh.halfedge(face));
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					         int i = 0;
 | 
				
			||||||
@ -0,0 +1,82 @@
 | 
				
			|||||||
 | 
					diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp
 | 
				
			||||||
 | 
					index 68ec2ce..cd828a6 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/GCode.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/GCode.cpp
 | 
				
			||||||
 | 
					@@ -2081,31 +2081,30 @@ void GCode::process_layers(
 | 
				
			||||||
 | 
					             }
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto spiral_vase = tbb::make_filter<LayerResult, LayerResult>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&spiral_vase = *this->m_spiral_vase](LayerResult in) -> LayerResult {
 | 
				
			||||||
 | 
					+        [spiral_vase = this->m_spiral_vase.get()](LayerResult in) -> LayerResult {
 | 
				
			||||||
 | 
					             if (in.nop_layer_result)
 | 
				
			||||||
 | 
					                 return in;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					             CNumericLocalesSetter locales_setter;
 | 
				
			||||||
 | 
					-            spiral_vase.enable(in.spiral_vase_enable);
 | 
				
			||||||
 | 
					-            return LayerResult{ spiral_vase.process_layer(std::move(in.gcode)), in.layer_id, in.spiral_vase_enable, in.cooling_buffer_flush };
 | 
				
			||||||
 | 
					+            spiral_vase->enable(in.spiral_vase_enable);
 | 
				
			||||||
 | 
					+            return { spiral_vase->process_layer(std::move(in.gcode)), in.layer_id, in.spiral_vase_enable, in.cooling_buffer_flush};
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto pressure_equalizer = tbb::make_filter<LayerResult, LayerResult>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&pressure_equalizer = *this->m_pressure_equalizer](LayerResult in) -> LayerResult {
 | 
				
			||||||
 | 
					-            return pressure_equalizer.process_layer(std::move(in));
 | 
				
			||||||
 | 
					+        [pressure_equalizer = this->m_pressure_equalizer.get()](LayerResult in) -> LayerResult {
 | 
				
			||||||
 | 
					+             return pressure_equalizer->process_layer(std::move(in));
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto cooling = tbb::make_filter<LayerResult, std::string>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&cooling_buffer = *this->m_cooling_buffer](LayerResult in) -> std::string {
 | 
				
			||||||
 | 
					+        [cooling_buffer = this->m_cooling_buffer.get()](LayerResult in)->std::string {
 | 
				
			||||||
 | 
					              if (in.nop_layer_result)
 | 
				
			||||||
 | 
					                 return in.gcode;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					             CNumericLocalesSetter locales_setter;
 | 
				
			||||||
 | 
					-            return cooling_buffer.process_layer(std::move(in.gcode), in.layer_id, in.cooling_buffer_flush);
 | 
				
			||||||
 | 
					+            return cooling_buffer->process_layer(std::move(in.gcode), in.layer_id, in.cooling_buffer_flush);
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto find_replace = tbb::make_filter<std::string, std::string>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&self = *this->m_find_replace](std::string s) -> std::string {
 | 
				
			||||||
 | 
					-            CNumericLocalesSetter locales_setter;
 | 
				
			||||||
 | 
					-            return self.process_layer(std::move(s));
 | 
				
			||||||
 | 
					-        });
 | 
				
			||||||
 | 
					+        [find_replace = this->m_find_replace.get()](std::string s) -> std::string {
 | 
				
			||||||
 | 
					+            return find_replace->process_layer(std::move(s));
 | 
				
			||||||
 | 
					+});
 | 
				
			||||||
 | 
					     const auto output = tbb::make_filter<std::string, void>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					         [&output_stream](std::string s) {
 | 
				
			||||||
 | 
					             CNumericLocalesSetter locales_setter;
 | 
				
			||||||
 | 
					@@ -2183,25 +2182,26 @@ void GCode::process_layers(
 | 
				
			||||||
 | 
					             }
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto spiral_vase = tbb::make_filter<LayerResult, LayerResult>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&spiral_vase = *this->m_spiral_vase](LayerResult in)->LayerResult {
 | 
				
			||||||
 | 
					+       [spiral_vase = this->m_spiral_vase.get()](LayerResult in) -> LayerResult {
 | 
				
			||||||
 | 
					             if (in.nop_layer_result)
 | 
				
			||||||
 | 
					                 return in;
 | 
				
			||||||
 | 
					-        spiral_vase.enable(in.spiral_vase_enable);
 | 
				
			||||||
 | 
					-        return { spiral_vase.process_layer(std::move(in.gcode)), in.layer_id, in.spiral_vase_enable, in.cooling_buffer_flush };
 | 
				
			||||||
 | 
					+            spiral_vase->enable(in.spiral_vase_enable);
 | 
				
			||||||
 | 
					+            return { spiral_vase->process_layer(std::move(in.gcode)), in.layer_id, in.spiral_vase_enable, in.cooling_buffer_flush};
 | 
				
			||||||
 | 
					     });
 | 
				
			||||||
 | 
					     const auto pressure_equalizer = tbb::make_filter<LayerResult, LayerResult>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&pressure_equalizer = *this->m_pressure_equalizer](LayerResult in) -> LayerResult {
 | 
				
			||||||
 | 
					-             return pressure_equalizer.process_layer(std::move(in));
 | 
				
			||||||
 | 
					+        [pressure_equalizer = this->m_pressure_equalizer.get()](LayerResult in) -> LayerResult {
 | 
				
			||||||
 | 
					+            return pressure_equalizer->process_layer(std::move(in));
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto cooling = tbb::make_filter<LayerResult, std::string>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&cooling_buffer = *this->m_cooling_buffer](LayerResult in)->std::string {
 | 
				
			||||||
 | 
					+        [cooling_buffer = this->m_cooling_buffer.get()](LayerResult in) -> std::string {
 | 
				
			||||||
 | 
					             if (in.nop_layer_result)
 | 
				
			||||||
 | 
					                 return in.gcode;
 | 
				
			||||||
 | 
					-            return cooling_buffer.process_layer(std::move(in.gcode), in.layer_id, in.cooling_buffer_flush);
 | 
				
			||||||
 | 
					+             return cooling_buffer->process_layer(std::move(in.gcode), in.layer_id, in.cooling_buffer_flush);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto find_replace = tbb::make_filter<std::string, std::string>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					-        [&self = *this->m_find_replace](std::string s) -> std::string {
 | 
				
			||||||
 | 
					-            return self.process_layer(std::move(s));
 | 
				
			||||||
 | 
					+        [find_replace = this->m_find_replace.get()](std::string s) -> std::string {
 | 
				
			||||||
 | 
					+            return find_replace->process_layer(std::move(s));
 | 
				
			||||||
 | 
					         });
 | 
				
			||||||
 | 
					     const auto output = tbb::make_filter<std::string, void>(slic3r_tbb_filtermode::serial_in_order,
 | 
				
			||||||
 | 
					         [&output_stream](std::string s) { 
 | 
				
			||||||
@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					index ba2fe01..b84292b 100644
 | 
				
			||||||
 | 
					--- a/src/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -300,5 +300,5 @@ else ()
 | 
				
			||||||
 | 
					     install(TARGETS Slic3r RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					     # Install the symlink for gcodeviewer
 | 
				
			||||||
 | 
					-    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink slic3r ${GCODEVIEWER_APP_CMD} WORKING_DIRECTORY \$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR})")
 | 
				
			||||||
 | 
					+    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${SLIC3R_APP_CMD} ${GCODEVIEWER_APP_CMD} WORKING_DIRECTORY \$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR})")
 | 
				
			||||||
 | 
					 endif ()
 | 
				
			||||||
@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					diff --git a/src/libnest2d/CMakeLists.txt b/src/libnest2d/CMakeLists.txt
 | 
				
			||||||
 | 
					index c18dc31cb..852d26d5e 100644
 | 
				
			||||||
 | 
					--- a/src/libnest2d/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/libnest2d/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -24,5 +24,6 @@ set(LIBNEST2D_SRCFILES
 | 
				
			||||||
 | 
					 add_library(libnest2d STATIC ${LIBNEST2D_SRCFILES})
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 target_include_directories(libnest2d PUBLIC ${CMAKE_CURRENT_LIST_DIR}/include)
 | 
				
			||||||
 | 
					-target_link_libraries(libnest2d PUBLIC NLopt::nlopt TBB::tbb Boost::boost libslic3r)
 | 
				
			||||||
 | 
					+target_link_libraries(libnest2d PUBLIC NLopt::nlopt TBB::tbb Boost::boost
 | 
				
			||||||
 | 
					+    libslic3r xcb)
 | 
				
			||||||
 | 
					 target_compile_definitions(libnest2d PUBLIC LIBNEST2D_THREADING_tbb LIBNEST2D_STATIC LIBNEST2D_OPTIMIZER_nlopt LIBNEST2D_GEOMETRIES_libslic3r)
 | 
				
			||||||
@ -0,0 +1,93 @@
 | 
				
			|||||||
 | 
					diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					index b84292b..63fea9c 100644
 | 
				
			||||||
 | 
					--- a/src/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -19,7 +19,7 @@ add_subdirectory(libnest2d)
 | 
				
			||||||
 | 
					 add_subdirectory(libslic3r)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 if (SLIC3R_ENABLE_FORMAT_STEP)
 | 
				
			||||||
 | 
					-    add_subdirectory(occt_wrapper)
 | 
				
			||||||
 | 
					+    add_subdirectory(occt_wrapper EXCLUDE_FROM_ALL)
 | 
				
			||||||
 | 
					 endif ()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 if (SLIC3R_GUI)
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					index 36917f3..63c4201 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -435,10 +435,7 @@ target_link_libraries(libslic3r
 | 
				
			||||||
 | 
					     qoi
 | 
				
			||||||
 | 
					     )
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-if (APPLE)
 | 
				
			||||||
 | 
					-    # TODO: we need to fix notarization with the separate shared library
 | 
				
			||||||
 | 
					-    target_link_libraries(libslic3r OCCTWrapper)
 | 
				
			||||||
 | 
					-endif ()
 | 
				
			||||||
 | 
					+target_link_libraries(libslic3r OCCTWrapper)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 if (TARGET OpenVDB::openvdb)
 | 
				
			||||||
 | 
					     target_link_libraries(libslic3r OpenVDB::openvdb)
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Format/STEP.cpp b/src/libslic3r/Format/STEP.cpp
 | 
				
			||||||
 | 
					index 5165bb7..3ed0154 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Format/STEP.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Format/STEP.cpp
 | 
				
			||||||
 | 
					@@ -22,17 +22,13 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace Slic3r {
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-#if __APPLE__
 | 
				
			||||||
 | 
					 extern "C" bool load_step_internal(const char *path, OCCTResult* res);
 | 
				
			||||||
 | 
					-#endif
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 LoadStepFn get_load_step_fn()
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					     static LoadStepFn load_step_fn = nullptr;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-#ifndef __APPLE__
 | 
				
			||||||
 | 
					     constexpr const char* fn_name = "load_step_internal";
 | 
				
			||||||
 | 
					-#endif
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					     if (!load_step_fn) {
 | 
				
			||||||
 | 
					         auto libpath = boost::dll::program_location().parent_path();
 | 
				
			||||||
 | 
					@@ -54,22 +50,8 @@ LoadStepFn get_load_step_fn()
 | 
				
			||||||
 | 
					             FreeLibrary(module);
 | 
				
			||||||
 | 
					             throw;
 | 
				
			||||||
 | 
					         }
 | 
				
			||||||
 | 
					-#elif __APPLE__
 | 
				
			||||||
 | 
					-        load_step_fn = &load_step_internal;
 | 
				
			||||||
 | 
					 #else
 | 
				
			||||||
 | 
					-        libpath /= "OCCTWrapper.so";
 | 
				
			||||||
 | 
					-        void *plugin_ptr = dlopen(libpath.c_str(), RTLD_NOW | RTLD_GLOBAL);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-        if (plugin_ptr) {
 | 
				
			||||||
 | 
					-            load_step_fn = reinterpret_cast<LoadStepFn>(dlsym(plugin_ptr, fn_name));
 | 
				
			||||||
 | 
					-            if (!load_step_fn) {
 | 
				
			||||||
 | 
					-                dlclose(plugin_ptr);
 | 
				
			||||||
 | 
					-                throw Slic3r::RuntimeError(std::string("Cannot load function from OCCTWrapper.so: ") + fn_name
 | 
				
			||||||
 | 
					-                                           + "\n\n" + dlerror());
 | 
				
			||||||
 | 
					-            }
 | 
				
			||||||
 | 
					-        } else {
 | 
				
			||||||
 | 
					-            throw Slic3r::RuntimeError(std::string("Cannot load OCCTWrapper.so:\n\n") + dlerror());
 | 
				
			||||||
 | 
					-        }
 | 
				
			||||||
 | 
					+        load_step_fn = &load_step_internal;
 | 
				
			||||||
 | 
					 #endif
 | 
				
			||||||
 | 
					     }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/occt_wrapper/CMakeLists.txt b/src/occt_wrapper/CMakeLists.txt
 | 
				
			||||||
 | 
					index 16de4e0..ad983be 100644
 | 
				
			||||||
 | 
					--- a/src/occt_wrapper/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/occt_wrapper/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -1,12 +1,7 @@
 | 
				
			||||||
 | 
					 cmake_minimum_required(VERSION 3.13)
 | 
				
			||||||
 | 
					 project(OCCTWrapper)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-if (APPLE)
 | 
				
			||||||
 | 
					-    # TODO: we need to fix notarization with the separate shared library
 | 
				
			||||||
 | 
					-    add_library(OCCTWrapper STATIC OCCTWrapper.cpp)
 | 
				
			||||||
 | 
					-else ()
 | 
				
			||||||
 | 
					-    add_library(OCCTWrapper MODULE OCCTWrapper.cpp)
 | 
				
			||||||
 | 
					-endif ()
 | 
				
			||||||
 | 
					+add_library(OCCTWrapper STATIC OCCTWrapper.cpp)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 set_target_properties(OCCTWrapper
 | 
				
			||||||
 | 
					     PROPERTIES
 | 
				
			||||||
@ -0,0 +1,110 @@
 | 
				
			|||||||
 | 
					diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
 | 
				
			||||||
 | 
					index a626986..5f2d963 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/AppConfig.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/AppConfig.cpp
 | 
				
			||||||
 | 
					@@ -1,6 +1,7 @@
 | 
				
			||||||
 | 
					 #include <boost/filesystem.hpp>
 | 
				
			||||||
 | 
					 #include "libslic3r/libslic3r.h"
 | 
				
			||||||
 | 
					 #include "libslic3r/Utils.hpp"
 | 
				
			||||||
 | 
					+#include "libslic3r/I18N.hpp"
 | 
				
			||||||
 | 
					 #include "AppConfig.hpp"
 | 
				
			||||||
 | 
					 #include "Exception.hpp"
 | 
				
			||||||
 | 
					 #include "LocalesUtils.hpp"
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/CustomGCode.hpp b/src/libslic3r/CustomGCode.hpp
 | 
				
			||||||
 | 
					index 633edc8..fcd26ff 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/CustomGCode.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/CustomGCode.hpp
 | 
				
			||||||
 | 
					@@ -3,6 +3,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <string>
 | 
				
			||||||
 | 
					 #include <vector>
 | 
				
			||||||
 | 
					+#include <cstdint>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace Slic3r {
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/ExtrusionEntity.hpp b/src/libslic3r/ExtrusionEntity.hpp
 | 
				
			||||||
 | 
					index 1c54588..c74df3a 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/ExtrusionEntity.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/ExtrusionEntity.hpp
 | 
				
			||||||
 | 
					@@ -9,6 +9,8 @@
 | 
				
			||||||
 | 
					 #include <string_view>
 | 
				
			||||||
 | 
					 #include <numeric>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include "Config.hpp"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 namespace Slic3r {
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 class ExPolygonCollection;
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Geometry/ArcFitter.cpp b/src/libslic3r/Geometry/ArcFitter.cpp
 | 
				
			||||||
 | 
					index 34ef2ae..20fe8b7 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Geometry/ArcFitter.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Geometry/ArcFitter.cpp
 | 
				
			||||||
 | 
					@@ -2,6 +2,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <cmath>
 | 
				
			||||||
 | 
					 #include <cassert>
 | 
				
			||||||
 | 
					+#include "Polyline.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace Slic3r { namespace Geometry {
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/PNGReadWrite.hpp b/src/libslic3r/PNGReadWrite.hpp
 | 
				
			||||||
 | 
					index 01e1f47..1dce27a 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/PNGReadWrite.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/PNGReadWrite.hpp
 | 
				
			||||||
 | 
					@@ -2,6 +2,7 @@
 | 
				
			||||||
 | 
					 #define PNGREAD_HPP
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <vector>
 | 
				
			||||||
 | 
					+#include <cstdint>
 | 
				
			||||||
 | 
					 #include <string>
 | 
				
			||||||
 | 
					 #include <istream>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/PerimeterGenerator.hpp b/src/libslic3r/PerimeterGenerator.hpp
 | 
				
			||||||
 | 
					index 34ec4e6..ed83b3e 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/PerimeterGenerator.hpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/PerimeterGenerator.hpp
 | 
				
			||||||
 | 
					@@ -1,6 +1,7 @@
 | 
				
			||||||
 | 
					 #ifndef slic3r_PerimeterGenerator_hpp_
 | 
				
			||||||
 | 
					 #define slic3r_PerimeterGenerator_hpp_
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include "ClipperUtils.hpp"
 | 
				
			||||||
 | 
					 #include "libslic3r.h"
 | 
				
			||||||
 | 
					 #include <vector>
 | 
				
			||||||
 | 
					 #include "ExPolygonCollection.hpp"
 | 
				
			||||||
 | 
					diff --git a/src/libslic3r/Print.cpp b/src/libslic3r/Print.cpp
 | 
				
			||||||
 | 
					index f69d68f..1dd55f2 100644
 | 
				
			||||||
 | 
					--- a/src/libslic3r/Print.cpp
 | 
				
			||||||
 | 
					+++ b/src/libslic3r/Print.cpp
 | 
				
			||||||
 | 
					@@ -18,6 +18,8 @@
 | 
				
			||||||
 | 
					 #include "Utils.hpp"
 | 
				
			||||||
 | 
					 #include "BuildVolume.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#include <tbb/tbb.h>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 #include <float.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <algorithm>
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/BitmapCache.hpp b/src/slic3r/GUI/BitmapCache.hpp
 | 
				
			||||||
 | 
					index 34821c4..a74a850 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/BitmapCache.hpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/BitmapCache.hpp
 | 
				
			||||||
 | 
					@@ -3,6 +3,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <map>
 | 
				
			||||||
 | 
					 #include <vector>
 | 
				
			||||||
 | 
					+#include <cstdint>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <wx/wxprec.h>
 | 
				
			||||||
 | 
					 #ifndef WX_PRECOMP
 | 
				
			||||||
 | 
					diff --git a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
 | 
				
			||||||
 | 
					index 553a183..686630c 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
 | 
				
			||||||
 | 
					@@ -40,6 +40,7 @@
 | 
				
			||||||
 | 
					 #include <wx/odcombo.h>
 | 
				
			||||||
 | 
					 #include <wx/textctrl.h>
 | 
				
			||||||
 | 
					 #include <wx/wrapsizer.h>
 | 
				
			||||||
 | 
					+#include <wx/rawbmp.h>
 | 
				
			||||||
 | 
					 #include "wxExtensions.hpp"
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #include <boost/filesystem/path.hpp>
 | 
				
			||||||
@ -0,0 +1,77 @@
 | 
				
			|||||||
 | 
					diff --git a/cmake/modules/FindOpenVDB.cmake b/cmake/modules/FindOpenVDB.cmake
 | 
				
			||||||
 | 
					index 4fde5fa..566e73a 100644
 | 
				
			||||||
 | 
					--- a/cmake/modules/FindOpenVDB.cmake
 | 
				
			||||||
 | 
					+++ b/cmake/modules/FindOpenVDB.cmake
 | 
				
			||||||
 | 
					@@ -347,28 +347,10 @@ macro(just_fail msg)
 | 
				
			||||||
 | 
					   return()
 | 
				
			||||||
 | 
					 endmacro()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-find_package(IlmBase QUIET)
 | 
				
			||||||
 | 
					-if(NOT IlmBase_FOUND)
 | 
				
			||||||
 | 
					-  pkg_check_modules(IlmBase QUIET IlmBase)
 | 
				
			||||||
 | 
					-endif()
 | 
				
			||||||
 | 
					-if (IlmBase_FOUND AND NOT TARGET IlmBase::Half)
 | 
				
			||||||
 | 
					-  message(STATUS "Falling back to IlmBase found by pkg-config...")
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  find_library(IlmHalf_LIBRARY NAMES Half)
 | 
				
			||||||
 | 
					-  if(IlmHalf_LIBRARY-NOTFOUND OR NOT IlmBase_INCLUDE_DIRS)
 | 
				
			||||||
 | 
					-    just_fail("IlmBase::Half can not be found!")
 | 
				
			||||||
 | 
					-  endif()
 | 
				
			||||||
 | 
					-  
 | 
				
			||||||
 | 
					-  add_library(IlmBase::Half UNKNOWN IMPORTED)
 | 
				
			||||||
 | 
					-  set_target_properties(IlmBase::Half PROPERTIES
 | 
				
			||||||
 | 
					-    IMPORTED_LOCATION "${IlmHalf_LIBRARY}"
 | 
				
			||||||
 | 
					-    INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}")
 | 
				
			||||||
 | 
					-elseif(NOT IlmBase_FOUND)
 | 
				
			||||||
 | 
					-  just_fail("IlmBase::Half can not be found!")
 | 
				
			||||||
 | 
					-endif()
 | 
				
			||||||
 | 
					 find_package(TBB ${_quiet} ${_required} COMPONENTS tbb)
 | 
				
			||||||
 | 
					 find_package(ZLIB ${_quiet} ${_required})
 | 
				
			||||||
 | 
					 find_package(Boost ${_quiet} ${_required} COMPONENTS iostreams system )
 | 
				
			||||||
 | 
					+find_package(Imath CONFIG)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 # Use GetPrerequisites to see which libraries this OpenVDB lib has linked to
 | 
				
			||||||
 | 
					 # which we can query for optional deps. This basically runs ldd/otoll/objdump
 | 
				
			||||||
 | 
					@@ -419,7 +401,7 @@ foreach(PREREQUISITE ${_OPENVDB_PREREQUISITE_LIST})
 | 
				
			||||||
 | 
					     set(OpenVDB_USES_LOG4CPLUS ON)
 | 
				
			||||||
 | 
					   endif()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-  string(FIND ${PREREQUISITE} "IlmImf" _HAS_DEP)
 | 
				
			||||||
 | 
					+  string(FIND ${PREREQUISITE} "OpenEXR" _HAS_DEP)
 | 
				
			||||||
 | 
					   if(NOT ${_HAS_DEP} EQUAL -1)
 | 
				
			||||||
 | 
					     set(OpenVDB_USES_ILM ON)
 | 
				
			||||||
 | 
					   endif()
 | 
				
			||||||
 | 
					@@ -450,11 +432,7 @@ if(OpenVDB_USES_LOG4CPLUS)
 | 
				
			||||||
 | 
					   find_package(Log4cplus ${_quiet} ${_required})
 | 
				
			||||||
 | 
					 endif()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-if(OpenVDB_USES_ILM)
 | 
				
			||||||
 | 
					-  find_package(IlmBase ${_quiet} ${_required})
 | 
				
			||||||
 | 
					-endif()
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-if(OpenVDB_USES_EXR)
 | 
				
			||||||
 | 
					+if(OpenVDB_USES_ILM OR OpenVDB_USES_EXR)
 | 
				
			||||||
 | 
					   find_package(OpenEXR ${_quiet} ${_required})
 | 
				
			||||||
 | 
					 endif()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					@@ -471,7 +449,7 @@ endif()
 | 
				
			||||||
 | 
					 set(_OPENVDB_VISIBLE_DEPENDENCIES
 | 
				
			||||||
 | 
					   Boost::iostreams
 | 
				
			||||||
 | 
					   Boost::system
 | 
				
			||||||
 | 
					-  IlmBase::Half
 | 
				
			||||||
 | 
					+  Imath::Imath
 | 
				
			||||||
 | 
					 )
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 set(_OPENVDB_DEFINITIONS)
 | 
				
			||||||
 | 
					@@ -481,10 +459,7 @@ endif()
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 if(OpenVDB_USES_EXR)
 | 
				
			||||||
 | 
					   list(APPEND _OPENVDB_VISIBLE_DEPENDENCIES
 | 
				
			||||||
 | 
					-    IlmBase::IlmThread
 | 
				
			||||||
 | 
					-    IlmBase::Iex
 | 
				
			||||||
 | 
					-    IlmBase::Imath
 | 
				
			||||||
 | 
					-    OpenEXR::IlmImf
 | 
				
			||||||
 | 
					+    OpenEXR::OpenEXR
 | 
				
			||||||
 | 
					   )
 | 
				
			||||||
 | 
					   list(APPEND _OPENVDB_DEFINITIONS "-DOPENVDB_TOOLS_RAYTRACER_USE_EXR")
 | 
				
			||||||
 | 
					 endif()
 | 
				
			||||||
@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					diff --git a/src/occt_wrapper/CMakeLists.txt b/src/occt_wrapper/CMakeLists.txt
 | 
				
			||||||
 | 
					index ed75531..16de4e0 100644
 | 
				
			||||||
 | 
					--- a/src/occt_wrapper/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/src/occt_wrapper/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -19,7 +19,7 @@ include(GenerateExportHeader)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 generate_export_header(OCCTWrapper)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-find_package(OpenCASCADE 7.6.2 REQUIRED)
 | 
				
			||||||
 | 
					+find_package(OpenCASCADE REQUIRED)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 set(OCCT_LIBS
 | 
				
			||||||
 | 
					     TKXDESTEP
 | 
				
			||||||
@ -0,0 +1,21 @@
 | 
				
			|||||||
 | 
					diff --git a/src/slic3r/GUI/GUI.cpp b/src/slic3r/GUI/GUI.cpp
 | 
				
			||||||
 | 
					index ccd3cc0..be8bbe5 100644
 | 
				
			||||||
 | 
					--- a/src/slic3r/GUI/GUI.cpp
 | 
				
			||||||
 | 
					+++ b/src/slic3r/GUI/GUI.cpp
 | 
				
			||||||
 | 
					@@ -33,6 +33,16 @@ class AppConfig;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 namespace GUI {
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+// wxgtk3 is broken on wayland: https://trac.wxwidgets.org/ticket/17702
 | 
				
			||||||
 | 
					+#ifdef __WXGTK3__
 | 
				
			||||||
 | 
					+struct ForceX11 {
 | 
				
			||||||
 | 
					+    ForceX11() {
 | 
				
			||||||
 | 
					+        setenv("GDK_BACKEND", "x11", 1);
 | 
				
			||||||
 | 
					+    }
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+static struct ForceX11 forcex11;
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 #if __APPLE__
 | 
				
			||||||
 | 
					 IOPMAssertionID assertionID;
 | 
				
			||||||
 | 
					 #endif
 | 
				
			||||||
							
								
								
									
										12
									
								
								media-gfx/superslicer/metadata.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								media-gfx/superslicer/metadata.xml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?>
 | 
				
			||||||
 | 
					<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
 | 
				
			||||||
 | 
					<pkgmetadata>
 | 
				
			||||||
 | 
						<maintainer type="project">
 | 
				
			||||||
 | 
							<email>3dprint@gentoo.org</email>
 | 
				
			||||||
 | 
							<name>Gentoo 3D Printer Project</name>
 | 
				
			||||||
 | 
						</maintainer>
 | 
				
			||||||
 | 
						<upstream>
 | 
				
			||||||
 | 
							<bugs-to>https://github.com/supermerill/SuperSlicer</bugs-to>
 | 
				
			||||||
 | 
							<remote-id type="github">supermerill/SuperSlicer</remote-id>
 | 
				
			||||||
 | 
						</upstream>
 | 
				
			||||||
 | 
					</pkgmetadata>
 | 
				
			||||||
							
								
								
									
										109
									
								
								media-gfx/superslicer/superslicer-2.5.59.8.ebuild
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								media-gfx/superslicer/superslicer-2.5.59.8.ebuild
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,109 @@
 | 
				
			|||||||
 | 
					# Copyright 1999-2024 Gentoo Authors
 | 
				
			||||||
 | 
					# Distributed under the terms of the GNU General Public License v2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					EAPI=8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					WX_GTK_VER="3.0-gtk3"
 | 
				
			||||||
 | 
					MY_PN="SuperSlicer"
 | 
				
			||||||
 | 
					SLICER_PROFILES_COMMIT="8f3bb94a9c60be9a3b40d88a36ff05ba5cf2d6a8"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					inherit cmake wxwidgets xdg flag-o-matic
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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/${SLICER_PROFILES_COMMIT}.tar.gz -> ${P}-profiles.tar.gz
 | 
				
			||||||
 | 
					"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
 | 
				
			||||||
 | 
					SLOT="0"
 | 
				
			||||||
 | 
					KEYWORDS="amd64 ~arm64 ~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-libs/opencascade:=
 | 
				
			||||||
 | 
						>=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}-boost.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-cereal.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-dont-install-angelscript.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-gcodeviewer-symlink-fix.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-missing-includes-fix.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-openexr3.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-wxgtk3-wayland-fix.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-relax-OpenCASCADE-dep.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-link-occtwrapper-statically.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-fix-dereferencing-in-std-unique_ptr-to-nullptr.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-additional-imports-fixes.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-fix-compilation-error-gnu17.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-libnest2d-link-xcb.patch"
 | 
				
			||||||
 | 
						"${FILESDIR}/${P}-boost-replace-load-string-file.patch"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					S="${WORKDIR}/${MY_PN}-${PV}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_unpack() {
 | 
				
			||||||
 | 
						default
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						mv slic3r-profiles-*/* "${S}"/resources/profiles/ || die
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_configure() {
 | 
				
			||||||
 | 
						CMAKE_BUILD_TYPE="Release"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						append-flags -fno-strict-aliasing
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						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
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -3,9 +3,13 @@ DIST discord-0.0.36.tar.gz 92978343 BLAKE2B 59096d3f98f13cd0b02ff1ab01f11b089f7c
 | 
				
			|||||||
DIST discord-0.0.37.tar.gz 92978089 BLAKE2B ebdc2e74e4c92dac32d06c1039d6199e91d1a8e76bdb51a8caa1ef4f80fbbf82e93a54811104bb6144a4ebb0d0a61b114445d0049cea23312adb8c9d5755138f SHA512 495969155a99364a22fef5d830adec5c03c25ac118d560b1e346fa9190866f9a038c07664124f8f835b77ba4e4d2a268a8eab86dea54274de4904ec374a2c005
 | 
					DIST discord-0.0.37.tar.gz 92978089 BLAKE2B ebdc2e74e4c92dac32d06c1039d6199e91d1a8e76bdb51a8caa1ef4f80fbbf82e93a54811104bb6144a4ebb0d0a61b114445d0049cea23312adb8c9d5755138f SHA512 495969155a99364a22fef5d830adec5c03c25ac118d560b1e346fa9190866f9a038c07664124f8f835b77ba4e4d2a268a8eab86dea54274de4904ec374a2c005
 | 
				
			||||||
DIST discord-0.0.39.tar.gz 92977064 BLAKE2B 95f30148782de35e5c5798867f4433163d53ede9538e3c3e6198c20c754a6ffc8f012cd2b85ad47344664ebfbab2ef59f9cf6ebf520daa656d8f05f300ae8789 SHA512 9f18aea5d82f5db4efa9db9babbc440b24e47dc80df18df5cc58d99d677f1c0863df21ed96d69896785f8fbe0dc0ff1f7317398b8f39606289da79f5a38074f1
 | 
					DIST discord-0.0.39.tar.gz 92977064 BLAKE2B 95f30148782de35e5c5798867f4433163d53ede9538e3c3e6198c20c754a6ffc8f012cd2b85ad47344664ebfbab2ef59f9cf6ebf520daa656d8f05f300ae8789 SHA512 9f18aea5d82f5db4efa9db9babbc440b24e47dc80df18df5cc58d99d677f1c0863df21ed96d69896785f8fbe0dc0ff1f7317398b8f39606289da79f5a38074f1
 | 
				
			||||||
DIST discord-0.0.40.tar.gz 92976929 BLAKE2B 4b3b4af371c7839c8ee89f42ef88a413e8c629df47f855ef4cad8fba95df811709af3bd73837111760bfaa8b329fae663b655ad4ccdaeee09751d880ac0716ff SHA512 64fd9cf5c8ebb55cd5cd7c1fc0ae04a7e7cb9df6cc18a7c992f1156f46dac5415d87003622078e5d4aa0e48234c3d69d0d12633a57d55291e359cbb40511ca3a
 | 
					DIST discord-0.0.40.tar.gz 92976929 BLAKE2B 4b3b4af371c7839c8ee89f42ef88a413e8c629df47f855ef4cad8fba95df811709af3bd73837111760bfaa8b329fae663b655ad4ccdaeee09751d880ac0716ff SHA512 64fd9cf5c8ebb55cd5cd7c1fc0ae04a7e7cb9df6cc18a7c992f1156f46dac5415d87003622078e5d4aa0e48234c3d69d0d12633a57d55291e359cbb40511ca3a
 | 
				
			||||||
 | 
					DIST discord-0.0.41.tar.gz 92981397 BLAKE2B 0d392c5e649e13e47e7407ecd5a047ff7989d95dde260049169f276b898bb93bea0b32fc65058e1605cf44bfcedd4f36c45ee9a4d0605e285693194ee8e52d76 SHA512 4442fcff4eadc84ce9ec325c4209dccd07a361dd925418ef0f58e0a059ae906314dd538dfc10f5763aac994beecfa70a6628fb445b244f6f9aab21f73973b80c
 | 
				
			||||||
 | 
					DIST discord-0.0.43.tar.gz 92977778 BLAKE2B 85988229b5e0a7b88b266a82705abeb38e15015b7f7b1a93f5339ce06f794f943bb39db409afbf050afee27a09ee9b530528962ce01d6c44ad0b993ed3dfbfb3 SHA512 2780079975c144ff510973d6149b34c691d1cb0784ef4b8ac6663280263d3b10ca900c9966728579973be377f6b42f8c17ed1038fdef9b699672dddc53e08055
 | 
				
			||||||
EBUILD discord-0.0.35.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
					EBUILD discord-0.0.35.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
				
			||||||
EBUILD discord-0.0.36.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
					EBUILD discord-0.0.36.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
				
			||||||
EBUILD discord-0.0.37.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
					EBUILD discord-0.0.37.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
				
			||||||
EBUILD discord-0.0.39.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
					EBUILD discord-0.0.39.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
				
			||||||
EBUILD discord-0.0.40.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
					EBUILD discord-0.0.40.ebuild 3391 BLAKE2B c8ee5719efdeb4f940ef16a8e07cc828df3d66f9f339ac1b134713083e784c4e3c08b1373bc9d33ad591ef936d89c48edd3a05aefd23af3468911f8d930a8e8a SHA512 103ba174ce8f7b566d767dff33f3a5c3514335e67f4c5b1e08ab4bcd7fcc8a970318a396346734bce965d9d1187b88fe41fa263f07d99189324244646e0144f7
 | 
				
			||||||
 | 
					EBUILD discord-0.0.41.ebuild 3390 BLAKE2B 6e6b565e0786d6791fe5b3dfd839e095596d5c8db42d98c98fd407217c58e09bd882aa55d04249e3871301251cb329f31ef0c12f0e6c91a426656c3f24abafc9 SHA512 26ab982751cc22aa4273030a529aab7e553aeeca27a72b78ee53bd577ca5fc56885ba41988fd3a438d35370e08e8620772cef878d87caa913ec35d834fc45390
 | 
				
			||||||
 | 
					EBUILD discord-0.0.43.ebuild 3390 BLAKE2B 6e6b565e0786d6791fe5b3dfd839e095596d5c8db42d98c98fd407217c58e09bd882aa55d04249e3871301251cb329f31ef0c12f0e6c91a426656c3f24abafc9 SHA512 26ab982751cc22aa4273030a529aab7e553aeeca27a72b78ee53bd577ca5fc56885ba41988fd3a438d35370e08e8620772cef878d87caa913ec35d834fc45390
 | 
				
			||||||
MISC metadata.xml 506 BLAKE2B ff098a1c9341a94ebb21da57c3028d3d96e884e19e3adf2df8d50b694a1ca3eee61f5dfd90eaa557a0a0eee769fd11dfa7bbf63308386a11faa56d13687e33c3 SHA512 56baf0a5323057b4af83a7b7d760b2b1e071e15ca4eef6546eab4104fbdd026906f68d8023a3155f492d8d93cd7022c5d0017372cbaf2894b94bd253b2ce3665
 | 
					MISC metadata.xml 506 BLAKE2B ff098a1c9341a94ebb21da57c3028d3d96e884e19e3adf2df8d50b694a1ca3eee61f5dfd90eaa557a0a0eee769fd11dfa7bbf63308386a11faa56d13687e33c3 SHA512 56baf0a5323057b4af83a7b7d760b2b1e071e15ca4eef6546eab4104fbdd026906f68d8023a3155f492d8d93cd7022c5d0017372cbaf2894b94bd253b2ce3665
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										133
									
								
								net-im/discord/discord-0.0.41.ebuild
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										133
									
								
								net-im/discord/discord-0.0.41.ebuild
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,133 @@
 | 
				
			|||||||
 | 
					# Copyright 1999-2024 Gentoo Authors
 | 
				
			||||||
 | 
					# Distributed under the terms of the GNU General Public License v2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					EAPI=8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MY_PN="${PN/-bin/}"
 | 
				
			||||||
 | 
					MY_PV="${PV/-r*/}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CHROMIUM_LANGS="
 | 
				
			||||||
 | 
						af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
 | 
				
			||||||
 | 
						hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
 | 
				
			||||||
 | 
						sw ta te th tr uk ur vi zh-CN zh-TW
 | 
				
			||||||
 | 
					"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					inherit chromium-2 desktop linux-info optfeature unpacker xdg
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DESCRIPTION="All-in-one voice and text chat for gamers"
 | 
				
			||||||
 | 
					HOMEPAGE="https://discordapp.com"
 | 
				
			||||||
 | 
					SRC_URI="https://dl.discordapp.net/apps/linux/${MY_PV}/${MY_PN}-${MY_PV}.tar.gz"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LICENSE="all-rights-reserved"
 | 
				
			||||||
 | 
					SLOT="0"
 | 
				
			||||||
 | 
					KEYWORDS="amd64"
 | 
				
			||||||
 | 
					RESTRICT="bindist mirror strip test"
 | 
				
			||||||
 | 
					IUSE="appindicator +seccomp"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RDEPEND="
 | 
				
			||||||
 | 
						>=app-accessibility/at-spi2-core-2.46.0:2
 | 
				
			||||||
 | 
						app-crypt/libsecret
 | 
				
			||||||
 | 
						dev-libs/expat
 | 
				
			||||||
 | 
						dev-libs/glib:2
 | 
				
			||||||
 | 
						dev-libs/nspr
 | 
				
			||||||
 | 
						dev-libs/nss
 | 
				
			||||||
 | 
						media-libs/alsa-lib
 | 
				
			||||||
 | 
						media-libs/fontconfig
 | 
				
			||||||
 | 
						media-libs/mesa[gbm(+)]
 | 
				
			||||||
 | 
						net-print/cups
 | 
				
			||||||
 | 
						sys-apps/dbus
 | 
				
			||||||
 | 
						sys-apps/util-linux
 | 
				
			||||||
 | 
						sys-libs/glibc
 | 
				
			||||||
 | 
						x11-libs/cairo
 | 
				
			||||||
 | 
						x11-libs/libdrm
 | 
				
			||||||
 | 
						x11-libs/gdk-pixbuf:2
 | 
				
			||||||
 | 
						x11-libs/gtk+:3
 | 
				
			||||||
 | 
						x11-libs/libX11
 | 
				
			||||||
 | 
						x11-libs/libXScrnSaver
 | 
				
			||||||
 | 
						x11-libs/libXcomposite
 | 
				
			||||||
 | 
						x11-libs/libXdamage
 | 
				
			||||||
 | 
						x11-libs/libXext
 | 
				
			||||||
 | 
						x11-libs/libXfixes
 | 
				
			||||||
 | 
						x11-libs/libXrandr
 | 
				
			||||||
 | 
						x11-libs/libxcb
 | 
				
			||||||
 | 
						x11-libs/libxkbcommon
 | 
				
			||||||
 | 
						x11-libs/libxshmfence
 | 
				
			||||||
 | 
						x11-libs/pango
 | 
				
			||||||
 | 
						appindicator? ( dev-libs/libayatana-appindicator )
 | 
				
			||||||
 | 
					"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DESTDIR="/opt/${MY_PN}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					QA_PREBUILT="*"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CONFIG_CHECK="~USER_NS"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					S="${WORKDIR}/${MY_PN^}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_unpack() {
 | 
				
			||||||
 | 
						unpack ${MY_PN}-${MY_PV}.tar.gz
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_configure() {
 | 
				
			||||||
 | 
						default
 | 
				
			||||||
 | 
						chromium_suid_sandbox_check_kernel_config
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_prepare() {
 | 
				
			||||||
 | 
						default
 | 
				
			||||||
 | 
						# remove post-install script
 | 
				
			||||||
 | 
						rm postinst.sh || die "the removal of the unneeded post-install script failed"
 | 
				
			||||||
 | 
						# cleanup languages
 | 
				
			||||||
 | 
						pushd "locales/" >/dev/null || die "location change for language cleanup failed"
 | 
				
			||||||
 | 
						chromium_remove_language_paks
 | 
				
			||||||
 | 
						popd >/dev/null || die "location reset for language cleanup failed"
 | 
				
			||||||
 | 
						# fix .desktop exec location
 | 
				
			||||||
 | 
						sed -i "/Exec/s:/usr/share/discord/Discord:${DESTDIR}/${MY_PN^}:" \
 | 
				
			||||||
 | 
							"${MY_PN}.desktop" ||
 | 
				
			||||||
 | 
							die "fixing of exec location on .desktop failed"
 | 
				
			||||||
 | 
						# USE seccomp
 | 
				
			||||||
 | 
						if ! use seccomp; then
 | 
				
			||||||
 | 
							sed -i '/Exec/s/Discord/Discord --disable-seccomp-filter-sandbox/' \
 | 
				
			||||||
 | 
								"${MY_PN}.desktop" ||
 | 
				
			||||||
 | 
								die "sed failed for seccomp"
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_install() {
 | 
				
			||||||
 | 
						doicon -s 256 "${MY_PN}.png"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# install .desktop file
 | 
				
			||||||
 | 
						domenu "${MY_PN}.desktop"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						exeinto "${DESTDIR}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						doexe "${MY_PN^}" chrome-sandbox libEGL.so libffmpeg.so libGLESv2.so libvk_swiftshader.so
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						insinto "${DESTDIR}"
 | 
				
			||||||
 | 
						doins chrome_100_percent.pak chrome_200_percent.pak icudtl.dat resources.pak snapshot_blob.bin v8_context_snapshot.bin
 | 
				
			||||||
 | 
						insopts -m0755
 | 
				
			||||||
 | 
						doins -r locales resources
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Chrome-sandbox requires the setuid bit to be specifically set.
 | 
				
			||||||
 | 
						# see https://github.com/electron/electron/issues/17972
 | 
				
			||||||
 | 
						fowners root "${DESTDIR}/chrome-sandbox"
 | 
				
			||||||
 | 
						fperms 4711 "${DESTDIR}/chrome-sandbox"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Crashpad is included in the package once in a while and when it does, it must be installed.
 | 
				
			||||||
 | 
						# See #903616 and #890595
 | 
				
			||||||
 | 
						[[ -x chrome_crashpad_handler ]] && doins chrome_crashpad_handler
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						dosym "${DESTDIR}/${MY_PN^}" "/usr/bin/${MY_PN}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# https://bugs.gentoo.org/898912
 | 
				
			||||||
 | 
						if use appindicator; then
 | 
				
			||||||
 | 
							dosym ../../usr/lib64/libayatana-appindicator3.so /opt/discord/libappindicator3.so
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pkg_postinst() {
 | 
				
			||||||
 | 
						xdg_pkg_postinst
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						optfeature "sound support" \
 | 
				
			||||||
 | 
							media-sound/pulseaudio media-sound/apulse[sdk] media-video/pipewire
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										133
									
								
								net-im/discord/discord-0.0.43.ebuild
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										133
									
								
								net-im/discord/discord-0.0.43.ebuild
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,133 @@
 | 
				
			|||||||
 | 
					# Copyright 1999-2024 Gentoo Authors
 | 
				
			||||||
 | 
					# Distributed under the terms of the GNU General Public License v2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					EAPI=8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MY_PN="${PN/-bin/}"
 | 
				
			||||||
 | 
					MY_PV="${PV/-r*/}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CHROMIUM_LANGS="
 | 
				
			||||||
 | 
						af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
 | 
				
			||||||
 | 
						hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
 | 
				
			||||||
 | 
						sw ta te th tr uk ur vi zh-CN zh-TW
 | 
				
			||||||
 | 
					"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					inherit chromium-2 desktop linux-info optfeature unpacker xdg
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DESCRIPTION="All-in-one voice and text chat for gamers"
 | 
				
			||||||
 | 
					HOMEPAGE="https://discordapp.com"
 | 
				
			||||||
 | 
					SRC_URI="https://dl.discordapp.net/apps/linux/${MY_PV}/${MY_PN}-${MY_PV}.tar.gz"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LICENSE="all-rights-reserved"
 | 
				
			||||||
 | 
					SLOT="0"
 | 
				
			||||||
 | 
					KEYWORDS="amd64"
 | 
				
			||||||
 | 
					RESTRICT="bindist mirror strip test"
 | 
				
			||||||
 | 
					IUSE="appindicator +seccomp"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RDEPEND="
 | 
				
			||||||
 | 
						>=app-accessibility/at-spi2-core-2.46.0:2
 | 
				
			||||||
 | 
						app-crypt/libsecret
 | 
				
			||||||
 | 
						dev-libs/expat
 | 
				
			||||||
 | 
						dev-libs/glib:2
 | 
				
			||||||
 | 
						dev-libs/nspr
 | 
				
			||||||
 | 
						dev-libs/nss
 | 
				
			||||||
 | 
						media-libs/alsa-lib
 | 
				
			||||||
 | 
						media-libs/fontconfig
 | 
				
			||||||
 | 
						media-libs/mesa[gbm(+)]
 | 
				
			||||||
 | 
						net-print/cups
 | 
				
			||||||
 | 
						sys-apps/dbus
 | 
				
			||||||
 | 
						sys-apps/util-linux
 | 
				
			||||||
 | 
						sys-libs/glibc
 | 
				
			||||||
 | 
						x11-libs/cairo
 | 
				
			||||||
 | 
						x11-libs/libdrm
 | 
				
			||||||
 | 
						x11-libs/gdk-pixbuf:2
 | 
				
			||||||
 | 
						x11-libs/gtk+:3
 | 
				
			||||||
 | 
						x11-libs/libX11
 | 
				
			||||||
 | 
						x11-libs/libXScrnSaver
 | 
				
			||||||
 | 
						x11-libs/libXcomposite
 | 
				
			||||||
 | 
						x11-libs/libXdamage
 | 
				
			||||||
 | 
						x11-libs/libXext
 | 
				
			||||||
 | 
						x11-libs/libXfixes
 | 
				
			||||||
 | 
						x11-libs/libXrandr
 | 
				
			||||||
 | 
						x11-libs/libxcb
 | 
				
			||||||
 | 
						x11-libs/libxkbcommon
 | 
				
			||||||
 | 
						x11-libs/libxshmfence
 | 
				
			||||||
 | 
						x11-libs/pango
 | 
				
			||||||
 | 
						appindicator? ( dev-libs/libayatana-appindicator )
 | 
				
			||||||
 | 
					"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DESTDIR="/opt/${MY_PN}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					QA_PREBUILT="*"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CONFIG_CHECK="~USER_NS"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					S="${WORKDIR}/${MY_PN^}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_unpack() {
 | 
				
			||||||
 | 
						unpack ${MY_PN}-${MY_PV}.tar.gz
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_configure() {
 | 
				
			||||||
 | 
						default
 | 
				
			||||||
 | 
						chromium_suid_sandbox_check_kernel_config
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_prepare() {
 | 
				
			||||||
 | 
						default
 | 
				
			||||||
 | 
						# remove post-install script
 | 
				
			||||||
 | 
						rm postinst.sh || die "the removal of the unneeded post-install script failed"
 | 
				
			||||||
 | 
						# cleanup languages
 | 
				
			||||||
 | 
						pushd "locales/" >/dev/null || die "location change for language cleanup failed"
 | 
				
			||||||
 | 
						chromium_remove_language_paks
 | 
				
			||||||
 | 
						popd >/dev/null || die "location reset for language cleanup failed"
 | 
				
			||||||
 | 
						# fix .desktop exec location
 | 
				
			||||||
 | 
						sed -i "/Exec/s:/usr/share/discord/Discord:${DESTDIR}/${MY_PN^}:" \
 | 
				
			||||||
 | 
							"${MY_PN}.desktop" ||
 | 
				
			||||||
 | 
							die "fixing of exec location on .desktop failed"
 | 
				
			||||||
 | 
						# USE seccomp
 | 
				
			||||||
 | 
						if ! use seccomp; then
 | 
				
			||||||
 | 
							sed -i '/Exec/s/Discord/Discord --disable-seccomp-filter-sandbox/' \
 | 
				
			||||||
 | 
								"${MY_PN}.desktop" ||
 | 
				
			||||||
 | 
								die "sed failed for seccomp"
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					src_install() {
 | 
				
			||||||
 | 
						doicon -s 256 "${MY_PN}.png"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# install .desktop file
 | 
				
			||||||
 | 
						domenu "${MY_PN}.desktop"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						exeinto "${DESTDIR}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						doexe "${MY_PN^}" chrome-sandbox libEGL.so libffmpeg.so libGLESv2.so libvk_swiftshader.so
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						insinto "${DESTDIR}"
 | 
				
			||||||
 | 
						doins chrome_100_percent.pak chrome_200_percent.pak icudtl.dat resources.pak snapshot_blob.bin v8_context_snapshot.bin
 | 
				
			||||||
 | 
						insopts -m0755
 | 
				
			||||||
 | 
						doins -r locales resources
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Chrome-sandbox requires the setuid bit to be specifically set.
 | 
				
			||||||
 | 
						# see https://github.com/electron/electron/issues/17972
 | 
				
			||||||
 | 
						fowners root "${DESTDIR}/chrome-sandbox"
 | 
				
			||||||
 | 
						fperms 4711 "${DESTDIR}/chrome-sandbox"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Crashpad is included in the package once in a while and when it does, it must be installed.
 | 
				
			||||||
 | 
						# See #903616 and #890595
 | 
				
			||||||
 | 
						[[ -x chrome_crashpad_handler ]] && doins chrome_crashpad_handler
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						dosym "${DESTDIR}/${MY_PN^}" "/usr/bin/${MY_PN}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# https://bugs.gentoo.org/898912
 | 
				
			||||||
 | 
						if use appindicator; then
 | 
				
			||||||
 | 
							dosym ../../usr/lib64/libayatana-appindicator3.so /opt/discord/libappindicator3.so
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pkg_postinst() {
 | 
				
			||||||
 | 
						xdg_pkg_postinst
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						optfeature "sound support" \
 | 
				
			||||||
 | 
							media-sound/pulseaudio media-sound/apulse[sdk] media-video/pipewire
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user