> GPLv2 license: FREE FOR NON-COMMERCIAL USE This confuses me, the GPLv2 doesn't say anything about commercial use, it merely says that you need to redistribute the source code to anyone that you distribute your software to. Have they placed additional restrictions on the GPL (which I believe you are prohibited from doing)? or are they just trying to highlight that they are dual-licensing it under a license that isn'…
Seems to be the latter, fairly typical "its GPL unless you want to pay us for a different license" https://github.com/mongoose-os-libs/mqtt/blob/master/LICENSE
Mongoose OS – An Open Source Operating System for the Internet of Things
51–60 of 102 posts
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#52> GPLv2 license: FREE FOR NON-COMMERCIAL USE This confuses me, the GPLv2 doesn't say anything about commercial use, it merely says that you need to redistribute the source code to anyone that you distribute your software to. Have they placed additional restrictions on the GPL (which I believe you are prohibited from doing)? or are they just trying to highlight that they are dual-licensing it under a license that isn'…
GPL does not allow static binaries from both GPLed code and commercial code. A workaround is a plugin mechanism with dynamic loading of .dll or .so libraries. But that won't fly on a microcontroller.
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#53> Prototyping and Scripting Engine > Micropython Moving to production (C/C++) or factoring out critical pieces to C/C++ is not trivial VS. > mJS - JavaScript engine for prototyping and C/C++ for production I don't know much about it, but from the surface it seems that the problem is exactly the same? What is the benefit of prototyping in JS instead of Python? In the end, either you refactor everything purely in C, or…
The advantage is time. Many (most?) embedded environments are overly difficult (IMHO), and/or proprietary. Also, even in a good environment, C/C++ typically requires more lines of code than dynamic languages like Python or JS. Therefore, the industry has been looking for ways to combat both the below par developer experience, and the development time. Samsung's Jerryscript [1] is another example. That said, I think t…
But I'm mostly wondering the actualy benefit of choosing mJS instead of micropython to do so. It seems that both are capable of handling this problem, however mJS seems aiming at a compromise between JS and C, and my opinion on this is that it will introduce huge overheads on any projects. This mostly stems from my being wary of multi-language projects.
The process involved in embedded platforms seems heavy enough as it is, no need to blur the lines further.
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#54But why Javascript? Clearly another hype-driven project. Please, use reason not hype when deciding on technology. This is fast food
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#55If you're considering embedded OS options, please look at these two (completely free) projects from the Linux Foundation: Yocto project creates a custom embedded distro based on your needs https://www.yoctoproject.org/ Zephyr supports hardware that can't easily run Linux https://www.zephyrproject.org/
Sure, try to run those on e.g. TI CC3200 microcontroller.
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#56Earlier quoted context omitted.
GPL does not allow static binaries from both GPLed code and commercial code. A workaround is a plugin mechanism with dynamic loading of .dll or .so libraries. But that won't fly on a microcontroller.
.dll won't help with GPL, only with LGPL (IANAL)
If you are building a library and you want it to be open source but also usable by products that are not open source, you can use LGPL. If you are building a proprietary library and you want to keep it proprietary, but link it into a GPL application, I think there is nothing is stopping you from doing that.
You still have an open-source application, it just won't work without the proprietary library.
(This sounds like it should be against the letter of the GPL, but as a thought experiment, pretend someone else wrote the library. Say, Nvidia, and you are Linus. You have no control over how their library gets licensed, and there is no person or body which can stop you from releasing your own code as GPL, even if it may have branches that depend on proprietary code.)
Doing OSS this way is most certainly against the spirit of the GPL, but I think it is within the letter.
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#57> Prototyping and Scripting Engine > Micropython Moving to production (C/C++) or factoring out critical pieces to C/C++ is not trivial VS. > mJS - JavaScript engine for prototyping and C/C++ for production I don't know much about it, but from the surface it seems that the problem is exactly the same? What is the benefit of prototyping in JS instead of Python? In the end, either you refactor everything purely in C, or…
Speaking from experience, using MicroPython is trivial and often "good enough", as are implementing modules for MicroPython in C should they be needed (C isn't my first language by a long shot, but I managed to write a module for MicroPython with little problem). Also, MicroPython has pretty much all the features of core Python whereas mJS appears to have pretty much all the useful features of JS removed. Why not jus…
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#58Bit of a confusing name, when there is already an extremely popular mongodb node.js framework called Mongoose
Also confusing as there is a small mammal that eats snakes called mongoose.
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#59> GPLv2 license: FREE FOR NON-COMMERCIAL USE This confuses me, the GPLv2 doesn't say anything about commercial use, it merely says that you need to redistribute the source code to anyone that you distribute your software to. Have they placed additional restrictions on the GPL (which I believe you are prohibited from doing)? or are they just trying to highlight that they are dual-licensing it under a license that isn'…
I assume what they mean is that you can purchase a special license which allows you to use moongoose without GPL (typically for proprietary use), for example, x264 and x265 (well known GPL licensed encoders for h264 and h265) does exactly this.
Re: Mongoose OS – An Open Source Operating System for the Internet of Things
#60Earlier quoted context omitted.
Sure, try to run those on e.g. TI CC3200 microcontroller.
Yocto does not seem to support CC3200.