Bambu’s license issues
The Bambu X1 and Carbon variant is possibly the printer of the year and it comes with Bambu’s own slicer, BambuStudio. This is a fork of PrusaSlicer, which again is a fork of slic3r. When the slicer was released, this being a fork was not disclosed and it was presented as an in-house slicer. However, those who tested it, quickly found out about this and reported the licensing issues, in that you can’t just take open source code licensed under AGPL and use it as your own. In reply to this, Bambu opensourced its BambuStudio and put it on github. But, there’s a catch. The BambuStudio, on startup, downloads two closed source libraries for communication with the Bambu cloud service and the printer. The AGPL, however, like its sister GPL, states that libraries linked to the software are considered a derivative work, meaning the AGPL license also covers those libraries. Since Bambu hasn’t provided any source code for these libraries, that’s a clear violation against AGPL. I have reported this issue to Bambu, but so far, I haven’t gotten a reply. Let’s just hope Bambu will adapt to the license and not just ignore it.
It depends whether the code is linked or executed dynamically – if it’s executed dynamically you can call any number of closed source libraries to perform functions without breaking the license as long as the code to call the library source is included.
The network plugin appears to be accessed in this way in the source, defined as external functions in the network code, in exactly the same way the Bonjour support is setup
This is not true. It doesn’t matter if it’s linked dynamically or statically. The AGPL license doesn’t differentiate between the two, since they do the same job.
Curious how using closed sourced plugins is different to closed source kernel modules be loaded into the linux kernel? Is this a license difference bettwen AGPL and GPL?
A closed source driver/module can be compiled and linked to the linux kernel by the user if she or he wishes to do so, but if someone compiles the driver module or library and distributes it to the user and automatically links it to the (A)GPL software, that breaks (A)GPL. LGPL, lesser GPL, formerly Library GPL, is made to allow for usage of closed source software, so that if you haver a supersecret codebase, you can link to LGPL without issues. With (A)GPL, you can’t.
Not saying anything of myself on this subject but here is bambu lab’s response: https://blog.bambulab.com/agpl-compliance-of-bambu-studio/