Community

Adding LGPL v3 to Qt

Published Wednesday August 20th, 2014 | by

20 years ago, Trolltech, the company that created Qt, was founded. One of its founding principles was to release Qt as free software to the open source community. In the early versions, this was limited to Unix/Linux and the X11 windowing system. Over the years, more and more platforms were included into the open source version of Qt.

At the same time, the licenses under which Qt was available evolved. The Qt 1.x source code was still released under a rather restrictive license. With Qt 2, we moved over to the QPL. Some years later, with Qt 4.0, Qt started to embrace the GPL v2, to remove some license conflicts between GPL-based applications and the QPL.

Trolltech was involved in talks with the Free Software Foundation (FSF) when the GPL v3 was created, and we added this license as an optional license for Qt after it was published by the FSF. Finally, in 2009 Nokia added LGPL v2.1 as a licensing option to Qt.

The spirit of all GNU licenses is about a strong copyleft, giving users rather strong access and rights to the source code of application and libraries. It was always meant to protect the users’ freedom to modify the application and underlying libraries and run the modified application.

In many people’s opinion there is, however, a loophole in the LGPL 2.1, where it doesn’t clearly talk about running the applications using a modified version of the library. Even though it violates the spirit and intentions of the LGPL, this loophole has been extensively used by companies that create locked-down devices. If devices use LGPL v2.1 software, the user may not be able to install modified versions of the library on the device and use it together with the other software that is installed on it.

We also consider locked-down consumer devices using the LGPL’ed version of Qt to be harmful for the Qt ecosystem. The device is not open to third party developers and thus doesn’t contribute in extending the size of the Qt ecosystem and the range of devices that can be targeted by software developers using Qt. In addition to not contributing to the ecosystem, it doesn’t fund the further development of Qt.

For these reasons we believe that LGPL v2.1 is not protecting the users’ freedom as it was intended by the Free Software Foundation. To account for this, the FSF created version 3 of the LGPL, a license we feel is legally formalizing the intentions of the earlier version.

Changes in the Qt 5.4 Release with LGPLv3

Because of this, we are now adding LGPL v3 as a licensing option to Qt 5.4 in addition to LGPL v2.1. All modules that are part of Qt 5.3 are currently released under LGPL v2.1, GPL v3 and the commercial license. Starting with Qt 5.4, they will be released under LGPL v2.1, LGPL v3 and the commercial license.

However, there will be a set of new add-ons that will be only released under LGPL v3 (plus GPL v2 or later) or commercial license. These add-ons are listed below. We have discussed with the KDE Free Qt Foundation and have their support to make this change in Qt 5.4. We are also in talks with the KDE Free Qt Foundation about further strengthening the agreement.

New add-ons released under LGPL v3

In Qt 5.4, the new Qt WebEngine module will be released under LGPL v3 in the open source version and under a LGPLv2.1/commercial combination for Qt Enterprise customers.

Adding LGPLv3 will also allow us to release a few other add-ons that Digia before intended to make available solely under the enterprise license. In Qt 5.4, we will add a technology preview for two brand new modules to Qt under the LGPL v3.

The first module, called Qt Canvas3D, will give us full WebGL support inside Qt Quick. It is fully functional, but still marked as a preview because the support for JavaScript typed arrays is still implemented in a slow and not 100% compliant way.

The second module is a lightweight WebView module that will also be released as a technology preview. It supports embedding the native Web engines of the underlying operating system into Qt, and is currently supported on Android.

There is a final add-on that will get released under LGPL v3. This module will give native look and feel to the Qt Quick Controls on Android. This module can’t be released under LGPL v2.1, as it has to use code that is licensed under Apache 2.0, a license that is incompatible with LGPL v2.1, but compatible with LGPL v3.

How does this change affect you as a Qt user?

One of the first questions you might have is, of course, how this affects you as a user of Qt.

This first thing to notice is that if you are using Qt under a commercial license, nothing changes at all.

Also, if you are using Qt under GPL v3, you are unaffected, since LGPLv3 can always be converted to GPLv3.

All modules that existed in Qt 5.3 will still be available under LGPL v2.1. So if you are using Qt under the GPL v2 or LGPL v2.1, nothing changes as long as you don’t use any of the new modules that are only available under LGPL v3. If you start using those, your source code will fall under the conditions given by the LGPL v3 (or GPL v2).

