Qt apps on Ubuntu

Tuesday, January 18th, 2011

As part of our planning for Natty+1, 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.

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.

In evaluating an app for the Ubuntu default install, we should ask:

* is it free software?
* is it best-in-class?
* does it integrate with the system settings and preferences?
* does it integrate with other applications?
* is it accessible to people who cannot use a mouse, or keyboard?
* does it look and feel consistent with the rest of the system?

Of course, the developer’s choice of Qt has no influence on the first two. Qt itself has been available under the GPL for a long time, and more recently became available under the LGPL. And there’s plenty of best-in-class software written with Qt, it’s a very capable toolkit.

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.

To address this, Canonical is driving the development of dconf bindings for Qt, so that it is possible to write a Qt app that uses the same settings framework as everything else in Ubuntu. We’ve contracted with Ryan Lortie, who obviously knows dconf very well, and he’ll work with some folks at Canonical who have been using Qt for custom development work for customers. We’re confident the result will be natural for Qt developers, and a complete expression of dconf’s semantics and style.

The Qt team have long worked well in the broader Ubuntu community – we have great Qt representation at UDS every six months, the Kubuntu team have deep experience and interest in Qt packaging and maintenance, there is lots of good technical exchange between Qt upstream and various parts of the Ubuntu community, including Canonical. For example, Qt folks are working to integrate uTouch.

I’d draw a distinction between “Qt” and “KDE” in the obvious places. A KDE app doesn’t know anything about the dconf system configuration, and can’t easily integrate with the Ubuntu desktop as a result. So we’re not going to be proposing Amarok to replace Banshee any time soon! But I think it’s entirely plausible that dconf, once it has great Qt bindings, be considered by the KDE community. There are better people to lead that conversation if they want, so I’ll not push the idea further here :-). Nevertheless, should a KDE app learn to talk dconf in addition to the standard KDE mechanisms, which should be straightforward, it would be a candidate for the Ubuntu default install.

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. It’s much easier to make a vibrant ecosystem if you accept a certain amount of divergence from the canonical way, so to speak 😉 Our work on design is centered around GNOME, with settings and preferences the current focus as we move to GNOME 3.0 and gtk3.

Of course, this is a perfect opportunity for those who would poke fun at that relationship to do so, but in my view what matters most is the solid relationship we have with people who actually write applications under the GNOME banner. We want to be the very best way to make the hard work of those free software developers *matter*, by which we mean, the best way to ensure it makes a real difference in millions of lives every day, and the best way to connect them to their users.

To the good folks at Trolltech, now Nokia, who have made Qt a great toolkit – thank you. To developers who wish to use it and be part of the Ubuntu experience – welcome.

