Canonical and Shuttleworth add Qt to Ubuntu Linux

Canonical and Shuttleworth add Qt to Ubuntu Linux

Summary: Ubuntu has long been a stronghold for the GNOME Linux desktop, but now, besides changing to Unity, the distribution will be incorporating KDE's Qt libraries.


Want to start a fight in Linux desktop circles? Say, loudly and obnoxiously that Qt, the programming libraries behind the KDE desktop, are better than GTK+, the libraries backing GNOME. Or, vice-versa. Either will work. Now, though, Mark Shuttleworth, founder of Canonical, Ubuntu's corporate big brother, is bringing Qt software to Ubuntu, long a GNOME stronghold.

So far I haven't heard any shouting from the programmers' corner, but give it a minute.

Shuttleworth made the announcement writing, "As part of our planning for Natty+1 [Ubuntu 11.10], we'll need to find some space on the CD for Qt libraries, and we will evaluate applications developed with Qt for inclusion on the CD and default install of Ubuntu."

Why? Because, Shuttleworth explained, "Ease of use, and effective integration, are key values in our user experience. We care that the applications we choose are harmonious with one another and the system as a whole. Historically, that has meant that we've given very strong preference to applications written using Gtk, because a certain amount of harmony comes by default from the use of the same developer toolkit. That said, with OpenOffice and Firefox having been there from the start, Gtk is clearly not an absolute requirement. What I'm arguing now is that it's the values which are important, and the toolkit is only a means to that end. We should evaluate apps on the basis of how well they meet the requirement, not prejudice them on the basis of technical choices made by the developer."

Perhaps the Linux desktop developers are being quieter than in past Qt vs. GTK+ debate because some of them are still reeling from all the other recent changes in the Ubuntu desktop. First, Ubuntu announced it would be used its tablet-friendly Unity interface in place of GNOME 3.0 for its next release.

A few weeks later, Ubuntu's development team announced that they were dumping the decades-old X Windows System for Wayland, as the foundation for its graphical user interfaces (GUI). With all these changes, Ubuntu desktop developers might be feeling a little punch-drunk.

At least the ancient war about Qt not being open-source enough is dead now. As Shuttleworth pointed out, "Qt itself has been available under the GPL for a long time, and more recently became available under the LGPL."

Page 2: [Working on Qt/GTK+ co-operation] »

Working on Qt/GTK+ co-operation

That said, Shuttleworth knows that "System settings and prefs, however, have long been a cause of friction between Qt and Gtk. Integration with system settings and preferences is critical to the sense of an application "belonging" on the system. It affects the ability to manage that application using the same tools one uses to manage all the other applications, and the sorts of settings-and-preference experience that users can have with the app. This has traditionally been a problem with Qt/KDE applications on Ubuntu, because Gtk apps all use a centrally-manageable preferences store, and KDE apps do things differently."

Shuttleworth continued, "To address this, Canonical is driving the development of dconf [a low-level configuration system] bindings for Qt, so that it is possible to write a Qt app that uses the same settings framework as everything else in Ubuntu.

He then added, "The decision to be open to Qt is in no way a criticism of GNOME. It's a celebration of free software's diversity and complexity. Those values of ease of use and integration remain shared values with GNOME, and a great basis for collaboration with GNOME developers and project members. Perhaps GNOME itself will embrace Qt, perhaps not, but if it does then our willingness to blaze this trail would be a contribution in leadership. … Our work on design is centered around GNOME, with settings and preferences the current focus as we move to GNOME 3.0 and gtk3."

There are still many other questions to be answered, and Jono Bacon, the Ubuntu Community Manager, took a first stab at an Ubuntu Qt FAQ. First things first, Bacon said Ubuntu is not moving away from GNOME and GTK+, not is it moving to offering a KDE desktop.

So why are the Ubuntu developers doing this then? Bacon added to what Shuttleworth had already said, "Firstly, the Ubuntu project is working to ensure that Qt application developers can write apps which fit into the Ubuntu desktop smoothly. It is important that Ubuntu, as a platform, address the needs of developers, giving them as much flexibility as possible while retaining a coherent standard experience for users. Secondly, giving developers the extra toolkit option should mean we end up with better apps all round as the range of apps for assessment and inclusion will be wider. The key criteria for evaluation of any app for inclusion are independent of the actual toolkit. We won't ship an app by default that we don't think offers a great experience, not just on a standalone basis but as part of the whole system."

On top of the shift to Unity and Wayland, adding Qt is going to prove a big challenge for the Ubuntu team. While I like the idea a lot, I do worry that the Ubuntu developers may be biting off more than they can chew. Still, they've done well before and they are giving themselves until November 2011 to introduce Qt. I'll be watching closely to see how it all works out and I'm wishing them all the best in their efforts to make the possible Linux desktop.

Oh darn. I think I just heard a programming flame war starting in the distance. Well, hopefully it will go out shortly, and everyone can back to developing. There's not that much time left to November after all.

