Nokia Makes LGPL Version of PyQt
EtaCarinae writes "Nokia didn't succeed in convincing Riverbank to change its licensing terms on PyQt, and so decided to create their own LGPL'ed version of it. From the FAQ at the PySide site: 'Nokia's initial research into Python bindings for Qt involved speaking with Riverbank Computing, the makers of PyQt. We had several discussions with them to see if it was possible to use PyQt to achieve our goals. Unfortunately, a common agreement could not be found , so in the end we decided to proceed with PySide.'"
If you cannot get the source to open-source, open-source the source.
PyQt is open source. Or isn't the GPL considered open anymore?
While I'm not disputing the usefulness of their bindings, I'd describe them as "working", but not necessarily "superb". Their API is not very pythonic or concise and feels pretty much like writing C++, without the segfaults :P
Taken from the arstechnica web site that also carried this story
"Not if you want to write commercial software on top of it, which is what Nokia wants to enable. Just as they did with releasing Qt under the LGPL."
Bullshit. PyQT also has a commercial license. You're just being a freeloading leech right now.
Put yourself in Nokia's shoes. They need a scripting interface to encourage development on their platform. How much would you pay riverbank for a product that does not exactly meet your needs? The GPL is simply not going to work in the phone environment because not everybody is going to want to license their apps under the GPL. The LGPL has proven to be a far superior compromise as evidenced by the fact that Qt (when it was GPL) previously lost traction to inferior products due to their GPL licensing.
Hi,
I'm the Nokia guy responsible for the project.
It looks like PySide are huge (3x the size of PyQt and 6x the size of SMOKE-generated bindings!) and there is very little improvement they can do if they keep on using Boost::Python to generate PySide.
You're right: the current size of PySide is an issue, especially if you consider mobile environments such as Maemo, let alone the S60 platform. However, that's also why we are working on Shiboken, an alternate binding component which would create CPython extensions directly instead of using Boost.Python as an intermediate layer. Shiboken is still in its infancy, but we expect we'll be able to solve the size issues for once and all, while retaining full Python-level compatibility with the current bindings.
Unfortunately, there's not much info on this yet, but check our repo for the source code: qt.gitorius.org/pyside.