back to article Felt Qt (might delete later)*: Two non-Gtk Linux desktops have put out new versions

There are loads of Linux desktops to choose from, but the majority use some version of GNOME's Gtk. Only a handful favour the Qt toolkit, and two of them just released new versions. Release 14.0.11 of the Trinity Desktop Environment (TDE) just appeared. TDE was forked from KDE 3 by a team who didn't care for KDE 4's focus on …

  1. saskwatch

    Been using LXQt since version 1.2 & love it. Makes for a simple elegant aesthetically pleasing desktop compatible with much of the KDE desktop.

    Was using Openbox but because of compositing issues have gone back to XFWM4, which is the default in Debian. Will stick with that as long as

    XFWM4 stays compatible with the old GTK2 xfwm4-themes package & the lxqt-xfwm4-package cribbed from Siduction. I also use the Moka icon

    theme, finding the default Papirus icon theme, well flat & ugly. I also use the Plank simple dock app to organize my desktop shortcuts. Way more

    fun to tinker with & less hassle than Windows.

    1. Robert Carnegie Silver badge

      It says here LXQt is now at version 1.0. What will they do when it gets to 0?

  2. Anonymous Coward
    Anonymous Coward

    Variety is the Spice of Life...

    ...But it's a bugger to contend with when you're just trying to get an app developed and shipped.

    I hadn't realised that GTK was evolved in step with each new version of Gnome. Are they mad? Do they want 3rd party software to be written?

    Basically, it looks like it's not just Windows that is riven with fear, uncertainty and doubt about "How GUI Applications Should Be Developed". I'm just waiting for someone to decide it's a good idea to do a Linux desktop in Electron (braces for a barrage of links to that very thing that I'm too horrified to even begin to type a search for into a search engine).

    How It Should Be Done

    Just my 2p's worth.

    Having a graphical app layout tool is sensible. Mechanical engineers don't create objects by hand-crafting CNC code, no. They use a CAD package to be more productive. So it stands to reason that a graphical app layout tool should make programmers more productive.

    However, I really don't like the idea of that producing a pile of XML (or equivalent) that is consumed at run-time by a bunch of libraries. That invites bloat; a linker can't tell what it's got to link in, and so you end up distributing the entire toolkit's libraries regardless of how much is going to be used.

    Having a graphical app layout tool emit source code (C, C++, Java, C#, whatever) is sensible because i) programmers then stand a chance of understanding how the hell things are supposed to work, and ii) it makes for an efficient, smaller sized binary.

    And, finally, there's things like SL-GMS (https://slgms.com/). For those that don't know what this is, it's the kind of thing you wish you had when you realise that your GUI toolkit library hasn't got the thing you need, and you realise you've got to code up your own. SL-GMS (at least when I first saw it a long time ago) made it very easy to draw a custom widget and ascribe properties to it, and then have that emit C, C++ (ad now Java, C# and Web) source code that implements that widget against a graphics primitives library of your choice. AFAIK there's nothing like it available as open source, and few seem to even perceive the benefits from having such a thing.

    For example, say you need a compass rose widget. GTK and Qt don't have one, and you can't find a third party library that does one you like. With SL-GMS you simply draw your compass rose using the design tools, and then give it a property (i.e. this thing rotates abouts it's centre, 1 whole turn). Then you press a button et voila, source code in a language of your choice for a graphics primitives library of your choice (within limits) that has a compass rose class with a "bearing" property. Instantiate one of those classes, set the "bearing" property of the object, and you've got a compass rose on the screen spinning away. It takes literally 2 minutes from beginning to end.

    The demo I saw of this back in the 1990s involved developing a whole moving map + live data feed for bus locations, from scratch, in 30 minutes, with a minimum of hand written code, in C++. It was very impressive. I'm not a customer of (I do embedded stuff) or connected to the SL-GMS company in anyway.

    Really there should be no reason for developers to have to write any code to implement the "graphical" bit of graphical applications these days. Software development seems to be the last industry that has steadfastly failed to embrace tools to make GUI software development significantly easier. Some (like Gnome perhaps?) seem to be actively engaged in making it even harder than it already is. All other engineering disciplines are using software tools to make their lives dramatically easier, whilst the software industry keeps messing it up. Why?

    1. Andrew Hodgkinson

      Re: Variety is the Spice of Life...

      All other engineering disciplines are using software tools to make their lives dramatically easier, whilst the software industry keeps messing it up. Why?

      I don't know, apart from perhaps blaming the two easiest targets - the general dubious competence levels in newer software development, coupled with the "NIH" syndrome that has always seemed to be present.

      From a once-RISC OS, now MacOS (macOS) / iOS developer perspective, Interface Builder's fast and simple operation went backwards with the much slower and buggier Storyboard stuff in XCode, but at least it was still graphical. IMHO Apple's more recent move to Swift UI seems to have been a big backwards step, at least if a graphical design approach were to be dropped and leave only the code-writing option - which bewilderingly, many people seem to want to happen. Notwithstanding the dreadful documentation and bugs, it's just *much* more effort and producing something that actually looks good is, uuh, challenging to say the least.

      I've frequently read a rationale concerning code reviews. You can easily diff UI-written-in-code, but can't easily diff the output of a visual tool. This is a shortcoming of the diff engine of course, not a shortcoming of the generation tool. In any case, if you've ever done a code review where someone's modified a bunch of XUL, or CSS, or even Swift UI code, you'll know that for all but the most trivial changes, you're very unlikely to have any clear idea of exactly how those changes will manifest visually, or whether or not this will produce a desired outcome; nor can you be too sure if there are reuses somewhere which could mean that the innocent looking change in a diff actually has wider impacts. There are no silver bullets. A diff tool that understood the output of the visual editor system and could respond with an appropriately visual diff, on the other hand - that would be valuable.

      There are times and a places for UI components expressed in hand-written code or markup languages, of course, but the lack of good tools for things like desktop or mobile app development outside of the Apple ecosystem has always surprised me.

      1. drankinatty

        Re: Variety is the Spice of Life...

        Linux desktop developers, and Gtk in particular, have had an uncanny nack for throwing the baby out with the bathwater. It all boils down to bad design choices by a handful of developers that end up taking the Linux desktop over the cliff with them. After two decades of Linux use, I've seen the same mistakes repeated time and again. A well liked, mature desktop with a large and enthusiastic community of application and theme developers suddenly makes a snap decision to move to a new toolkit.

        Those in control of the decision make unrealistic promises of the new benefits to push the idea forward. Pressure is put on distributions to push a new (alpha quality) desktop as a default, and then new toolkit API changes break backwards compatibility frustrating application and theme developers to the point they finally throw in the towel.

        The result is 4-8 years (average) of crippled versions of what were a mature desktops with new API changes that continue to break backwards compatibility every six months so the new desktop never matures, application integration is never complete because the decision has alienated the application developers and it's groundhog's day over and over again.

        You will never get wide-scale buy in from the business community to use Linux on the Desktop due to the retraining costs and lost productivity every time a bad design decision takes the desktop over a cliff. It's just cost prohibitive. Until desktop developer's stop this madness, things will never change and Linux will continue to suffer the loss of talented application and theme developers due to sheer frustration with ever changing APIs that break backwards compatibility. (throw in a Trolltech licensing debacle and undocumented or poorly documented API change to put icing on the unstable desktop cake)

        1. Anonymous Coward
          Anonymous Coward

          Re: Variety is the Spice of Life...

          I think that a lot of the reason why this happens so often in Linux is because, inevitably, project membership evolves over time, and newcomers find themselves simply maintaining code. No one likes doing that, and eventually there's a critical mass of newcomers eager to "do something new" so that they can "make their mark" resulting in the (few) old hands being out voted. Et voila, some shiny new wacky direction that's not really justified, and has to be "rushed" in an attempt to at least match the old version ASAP. Which it fails to do.

          Throw in someone like Lennart Poettering (apologies if misspelt) who has a bunch of programmers bound by a corporate environment (i.e. they can't say no, they have to go with the company's / LP's vision), and there's no hope for stability, maturity, etc.

          Admittedly, the "lets always change everything" approach matches the ethos of the kernel itself, where there's no such thing as a stable driver interface. But that too is simply a barrier to adoption.

          For me, despite all the weaknesses, Windows development is the most stable. You can (if you really, really want to) still build MFC applications, decades after that "Became A Bad Idea". Drivers still work. Old software still works without a rebuild. Up until very recently Windows 3.0 software still ran. The fact that it's hard to tell what the best way is right now is, really, a almost trivial issue in comparison...

        2. Anonymous Coward
          Anonymous Coward

          Re: Variety is the Spice of Life...

          @drankinatty

          Quote: "....throwing the baby out with the bathwater...."

          ...speaking of which, I have a few small tools written in C/GTK3. I wondered about updating to GTK4 recently. Then I read some of the so called "documentation" about the change. It's a document with hundreds (hundreds I say) of instructions reading "Do not use..." and "Stop using..." (See link: https://docs.gtk.org/gtk4/migrating-3to4.html)

          I guess my update is permanently postponed. I suppose if someone STARTS with GTK4 it will be fine....but the move from GTK3 to GTK4 looks like a nightmare..."baby", "bathwater", etc, etc....

          1. bombastic bob Silver badge
            Devil

            Re: Variety is the Spice of Life...

            at least they did a major revision before the major change...

            (that way we can keep using the old one - "UP"grading is HIGHLY overrated)

            A lot of Mate stuff still uses GTK 2 last I checked

        3. druck Silver badge

          Re: Variety is the Spice of Life...

          You will never get wide-scale buy in from the business community to use Linux on the Desktop due to the retraining costs and lost productivity every time a bad design decision takes the desktop over a cliff. It's just cost prohibitive.

          And yet they happily just suck it up every time Windows goes over a cliff?

          At least with Linux if your desktop goes in a direction you don't like, there will be a fork that keeps it the the way it was.

          1. Mark #255
            Headmaster

            Re: Variety is the Spice of Life...

            And yet they happily just suck it up every time Windows goes over a cliff?

            You say that, but I can apparently build a new application, in 2021, with a Windows toolkit I was using in 1998.

            1. bombastic bob Silver badge
              Devil

              Re: Variety is the Spice of Life...

              you are "not wrong" - I also use MFC and Win32 to do the occasional windows application, with DevStudio 2010 (the last one before the 2D FLATTY and WinApe / Win-10-nic crap). i turn off all things that might reference ;Not and statically link everything. Then I can just ship a single .EXE to whomever needs it. heh.

              I've toyed with GTK and looked at Qt. but most of my linux/BSD stuff is daemons and utilities, and web-based GUI for embedded. (and if you do it right you can make it touch-screen compatible AND avoid a FLATSO look pretty easily)

        4. Doctor Syntax Silver badge

          Re: Variety is the Spice of Life...

          "You will never get wide-scale buy in from the business community to use Linux on the Desktop due to the retraining costs and lost productivity every time a bad design decision takes the desktop over a cliff."

          Taking the UI of anything, not just the desktop, over a cliff seems to be industry standard procedure yet Windows shops give Microsoft a free pass in this.

          1. W.S.Gosset Silver badge

            Re: Variety is the Spice of Life...

            > yet Windows shops give Microsoft a free pass in this.

            Dunno about that. A lot of shops have had to be forced "for"wards, fighting all the way. Think how long lasting and how large the XP and then 7 marketshares were/are.

        5. bombastic bob Silver badge
          Facepalm

          Re: Variety is the Spice of Life...

          " It all boils down to bad design choices by a handful of developers that end up taking the Linux desktop over the cliff with them"

          So, is THAT why the screenshots for the (NOW) Qt-based desktops mentioned in the article have 2D FLATASS min/max/close buttons in the address bar instead of 3D looking ones?

          I was hoping for better... "my beautiful bubbles, STOP BURSTING THEM!!!" (said by 'Meracle", a playable game character in a P.A. from 'Star Ocean The Last Hope', a console game I could play indefinitely)

          what's with that Win-10-nic look in X11 desktops anyway??? yeah, I use Mate with TraditionalOk, and *NOT* Adwaita!!! Let's hope these Qt-based desktops can do something similar.

    2. Greybearded old scrote Silver badge
      Unhappy

      Re: Variety is the Spice of Life...

      "All other engineering disciplines are using software tools to make their lives dramatically easier, whilst the software industry keeps messing it up. Why?"

      It's the CADT development model. Cascade of Attention Deficient Teenagers.

    3. Anonymous Coward
      Anonymous Coward

      Re: Variety is the Spice of Life...

      > Really there should be no reason for developers to have to write any code to implement the "graphical" bit of graphical applications these days

      Qt Designer.

      QML is a declarative language btw.

      My workflow is Designer for the rough concept and then refine the description directly in QML. That's the fastest way to get nice stuff done, for me.

  3. drankinatty

    TDE is a Great fork of KDE3

    Tim Pearson, along with many, saw the writing on the walls as openSuSE debuted KDE 4.0.4a as the default desktop in May 2008. It was a disaster to put it mildly. While KDE3 had been developed as a desktop, KDE4 wasn't. Instead it was a "Let's port to a new toolkit" update and that has never resulted in anything close to a desktop that matured under a given toolkit. TDE began as a fork of the last KDE3 release (3.5.10).

    The beauty of KDE3, to the developer's credit, was a focus on human factors, how to minimize the number of times the hands had to move from the keyboard and then be reposition. Logical keyboard shortcuts, along with doing the most possible with the fewest number of keystrokes or mouse clicks paid off. KDE3 was by far one of the best (single-click configurable) desktops I've ever (and still) use. All of which was lost with KDE4.

    To prevent the loss of the KDE3 Pearson organized TDE and since that time has been steadily updating TDE to provide current features. There have been a few design wobbles along the way. An interface layer, TQt_interface, was written to allow moves to later Qt toolkit version, that in the end weren't needed. TDE essentially maintains its version of Qt3. KDE3 and TDE, lightweight and written for use when 512M of system memory was the norm, are blisteringly fast and instantly responsive on today's hardware. For older hardware it is a pleasure to use.

    Interested? It can be installed along side your current desktop and may just put a smile back on your face given the state of the current Linux Desktops. (don't forget to grab the "crystal" window decorations)

    1. Citizen99

      Re: TDE is a Great fork of KDE3

      When KDE4 came out, I took a look at it in another partition; didn't like the way it had replaced some of the functionalities that I like with useless eye-candy. Then I discovered Exe GNU/Linux, a very nice recipe by David Hare of TDE on Devuan - double bonus! This has been my regular workstation OS ever since. LXDE is fine for a live virtual machine for ad-hoc boot-up.

    2. Adam Trickett
      Linux

      Re: TDE is a Great fork of KDE3

      When KDE4 came out people laughed when Debian stuck with KDE3 for one more release cycle. At the time it felt annoying, but it was the right decision in the end, by the time that Debian moved to KDE4, it actually worked, I'm glad I didn't go through the pain that most of the bleeding edge adopters did...

      At the moment I mostly use KDE on my systems, but LXQt is pretty good and nice and compatible and I use it instead on my low spec systems. Sharing lots of Qt apps and look and feel is nice.

  4. W.S.Gosset Silver badge

    Good god

    From the "talked" link:

    > Dirk even switched from being a long-time emacs user to now using the Qt Creator integrated development environment.

    That's... astounding. Normally, to get a dedicated Emacs user to voluntarily use something else, you must first kill them, chop them into tiny tiny pieces, then reassemble them as someone else.

    I am now going to read Dirk's own post...!

    1. Arthur the cat Silver badge

      Re: Good god

      Normally, to get a dedicated Emacs user to voluntarily use something else, you must first kill them, chop them into tiny tiny pieces, then reassemble them as someone else(*).

      Speaking as someone who's been using Emacs or Emacs-like editors for about 40 years you'd have to be a lot more persuasive than that.

      (*) The anagram of Banach Tarski is Banach Tarski Banach Tarski.

      1. W.S.Gosset Silver badge

        Re: Good god

        > The anagram of Banach Tarski is Banach Tarski Banach Tarski

        I had to look that up. That's a genius anagram! Have some upvote.

        .

        Also, duckduckgo is in on the joke!:

        https://duckduckgo.com/?q=Banach+Tarski&ia=web

        Including results for banach-tarski

        Search only for Banach Tarski -banach-tarski?

    2. Anonymous Coward
      Anonymous Coward

      Re: Good god

      Qt Creator does a fine job for developing Qt or even plain C++ code.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Biting the hand that feeds IT © 1998–2022