The simple question: “Why?”
While working on Cura plugins, I thought and worked on a solution to make developing and building plugins as easy as possible. The aim was from the beginning to find a hassle-free solution. So I began to take cura-build-environment and expanded it with many dependencies, which are normally not built and need to be installed before. The result was a full prefix with all dependencies preinstalled.
Normally cura-build-environment needs additional dependencies to be installed and reuses them. Therefore the quality of cura-build-environment‘s resulting prefix depends on the system, where it was built before. In addition to that, the prefix is not portable (unless everything has been built statically). That is the reason, why I decided to add or at least most of the dependencies to the prefix, so the resulting prefix can be archived and compressed into a package and thus be distributed.
When thinking of the plugin development, the prefix can then include all the applications, which were used to build Cura. To ensure representative software tests, the same base of applications can be used to build the plugins.
On the other hand, when having the full prefix, it is also easy to run Cura from source, add new recipes for new Python modules and develop plugins. For this reason, I expanded the prefix in a different flavor with Bash, CMake, Git and other tools. This makes programming for Cura as easy and fast as rapid-prototyping itself!
Everything that is needed to is downloading the archive, unpacking it ad done!
What do I need?
- A mid-class computer (or network-attached-storages (NAS))
- If you want to build a prefix on your own, take a look at the project page.
What do I get?
The following features (and already done):
- Comes with all dependencies needed to run Cura
- Provides possibility to compile different flavors (minimal, development, proposed)
- Allows overriding all download URLs with a local cache, so changed URLs won’t break builds.
What needs to be done?
GCC orLLVM for compiling
- Adding scripts to fetch Cura from GitHub and run it directly.
There are none at the moment – still work in progress. But you can take a look here: https://thopiekar.eu:5443/Cura/cura-build-environment/pipelines