Topics: Software Development, Hardware, Linux, Open Source

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • What could be better? If we get good Qt integration with GNOME, we can

    finally forget KDE? Now that Nokia FINALLY changed the license for Qt to LGPL, no reason to not use it!
    • RE: Canonical and Shuttleworth add Qt to Ubuntu Linux

      @DonnieBoy <a href="">Pulauweb Web Hosting Murah Indonesia</a>
      <a href="">Blogger Nusantara Blogpreneur Indonesia</a>
  • Actually, come to think about it, maybe it would be good if BOTH

    GNOME and KDE went away, and we were left with tools to create lightweight desktops that integrated Gtk and Qt applications. What could be better?

    That seems the way that Ubuntu is headed.
    • gtk and qt combined nothing new

      @DonnieBoy nothing has ever stopped QT and GTK working on the same desktop.. as for lightweight desktops the fluxbox, blackbox, openbox e.t.c.. has been able to integrate features from both forever.. not sure about xfce.. it is a gtk based wm.. but that doesn't stop qt and gtk apps running on them... ... it's not neccesarily pretty but who cares if it works ..
      • Yes, but, if you read, they are working to make the configuration more

        seemless. I would like to see both GNOME and KDE fade away.
      • XFCE even offers to pre-load either/both for performance reasons

        @Aussie_linux_user - right in the XFCE settings dialogs, you can choose to preload both GTK+ and KDE (Qt) libs. I don't, because frankly I've never seen any pauses no matter what I'm opening (and I don't discriminate, I use the app I like most for a function independent of origin). Interestingly, even with both pre-loaded, the memory load for XFCE stays pretty low, a lot lower than straight GNOME or KDE.
    • RE: Canonical and Shuttleworth add Qt to Ubuntu Linux

      This is a huge mistake for Canonical: they need to give *more* direction to developers, not less. I'm not talking about removing choice. I'm saying that their new developer website (Why'd that take so long, BTW?) shouldn't offer seventeen choices of toolkit, IDE, and language to new Ubuntu devs -- Canonical should steer, just like Apple does for Xcode and ObjC, and MS does for the .NET languages and framework with Visual Studio. Right now, that toolkit is GTK+, the language is Python, and the IDE is ... they'd better get to work on that fast, but it should use Quickly, Bazaar, and Landscape like they've been married for ten years.

      I'm all for QT, but Canonical needs more focus.
    • test

      content deleted -- sorry
  • Meego is Qt. Meego is Wayland.

    Coincidence? Nope.<br>Shuttleworth is hedging his bets.<br>Pay closer attention to what Nokia and Intel are doing.<br>They are in it for keeps. And they are moving fast. Agile fast.
    Dietrich T. Schmitz, ~ Your Linux Advocate
  • great developement path

    i am an old winxp user and liked it. i testet ubuntu 8.1, 9.05 ,
    10.04 and now 10.10. i like the best when you instal ubuntu you are getting the complete package. no extra needed and all hardware exepted. i only use ubuntu now. Peter
  • Ubuntu downloaded now

    Now what ? It doesn't do anything ? What makes it come alive ?
    • RE: Canonical and Shuttleworth add Qt to Ubuntu Linux

      You might want to explain a little better what you are trying to achieve.
    • RE: Canonical and Shuttleworth add Qt to Ubuntu Linux

      @rlunderhill <br><br>That's because Linux isn't a Windows program that you install/run inside Windows, but rather, Linux is an operating system that you run instead of Windows, which you use to run Linux programs.<br><br>I think you need to do a little homework...
      • Acutally WUBI allows you to run Ubuntu from with in Windows and comes...


        ...from here:

        You can install Ubuntu as a Windows application, and then uninstall it if you don't like it without ever leaving Windows.
    • You probably downloaded the .iso

      @rlunderhill - that's the default. A .iso is an "image" of a CD ... you have to burn that image to a CD, then boot off the CD. Then, you'll be able to run Ubuntu off that CD if you want (e.g., to confirm it works with all your hardware), or install it to your hard drive., then scroll down to "Step 2" for more instructions.

      Welcome to Freedom!
    • RE: Canonical and Shuttleworth add Qt to Ubuntu Linux

      @rlunderhill did you install the Ubuntu from the iso download? You know that you have to burn it to a cd and then install it, as a separate operation.
      Tony T3
    • RE: Canonical and Shuttleworth add Qt to Ubuntu Linux

      @rlunderhill ...
      If you only have Windows, there's a free utility to burn .iso files to a CD or DVD. You can download it at

      I use Linux Mint (based on Ubuntu) and it will boot up in the Live mode allowing you to test it. If you click the install icon and follow the prompts, it will reduce the size of the existing Windows partition and install itself permanently in the remaining space. When you restart the computer, a menu will allow you to choose between Windows and Linux. You may want to review the manual (link below) for more detailed instructions.


      Linux Mint Main Website:

      <u>Linux Mint 10 OS download (free)</u>
      32 bit, CD .iso file
      32 bit, DVD .iso file
      64 bit. CD iso file
      64 bit, DVD .iso file

      Linux Mint 10 Manual (.pdf)
  • What about Kubuntu?

    I didn't get it. Ubuntu has always had a KDE version as Kubuntu. Does this mean that they are eventually going to merge?
    • RE: Canonical and Shuttleworth add Qt to Ubuntu Linux

      @goyta It just means that they are going to include Qt libraries on the install media, so that Qt applications can be on there too. Right now, the Qt application downloads a lot of libraries in order to install, and this can be annoying if you are on a slow data line. It also means that currently, Qt applications need to be installed after the system is first setup instead of as part of the initial install, but that can now change.
    • Qt and GTK

      @goyta It just means that they are going to include Qt libraries on the install media, so that Qt applications can be on there too. Right now, the Qt application downloads a lot of libraries in order to install, and this can be annoying if you are on a slow data line. It also means that currently, Qt applications need to be installed after the system is first setup instead of as part of the initial install, but that can now change.