back to article Linux PC shop System76 is building a new desktop environment in Rust

System76, makers of Linux PCs and laptops running Pop!_OS, has spoken about its plans to create a new desktop written in Rust as an evolution of its current GNOME-based product. System76 software engineer Michael Murphy, who is a maintainer of Pop!_OS and also a contributor to the Redox OS project, a new Unix-like operating …

  1. karlkarl Silver badge

    Desktop environments have a *lot* of dependencies. In the case of Gnome 3 (and 2) and KDE 3.5+, this is far too much but even in the case of Xfce 4, LXDE, etc this is still a fair chunk. Traditionally this is handled by the Linux/UNIX package manager and it kind of works in a satisfactory manner (though many prefer a simpler Window Manager to avoid this "inelegance").

    What remains to be seen is how Rust handles this. You will generally need the same C or C++ dependencies as all other desktop environments (because C pretty much *is* the computing platform today) but you will also need many, many additional Rust bindings around them. Not only does Rust tend to drag in a little *too* many dependencies, but these will also be from crates.io, an external package manager. I feel this is going to be a little bit too fragile for good release engineering.

  2. alain williams Silver badge

    Let us hope ...

    that it does not follow the dumbed down stupidity that is Gnome 3 but provides some decent flexibility. I moved to Mate to avoid Gnome 3 which is, IMHO, not usable.

    1. Scene it all

      Re: Let us hope ...

      And Ubuntu's scheme for a new desktop experience worked out so well. Right.

      I've too have been using MATE for a very long time and not willing to give that up.

    2. bombastic bob Silver badge
      Megaphone

      Re: Let us hope ...

      if it looks like TraditionalOk instead of Adwaita, I'll consider it... (I really *HATE* the 2D FLATSO and the too-skinny-to-grab-with-a-mouse Faux-scrollbars of Adwaita, which is unfortunately the DEFAULT for GTK 3, and somewhat difficult to change properly within Mate on FBSD).

      Worthy of mention, THIS:

      export QT_AUTO_SCREEN_SET_FACTOR 0

      export QT_SCALE_FACTOR 1

      export QT_FONT_DPI 120

      export GDK_SCALE 1

      export GDK_DPI_SCALE 1

      And make sure the default GTK 3 theme has been changed from 'Adwaita' to 'TraditionalOK' using

      gsettings set org.gnome.desktop.wm.preferences theme 'TraditionalOk'

      This should fix anything relying on GTK3 except FF and Tbird which NOW need some special help in about:config (and the Tbird equivalent of editing the advanced settings):

      widget.content.gtk-theme-override 'TraditionalOk'

      widget.non-native-theme.enabled false

      (now if SLACK would just HONOR _MY_ PREFERENCES...)

      (probably other stuff too, but I recently installed newer stuff and I had to do this to FIX ANYTHING GTK3 from having UGLY WORTHLESS FAUX SCROLLBARS in addition to any kind of FLATSO look)

      anyway just thought I'd mention that... (it took way too long to figure out what to do about this, even with online searches and RTFM'ing)

    3. Youngone Silver badge

      Re: Let us hope ...

      I disagree quite strongly. I find Gnome 41 on Fedora to be a joy to use.

      You are more than welcome to your view though, and I'm sure Mate is perfectly fine.

  3. elsergiovolador Silver badge

    Keyboard

    I'd rather see a laptop company committed to improving keyboard experience.

    Most laptops these days have very poor keyboards, targeted at users typing occasional email or comment or a homework at most...

  4. Barry Rueger

    Mint = Windows 95 = GOOD!

    I have no interest in a new, novel, or innovative desktop. The reason why the desktop + toolbar + menubar paradigm (aka empty space with stuff at top and bottom) works is because it's easy to understand and near universal.

    Attempts to "improve" on it invariably don't, and usually are far too clever for their own good.

    You can quibble about details, but overall our current desktops work great, and don't need to be "fixed."

  5. Lorribot

    There is nothing like change to get people excited

    There is nothing like mentioning desktops in connection with Linux to get the community excited. One persons KDE is another's Windows 8 desktop.

    this inconsistency of desktops with distros changing from one to another or hacking them about shows just how far Linux is from mainstream, there is no one Linux, and never will be (which is both good and bad), for users to get behind, and in my experience if there is one thing the great unwashed user morass hates it is constant change and churn and spending any amount of time to get back to where they were before you changed things for the better.

    Developers forget this and do crazy stuff and stand there blinking say but "it's obviously better and simple to use" when the user turn on them for changing stuff.

    1. NATTtrash
      Unhappy

      Re: There is nothing like change to get people excited

      Developers forget this and do crazy stuff

      Indeed. Had a quick look at Xfce 4.16, that now, with GTK3, seems to have a ball taking critical user interaction buttons ("Open", "Cancel") or functions ("Preferences", "Print") to places where no one has gone before. If you have not had a look yet, free some time on your calendar, because you will need it searching for the things that have been in a certain place for decades. And no, nocsd will not solve it...

      I suppose devs want to make it a journey of exploration... that a user who just uses her/ his box as a tool to get some work done which pays the bills™, might/ will get annoyed by. But no worries, the market share of *nix DEs is not that big, so the damage will be limited when they remove the "Start button".

      Probable root cause why devs keep doing this? The user uses DE to get some work done™. The work of a dev is the DE. And (understandably) they don't want the work to stop...

    2. druck Silver badge

      Re: There is nothing like change to get people excited

      this inconsistency of desktops with distros changing from one to another or hacking them about shows just how far Linux is from mainstream, there is no one Linux, and never will be (which is both good and bad), for users to get behind, and in my experience if there is one thing the great unwashed user morass hates it is constant change and churn and spending any amount of time to get back to where they were before you changed things for the better.

      I'd argue Linux is much better than the mainstream i.e. WIndows. The Windows desktop continually churns, moving from 7 to 8 to 10, and onwards. What choice does the great unwashed mass of users have if they don't like it? Suck it up and hope the next version isn't as bad?

      When a Linux desktop changes disastrously, such as with Gnome3, you just install Mate and carry on as before with all your existing applications - no continuous nagging and dialogs trying to trick you into upgrading to a telemetry laden version you don't want.

  6. cyberdemon Silver badge
    Linux

    'There are things we'd like to do that we can't simply achieve through extensions in GNOME'

    So use KDE?

  7. Jean Le PHARMACIEN

    KDE for me..

    There, nailed myself to the mast.

    Never got on with Gnome, even when playing with Solaris on SPARC.

    KDE 3x was great and its taken KDE4+ and the rest to get back there.

    My main fuss now is "will it work with a X-window style GUI app forwarding"?. I use X2Go frequently and anything pinned to Wayland is not gping to cut it.

    1. cyberdemon Silver badge
      Devil

      Re: KDE for me..

      Xorg forever. Down with Wayland.

      I have fond memories of my old Maemo-based Nokia N900. Maemo, being based on Debian, ran a full blown X server in my pocket complete with 3G connectivity, yet still had all-day battery life. Any Qt-based desktop app could be ported over without fuss, and It had an amazingly powerful native terminal that made full use of the mechanical slide-out keyboard.

      But the best thing was being able to SSH into my uni's Linux cluster and pull up plots during lectures in full-fat Matlab that would have taken a while to produce even on a desktop PC. By the time we got to the labs, I had already done it.

      But then around the same time as the infamous Stephen Elop, Meego came along (apparently a collab with Intel) and ripped out dpkg to replace it with yum (why??) and replaced X with Wayland. It sucked. Then Elop killed the whole company and sold it to Microsoft. Conspiracies abound.

      And obviously I whole-heartedly agree about KDE. I have been using KDE since 2003, and I don't know why anyone would use Gnome these days.

      KDE Plasma 5 is where KDE 3.5 used to be - powerful, modern and stable. Even my Bluetooth mouse 'just works' via the KDE widget, as does my VPN. And thanks to Steam/Proton, I rarely if ever need to boot Windows.

      If I'm ever forced to use Windows (i.e. at work) I constantly find myself cursing the start menu (among other windows features), because the Windows type-to-find finds all sorts of rubbish that I don't need, it doesn't seem to prioritise stuff that's actually in the start menu. Whereas the KDE menu is so much faster.

      Why is a hardware company writing software anyway? As someone else mentioned, all they need to do is get the laptop keyboard right. Writing a desktop environment from scratch in Rust is maybe biting off a little more they can chew, if it's to compete with Gnome never mind KDE.

  8. DS999 Silver badge

    What's the point?

    Rust adds some security over naively written C/C++, but the desktop environment isn't where security exploits are focused - because in most cases the person running the desktop environment in Linux is also the system owner.

    Exploits today are focused at something that can be done remotely, or use social engineering to trick an email recipient etc. into doing something to compromise security - i.e. something that ransomware gangs can leverage to take over a system with a privilege escalation, and do their thing.

    1. Lars Silver badge
      Linux

      Re: What's the point?

      I would guess one of the points is to get new young people interested in the programming tasks now and in the future too.

      1. bombastic bob Silver badge
        Trollface

        Re: What's the point?

        maybe they should allow writing the stuff in CRAYON

  9. Kevin McMurtrie Silver badge

    Hardware?

    I could use some of their custom hardware again but they need to bring back the 3.5" drive bays. The boxes are what's going to pay the bills for Pop!OS. There's no way I'm using garbage 2.5" drives or drilling out pop-rivets next to circuit boards.

  10. Anonymous Coward
    Devil

    Pop!OS is ...

    ... the thing you use to install Fedora.

  11. _LC_
    Thumb Down

    Build back better?

    Let's reprogram everything in a new language. We can do the same in three years again. Yaiiiiii!

    1. bombastic bob Silver badge
      Devil

      Re: Build back better?

      interoperability notwithstanding (it better be there by default), as long as it's not time wasted RE-WRITING things into the new lingo, I'm somewhat OK with it. But there was once a big hype over ADA, but of course THAT fell apart. And Python (in some ways) took over a lot of what was once being done in Perl, so that worked out ok.

      As long as the programming lingo being chosen is "fit for purpose" and does not create BLOATWARE, let them do what they want.

      I'd just as well write in plain old 'C'.

      1. cyberdemon Silver badge
        Devil

        Re: Build back better?

        Unfortunately, Rust is rather bloaty in my experience. It has its own 'pip'-like package manager called Cargo, and most things seem to need a tree of hundreds of dependencies, and versions are frequently incompatible and broken. And I worry about potential security risks in all of these 3rd party packages.

        The language can be as secure as you like, but it can still encode malware if someone pushes a dodgy update to a repo.

        1. Anonymous Coward
          Anonymous Coward

          Re: Build back better?

          > Unfortunately, Rust is rather bloaty in my experience. It has its own 'pip'-like package manager called Cargo, and most things seem to need a tree of hundreds of dependencies, and versions are frequently incompatible and broken.

          That has been my experience as well. And that, combined with Rust's inherent ugliness as a language, ended my interest in it. Insofar as I am concerned, it's a Me Too Wannabe language. Its main feature is that it wants to be talked about.[1]

          If I wanted a truckload of crap downloaded and stored in my home directory, I would use Python. I don't.

          -----

          [1]. Oscar Wilde reference.

          1. Phil Lord

            Re: Build back better?

            You can use store the truck load of crap where ever you want. Being able to install it in user space is fantastic for getting things done is an environment where you are not otherwise allowed to install anything!

        2. Phil Lord

          Re: Build back better?

          It does have it's own package management system. It's rather better integrated with python than pip is which feels (and is!) a bolt on.

          In terms of "3rd party" packages that it is a more complex question. Rust has gone the route of a small core, with add on packages for non-core functionality. That means it can offer somewhat different stability guarantees between the core/standard library and more extended functionality. How well this works we will see in time, but it should avoid the python/java standard library of cruft issue.

          The hard bit of "3rd party" is, of course, that Rust is not a product of an standard organisation. The core/std library is produced by "3rd parties" in the sense that the code is not written by the company (or foundation) that owns Rust. So some "3rd party libraries" are effectively part of Rusts extended library support. Consider clap, for example, which does command line parsing. It isn't part of the standard library, but is used by rust-lang.org in their command line documentation. Would bringing it into the standard library magically make it more secure? Or just mean that it's release cycle would be tied to Rusts?

  12. EvilGardenGnome

    No causation

    The argument that starting up a new DE project will dilute existing efforts is pearl clutching, bollocks. It's the same thing as saying downloading copyrighted media reduces sales, and thereby is theft. For the vast majority of pirates, they wouldn't have bought it in the first place, so there's no reduced sales. Similarly, if someone decides to help build this new DE, they likely wouldn't have contributed to existing efforts. For those who jump ship, they likely weren't happy and may have just stopped completely.

    That said, it would be nice if the various DE projects had a common extension model or API. That way, if someone extends GNOME, they're also extending KDE et al. That would really make for a vibrant community. I do, however, acknowledge the monumental (and likely illusionary) task such would be.

    1. JulieM Silver badge

      Re: No causation

      Actually, piracy *does* hurt sales. Just not in for whom everyone thinks it does.

      If you are selling a £50 software package that does more than enough of what a £500 software package does for most people's purposes, selling it as a way of saving £450 versus buying a £500 big-name package, you're up against people who think it's even better value to pirate the big-name package and save £500.

      Nobody need ever actually make a single unauthorised copy of your £50 package for you eventually to go out of business, entirely due to rampant piracy. And to add insult to injury, if the authorities ever manage to seize some assets from criminals, the share that ought to have been yours -- because you certainly would have sold a lot of copies for £50, if the big-name package had only been available for the full £500 -- will end up going to the major players whose works were actually seen in pirated form in the wild because people were using them for free instead of your work.

      1. EvilGardenGnome

        Re: No causation

        That's a novel way of looking at where competition and piracy intersect. I'd argue at that point, however, that the piracy wasn't what drove the budget priced company out of business. If people really liked their product, they'd have pirated it rather than the other. At that point, you may be facing a cost of entry problem, or even (chills from the thought) a marketing problem.

        All that said, it's a neat perspective. I'll have to talk to some business researcher friends if this is something that's been studied.

        1. JulieM Silver badge

          Re: No causation

          If people really liked their product, they'd have pirated it rather than the other.
          That's not the way people see it in real life. Remember, there is a human instinct which boils down to "paying full price for anything feels a bit like cheating", and a human instinct to prefer not to get your hands dirty over trivia. If you buy the cheap package, you save £450. If you pirate the expensive package, you save £500. Pirating the cheap package only ends up saving you £50, meaning you might just as well have bought it, saved £450 and kept your conscience clean -- or pirated the expensive one and at least felt as though you stood to be hanged for a £500 sheep, as opposed to a £50 lamb.

          (Just because you're smart enough to see through the fallacy in the above, doesn't mean everybody else is.)

          The market for pirate copies wants the most expensive, best-known stuff with the biggest marketing budget behind it. Software that is sold for affordable prices gets bought by the few law-abiding people that end up hearing about it, or squozen out by pirate copies of unaffordable software.

          And meanwhile, businesses without the option of piracy have to pay for licensed copies of all the big-ticket packages their staff learned to use pirate copies of in their spare time -- so why would the vendors make too much of an effort to prevent that, if it might lead to workers asking their bosses for a less-expensive, competing product?

      2. Anonymous Coward
        Anonymous Coward

        Re: No causation

        Adobe, MS and a bunch of others moved away from the big pay one price model for a reason. Sticking the year in product name is great marketing - you’re either current or you’re not. The sub model also defends against piracy, no online authentication, no use of the product.

        Most folks can persuade themselves into a 15 quid sub for something they might not use that much of, and can chop and change when to use. Conversely the 500 quid package is something that scares away most users. Tech nerds that can’t afford that, pirated it. Certainly true in the late 90s.

        Need is a really subjective thing in software. I never needed Adobe-everything-ever ultimate CD. I had use for a few components thereof that I could never have bought at commercial rates as a student, 25 years ago.

        Piracy is also a sales strategy. It’s unwritten, but a major driving force for sales of Amiga and PlayStation was the underground community. PS did extremely well in Asia off the back of massively wide availability of chip mods. Amigas European popularity very much helped out by the bbs scene & sneaker net.

        Today, as grip is tightened either you bite the bullet for a sub or you go open source. It is ironic then. That now that I can afford whatever I want to dick about with that the big box no longer exists to buy.

  13. John 73
    Linux

    System76

    Perhaps worth noting, for context, that System76 seem to have a beef with Gnome more generally, and perhaps a pattern of behaviour towards their upstream that should colour the reporting on them here at The Reg. Some background in a fairly detailed blog post today from a Gnome here: https://blogs.gnome.org/christopherdavis/2021/11/10/system76-how-not-to-collaborate/

  14. Zolko Silver badge
    Unhappy

    very disappointed

    GTK (GNOME Toolkit)

    no, GTK stands for GIMP toolkit. Where the G in GIMP stands for GNU. Seems like ElReg is lowering its standards in reliability

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

Other stories you might like