These changes will be effective in Qt 5.4 Alpha. I believe that adding LGPL v3 as a licensing option will help both Qt and the open source ecosystem. It is a lot clearer about the intent of the LGPL license and its use in Free Software.

Please find more information about open source licenses at http://www.gnu.org/licenses/.

If you are not sure what license you should be using in your project, please consult a legal expert.

Digia has opened an email address for specific questions about using Lgplv3 in your project. Please contact us via Qtlicensing@digia.com.

16 Comments


Posted in Community, KDE, News, Qt

Defragmenting Qt and Uniting Our Ecosystem

Published Wednesday August 6th, 2014 | by

Over the last years, many changes have been happening in the Qt ecosystem. One of the biggest was the creation of Qt Project where Qt is now being developed as an open source project. The Qt Project was created to provide a space open for all to further develop and foster innovation for the Qt technology.

Qt has always been a commercial product. During the Trolltech days licensing income funded development of the product. While Nokia’s motivations were different, at Digia, our goal is to again make sure that Qt thrives for all industries, all companies, all users no matter what platform. That said, we need to make sure the business of selling Qt as a product is successful in order to fund its future development for the good of everyone in our ecosystem. The importance of Digia’s commercial business for securing the future of Qt cannot be underestimated as it drives Qt’s foundation and everyday operations. A look into the commit statistics shows that around 75% of all code submissions to qt-project.org come from Digia employees. In addition, Digia manages the release process and the CI and testing infrastructure, thus covering more than 85% of the costs of developing Qt.
Read more…

84 Comments


Posted in Community, News, Qt

Qt Contributors’ Summit 2014 sum up

Published Saturday July 5th, 2014 | by

Lars opening speech

Lars making the opening speech

It’s almost a month since we gathered at the Estrel Conference Center to spend two days talking about Qt, where it is and where it’s heading.

The Summit started off with Lars Knoll giving the state of the project speech, which included status updates from various maintainers. The whole opening session can be watched on Youtube. One thing to raise from Lars’ speech is the need to unify Qt, to bring all Qt users closer to each other.

The two days contained over forty sessions on matters ranging from the use of box2d with QML to two sessions on QtCore. You can find many of the session notes from the Summit schedule page. And the more technical topics have threads on the Developer mailing list, which you can find from the list archives (search for threads marked QtCS).

Session ongoing

Over 40 sessions in two days

The weather in Berlin was exceptionally hot, bordering on uncomfortable outside. Luckily the conference center had good air conditioning. However during the evening event we could enjoy the warmth outside in the garden. The setting was very good for continuing the discussions that started during the day. The hardiest participants continued their discussion at the hotel lobby bar after the official evening event was closed.

Evening event

Evening event

A big part of events like the Contributors’ Summit are the coffee break and corridor discussions that take place in between sessions. The venue provided enough tables and a couple of good corners with benches to spend some time drafting the upcoming session agenda or working on the topics raised in previous sessions.

Showing app

Coffee break application demo

A big thank you to all the participants and of course to our sponsors!

Hope to see many of you at the Developer Days!

Comments Off


Posted in Community, Contributors, Events

Remember to register for a Qt Contributors’ Summit invite

Published Tuesday April 29th, 2014 | by

Hey,

Have you contributed to Qt in any way during the past year? Do you want to impact the future of Qt?

If yes, then it’s time to request an invite to Qt Contributors’ Summit.

The event will be in Berlin, June 10-11th. It’s a meeting for Qt contributors and developers. A time to look at where the project is and plan ahead for the future. A face to face meeting of the people who develop and design your favourite cross-platform toolkit.

To request an invite use this link.

See you in Berlin to talk about where Qt is heading!

Evening reception area

3 Comments


Posted in Community, Contributors, Events

Qt 5.2 Over 1 Million Downloads

Published Wednesday April 16th, 2014 | by

Congrats everyone! Since its release in December 2013, Qt 5.2 has been downloaded over 1 million times. That is pretty darn awesome with about 10K downloads ticking in daily. Nice! Thanks to all for your support in spreading the Qt love. Let’s keep it kicking. Qt 5.3 is just around the corner where we hope to convert even more devs to the Qt world.

