Netbinox

From APIDesign

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
This is a subproject of the [[Netigso]] effort. While the primary [[OSGi]] container used by [[Netigso]] is [[Felix]], some people seem to continue to ask for [[Equinox]] (for example [http://www.simexplorer.org/wiki/DevDoc/Netigso Nicolas Dumoulin]). Thus I have forked the [[Netigso|original project]], changed it to support [[Equinox]] and released its sources under [[GPL]] license.
This is a subproject of the [[Netigso]] effort. While the primary [[OSGi]] container used by [[Netigso]] is [[Felix]], some people seem to continue to ask for [[Equinox]] (for example [http://www.simexplorer.org/wiki/DevDoc/Netigso Nicolas Dumoulin]). Thus I have forked the [[Netigso|original project]], changed it to support [[Equinox]] and released its sources under [[GPL]] license.
 +
 +
== Why should I want [[Equinox]]? ==
 +
 +
Good question. For worshiping [[OSGi]] any standard container shall be fine, including [[Felix]]. In such situation feel free to stay with plain [[Netigso]] project. However if you rely on non-standard extensions of [[Equinox]] or you want to import bundles from Eclipse (they seem to rely on such non-standard extensions and cannot run in regular [[OSGi]] container), then [[Netbinox]] project shall be your friend and give it a try!
== Resources ==
== Resources ==

Revision as of 11:31, 7 October 2009

This is a subproject of the Netigso effort. While the primary OSGi container used by Netigso is Felix, some people seem to continue to ask for Equinox (for example Nicolas Dumoulin). Thus I have forked the original project, changed it to support Equinox and released its sources under GPL license.

Contents

Why should I want Equinox?

Good question. For worshiping OSGi any standard container shall be fine, including Felix. In such situation feel free to stay with plain Netigso project. However if you rely on non-standard extensions of Equinox or you want to import bundles from Eclipse (they seem to rely on such non-standard extensions and cannot run in regular OSGi container), then Netbinox project shall be your friend and give it a try!

Resources

Why GPL?

GPL (the General Public License) is viral - software based on any GPL library needs to be licensed as GPL as well. This is good from the global perspective of open source projects. The more GPL open source libraries there is, the more GPL applications there will be.

The virality is also good from the point of view of the library vendor. Every public application based on such library needs to make it sources available publicly. This is good for promotion of the library itself (you would not believe how hard it is to find all users of NetBeans Platform now when we desperately need to show it is useful and used; its licenses -- GPLwithClassPathException and CDDL -- are not viral and thus many usages remain unknown) as it gains more visibility. Publicity makes the developer prouder (obviously I rather use software based on my library than other), and also it increases the possible contributions back to the library (as one can easily take useful pieces of code build upon the library and backport them back to the base).

However not every user of the library wants to release own code under GPL. It may seem that in this case the virality of GPL becomes an unsolvable problem. Surprisingly, the opposite is true. If the author of the library is open to such solution (like me in case of my Netbinox project), it can offer an alternative licensing mechanism. The users can then buy right to remove the virality - e.g. to incorporate the library into own application without releasing own code as GPL. In this case the library author looses some of the benefits discussed in the previous paragraph (visibility, more code with easy backporting), but instead it gets a donation. And donations later help the library to improve more rapidly.

Thus licensing libraries under GPL (with the option to remove virality) seems beneficial for all involved parties. Moreover it is also a clean way to manage sponsoring of an open source project. Instead of emotional attempt to ask for donation: "Do you care about our library? Support us, please!" where the library user needs to do decision about somebody else (about the library maintainer), we have more clearer situation where the library user needs to decide about ownself. The interaction goes like: "Do you want to produce GPL code? OK. No? Then donate!". The library user then makes decision about own business and that is more direct question. As such it cannot be left unanswered (in contrast to "do you want to make a donation?" where the simplest thing is to pretend the question has not been noticed) and yields actual results.

Thus donate to Netbinox (if you don't mind its license has meanwhile been changed to non-viral ones)!

Can I avoid GPL virality?

Yes, you can. In case of the Netbinox project there are two options to do it.

First of all you may find out that you do not need Equinox, that compliant OSGi container is enough. In such case, please use Netigso project which incorporates Apache's Felix and does that without the GPL virality using the standard NetBeans license.

In case you really need Equinox, you have the option is to license the Netbinox project under non-GPL license. Please write to licensing@apidesign.org to learn details.


<comments/>

Personal tools
buy