Beside functionality, quality and documentation the license is one of the most important point of using open source code in commercial products.
It's important to know, if and how the license of a FIWARE Generic Enabler has effects on the overall solutions stack of your work.
So let's have a look on the licenses of Generic Enablers
In the FIWARE Association we did a brief look on the licenses described in the Generic Enabler Catalogue and add them to a map of the FIWARE Architecture Specification. This should help to visualize todays license situation and to get a feeling on the terra incognita (the FIWARE reference architecture map does not match 100% to the names of the GE in the catalogue – we did our best to identify the catalogue GE's. Just let us know if we missed a GE.)
First the good news:
All Generic Enablers available in the FIWARE Catalogue are published under OSI approved Open Source Licenses. If you use FIWARE Generic Enablers from the catalogue you can be sure that your GE is based upon an OSI approved real open source license.
9 different Open Source Licenses in the FIWARE GE Stack
But what else we see: Generic Enablers in the FIWARE Catalogue are published with different open source licenses. We count at least 9 different license types on the review. Including a broad range of license with strong copyleft effect as GPL and permissive license as MIT.
GPL and MIT for example are OSI approved open source licenses – but they are build on complete different philosophy regarding the freedom of commercialization. GPL has a very strong copyleft – and it's not made for selling code based upon classical proprietary vendor revenue models. On GPL vendors business model has to be charging distribution fees or additional service around the product. The product it self cannot charged by license fees. In opposite the MIT is more vendor friendly: it does not force your overall product to run under open source by copyleft and it allows to use code within a classical proprietary software solution.
On complex open source projects it's not unusual that you can't avoid to build the solution by using code published on different licenses. But at all developers and maintainers should be very careful by mixing too many open source licenses. Adding different licenses to the stack is increasing complexity of how the different licenses are affecting the legal frame of the overall product build upon the software stack.
Managing licenses in open source stacks is a main task
Having 9 different licenses over a set of 40 Generic Enables is increasing the legal complexity on how to use FIWARE by commercial products. Additional on the copyleft licenses we also have to deal with different versions of GPL, GPL v2, GPL v3, LGPL and AGPL. Why? It obviously looks likes a missing task of managing the license model of FIWARE in detail.
One of the most important goals must be to simplify the license map and to install a license management. Companies and FIWARE users are in need of an easy to use legal frame to build successful commercial products and services.