Trolltech, creators of the excellent cross-platform GUI library Qt on which KDE is based, announced today a new license for Qt/Windows. Called the Qt Non Commercial license version 1.0, it permits developers of non-commerical software to develop with and distribute the Windows version of Qt for free. The Qt Non Commercial Edition for Microsoft Windows is a binary-only distribution and requires Microsoft Visual Studio version 6 (download, FAQ).
Excellent news, but when will we see kdelibs and Konqueror for Windows?

Actually, if you read the faq, trolltech specifically says that the NonCommercial license they are using is incompatible with the GPL, so anything in kde that has gpl code in it cannot use this... which is sad.

In the end, the only way to wrest control of the desktop from Microsoft is to produce GPL applications for their desktop. It's easy for Windows users to convert to GPL applications slowly over time. Once all of their critical applications have been replaced with GPL versions, swapping the operating system out from underneath them will be painless.

I love KDE, but if anyone is going to break Microsoft's monopoly, I think it's going to be Sun's OpenOffice.

>I think it's going to be Sun's OpenOffice.
I hope not, at least not going at it's current state and path. It's a powerful, very mature suite (iirc 6 years in the running), but its very, very bloated. On my machine, opening MS-Word takes about 5 seconds, where as starting the latest stable build (i.e. StarOffice 5.1a-something) takes about 45 seconds! Most of the bloat is due to the fact that StarOffice decided it would be fun to make their own widget set, printing libs, font loader, staticly built OpenGL port, etc.

Not to be negative, but I don't think it has much of a chance unless much the guys at Sun manage to wean OpenOffice off it's little statically built cornucopia and onto something more likely to already be loaded at login/boot-up time (even if that be GTK+/GNOME)

> Not to be negative, but I don't think it has
> much of a chance unless much the guys at Sun
> manage to wean OpenOffice off it's little
> statically built cornucopia

I'm not suggesting that OpenOffice is the better
technical solution. Its their evolution strategy
that is superior, and actually stands a chance
in corporate America of taking desktop share
away from MS.

KDE's proposition: switch your OS and all of
your apps simultaneously, deal with all the
training and support issues for the whole thing
at the same time.

OpenOffice's proposition: slowly replace one
application at a time, until all of your
applications are non-MS, then painlessly swap
operating systems later.

The only way that KDE (or GNOME) is going to
take the desktop market in America is if:
- Europe and/or Asia standardize on it
- that forces Microsoft to develop compatible
file formats so that international firms
can communicate.
- once the office monopoly is broken, American
firms move to open-source to decrease costs

That might actually happen if European gov'ts
decide to standardize on open-source, which a
lot of them seem to be seriously considering.

<"OpenOffice's proposition: slowly replace one application at a time, until all of your applications are non-MS, then painlessly swap operating systems later.">

This is exactly what this QT release might help KDE do. You could run Konqueror or KWord under Windows, then switch the OS and DE to Linux/KDE later. If only all of KDE was LGPL! For a project as large as KDE, re-licensing is really unfeasable.

>The only way that KDE (or GNOME) is going to take the desktop market in America is...

I believe that you may be missing the point of Open Source. KDE is not a business or a corporation, and the whole concept of market share isn't applicable. Sure, KDE developers love it when KDE is used by users and by other developers, but unlike a business, KDE has a major advantage : it's progress does not depend that it be used by a certain amount of people.

KDE's continued existence depends totally on whether or not the developers continue to work on it, and this will continue even if the developers themselves are the majority of the people using it! The primary reason that open-source software will (IMHO) almost totally replace commercial software in non-specialized fields is because the developers of Open Source have as much time as they feel like to work on it, since marketing is (rightly so) almost non-existant.

This is the way capitalism is designed to work, that is, a product will make it or not depending almost entirely on it's quality. Microsoft and (to a lesser degree) Sun are more concerned over whether or not their customers _think_ the product is of high quality, then whether or not it actually is.

For instance, for all of M$'s raving over how Win2k no longer has DOS, this "feature" is in fact a detriment! With a minor amount of registry editing, you can discover that in fact the OS still depends on and can boot into a version of DOS, but now it is almost impossible for the average user to get at it, even if only to run some classic games or for emergency purposes.

This is why I don't think OpenOffice will last for the long haul. You said yourself that :

>I'm not suggesting that OpenOffice is the better
technical solution

In Open Source development, what else _is_ there but the quality of the software?

Yeah, but I guess it'd be easier to run KDE/Qt "natively" then via the Cygwin/XFree layers. At least it's another option though. The devil is always in the details, and it's those details that are gonna get discussed a lot in the next couple of days/weeks :-)

