Sun Open-Sources Java UI Toolkit
ruphus13 writes "As the mobile space heats up, Sun has released the source code for Java Lightweight UI Toolkit under the GPL v2 license. ZDNet quotes Sun's senior director of embedded software saying, 'By creating LWUIT, Sun is reaffirming its commitment to the mobile development community and by open-sourcing the LWUIT code, we are enabling mobile developers to quickly and easily create rich, portable interfaces for their applications -- functionality that they have been requesting for some time.' Will Adobe follow suit?"
Sun is also working on some fixes to holes in their mobile Java platform, which were discovered by a Polish researcher who demanded €20,000 to disclose the information.
"which were discovered by a Polish researcher who demanded â20,000 to disclose the information. "
You know what??? GOOD FOR HIM.
So noone tought this would happen with lawsuit-happy, dig-your-head-in-the-sand companies (I'm not saying NOK and JAVA are)
Tips for dealing with large corporations, if you give it for free, the don't want it. If you put a price tag in it, you make it worth it.
how long until
Oh my, evertying about LWUIT seems ugly. It is an ugly acronym, the screenshots look horrible (green text on a very pink folded person) and the rotating cube is unaliassed and completely unnecessary.
There is an article on ZDnet explaining the differences between JavaFX and LWUIT. It explains that LWUIT is a stop gap for people that cannot use JavaFX yet. But looking at the content of the LWUIT homepage I conclude that SUN could have better not release LWUIT at all.
As for phone GUIs, I'm rooting for Plasma. At Akademy last week I saw lots of EEE PCs and other small PCs, Nokia internet tablets, OLPC and OpenMoko machines all running Plasma. And it looks amazing and is easy to use and customize.
DNA is the ultimate spaghetti code.
Huge difference.
Before Sun was into java, they teamed up with NeXT to create the OpenStep specification. sun had a beta Openstep package for solaris (sparc only) but then got java fever. Many of the original Java classes bore a striking resemblance to the Foundation Kit. It's been downhill since.
Sun's track record at designing good toolkits is like Han's reiser's track record of not murdering his wives, or Cowboy neal's track record of not being fat.
When I go to the download page there is no source code and no GPL.
https://lwuit.dev.java.net/servlets/ProjectProcess?tab=1
They'd better fix this bug:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4802695
Is this another one of those "LGPL-like" variants of the GPLv2?
Basically, as I understood it, Classpath exception is "Running in the JVM isn't considered linking as GPL defines the term". If you went by the strict letter of GPL, the GPL would require all classes running in the same VM to be under GPL-compatible license. It's necessary to do it this way, because in JVM there's little technical difference in linking a library and running a class, and running separate JVMs for GPL and non-GPL-compatible classes is just silly.
What about Jambi? Qt for Java. High quality easy to use UI framework. Yeah, I know it's Nokia now, but so what.
Don't blame me, I didn't vote for either of them!
It has the classpath exception:
http://lwuit.blogspot.com/2008/08/lwuit-open-source-today-plus-great-new.html
http://lwuit.blogspot.com/2008/05/licensing-terms-of-lwuit.html
The classpath exception is a different use case from LGPL which doesn't make sense in the mobile world where dynamic libraries can't be deployed (in most phones).
Its designed to allow proprietary applications but requires changes to LWUIT to be contributed back: http://lwuit.blogspot.com/2008/05/licensing-terms-of-lwuit.html
http://lwuit.blogspot.com/2008/08/lwuit-open-source-today-plus-great-new.html
The classpath exception is a different use case from LGPL which doesn't make sense in the mobile world where dynamic libraries can't be deployed
I suspect there's something more complex than that, because the LGPL doesn't require dynamic libraries.
No there isn't.
LGPL requires opening the application source code when linking with the library. The interpretation of the word linking has been widely debated... The classpath exception does not. Sun representatives have stated that the goal is to allow proprietary development with the library e.g.:
http://weblogs.java.net/blog/terrencebarr/
Where precisely does the LGPL require opening the application source code when linking with the library? The whole point of the LGPL is that you don't need to release source of components that are not covered by the LGPL. You *do* have to provide a linkable version of the non-LGPL components, but that doesn't require source.
That is my understanding of the license (IANAL):
http://en.wikipedia.org/wiki/GPL_linking_exception
Section 4.d.1 seems to be relevant:
http://www.gnu.org/licenses/lgpl.html
Thank you for those informative links.
Section 4.d.1 is one of two alternatives. The purpose of these alternatives is to satisfy this requirement: You may convey a Combined Work under terms of your choice that, taken together, effectively do not restrict modification of the portions of the Library contained in the Combined Work and reverse engineering for debugging such modifications.
To do this you may satisfy 4.d.1 or 4.d.0. Given the normal Java packaging mechanism this should be trivial, since a JAR is just a ZIP containing class files and other components that are easily replaced.
According to the Wikipedia page the purpose of the Classpath exception is to allow conveyance of a combined work in a way that restricts modification of the library contained in the combined work: This restriction requires software projects which integrate a code library licensed under the LGPL to ensure that the license covering the combined work provides such permissions. Such a requirement can be difficult to meet, for example, in the case where code is distributed as statically linked software in an embedded device.
I believe this pretty seriously violates the intent of the GPL, as expressed in the preamble and in the GNU manifesto.
I assume you are more familiar with LGPL than I am. However, I don't think this violates the intent of GPL (at least not more than the LGPL license) since the license was approved by RMS (it is the one used for open sourcing Java SE).
It wouldn't be the first time someone has slipped something under Richard's radar. I would be very surprised if he'd agree to allowing Tivoizing like that.
Java is a GPL platform just like Qt. There is little difference.
DNA is the ultimate spaghetti code.