Before releasing a new version, please read the CHECK file.
Cura by Dagoma was originally forked from Legacy Cura. It is built with the following components:
Windows only :
The slicer binary is built on the fly. It is a full C++ project. The compilation process is based on standard Makefile.
WinPython is used for production. In development, we use a python virtual environment (see below).
First download WinPython according to your architecture system. In this project, we are using Python 3.9.10.
- Windows 64-bits : https://sourceforge.net/projects/winpython/files/WinPython_3.9/3.9.10.0/Winpython64-3.9.10.0dot.exe/download
- Windows 32-bits : https://sourceforge.net/projects/winpython/files/WinPython_3.9/3.9.10.0/Winpython32-3.9.10.0dot.exe/download
After extracting it, open the WinPython Command Prompt.exe
in the WinPython folder. Download the necessary dependencies using pip :
pip install wheel setuptools pyserial wxPython
Then download the two following wheels from this website, according to your OS :
- Windows 64-bits :
PyOpenGL-3.1.6-cp39-cp39-win_amd64.whl
andPyOpenGL_accelerate-3.1.6-cp39-cp39-win_amd64.whl
- Windows 32-bits :
PyOpenGL‑3.1.6‑cp39‑cp39‑win32.whl
andPyOpenGL_accelerate‑3.1.6‑cp310‑cp310‑win32.whl
Finally copy the python-3.9.10.amd64
folder (python-3.9.10
for Windows 32-bits) and paste it in your project root. After packaging, this folder will be renamed to python
.
Virtual Python environments have been used only during development. In production, for Windows, we use WinPython (see section above).
Download and use a Python3.x universal installer from Python website. In this project, we are using Python3.9.10.
In the project folder, open a terminate and, to create a virtual environment ("venv") with the python version you've just installed, execute :
python -m venv venv
If you have several python versions installed on your computer, instead of python
, please write the exact path to your python.exe file.
To activate your venv, type :
./venv/Scripts/activate
Notice that you must activate your venv before every modification of the venv.
- Install required packages
$ sudo apt install python3-venv libsdl2-2.0-0
- Set up and activate the virtual environment
$ python -m venv venv
$ ./venv/bin/activate
If necesary, upgrade pip with :
pip install --upgrade pip
On Windows, please download the two following wheels from this website, according to your OS :
- Windows 64-bits :
PyOpenGL-3.1.6-cp39-cp39-win_amd64.whl
andPyOpenGL_accelerate-3.1.6-cp39-cp39-win_amd64.whl
- Windows 32-bits :
PyOpenGL‑3.1.6‑cp39‑cp39‑win32.whl
andPyOpenGL_accelerate‑3.1.6‑cp310‑cp310‑win32.whl
To install the necesary python modules, we will use python wheels. Please use the requirements file linked to your OS, among the following list :
requirements_win_amd64.txt
for Windows 64-bitsrequirements_win32.txt
for Windows 32-bitsrequirements_ubuntu.txt
for Ubunturequirements_macos.txt
for MacOs
For example, if you are on Windows 64-bits, type :
pip install -r ./requirements_win_amd64.txt
To create a package, execute from your project folder :
./package.sh <os> <architecture>
For example, on Windows, with a 64bits-architecture, write :
./package.sh windows 64 1
1
is a default parameter which means that you also want to build CuraEngine. Replace it by 0
if you've already built it once before.
Here are the needed requirement:
- A gcc compiler (from mingw64)
- Nsis 3.08
- 7zip 9.20 as extraction is handled differently with newer versions.
The needed binaries (eg. PortablePython) are retrieved and used during the packaging process so it must work pretty flawlessly.
For linux, two types of packages can be built:
- A debian package for Debian based distributions.
- A generic tar.gz archive for other distributions.
Nothing special is required for linux packaging, it should work natively.
The migration_python3 branch is still in development.
For now, the only available distribution package is the debian one: https://drive.google.com/file/d/1M4feXfi3IyKtdsA5HAFySgIrI7Vo4CHA/view?usp=sharing
To install it :
$ sudo dpkg -i ./CuraByDagoma_amd64.deb
$ sudo apt install -f
or
$ sudo apt install ./CuraByDagoma_amd64.deb
- Get CuraEngine binary file and make it executable
(venv)$ wget github.com/dagoma3d/CuraEngine/releases/latest/download/CuraEngine-linux_x86_64 -O CuraEngine
(venv)$ chmod +x CuraEngine
- All is ready, you just have to launch the app entry point
(venv)$ python cura.py
Bottom layer: Ultimaker/CuraEngine#51