No it isn't. Cygwin is an excellent posix layer and because of kde is build basically on unix systems there are only minor changes like missing header and so one. The most problem currently is caused by limitations of the linker, which has to be solved for porting kde2. Additional the xfree-server has made no problem on porting.
On the http://kde-cygwin.sf.net discussion faq/discussion forum there are some topice relating for native porting kde/qt.
As summary 1) qt isn't a problem, if a developer with good windows api/gui knowledge does this task and 2) an emulation layer for the x dependent kde stuff will be created. On the above website there are links (ntxlib) showing an initial lib for that.

I've never seen any pro-GNOME trolls at dot.kde.org, but there are lots and lots of pro-KDE trolls at Gnotices.
But remember that those trolls do not represent GNOME or KDE.
They represent the pro-M$/Slashbot/UltraFlamers community.

This is great news... I'm sure it will help Qt and KDE both get more acceptance...

I wonder what the reason was for this move though. I think it's probably because Troll knew that anyone could take Qt free edition for X and port it to Windows, so they would rather have an official version instead of a rogue version out there.

I haven't read the license yet but I think someone posted that the license was more restrictive than the Qt free edition for X?

If that is so, they probably looked at their options (eventual free Qt for Windows with less restrictive license, or free Qt for Windows now with a license of their choice) and though the second option was better.

I think, like many others that this is a good step.
maybee one day, Micro$oft will open source windows(never.. they are too greedy.)
Perhaps this will make it easier to port software from KDE to windows, and make it easier for windows users to adapt to KDE (I hope we can still change the shell in windoze.. dont use it. hehe)
this is the result of a lot of hard work. I am grateful for the work of developers all over the world making things happen. just my 2 cents :)

It is possible to change shells under Windows. With Win9x it is a simple matter of changing a line in system.ini (the same way you did in Win 3.x). In Win NT/2000 it's more of a registry change for your profile, but still can be done.

Look at http://floach.pimpin.net for an idea of what replacement shells are already available. Of course, KDE & Gnome as WinShells would be *really* subversive .

This is great. I would love to have Konqi in Windows for those times I must be in Windows (i.e. like right now ). At least I wouldn't feel so far from "home" if I had my favorite "furniture." ;-)

I might add this should also really increase exposure of QT to Windows developers, which means when they have to do a Linux programming project - they may very well choose QT over GTK, Motif/Lesstif, etc.

