Ultimaker / libSavitar

libSavitar is a c++ implementation of 3mf loading with SIP python bindings.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Conan-build is a PITA for all external packagers

StefanBruens opened this issue · comments

  1. standardprojectsettings is not a proper dependency usable outside of Conan
  2. Conan is not really usable in an offline scenario

This is a kind request to:

  1. Make standardprojectsettings usable with a standard build, e.g. git clone; git checkout; cmake; make. I.e. find_package(standardprojectsettings) should be working outside Conan
  2. Install libraries with make install
  3. Install CMake config files with make install

See e.g. https://repology.org/project/cura/versions - nobody packages Cura > 4.13.1 (AUR is just repackaged AppImage).

See e.g. NixOS/nixpkgs#208124 for e.g. NixOS struggles, and that is with libSavitar 5.0, not even 5.2.2.

In case Ultimaker has no intention to support building distribution packages, lowering the hurdles would be very welcome (e.g. reintroducing make install targets).

Disclaimer: I am not related to NixOS, but face the same problems.

Sorry to hear it is a PITA for some people, but the fact of the matter is that it was a PITA for UltiMaker before our switch to Conan. The move to GitHub Actions and the use of Conan ensured that we have a yearly cost reduction in the ball park of 50k euro a year; coupled with reproducable builds and less risk in our development process and release cycles. We also see a huge increase in community developers being able to setup their development environment with less trouble.

We acknowledge the fact that certain package Linux Package maintainers have a different philosophy how package should be build, but we can also not put in the resources to facilitate all those different philosophies. There is a reason why we optimized one of our bigger resource hogs (aka the build system) in the first place.

That being said: Pull Request to facilitate Linux package managers are welcome and they will recieve propper attention but they will be judge on limitting extra complexity and maintenance from the UltiMaker side.

If people are dead set on skipping Conan as a dependency manager that still is possible. The would have to manage the downloading and installing of the dependencies themself, and write the find_packages for them. The standardprojectsettings can be found here: https://github.com/Ultimaker/conan-ultimaker-index/blob/CURA-8831_pyqt6_recipe/recipes/standardprojectsettings/StandardProjectSettings.cmake and no this will not be pulled into the seperate repo's.

So I will close and defer this issue for now.