183 Responses to “Qt apps on Ubuntu”

  1. Qt in the land of Gnome-based desktops: The issue of copyright in Free software « Notes from the mousepad Says:

    […] GNOME, Qt | Jan 23rd, 2011 | No Comments » Recently Mark Shuttleworth wrote about how Qt will become part of the Ubuntu 11.10 desktop, and that Qt-based apps will eventually be considered as possible default Ubuntu apps. Obviously, […]

  2. News of ‘Natty Narwhal’ Previews What’s Next For Ubuntu (PC World) | Websbay Says:

    […] it’s been the subject of some debate, there’s also been word that wrote on his blog. “We should evaluate apps on the basis of how well they meet the requirement, not prejudice […]

  3. News of ‘Natty Narwhal’ Preview What’s Next For Ubuntu (PC World) | Websbay Says:

    […] it’s been the subject of some debate, there’s also been word that wrote on his blog. “We should evaluate apps on the basis of how well they meet the requirement, not prejudice […]

  4. With Ubuntu’s shift to Qt in 11.10, an attack on the mobile sector must be imminent | Self Hosted WordPress Blog Says:

    […] come the end of 2011, is to become a standard component of Ubuntu 11.10. Ubuntu currently, and in the upcoming 11.04 Natty Narwhal distribution, uses Gtk+, a competing […]

  5. With Ubuntu’s shift to Qt in 11.10, an attack on the mobile sector must be imminent | Rott Weilers and Everything Else Says:

    […] come the end of 2011, is to become a standard component of Ubuntu 11.10. Ubuntu currently, and in the upcoming 11.04 Natty Narwhal distribution, uses Gtk+, a competing […]

  6. Shuttleworth: pensiamo a Qt su Ubuntu | oneOpenSource Says:

    […] di stupire qualche utente/sviluppatore: il patron di Ubuntu ha infatti dichiarato di voler includere le librerie Qt nelle prossime versioni di […]

  7. capt jack harkness Says:

    >All I know is Gnome and GTK apps look a hell of a lot nicer than KDE and Qt apps.

    I would love just once for a discussion not to devolve in the childish ‘my desktop is the bestest’.
    If your personal taste is to be used as a barometer, then fine, we will all agree with you since that’s all you know. Quick now… which should we like more? Vanilla or chocolate ice cream?

    The Qt move is the right one. I know that some of the diehard fanatics who started GNOME because KDE wasnt free enough will have fits but it really is a fine tool that is always moving ahead. Its importance in mobile is a great plus.

    I do agree with A.Seigo that the Ubuntu way of going about this is all wrong.
    Im a bit lazy so I will copy and paste from his blog that someone kindly posted in the comments here:

    “To get applications working together as well as possible, the answer is not to start creating Ubuntu-targeted versions of Qt apps, but to work on the issues below the application developer’s line of sight. If settings are an issue, then there are two avenues that should be pursued: identification of which settings ought to be widely shared and identification of management processes that ought to be shared. The former can be approached through standardization if nothing else, and the latter is probably a technology problem.

    Solving this means working together, not thinking that we are individually capable of coming up with the best ideas ever and that the world should simply bend to our whim of the day. That is a strategy fraught with risk and is socially unrealistic given the number of stakeholders.”

    I would have hoped that Mark would have talked to the Qt people before he made his final decision.

    He took the right decision but will go on implementing it the wrong way and all of free software loses.

    Then again, many of us devs are trying so hard to cross the artificial bridges that are created in FLOSS, and instead we have to fight agaisnt the Androidization of the desktop.

  8. With Ubuntu’s shift to Qt in 11.10, an attack on the mobile sector must be imminent | 0845numbersonline.com Says:

    […] come the end of 2011, is to become a standard component of Ubuntu 11.10. Ubuntu currently, and in the upcoming 11.04 Natty Narwhal distribution, uses Gtk+, a competing […]

  9. With Ubuntu’s shift to Qt in 11.10, an attack on the mobile sector must be imminent | Funk Sites Says:

    […] come the end of 2011, is to become a standard component of Ubuntu 11.10. Ubuntu currently, and in the upcoming 11.04 Natty Narwhal distribution, uses Gtk+, a competing […]

  10. Ubuntu vil implementerer Qt-apps i default-install | Techblog Says:

    […] Efter flere år med fokus på udelukkende på GTK+ og GNOME har Ubuntu endelig meldt ud at de vil begynde at supporterer Qt-applikationer i deres default-installation. Mark Shuttleworth meddelte denne ændring på sin blog i dag. […]

  11. Brett Alton Says:

    Hey Mark, do you think you could add the Disqus plugin for your comments on this blog? It allows user to “vote up” comments they like and sort comments based on votes, popularity, lack of popularity, etc. and generally makes users feel more involved. Not a spokesperson, just a guy who enjoys using it on other sites and my own blog.

  12. my disposition depends Says:

    @ tyler
    I think it’s quite reasonable to be offended at how your post was formatted. It’s a personal blog and consideration of ones thoughts is expected and deserved. To just write fail, etc., while acceptable other places, simply isn’t respectful on a blog. As for striking a nerve, I expect you really haven’t. You have, however, shed light on something…

    “but in my view what matters most is the solid relationship we have with people who actually write applications under the GNOME banner”
    “that distinguishes vulgar tourists from those who participate in open source to make it better”
    and, how it’s interpreted, “”Hope this does not start another religious war. ”

    …that some watching closely have suspected for some time now. Personally, I’m still waiting to hear about some watery tart who throws swords at chairmen 😉 Unfortunately, because of an unconsidered attack, you have only served as ‘justification’ to further invalidate the voices of those who would see Free and open source software in a different context than canonical set forth by the “leading distribution”. Please, for the sake of everyone, be more considerate in the future 🙂

  13. Canonical to support Qt in Ubuntu | Maemo Nokia N900 Says:

    […] Mark Shuttleworth has announced that Qt libraries will ship in the Ubuntu 11.10 CD. Ubuntu has always been a GTK based Linux VN:F […]

  14. Qt, quando programmare è cute | Mobiquity Says:

    […] la prossima versione di Ubuntu, la diffusa distribuzione Gnu-Linux legata a Gnome, la proporrà di default. Così facendo abiliterà la creazione di applicazioni facilmente utilizzabili in piattaforma […]

  15. Ubuntu Might Ship With Qt Libraries | Dharmesh Patel Says:

    […] [Source : Mark Shuttleworth] […]

  16. Easy cross platform dev Says:

    […] Gnome is becoming a primary development target of this framework. The recent decision to include Qt on the next release of Ubuntu along with the desire to develop solid Gnome bindings for Qt, sure indicates that Qt ubiquity in […]

  17. Qt dans Ubuntu ! Des morts à venir ? « Florent Gallaire's Blog Says:

    […] 18 janvier c’est Mark Shuttleworth en personne qui annonçait que de la place sera réservée pour Qt sur le CD de Natty+1, c’est-à-dire Ubuntu 11.10, et que toute application se basant dessus se trouvait donc […]

  18. Episode 11: ’cause you can’t build Ubuntu without some Python « Lococast.net Says:

    […] Shuttleworth – QT apps in ubuntu […]

  19. Gerola Says:

    Dear Mark,

    I’m trying to understand the new window of Ubuntu 11-4. Its really very hard to lis with it. No doubt the gnome is easier. If I’m wrong or someting else tell what I can do.
    Just to say I love Ubuntu from the first edition!
    Best regards!
    Gerola

    (Co-author book Manual do Linux Red Hat 9.0 (Fedora)
    PS. As you can see I change my mind from Red hat to Ubuntu!!!

  20. Alejandro Nova Says:

    @tyler
    If you are using Ubuntu, install qt4-qtconfig (sudo apt-get install qt4-qtconfig), and, under GNOME, press Alt+F2 and run “qtconfig”. You’ll get a dialog box. Where it says “Select GUI Style” choose “GTK+ Style”.

    Now your Qt apps will mimic perfectly your GTK+ settings, your GTK+ engine, and your theme, and they will be as ugly (or beautiful, if you prefer) as your GNOME desktop.

    About functionality… I can say exactly the opposite. Where was the ability to switch colors in GNOME before GNOME 2.18? And where is the ability of GNOME to fully mimic a KDE theme, just like Qt does?

  21. Ubuntu to open up to Qt toolkit | I Bleed Bits - Technology for Addicts Says:

    […] Canonical and the Ubuntu Project. Shuttleworth announced the decision on his blog on Tuesday, noting that, following the Linux platform’s Natty Narwhal release, the company will need to […]

  22. skierpage Says:

    “I read your post and typed a quick reply (maybe 10 seconds).”

    And there’s the problem. A poorly-written, unthinking post on the ‘net saves YOUR oh-so-precious time, but wastes the time of a thousand or more readers. It’s a staggeringly selfish and inconsiderate thing to do. The rule is: if you wouldn’t stand in line for your turn at the microphone to say the same piece in front of a similar-sized audience, then don’t do it in cyberspace.

  23. Andy Jackson Says:

    QT means many new apps & easy dev of features with high performance. Replacing worse GTK apps means better use of developer time. This accelerates Open Source’s improvement.

  24. redbeetles Says:

    Off topic: Hi Mark, i think you should give the unity launcher a name like you have named the unity application/file place as “Dash”. There are many suitable and great name for the unity launcher such as, “Counter”, “Trunk”, “Desklaunch” or “Sidetap”…

  25. leoplan2 Says:

    I think Canonical should take care of Qt development, in case Nokia stops developing it. It may happen…

  26. Ubuntu Linux Getting Qt Toolkit | I Bleed Bits - Technology for Addicts Says:

    […] of the Linux distribution, said Mark Shuttleworth, founder of Canonical, in a blog on Tuesday. the announcement does not include Ubuntu 11.04 […]

  27. marcell Says:

    after the disaster elop just did i think it would be great if all of the angry qt devs will gather again in some serious fork.

  28. Enzam Says:

    Hi, have you heard about the Nokia news? How it affects Ubuntu now?

  29. Roberto Bonacina Says:

    Mark,
    what do you think about the recent Nokia/Microsoft alliance? What about the future of QT, in general and for Ubuntu?

    Bye,
    Roberto

  30. Satchi Says:

    So, are there still plans to ship QT with Ubuntu now that Nokia seems to have no long term business plans involving it?

  31. Ubuntu opens up to Qt toolkit | Business News- Market News- tweets Says:

    […] Shuttleworth announced the decision on his blog yesterday, noting that, following the Linux platform’s Natty Narwhal release, the company will need to assess the benefits of including Qt apps and frameworks with the disc and download installation by default. […]

  32. Diego Viola Says:

    Please invest resources on X and Wayland.

  33. Qt inside | Nicolas Schirrer Says:

    […] Shuttleworth l’a annoncé sur son blog hier, la future version Ubuntu 11.10 inculera Qt par défaut, le framework propriété de Nokia à la […]