Qt Offering Changes 2020
qt.io
qt.io
Other sites and organizations can compile and distribute the binaries.
KDE Free Qt Foundation -The KDE Free Qt Foundation is an organization with the purpose of securing the availability of the Qt toolkit https://kde.org/community/whatiskde/kdefreeqtfoundation.php
Imagine getting a phone call like, "Can we send our license specialist to your premises and conduct an audit of your code?".
Leveraging Qt code just went from an asset to a liability.
And really, ever since the Trolltech days, Qt was dragged into open source kicking and screaming.
Nokia introduced LGPL and open governance, simply because they were not interested in Qt as a commercial product, and The Qt Company is now trying to build a business around this. With huge companies like Tesla building their product around the free version of Qt without complying with the open source licenses, it is not that hard to see why they would look for ways to find out who their actual users are.
I really wouldn't expect that from an organization from Qt, however I /would/ expect a call like:
"Hey, congratulations on your launch! We noticed someone from your org downloaded source from us about 18 months ago. Mind if we discuss your licensing plans?"
So your company was previously violating the license and hoping nothing would happen? I certainly hope you don't randomly download code off the net just to do that.
You can not enforce login in for GPL / LGPL software distribution.
Meaning this is just probably that the "click/download" link for the binary official SDK on the official website will require registration, nothing else.
If it's really the case, they should be clearer in their explanations.
However as long as they use (L)GPL and don't play trademark games, they can't stop others from providing builds.
For such builds there is a question how trustworthy they are (afaik there are no reproducible builds for Qt) and how hard maintaining such builds is.
To their defense, very few organizations have reproducible build systems and when they have, it's not compatible with the package manager of the Linux distros anyway
Uh, what? I use programs like VLC and QbitTorrent which are built on Qt:
https://en.wikipedia.org/wiki/Qt_(software)#Applications_usi...
does that mean these require Qt registration by the end user?
If I install qt through a package manager, do I need to be registered or would the package maintainer need to be registered?
I didn't get that impression from linked Qt blog post. I parsed the blog post to mean any/all binaries built. Eg if you build your own binaries from the open source license, you can't distribute them without a commercial or distribution license. Likewise, you can't download Qt binaries without a Qt account. It effectively locks out anyone who's not a developer and doesn't want a Qt account but does want to install some pre-built open source software.
They can't add such limitations without modifying the open source license, which they aren't doing.
> The object code form of an Application may incorporate material from a header file that is part of the Library. You may convey such object code under terms of your choice, provided that, <...access to source code provisions...>
Given it is a known open-source license, (L)GPL, this restriction is obviously impossible.
It says if you want to install Qt binaries from Qt website. You can still distribute the binaries other means. For example from KDE.org https://kde.org/community/whatiskde/kdefreeqtfoundation.php
https://i.stack.imgur.com/sEDMC.png
End-users don't have to install the Qt SDK.
Notwithstanding what Qt offers in the embedded space, I think it's interesting to ask the question more seriously. For rich, cross-platform desktop applications, is a game engine a better choice than Qt?
Another good alternative would be JUCE. It's made for audio dev but it is crossplatform and has support for resolution independent UIs. It supports OpenGL and AFAIK Metal and Vulkan support are on the way.
Also Flutter will support desktop at some point.
Sciter (https://sciter.com) works on all desktops from the very beginning (10+ years already).
https://sciter.com/developers/sciter-docs/reactor-and-ssx/
Unless I'm missing something it only seems to support reactive local component state a la this.setState().
There's more to a good modern UI toolkit than just drawing the GUI, and I don't mean the utility libs that used to be important but honestly aren't anymore, but things that are part of UI/UX like accessibility and apropriate integration with OS features for it.
I imagine QT solves this as well but at $5000+ per developer per year it might make more sense to have 2 codebases with native UIs and shared code. I looked into that option recently and using Nim to transpile to C/C++ for the shared business logic/network/etc seemed like the best option.
The news about Qt unfortunately mean I have to consider whether to put effort into upgrading the toolkit I have to Qt5 (or wait for Qt6 but still have a sword of damocles over me) :/
Read the title and thought "perhaps this is time to explore more into Qt, beyond the classic Qt widgets...". Read the news - "no, this seems more like time to forget about Qt altogether and explore the alternatives".
If you don't mind using other languages, IMO LCL/Lazarus is superior to pretty much every other toolkit, including Qt.
Note that the above are for making desktop applications, not mobile applications nor anything relevant outside of the GUI side of a desktop application.
Anyway, not to be nitpicky or anything, but there is a typo on "feedback we can get _form_ the community" - otherwise I think it's actually positive to offer point releases on a periodic basis.
It might have been a good business decision to get more support, or to use some non GPL components, but I can't help to think that the not so friendly push from the QT rep was also a reason...
So I got the feeling this is just another step in that same direction.
Do you mean they weren't compliant with the open source license, or that the rep sold the commercial support?
It is a bit strange that QT can at the same time boast about its open source roots, but in practice, discouraging its corporate users to use that license, which is understandable from a business perspective.
Talking to a sales rep isn't always a bad thing. Sometimes they let you know interesting things that are for offer you didn't know about, but would have bought if you did (or can give you trials of things you've been interested in but unwilling to pull the trigger on because you weren't sure how it would work).
https://lists.qt-project.org/pipermail/development/2020-Janu...
Hopefully this doesn't include redistributed binaries. I really do like KDE.
From the post. Once you download + rebuild, your binaries built from the OSS version can't have additional restrictions, otherwise they cease to be true GPL ...
With all the threats and restrictions and enterprise pricing for commercial licenses, it looks like Qt is heading towards Delphi levels of irrellevance.
"CopperSpice is a set of individual libraries which can be used to develop cross platform software applications in C++. It is a totally open source project released under the LGPL V2.1 license and was initially derived from the Qt framework. Over the last several years CopperSpice has completely diverged, with a goal of providing a first class GUI library to unite the C++ community."
Farewell, Qt.
What would be funny though if someone would setup a CI for Qt/QtCreator and distribute the binaries via a custom version of their open source installer framework (which is basically the maintenance tool). So just like before. When enough people switch to this tool maybe the qt company would stop forcing logins.
Actually this reminds me how Oracle started distributing JRE through proprietary terms for non-personal use. It led to people creating third party GPL builds. Now they can't even bundle the ask! toolbar any more because people use a different installer :).
QT is finally understanding their pricing was totally wrong.
So basically if you're a one man shop it's an improvement I guess?
https://mb.cision.com/Main/14183/2742082/991814.pdf (host blocked by uBlock for me)
Basically if I'm a hardware company A, and I want to build a device that uses Qt5, originally I would buy a commercial license up-front for like 5 figures. If I'm building this product using my own personal funds and not VC-funding then this represents a huge outlay to get commercial support. What this $500 fee does is allows me to do commercial-licensed development out of the gate but without any support resources beyond installation(which was easy). Then, when I start doing design verification and am fixing bugs in the product I can start paying for a full commercial license and get support if I discover an issue with the graphics engine.
Getting Qt up and running can be difficult if you've never done any open-source or Linux development before. And for some systems, having installation support is paramount because the build systems are not tightly integrated with Qt's build system(EG QNX). So it can ease some difficulties in using Qt.
I think this is a pretty good offering for a niche of users who would otherwise avoid all the GPLv3 code and stick to Qt core, develop alternatives to all the good Qt modules like the virtual keyboards and stuff, and then determine they don't need to pay for a full commercial license once they get up and running. This provides an alternative path for those users where they can feel comfortable just using Qt's version of certain things. And it's probably a big win for them.
What do they mean, no distribution licenses? For 500/year I can develop but not sell? :)
It seems... eccentric... to make a public announcement of the price of a new licence, then mention that in order to actually use it you'll need to buy another licence as well whose price you aren't publishing.
So does this whole topic apply only to embedded systems then? I am a Qt developer who has bought Qt licences in the distant past, but I know nothing about embedded systems, so that would explain why we seem to be talking at cross purposes as well as why I found the original post so puzzling.
For desktop & mobile applications, I can go to qt.io, ask to buy a Qt licence, and be quoted straight away a per-developer annual fee with no reference to any separate distribution licence. What I'm wondering is whether this will also be the case for the new micro-business tier, or whether it introduces some requirement for a separate distribution licence that the normal application development licence does not have.
Edit: I see now that I have completely mis-read the original post. It says that the micro-business tier offers a licence for "Qt for Device Creation", not for Qt in general. So it probably isn't available at all for desktop & mobile applications. I'm sorry for wasting your time.
It seems like this license is maybe ideal for a small company that wants commercially-supported Qt to use while developing a product prior to selling it?
That seems like a fairly small niche to target, but presumably they're making this change based on actual usage data and not just conjuring it out of thin air.
It is quite annoying to get these thinly-veiled pseudo-reasons for forcing people to login to get the download. Surely they just want to know names and affiliations of who downloads their open source versions.
That's understandable from a business perspective, but then please don't put some bullshit there about needing to register at download time to do code reviews and contribution.
It's my understanding that Qt had subscription based model for a long time. Commercial Licenses are sold for time and developer seat.
"It also allows us to initiate a dialogue with commercial companies who mostly work with open-source versions of Qt."
Open source is free lunch. You pay for it by engaging with the community. So requiring nothing except a login for binaries, which does come at an actual cost for the company providing them, is a pretty fair deal.
With regards to LTS binaries, it is unfortunate, but we’ll still be able to grab sources from Git and (hopefully) their download site to rebuild patch versions from source.
The other note that sticks out is the cheaper license for the Device Creation kit. This is for embedded systems, not general applications which I haven’t seen anyone mention.
I think this actually applies to LTS sources as well, which is even more unfortunate. Though, their response to this question on the mailing list was rather unclear.
Source is available.
https://news.ycombinator.com/item?id=22161633
But maybe that's more as Suse is to RedHat than CentOS is to RedHat..
I've used Qt in professional environments with commercial licensing at previous gigs. I'd considered using Qt for personal projects using their open source licensing. But this is a killer requirement. Goodbye, Qt.
"Download the open source version if you're sure you can comply with the LGPL" is just a threat, pure and simple.
Thus, I wouldn't touch Qt in a commercial venture that is too small to have full time legal counsel on hand.
5500/year/developer is significant just about everywhere outside Silicon Valley.
[Editing comment because we're over HN's threading limits] @avamander:
But who decides that I've complied with the LGPL? Do you think it's as simple as dynamically linking with their provided binaries and making public any patches to Qt? I don't think so. It smells to me that if they decide you owe them money, there'll be a lawsuit coming.
Additionally, trying to compile the project from source is extremely painful compared to most projects: it's not really possible in any obvious way to duplicate the output of the binary distribution without looking at the guts of Qt's continuous integration environment for weeks on end.
"All you freeloaders will become the test monkeys for our actual paying customers" :)
I don't know this business terminology.
What a badass move
Also, are you talking about https://github.com/bincrafters/conan-qt or anything else?