This figure really shows Qt as a key player in the software development world with a strong community behind it. The opportunity with Qt for hobby developers and large enterprise projects is evident via our fast-growing ecosystem. Qt’s use in 70+ industries and the large amount of market-leading Qt-powered applications and devices has an even larger potential for monetization and other new opportunities for all of us. Thanks again for the support and keep the conversation going with us. Let us  know what we can do better or more of to spread the use of Qt everywhere.

We welcome your feedback!

P.S. Remember to take the 2014 7th Edition Developer Economics Survey and stand up for Qt (and maybe win some nice prizes while you are at it): http://www.vmob.me/DE3Q14Digia

And, if you are really into taking surveys, help Qt move up the ranks in the Research2Guidance Cross-Platform Tools survey: http://research2guidance.com/cross-platform-tool-benchmarking-2014-take-part-and-get-your-valuable-reward-right-after-the-survey/

/KB

12 Comments


Posted in Community, growth, Qt, Uncategorized

Clarifications to Qt Trademark Fair Use Policy

Published Tuesday March 18th, 2014 | by

The use of Qt is on an upward spiral and a great deal of activity is visible with hundreds of Qt-powered products on the market today, scores of Qt learning books and various global Qt activities taking place on a constant basis. We are grateful for the support with pushing Qt forward. In that respect, in order to make sure that the Qt brand is represented consistently and within the terms of the Qt fair use policy and the Qt Trademark policy, I would like to remind you of a few guidelines that need to be followed and clarify a few items to make sure your use of the Qt name and the logo is used correctly.

The use of Qt trademarks is governed by trademark policy, brand guidelines, and trademark license. These are created in order to keep the Qt brand consistent and protect it from misuse. We have recently noticed that in some cases people are not well aware what is allowed and what is prohibited by the trademark policy. We, therefore, would like to clarify the fair use policy a bit.
Read more…

9 Comments


Posted in Community, Licensing, Open Governance, Qt

Massive Start for Qt Mobile Roadshow

Published Friday January 31st, 2014 | by

As you know, together with the launch of Qt 5.2 where we introduced full support for Android and iOS we also put out a specially-tailored subscription-based offering that packages Qt for Android and iOS together with commercial licensing, add-ons and Qt Cloud Services: Qt Mobile. To spread the Qt Mobile love and to meet local developers face-to-face we launched the Qt Mobile Roadshow, a full-day developer event and tech training around the newest stuff on the mobile side of Qt. The locations for the roadshows are Tampere, Finland (we just concluded the sold out event on January 27th),  San Francisco (Feb 19th), London (Mar 11th) and Berlin (Mar 13th).

The agenda for the day includes:

•    Introduction to Qt Mobile, Qt Developer Offering for Mobile Platforms
•    Getting Started with Qt Mobile Programming using Qt Quick Controls
•    Qt on Android, Deploying to Devices and Google Play
•    Qt on iOS, Deploying to Devices and App Store
•    Introduction to Qt on Windows Phone and WinRT
•    Qt Cloud Services

Read more…

8 Comments


Posted in Android, Cloud, Community, cross-platform, Events, iOS, Mobile | Tags: , , , ,

Qt Contributors Summit 2013 – Please register

Published Tuesday May 14th, 2013 | by

Guggenheim mirror balls
Guggenheim mirror balls

Registration for the Qt Contributors Summit 2013 is now open.

Before going into details, I’ve added a photo of the The Guggenheim mirror balls right outside the famous Guggenheim Museum in Bilbao. It can symbolise how every Qt contributor is linked together, working on the same project, using the summit to reflect on how Qt can be developed even better. Ok, Knut, snap out of it. Over to the practicalities.

Qt Contributors Summit 2013 registration is easy. Just use the Qt CS registration form.

Since the Qt Contributors Summit is an invitation-only event, please make sure you fit into one or more of the following before registering:

  • You are a Qt Project maintainer
  • You are a Qt Project approver
  • You took part in the previous Summit (Attendees at Qt CS 2012)
  • You took a sponsorship package including event invitations (coming soon)
  • You are in the organization team.
  • You are invited by a maintainer or the organization team and we still have seats left.
  • KDE Akademy contributor

Please add sessions unconference style

Since the main idea for the Qt CS is to let developers meet and make solutions, now is the time to pre-schedule sessions on the Qt CS program wiki. Please press “Join group” at the top of the wiki-page. We will  give you wiki-access as soon as possible and add you to the group.

13 Comments


Posted in Community, Contributors, KDE