Or even better - I'm not a programmer, but from what I've heard, QT is orders of magnitude nicer to code for than MFC. This may hopefully mean that more Windows developers (who wouldn't have even thought about *nix) writing their apps with QT instead of MFC. If this happens, then it's extremely easy for someone to port their app to Linux, BSD, MacOSX etc. etc. etc.

>Thank you so much, Trolltech. I just wonder, might Cygwin be one of the supported compilers in the future?

>The only issue right now is that one has to possess Visual C++, which is quite expensive.

I kind of doubt that one is specifically locked into using Visual C++ with Qt NC for Win32. Just a little bit of Cygwin linker time and/or wizardy would probably allow the compilation of Qt NC apps with Cygwin's gcc.

Microsoft just changed their developer licenses for all "Visual XYZ" products and libraries etc etc, so that you MAY NOT DEVELOP FREE SOFTWARE with Microsoft products. See http://www.theregister.co.uk/content/4/19953.html for more details. Here's an except:

"(c) Open Source. Recipient's license rights to the Software are conditioned upon Recipient (i) not distributing such Software, in whole or in part, in conjunction with Potentially Viral Software (as defined below); and (ii) not using Potentially Viral Software (e.g. tools) to develop Recipient software which includes the Software, in whole or in part.

...For purposes of the foregoing, "Potentially Viral Software" means software which is licensed pursuant to terms that: (x) create, or purport to create, obligations for Microsoft with respect to the Software or (y) grant, or purport to grant, to any third party any rights to or immunities under Microsoft's intellectual property or proprietary rights in the Software.

This might just be the end of Qt on Windows, if it NEEDS Visual C++. You can either develop proprietary software (and then you must pay for Qt as well!) or you switch to Unix altogether (doesn't need to be Linux).

Hrm, I didn't follow your links, but if what you say is true you can just use a different compiler. I have only used Qt/Windows with MS Visual C++, but I have heard it works with cygwin, and I think Trolltech even mentions compatibility with Borland on their website.

Now, the non-commercial Qt/Windows is for VC only right now, but that's probably because it keeps the maintainence down. I see no reason why Trolltech couldn't make a build for use with other compilers. If this is truly an issue I'm sure they'll do it.

I think that linking programs written for the Qt libraries to the new Trolltech no charge licensed win32 libraries should be no problem.

If I write a GPL program using a non-GPL library, for example using Qt/win32 or Motif, I implicitly allow people to link my program to this library. I don't see why it would/should be forbidden to do this. If I want write a Motif application because, for example, I know the API better than of another toolkit, but I'm also a strong GPL advocate, why should I not be allowed to release it under the GPL and make my code available for reuse in other GPL programs?

And if I've got an application using the Qt toolkit, I don't see why I can't link it to the non free win32 version of Qt. As long as this library does the same as the linux version and only has a different underlying system API it's no threath to the freedom of this program. It even enlarges this freedom by allowing people to run it on even more systems!

Lawyers don't care about little things like "intent" or "fairness" when it comes to contracts like the GPL. All that matters is the exact wording of the contract itself. The GPL prohibits distribution of the program without complete source code available for all parts of it, and when QT is distributed along with KDE, it is part of KDE (using the strict definition provided in the GPL itself).

However, as Dre argued very convincingly farther up the page, if QT is distributed seperately from KDE, it is considered a seperate program and is not required to have source code available. Therefore someone wanting to distribute KDE on Windows must simply distribute QT in a package that doesn't have any GPL'd parts of KDE in it.

That's not hard to do; since all of kdelibs is LGPL'd, QT could simply be included there. Problem solved!

Besides, I find it highly unlikely that any KDE developers are going to start sueing people distributing KDE for Windows. If no one sues, no one _gets_ sued, even if it is illegal. Problem solved again!

Looks like the way is clear for people wanting to port KDE to Windows. Now all someone needs to do is *do* it...

I think you can "pull a Linus" and say that your program is GPL, but you allow linking to the non-commercial Qt. In this case you'd have a sort of modified-GPL.

Of course, this only works if every developer in the project agrees on this. I plan to do that with one of my own projects since I'm the only developer. Changing the license of a collaberative work like KWord would be more tricky. But if its one of your own personal apps, I see no reason why you couldn't just release under GPL-with-one-exception.

-----
If you wish to port one of the many GPL'd Qt-based Unix applications to another operating system using the Qt non-commercial edition, you need to get that application's copyright holders to add an exception to its license. Similarly, if you develop a new application with the Qt non-commercial edition and wish to license it under the GPL you may wish to add such an exception to your license. The Free Software Foundation has provided the following wording for such exceptions:

As a special exception, gives permission to link this program with Qt non-commercial edition, and distribute the resulting executable, without including the source code for the Qt non-commercial edition in the source distribution.
-----

Hi there,
I am just wondering where the project file (.pro), stated in the readme.txt, can be found after project generation? I found only the MSVC++ Project workspace and the msvc++ project .dsp file.

If you generated your project using the integration plugin then a .pro file is not generated for you.

The example that is stated is based on the hello world example in the package (%QTDIR%\examples\hello) and is for if you build your applications without using the integration plugin.

If you really need a .pro file, then you will have to create this manually. You might find that this is easily done by typing progen > project.pro in the directory with your source as this will create a .pro and include any cpp/header and ui files.

Well, I was going to say I don't really consider $100 that expensive, which about how much you'll find Microsoft Visual C++ 6.0 Standard for. It's like $92 at Amazon. But reading the page at Trolltech it says "requiring Microsoft Visual Studio version 6". Now *that* would be expensive. Why the need for Visual Studio instead of just Visual C++?

Its seems Trolltech is mostly using the compiler for VC++? You can use what ever editor you want. It seems that Qt Designer would take care of whatever 'visual' uses VC++ would have. Which means that you're mostly using VC++ for it's compiling/debugging features. Which of course begs the qustion why use VC++? There's plenty of other compilers and debugers out there. Oh well.

I'm begining to think people in Trolltech are so stupid as people in Micro$oft: they release a package to develop *ONLY* free software, but to be developed with a very expensive compiler owned by an anti-free-software company that imposes serious restrictions to free sofware development. Sincerly I can't understand it, there is a big bunch of great free C/C++ compiler for Windows (Borland command-line tools, MingWin, CygWin, RSXNT, ...)(without talk about other OO free compiled or interpreted languages).

There is no need to enrich the Windows enviroment with such a good product and keep supporting this non-free products.Whoever wants to program GUI applications in M$-Win can do it with MFC . Open Source and Free Software must be distributed only to those who respect and support the Open Source Software idea and not to all those who keep using products hostile to Linux and open source , products .
Everyone make his choice . Isn't he ?

If I want to write an application I want to make it available to as many people as possible. I choose Linux to do development *but* it has to be said that a lot of people do use Windows. Why should Windows users be denied the advantages of free and open-source software?

And why should I use MFC? From what I've seen of it, it sucks, it's horrendously complicated and unstructured, the Fortran of gui toolkits. I'd far prefer use something like Qt or FOX (another cross platform toolkit).