Qt-project.org under Open Governance

Published Thursday April 18th, 2013 | by

Right before Qt Developer Days in Berlin, November 2012, we began discussing with the qt-project.org moderators how to bring rest of the Qt Project into Open Governance. This includes the content management system, forums, wikis and so on – everything run as a real community-driven project, as the Qt development itself has been run since October 2011.

Open Governance structure

This figure shows the different roles in the Open Governance structure. A detailed explanation is found on the Web Open Governance page[1].

To make a proper plan, we’ve been running a series of structured IRC meetings, open for all, starting in December last year, continuing through February this year. As the meeting summaries show[2], we started the planning sessions with a discussion on the purpose of the Qt Project Web. Then we continued with discussion and investigation on how maintenance can be done, including co-development of the web content management system. Technical issues, such as improvement with single sign-on and improvements to the wiki-system were discussed. Privacy, internationalization and license issues have also been looked at.

Here are some key topics and actions crystallizing out of these meetings:

  • Single sign-on and a wiki which handles merges (not losing work) Enabling system rights for developing, testing and rolling out new features, including maintenance has to be established.
  • From a roles perspective: several new roles with extended rights are needed, especially giving more access to different admin rights as group management and access to specific web pages.
  • From a process perspective: lazy approval, task prioritization and a conflict resolution board, if needed, in case of (hopefully very few) unresolved conflicts.
  • Also the licensing issue was raised, making the Qt Project Web user agreement clearer, also including licensing to maintain privacy when doing system administration, testing, and development tasks on the site.

Next steps

We are now working on four parallel activities to make Open Governance happen.

  • For CMS development, we are on our way to implement a three-stage infrastructure with a development server and a staging server before production. Today, this is a two-stage setup. We want three stages, which allows the OS to be more flexible in doing the development.
  • We are working at implementing a new access-rights model to allow access to different parts of the CMS.
  • We have identified the need for a “system admin” agreement which is needed before granting extended group admin rights and giving access to fully developed new features, including editing web pages on the site. This agreement is designed to respect privacy laws and simplify the implementation of the planned staged development setup.
  • It seems like the biggest obstacle in the current system is the wiki lacking support for merges when co-writing. Also the single sign on has been identified as one of the key features requested. Given our limited resources, it might be best if these features were to be actively co-developed with Digia together with the community.

There are a couple of other things currently being worked on, such as cleaning up the CSS, simplifying the site navigation, removing old links, and a walk through of the old bugs in the bug-tracker. This work is currently under way.

Since these processes are being run in parallel with the upkeep and maintenance of qt-project.org site from day to day, it’s a little difficult to give an exact time span on when each step will be implemented. We will give progress updates on the Qt Project malinglist[3].

Please have a look at the references below for more information. We welcome your feedback.

1. http://qt-project.org/wiki/Qt_Project_Web_Open_Governance
2. http://qt-project.org/wiki/Qt_Project_Web_Meeting_Summary
3. http://lists.qt-project.org/mailman/listinfo/web

2 Comments


Posted in Background, Community, Contributors, cross-platform, Open Governance

First Ten Mirrors Active for Qt Project Downloads

Published Friday April 5th, 2013 | by

I am very pleased that we have already ten mirrors from three continents active for the new download service of the Qt Project, and more are on their way. With the new MirrorBrain based setup is it very easy to become a mirror for Qt – and even more importantly it is seamless for the user to benefit from the nearby mirrors.

We plan to use the new download.qt-project.org service starting from next week for the upcoming releases of Qt 5.0.2, Qt 5.1 Alpha and others. The old CDN service will be available as backup. When a release is made you can see it appear to qt-project.org/download page, so everything stays quite similar as before.

If needed, it is easy to see if the file you are planning to download has already been mirrored by viewing the details in conjunction of each file. The mirrors synchronize content with different schedule, so it takes a while for file to become available in all mirrors after it has been released. We are also looking into leveraging torrents as an additional way of downloading files.

For the commercial Qt licensees there are no changes, as the Customer Portal and distribution systems are separate from the open-source downloads.

I hope we continue to receive more mirrors for Qt Project in the coming weeks. If you are interested in mirroring Qt, see instructions how to become a mirror from the Qt Project wiki. Also, feel free to ask you local mirror providers to start mirroring Qt.

 

4 Comments


Posted in Community, Open Governance, Releases