Hacker News new | past | comments | ask | show | jobs | submit login
System76 Reportedly Developing Their Own Rust-Written Desktop (phoronix.com)
223 points by sdht0 on Nov 7, 2021 | hide | past | favorite | 184 comments



This is excellent news for the simple reason that the business goals are aligned for desktop linux. Nobody makes money on desktop linux and it's in a terrible state. Canonical gave up on this and is chasing snaps for servers, IoT, etc. RH also makes money only on servers. Other players are too small and won't have consistent revenue to invest any resources. If S76 becomes a successful h/w vendor, at least it is in their interest to make desktop suck less.


Could be that I've been using Linux on the desktop for a long time and so I've gotten used to things, but I don't relate at all with the "desktop Linux is in a terrible state" statement. It works great for me, it's super functional, it's doesn't get in my way. Guess it's not for everyone (like everything), but on the other hand I'm pretty sure my mom would do perfectly fine with just surfing the internet, which is anyway what most people do nowadays. I feel it just took Linux too long, and frankly people have no reason to change, but it really isn't bad at all. Often helping my friends maintaining a virus/bloat/bug free environment on their Windows or Mac machines seems way more complicated.


I hear so many complaints from my Mac and Windows-using colleagues that just don't happen to me on Linux. It really feels like the tables have turned.

The Windows users bend over backwards just to use Linux (WSL) where the only Windows apps running are Google Chrome and VSCode (which also support Linux natively so ??).

The Mac folks struggle with performance because of Docker using a VM with poor filesystem sync performance. Again, busting their backs just to use Linux. And it's worse now that they're using these M1 chips that segfault when our app uses FFI. These folks don't even like or use xcode or any mac-only software.

I'm still a bit biased in that I know how to set up a good Linux machine and others might still struggle with that. But it really looks like they're already struggling.


I find it amusing that the best part of Windows and OSX right now are WSL and Docker support.

I use both when needed, but since gnome improved performance and UX its just so much better experience to use the real thing.

Unpopular opinion: companies whose core operation is around Linux should start using Linux on desktop instead of bending backwards to not do so. How about it, Linode?


I'd argue the best part of MacOS is the font rendering.


> I find it amusing that the best part of Windows and OSX right now are WSL and Docker support.

I find it amusing that you think that. I still use my 2015 Mac Book Air because it still going strong, both hardware and software (albeit an older version of the os) and I still use my Windows PC (built it during the pandemic) because games. My docker needs are fulfiled by an Intel NUC (with Debian) for my home development needs and an EC2 instance for work. Never started/installed/read much into WSL.


I don't know if it is a case of the tables turning, or if we tend to overlook faults in our preferred operating system.

I have used Linux for over 25 years, know how it works and like how it works. While there are distributions that I like and distributions that I don't like, I rarely run into technical issues. At the same time, I cannot deny that other people do run into technical issues. Perhaps my experience means that I subconsciously avoid the facets that cause others problems. That being said, I have had a lot of bad experiences with Windows that others like to deny. Perhaps their experience means they are subconsciously avoiding facets of Windows that have caused problems on my end.


I totally agree with you. When I have to use a Windows desktop, I feel like being thrown into a mess with inconsistencies, advertisements and software generally working for somebody else than the user. MacOs feels better but way too limited. I love my Gnome desktop.


I’ve had my dad using fedora for many years now, and he’s the opposite of tech savvy. Honestly, I get less tech questions/problems from him than my other family members that use Apple products. It stays out of his way and is a safe secure environment that’s not collecting his personal information.


Same with my mom. She is so terrible with tech (older lady that doesn't understand that email can be accessed from a browser, or what a browser is for that matter). She was always running into wild issues with windows. One day a few years ago I bought an old computer off ebay, installed Mint, showed her around for a few minutes.... and that has been the end of my IT support tenure. Praise Zeus.


My four year old and my wife both have Chromebooks that they use daily. I know it's not really a standard Linux distro but it's not far off from what I'm running (coincidentally being Pop_OS! now because I've grown too lazy for Slackware). Desktop Linux is far from terrible and, like you, I remember when it really was. I can remember when it was so bad that sticking to the console was often easier (printing, dial up, irc)


To be honest, I think all major desktop environments are in an equally terrible state (including MacOS and Linux), but none particularly more so than another.

I’ve been very happy using Gnome and KDE more so than Windows or MacOS the past year, but they each have odd quirks, as do MacOS and Windows.

In fact, although I’ve had plenty odd graphical bugs and occasional crashes with both Linux DEs, almost every time I’ve had to use Windows or MacOS for something, I’ve experienced even worse over there.

In some ways I think we should all be disgusted that the desktop UI has largely stagnated while still having so many odd issues across the board, but at the same time, I guess pleased that they have all largely caught up to each other in most regards and are all “about as good as it gets, for now”.

That said, I find myself gravitating towards Linux if for no reason other than, if all else fails, the source code is there for me to modify if and when I desire.


I'm currently using Zorin OS (which is based on Ubuntu) and it took some work to make a few peripherals and features work correctly (headset, dock station, hibernate). That's probably a show stopper for many users.

However, I'm positively surprised by its overall interface and I think flatpack is really cool for non tech users.

I wonder why hardware manufacturers such as Dell, Logitech, Lenovo, etc... Won't invest in a Linux distro. Like, if MS wanted they could totally lock out a vendor from their customers. Sounds risky.


The people who are just surfing the internet are the people who have moved to tablets and Chromebooks though, they don't need regular PCs. The people who are staying around on PC are people like developers, content creators, gamers and office workers, and these are the people System76 needs to appeal to. Only in the first of these groups has Linux been somewhat successful.


> Nobody makes money on desktop linux and it's in a terrible state.

What's terrible about it? Fonts rendering? Or Wayland still not having "won" over XFree86/Xorg? I'm using Linux as my main computer since more than two decades and, if anything, desktop Linux is much better now than it used to be. Browsers and JetBrains' Java written IDE did a lot for that but even though I don't game I know people are playing games on Linux too. I mean: if you're a dev spending your life in browsers and IntelliJ IDEA (heck, or Emacs), Linux is sweet.

Desktop Linux is the distant third player after Windows and OS X but what's terrible about it besides its small market share (on the desktop, servers and appliances being another story)?


From what I've heard, hi res displays, and other features that work perfectly on macs such as suspend/hibernate on closing the laptop, can still be problematic just like 10 years ago when I last had a linux laptop. Is that fair?


There is an argument that those things work that well because Apple can sort the software for a reduced set of hardware configurations. Which means that System76 could achieve the same with their own set of configurations.

On the other hand, Windows seems to be getting it right on many more configurations, not on all of them, but on many more than MacOS and Linux. Not sure how reliable this data is, but here you go .

https://hostingtribunal.com/blog/operating-systems-market-sh...


This is the single problem I have with running Ubuntu 20.04 on my laptop. It takes about 1.5 minutes to wake up. But it does wake up, and then it’s far better than any alternatives


I'm running NixOS and they take care of my boot stages automatically. I have 2 disks with one boot partition each (unencrypted boot), raid1 for swap and data and neither suspend or hibernate is a problem, though I've previously had issues with not finding my bootloader at all, seems to be solved by calling sync on my boot partitions once I update grub (which nixos does every time I "rebuild" my setup, which is several times a day).

This is on a System76 Lemur Pro (lemp10).

The fancurve in the firmware is suboptimal, but there's a merged PR for solving that too.

I hope they make a fanless ultrabook (don't care if ARM or x86 tbh, as long as KVM works and AES is accelerated), then I could buy one for home as well.

I should note that it naturally takes awhile to wake from hibernation if I had a lot of applications running (40GB RAM, which is a weird configuration)


Fond though I am of grub (for 'crusty sysadmin' values of fond, admittedly, but nonetheless), if it has all the features you need the nixos systemd-boot support seems to be much simpler to drive and debug.


Absolutely, sadly it doesn't support copying itself to two locations natively like grub, might be an easy fix but I haven't looked into it.

You can't raid your boot partition so if you have 2 disks and want to be able to boot from both of them you need this operation. Maybe it could be solved with something as simple as an rsync between /boot and /boot-fallback, no clue.


I suspect that wouldn't be tricky but I've been focusing on helping out with Hydra development recently - once I get confidence with core-fu I expect to rewrite the grub stuff to be sensible modern perl first - but I mentioned systemd-boot for people who aren't me (and apparently aren't you either ;).

Definitely enjoying nixos so far though :D


I think that's fair. I will say, I select for laptops that are known to have good linux support (ex: Thinkpad X1), and my last few have worked pretty well. Sometimes there are weird quirks, but honestly no more than my macbook has.


It is. Every time my laptop screen blanks or go s to sleep, I have to fix my displays. Not everything is perfect but minor nits are solvable..


Wayland has won over xorg already. I have been using it for several months on two laptops and a gaming desktop.

Then again, Linux won over Windows in 1996 for me so perhaps I'm a bit of an outlier.


Waylandis now default on all big distros.

The war is over people. Even the xorg people are happy about this.


Only on GNOME on Mesa though.


I think a large number (or I'm just projecting and should speak for myself!) of hold-outs are just cautious about the actual switch itself, or 'why fix what isn't broken', but that'd be a little strong for me - I am keen to switch, I find X frustrating to configure and use, it's just that since it is working, I'm nervous of breaking rather than switching and improving it! Hoping for Framework to start shipping here (UK) soon and I'll try it out from day one rather than (before) switching my desktop.


Screen recording does not work well in Wayland. Black screen with the mouse cursor. Keeps breaking in Chrome and not even working in FF for me with Google Meet. Haven't used Zoom in a while, but prob still broken.

On Gnome Wayland, if you play Sonic Mania, you can feel the latency from when you push a button and Sonic jumps. From what I hear on Linux Unplugged, the latency also exists in other games. KDE Wayland is too broken to try.


Nice definition of won for 1% of desktop market.


Why should I care about its market share? How does that affect me?


Because that is the whole point of the thread being discussed and System76 endeavours that started this whole thread.

In this context Linux has won nothing, nada, niente.


Given all he claimed was (a) "Wayland has won over xorg" (b) "Linux won over Windows in 1996 for me" (note the last two words) your response struck me as something of a non-sequitur.

I mean, sure, Linux hasn't won out in the world, but I don't really see how that makes a difference to a comment about Wayland versus xorg within the population of people who are running Linux.


HiDPI screens are still an issue.


I finally got them to work well in wayland (literally last night with sway) which supports different resolutions/scaling per monitor unlike xorg. Try out wayland on your desktop, that may be the last part you need. wdisplays to size things.

This also seems to be an issue with (albeit likely main use) of running your monitor at double DPI, like you would with a laptop and side monitor. With a 43" 4k monitor and some old 2560x1440 27" monitors the default worked great.

Now I just gotta figure out how to get my 2nd nvidia card working on my desktop to get that 5th monitor turned on.

Yeah this is several hours of fiddling. I had this working years ago but things got broken, they seem to be on the way to getting fixed.

And as other articles have said, I've spent as much or more time unf**ing python on windows, installing WSL2, etc.

Really the only things holding me back from a full time windows box were pubg (not a reason now), fusion 360 (can use a VM), and 5+ monitors. If I get those monitors running it's go time. Luckily I have the same computer config at home and at work so it may happen.


you can use the other 20 displays wiht synergy.


Do you mean I should hook up N other computers and use synergy between them or just have separate X displays and synergize between them?


N others with a mix of different versions of linux, windows and macOS[0]. There are also clients for Kolibri[1] and Android[2]

Can configure some to hibernate until you move the mouse into the display.

[0] - https://symless.com/help-articles/operating-systems-supporte...

[1] - http://board.kolibrios.org/viewtopic.php?t=2544

[2] - https://github.com/symless/synergy-android-7


What's the issue? The only issue I have is not having a good way to get a consistent font/UI sizes across (switching between) different monitors/machines. But I have/had that problem with macOS too.


Not for me on Ubuntu 20.04. I use fractional scaling on my laptop and it works perfectly. Just prefer deb installers instead of flatpak and snap, because flatpak and snap aren’t ready yet. HiDPI works great.


Each user will have their own gripes. Personally, for me, unity 7 was peak desktop. Since both unity and X are abandoned, it is increasingly difficult to get fixes for bugs. So, we need to switch to wayland, which fixes some issues like screen tearing, but things like multi-monitor setup are still quite flaky. And finally, GNOME is just not to my liking. So I would have to wait for KDE or XFCE to sufficiently catch up with wayland. The packaging situation has also become worse. There isn't a single LTS distro doing a good job of packaging chromium.


Perhaps Nixos? It isn't LTS, but extremely reliable. https://search.nixos.org/packages?channel=21.05&show=chromiu...


HDR for one thing. It took years before we got proper Optimus support, and it will probably take just as long to get HDR support. Having to use the command line is another problem. And poor support for HiDPI and multi-monitor. And the lack of a standardized stable platform for application development. LSB tried and failed, and now Flatpak and Steam looks like the best hope. Of course, that goes far beyond a DE, but I hope System76 will push for improvement.


On the contrary, Linux desktop is in a much better state than Windows desktop in my opinion. Windows seems to get worse with every release, while Linux has been making slow and steady improvements. Perhaps I just value the control that Linux gives me more than the warm fuzzy people get knowing that 75% of the population uses their same OS.


Alt+Space, a little window pops up in the center of the screen (KRunner). I can type in math equations and I see their solution, I can get word definitions, I can launch apps and more.

I have a file manager (Dolphin) with terminal integration, split views, and tabs.

Going to Windows feels like a steep UX downgrade from KDE on Linux. :p


Anecdotally, I suspect that there is a large enough super premium market for Linux laptops/workstations that look nice and just work.

I love Linux, I haven't touched windows in 10 years. My last two forays in linuxhone computing were massive time sucks. I bought a razer blade and it took 1 year for the kernel to catch up with how the razer laptops manage lid closures.

I love the system76 and pop is strategy of chasing a great experience for those who need Linux. I can't wait for them to release an in house laptop.


Business laptops such as Lenovo Thinkpad, HP EliteBook, and Dell Latitude already have great support, cheap parts if something breaks and 3rd party support is so good you can install coreboot on them due to hackers who ported them out of passion. This guide is for the x230 (I don’t recommend it due to the TN screens sucking, and the replacement batteries both their replacement is expensive). https://steemit.com/tutorial/@joeyd/run-don-t-walk-from-the-...

https://doc.coreboot.org/distributions.html

> All ChromeOS devices (Chromebooks, Chromeboxes, Chromebit, etc) released from 2012 onward use coreboot for their main system firmware. Additionally, starting with the 2013 Chromebook Pixel, the firmware running on the Embedded Controller (EC) – a small microcontroller which provides functions like battery management, keyboard support, and sensor interfacing – is open source as well.

Wow awesome, if you want good cheap OEM coreboot support, getting native ChromeOS laptops is the easiest.


I agree that good cheap chromebooks exist - however what I want doesn't really fall under the "business notebook", "gaming notebook" or "good cheap chromebook" category. I prefer what would typically be offered in a macbook or surface laptop form factor. While I can install linux on a macbook, razer, or surface laptop - it's not exactly a "clean" experience.

In fact, even on an expensive "linux" laptop from dell I'm likely to still have a windows key! or non-functional windows hello sensors. Why shouldn't there be built for linux machines? Why should linux users need a tutorial to get their os running?


They don’t need a tutorial for most devices, Windows doesn’t work as well out of box either and has tons of hacks to make it run better, so it’s not harder compared to the norm, it’s actually easier.

Besides it’s desktop Linux, it wasn’t “just works” for a long time but it’s that way if you do light research on a supported device, then everything works out of box. Linux is designed to support as much hardware as possible so what’s the purpose of buying more expensive hardware with less features if better hardware exists?

You don’t need a tutorial, mostly if not all everything out of box works on Linux for every laptop and desktop I used (I don’t buy hardware newer than a few years for price and compatibility reasons) and setup is easier since there’s (almost) no drivers (fuck you Nvidia). It’s just a meta key with a different logo if it bothers you just put a sticker over it. I’d never complain about extra keys or an extra sensor (that can be supported later) and I’m not sure why it’s a problem in the first place. The tutorial linked was just if you wanted coreboot.

The surface pro 3 I used had everything working out of box with Ubuntu (Gnome was great on touchscreen). It was very clean. I also love OSX, it is just like Linux for the most part except I can use more software and use the same CLI stuff I’d use on Linux. I don’t care to install it over OSX on a MacBook, is there something you find lacking on it?


I've used Linux professionally and as a hobbyist for 10+ years. While I've had forays with chrome OS and osx, I recently found that I both wanted the dev environment of Linux and I required 64GB of ram and an NVidia GPU for the development I was looking to use the machine for. Throwing an additional wrinkle into the mix, the nvidia gpus have made huge strides in mobile power consumption over the last 4 years. Interestingly Linux on the above machine now also has broader gaming support than OSX as well.


Have you heard of VFIO? It’s able to emulate the GPU through the Windows driver virtually so you’ll have even more gaming support on Linux.


Unfortunately the competitiveness of x86 for desktop is completely lost now. Apple has destroyed x86.

If only Apple had a decent API for GPGPU programming!


I am a recent convert to Linux Desktop and it doesn’t sound like you’ve used Linux Desktop lately. I use Ubuntu 20.04 and it is far better than Windows or macOS.


It depends a lot on an individual’s needs/preferences. For example if one prefers a macOS-like environment with a global menubar and such, the closest they can probably get is heavily customized KDE, which will still have shortcomings like some apps not integrating with your global menubar. GNOME is closer to iPadOS than macOS, and elementary/Pantheon aesthetically resembles macOS but doesn’t function like it.

There’s tons of options for Win9x desktop clones, though. The best of those IMO is Cinnamon, or if configured correctly XFCE and Budgie.


Well, sure, if you want macOS then macOS will be your best bet. I can’t imagine wanting that very particular and often very awkward top menu bar functionality. I was a heavily invested macOS user for many years and always found it a minor aggravation that I could only have one application’s menu bar up at a time.


It’s the other way around for me. I use 27”+ monitors most of the time, which makes maximizing windows a waste of screen real estate in most circumstances, so I tend to have odd sized windows which means chasing menubars around the screen under Windows and Linux.

Also, increasingly Windows+Linux apps are eschewing menubars entirely in favor of hamburger menus or nothing at all (!!!) which is intensely frustrating. With a system-owned global menubar there’s no excuse for the developer to not have menus.

Unfortunately many of the same apps that are resorting to hamburger menus don’t expose their menus through dbus or something similar which breaks global menubars in KDE and those added to other DEs with extensions. I really really wish there were an XDG standard for Linux apps to programmatically expose menus with.


Terrible state? Then why am I enjoying using it over Windows and Mac OS every day, to the point I'm going out of my way to convince employers I need to use Linux to be effective?

Windows is the most annoying and privacy neglecting operating system in the world, and Apple macbooks have so many random issues that our standus is about those weekly.


Does the Linux ecosystem really need yet another desktop environment? I get that sometimes a group of volunteers and enthusiasts get together to start such a project, but how does it make sense for a business like System76 to write their own instead of forking a different DE with decent support already?

There are so many desktop environments already, all causing grief for anyone trying to switch to Linux with their own stupid choices and incompatibilities. It's probably too early to say anything about System76's project, but I fear it'll only complicate Linux adoption more, hurting their own sales in the long term.


Even though the Linux ecosystem does not need another desktop environment, creating a new desktop environment is very much in the spirit of how the Linux world does things. It allows for the introduction of new ideas without disrupting existing users or fighting battles to get those ideas incorporated into existing projects. If the ideas do turn out to be popular, they will either be adopted by other desktop environments or the adoption of the new desktop environment will grow to fill its niche.

I find it paradoxical that people would question the need for a competitive marketplace of ideas in societies that tout competitive marketplaces for businesses. I also find it paradoxical that societies that tout individuality and freedom would question the need for others to express those very values, in preference of conformity and centralized decision making. We have seen the consequences when it comes to both commercial products and open source projects. Just consider the uproar of when KDE, Gnome, or Windows changes the user interface in controversial ways.

Yes, it does cost Linux in terms of user base. On the other hand, it is better (in my opinion) for the open source community to differentiate itself based upon its core values and to ensure its long term viability because of that.

The past is littered with failed companies that tried to take on the juggernauts while Linux has survived. A big part of the reason for Linux's survival is it's fluidity. When one project stalls, another can take over. When one group's needs are unmet, a new project can emerge.


The main problem is manpower scarcity. Every time fragmentation increases, typically each project gets a bit weaker - from a situation where they are already very very weak.

> When one project stalls, another can take over.

Desktop environments are too big an effort to see this sort of dynamic. And it shows: the two major projects after 25 years are still the very first two. Around them we have a plethora of little projects who typically die as soon as their main sponsor dies, and contribute very little "R&D" to the main two - in fact, KDE and GNOME more often than not push experiments that the minnows then implement or reject.


There is often strength in inefficient redundancy. For one, it allows smaller groups of people to act in empowered ways without a lot of communication and coordination overhead.

I also don't see it as necessarily a zero sum game. The choice is not always "do thing A or contribute to a similar incumbent project B" but "do my own thing A or nothing at all, because B doesn't want my idea."


> The main problem is manpower scarcity.

A new popular project has the potential to bring in more users.


I'm fine with the marketplace of ideas and all that but linux has plenty of shiny desktop environments. This was never really an impediment to its success.

what desktop linux is really lacking (especially with respect to hardware compatibility) though is really good QA.

It might have been coincidental but i can still remember when ubuntu threw it's weight behind unity after 10.04 (which i remember fondly coz it was absolutely rock solid) and quality really dropped off for a few years.

it's a perpetual problem with FOSS that people chase shiny baubles and underrate fundamental, boring stability and quality (or, for that matter, power usage).

This is somewhere where MS actually has a non-unfair advantage coz it takes stability, QA and power usage very seriously on windows.


> Even though the Linux ecosystem does not need another desktop environment, creating a new desktop environment is very much in the spirit of how the Linux world does things

Playing devil’s advocate herem by this logic we should also splinter the kernel development for multiple, competing, projects.


The open source world has the BSD kernels in addition to the Linux kernel. There are also other open source operating systems based upon their own kernel, like Haiku. Each kernel is backed by developers who have their own particular vision, just as each desktop environment is backed by developers with their own particular vision.

I think this is a better comparison since only a few desktop environments are forks of other desktop environments, and most of the viable ones are forks of Gnome (much as most of the viable forks of kernels are forks of BSD).


> I find it paradoxical

The word you're looking is "contradictory"...


On the other hand... suppose they get it right?

A desktop on Linux that looks good and works, and is shipped pre-installed on desktops and laptops like.... Windows and MacOS?

The chances are pretty small, but if they want to write their own desktop, then good luck to them.

There are enough Rust enthusiasts, that if they choose to also open source it, they'll likely make a lot more progress too. This is the kind of thing that the 'rewrite it in Rust' crowd get excited about.


All that can be better done by polishing an existing desktop. KDE is my preference and just needs a bit of work. GNOME is popular as well and some effort would help. Doing their own thing just means duplicating 20 years of effort that those projects have done.


I love KDE to bits, but it always looks like it only needs a bit of work, 10. and then its developers put in a fuckton of impressive work, and they release the next Plasma with ginormous changelog of fixes, fixes, and fixes, and you start using it, and find that it would need a little bit of work… GOTO 10.


KDE seems to suffer more than most FOSS projects from everybody wanting to build the shiny thing and nobody wanting to do the grunt work.

Nonetheless ive found it to be much more stable in the last 18 months. They have recognized their problem and improved.


Lately, they do a lot of grunt work, I’ll give them that. However it looks like some use cases I have routinely seem to be either extremely uncommon among the devs, or they have learned in 25 years to simply evade whatever path is known to cause bugs and got a blind spot, or both.

My use case: a HiDPI muxed dual-GPU laptop with one or two also HiDPI monitors plugged in sometimes, but I try Wayland session once in a while to see if we’re there yet. This seems to konfuse KScreen enough that it sometimes treats 200% scale as if it was 400%.


No, because you don't control the base project. For example, GNOME had a recent article about removing borders for buttons. I personally find that decision terrible. If you don't want to follow that decision, you're basically going to have to maintain a fork.

> Doing their own thing just means duplicating 20 years of effort that those projects have done.

Not really, because part of that time is spent learning things, trying thigns, and part of that time may be unnecessary.


Or you could just learn and adapt as people always do and get used to having buttons with no borders, or the colors being slightly different, or whatever the issue is. I think it really is ridiculous how the userspace people will get into petty fights and fork things over such minor issues, it makes the whole community look bad and look like nobody is getting along. For whatever reason the kernel doesn't seem to have this problem, but then again, I guess only a handful of people will ever care if a new kernel API has typos in the header.


I am relatively tolerant of minor UI issues, but I think the kernel doesn't have this problem for reasons that will probably never translate to desktop environment development.

It is a much more difficult to maintain a different kernel than it is a different desktop environment. So there is a huge incentive to cooperate on one kernel, even among companies with wildly different concerns (e.g. embedded IoT devices vs. cloud servers).

The kernel is also developed with an entirely different support culture than, say, Gnome. Backward compatibility for all supported use cases is taken extremely seriously by kernel developers. If it works on today's Linux kernel you can be almost assured it will work in 5 or 10 years. So, kernel users (i.e. developers, distro maintainers, etc.) stay happy because their stuff doesn't break.

Contrast this with the more "opinionated" DEs and you see features yanked and changed at a comparably dizzying rate. So, DE users experience a rate of change and support dynamic that is actually much "worse" than kernel users do.


As someone who has been hacking on desktop stuff for a while, I totally disagree with your comment.

Maintaining a different desktop is a massive undertaking. The total amount of lines of code in GNOME or KDE is comparable to the lines of code in the kernel. It is no joke to make a new desktop environment, to the tune of hundreds of millions of dollars. It's not just a matter of take GNOME and replace the window manager and then you're done. But I suspect that is what System76 will start with and then they'll see how much money they can raise from that. (Probably not much if Purism is any indication)

Backwards compatibility to the kernel only matters to the syscall API. There are areas of the kernel that get quite a lot of churn. Or things such as obsolete/unmaintained drivers and architectures getting removed. But nobody complains about those because it only matters to driver developers or other low-level people like the systemd maintainers. And when something broken does make it into mainline, the few people who get affected by those drivers who do complain get told "too bad, there is no money/time to fix it, buy new hardware or pay a support vendor" or something like that. You know, the usual thing you hear from any open source project. I really don't see how the support culture is much different. I know it's common for people to call out GNOME but I never understood any of the complaints there, you can still grab GTK1 and GTK2 and compile them if you really want to use those, as bad an idea as it may be. Those are about as unmaintained and crufty as any of the older areas in the kernel, and they're still technically around.


Having already lived through Windows XP to Windows 10, I don't want to waste my life adapting to the latest idea of designers every 2 years.


I don't really get it. I mean, I hear your frustration, but you're saying you would rather spend your life maintaining a fork? I hope you see how that's also a bad option... How can this be done so everybody wins?


No, what I'm saying is that I slowly transition to software that changes in a way I dislike less. I went from Windows to Ubuntu, from Ubuntu to Pop. I think that in a few years I will be one of those minimalist DE/WM users because those things change even less.


I used a minimalist WM for many years but stopped because I realized I was just being stubborn and resisting change for no reason. It ended up being more work to constantly keep trying to compensate for things that are missing in such a "minimalist" environment.

If you ask me, it pays to just learn to be flexible and learn to appreciate and work with the strengths of a software even if you don't like some aspects of it.


The bulk of my Linux experience has been with minimalist environments. These days, my attempts to use a desktop environment ends in frustration. Why? It is not as though there is anything wrong with the desktop environments. In fact, it's a bit refreshing to install a fresh system, tweak a few settings in the graphical settings managers, then get to work.

The reason for the minimalist approach simple enough, I am accustomed to to it. Experiences with desktop environments tend to start with the idyllic romantic honeymoon and end with the realization that, after the initial setup, I am not actually using it for anything aside from launching programs and managing windows. The bulk of my time is being spent in a handful of actual applications, so why would I want to put up with all of the additional clutter?


On the other hand, I have a friend that's been using minimalist systems more and more, we talk a lot and he seems to have no problems with productivity, and maintaining/compensating doesn't take him much time.

> If you ask me, it pays to just learn to be flexible and learn to appreciate and work with the strengths of a software even if you don't like some aspects of it.

I want to be flexible in my work, but not with my tools. Having to be flexible with my tools means that I can never reach a level of mastery. I would be building my skills on shaky ground.


My background is human machine interaction. The lack of button borders is a big step back. I can adapt to fads, but I don't see why I should be asked to adapt to a fad that is objectively worse for usability.


> KDE is my preference and just needs a bit of work. GNOME is popular as well and some effort would help.

GNOME and KDE have needed help for the past 15 years. If it hasn’t happened by now, it’s not going to happen.


KDE wasn’t the first gui for Linux. Wasn’t writing that duplicating effort? If it wasn’t for people rewriting things because it didn’t suit them we wouldn’t have most of the modern software we have today.


Before KDE there wasn't any consistent toolkit to make consistent apps on. There are a lot of frameworks in KDE that get reused to do powerful things and make them work. X11 did some things like the middle button paste, but there are a lot of things missing and so nobody had it. KDE fixed those. (And GNOME too )


> Before KDE there wasn't any consistent toolkit to make consistent apps on.

That's just not true. CDE was released before KDE, and the Motif widget set CDE uses is older still.


Its true on Linux. It wasn't used because it wasn't free software and you had to pay to use it, it was a default propietary UNIX GUI on commercial UNIX computers. You're assuming Motif+CDE has always been open source and used on Linux, it became free software too late, GNOME and KDE became better DE, were free, it wasn't as good as those alternatives by that time and nobody had any incentive to switch to CDE (desktop Linux didn’t even use it aside from a blip that RH did). Motif was propietary software until 2012 and subject to royalty fees, the same could be said about OSS for linux audio, which they abandoned for ALSA since it wasn't proprietary (OSS went from free to proprietary so it was abandoned, by the time it was free again nobody wanted to use it), except nobody used CDE or motif on linux aside from RH for a short time because it wasn't free software.


I'm not assuming those things. Motif+CDE wasn't open source, but it was in use on Linux, just not officially. Sticklers could use Lesstiff instead.


Get what right? The existing DEs are rather excellent.


For most use cases. There are a set of odd behaviors that turn some people away. LinusTechTips is doing a set of videos where they (Linus & Luke) installed Linux based OSs on their home gaming desktops. They are QAing Linux as "the average tech enthusiast would see it" and it is very insightful.

Stream discussion 1: https://youtu.be/mvk5tVMZQ_U?t=1247

Stream discussion 2: https://youtu.be/mN3QFw2BEcw?t=3587

Stream discussion 3: https://youtu.be/5MAlgKdsdvg?t=1820

Stream discussion 4: https://youtu.be/h0boUNc1JOg?t=3148

These are just their discussions (foreshadowing the upcoming videos) but there is some really insightful discussion about what is still hard for someone who hasn't used Linux and what isn't. Some of their first hurdles they had to overcome was issues with their DE, window manager, and other random things that sort of worked correctly but needed a lot of polish to be "just right" or competitive with Windows or MacOS for most users.


And those discussions on the WAN Show really highlight how much of a bubble some people live in. People disagreeing that there's anything wrong with the Linux way of doing things. People not realizing that there are plenty of people who sit in a spot between hacker nerd and web browsing grandmother.

Linus is coming at it from a very realistic angle, but some people are very defensive about the criticisms. They're basically telling him he's "holding it wrong".

The Linux community needs to listen to criticisms and find ways to improve the user experience. The nature of choice when it comes to everything you run on Linux means that nothing needs to be compromised for the power user. So what's the harm in making the default experience more friendly and seamless?


> People disagreeing that there's anything wrong with the Linux way of doing things

There is a lot wrong with Linux usability. But Linux != desktop environments.

The main usability problems that I've encountered with my non-tech friends are app availability and hardware support. Neither of those will be affected by rewriting a desktop environment from scratch in another language.


This has been pretty interesting to watch, because the dichotomy between Luke and Linus is what really interests me. Linus' cynicism is what lead him to reject oft-requested distros like Fedora (which he wrote off as a "meme"), and with nearly every problem he has it seems to be exacerbated into a total disaster. I've seen this kind of behavior before though, where heavy Windows/MacOS users unknowingly engage in self-sabotage when they try out a new OS. Nothing new, but I was surprised that Linus from Linus Tech Tips was the one uninstalling his own desktop environment.

Even more surprising was how calmly Luke handled everything. Contrary to Linus' disposition, Luke meets every problem with a thoughtful solution and a willingness to learn, which leaves me rather unsurprised that his Linux experience has gone a lot smoother. On the latest WAN show, Linus flies off on a six-minute tangent where he tries to argue that CLI tools shouldn't exist, only to have the chat dogpile him and remind him that piping between CLI programs is an essential component of Linux. Luke caught onto this pretty quickly, and played devil's advocate, while Linus continued spinning his wheels with the 'muh accessability' bit.

In other words, to nobodies surprise, Linus lets his ego stand in the way of correct technical solutions.


> I was surprised that Linus from Linus Tech Tips was the one uninstalling his own desktop environment.

I didn’t find it that surprising, mainly because nobody getting into desktop Linux without prior knowledge is going to expect any connection whatsoever between a random third party app and the OS’ desktop environment. It’s like if clamping a smartphone mount to your car’s dash caused the car’s rear left wheel to fly off, it’s completely unintuitive and unexpected.

And realistically, the two shouldn’t have any influence on each other. As much as he should’ve read the package manager’s warning, it shouldn’t have been a possibility in the first place.

> On the latest WAN show, Linus flies off on a six-minute tangent where he tries to argue that CLI tools shouldn't exist, only to have the chat dogpile him and remind him that piping between CLI programs is an essential component of Linux. Luke caught onto this pretty quickly, and played devil's advocate, while Linus continued spinning his wheels with the 'muh accessability' bit.

This feels like a mischaracterization. His argument wasn’t a that CLI tools shouldn’t exist, but instead that for 99.9% of common use cases pulling them out shouldn’t be required.


> In other words, to nobodies surprise, Linus lets his ego stand in the way of correct technical solutions.

I also noticed the difference between the two, and you highlight important aspects of it. But are you sure the cause is ego so much as age?

When I got into Linux, I was a kid. I had a lot of time, and that gave me a certain kind of patience and determination for tinkering, for customizing, for breaking and fixing things, and for learning to do things in new ways.

By comparison, nowadays I'm pretty much a grumpy old man when it comes to my desktop environment and software management tools: I like using my computer a handful of ways, and when I am in an environment that can't support a pretty similar workflow, I find it very irritating.

Linus also has a more bespoke setup, using a somewhat cutting edge hardware configuration, and he likely has more responsibilities than Luke at home (he has children!).

I do think there is an ego element: Linus thinks of himself as someone who's technically competent— who knows how to use computers— and being in an environment where working like he's used to doesn't work well is probably especially frustrating on that basis. But I don't think it's all of it.

I hope other readers don't dismiss all of your observations just because of your apparent personal animus for Linus.

This, though:

> In other words, to nobodies surprise, Linus lets his ego stand in the way of correct technical solutions. > correct technical solutions

We should be pretty careful about how we use the concept of ‘correctness’ when we're talking about desktop operating systems run on our personal computers for activities we undertake for pleasure. Otherwise we can end up saying something pretty silly.


I wI’ll ignore the question whether piping between CLI programs is an essential component of Linux, the OS, but if it is one of Linux, the UI, Linux will never get significant desktop market share (1)

In the 1980’s, computer users had to use a CLI, but very few of them could do more than start programs. Using output redirection or pipelines was extremely rare; understanding them (rather then copy-pasting magic incantations from computer magazines) even rarer.

I don’t see why that would be different today.

(1) unless the size of the desktop computer market shrinks significantly, of course. If we get to a situation where most desktop computer users are programmers, that may change.


I really hate to get pedantic here, but Linux is not an OS or a UI. Linux is a kernel, and the kernel's sole obligation is to handle processes and programs that exist outside of userland, and that's where redirection is a huge deal. Whether or not the user chooses to engage with it through a shell or CLI is up to them, but the feature is decidedly integral to running any Linux-based operating system these days.


> Linus' cynicism is what lead him to reject oft-requested distros like Fedora (which he wrote off as a "meme")

I don't think this is uncommon behavior for the name of a product to effect who is willing to try it out. He likely thought Fedora was being suggested by his users because of the meme of fedoras. Google "fedora meme" for more information.

Now, is this the most rational behavior? No, not at all but it is what you need to expect from the average user. Branding is important. If I started an advanced system service company for IT and called my business "ASS Help" I'm going to get a lot of errant requests.

> with nearly every problem he has it seems to be exacerbated into a total disaster

Linus plays an energetic character. I wouldn't put much stock into how "irate" he seems. I would however expect anyone who hits similar roadblocks to him to actually act this way. If an average user plugs in another monitor and it doesn't instantly work they will be very upset.

> Even more surprising was how calmly Luke handled everything

Also important to note: Luke adjacent to software developers, has done some software development work, and has used Linux before for an extended period of time.

Luke also plays the straight faced silent type in their Penn and Teller.

> Linus flies off on a six-minute tangent where he tries to argue that CLI tools shouldn't exist, only to have the chat dogpile him and remind him that piping between CLI programs is an essential component of Linux

1. I don't think Linus thinks CLI tools should not exist (as he uses them often for advanced tasks) but he feels like they shouldn't be the only option. As someone who daily drives Linux on my desktop, laptop, and work computers since 201Xs I rarely use the command line for average user things.

2. The end consumer user of a product doesn't really care about the philosophy of the software they are using for. I'd even go so far as to say that the Linux community doesn't even feel this way. If we did, we would all be using BSD-style 100% POSIX compliant systems. I'm much faster with the CLI than I am with a GUI for most development related tasks (installing software, unzipping things, moving files, diagnosing performance things) but that is not representative of the average user. For example: ask the average Mac power user how to check how overworked their CPU is. Will they pull out `top`? Probably not.

> Linus continued spinning his wheels with the 'muh accessability' bit

Mockingly saying "muh accessibility" doesn't address the concern: if we want Linux adoption on the desktop we need to make it so that the average Windows or MacOS user can be productive in the system without any CLI involvement. Or, at least, no more CLI involvement than with Windows and Mac.

> Linus lets his ego stand in the way of correct technical solutions

I think, ironically, this is the ego of the Linux community. We cannot expect users to be rational. We need to make things simpler (not in terms of "purity" like POSIX adherence) for the end user. Linus brings up a great point: almost no distro has a full time team working to A/B test the OS to see if it's friendly for new users. I can think of only one instance of this happening sometime around 2015: Gnome.

Also, if this was pure ego, Linus' opinions would be very different. From this Friday's episode Luke was negative on the prospects of the Steam Deck being shipped with Linux while Linus thinks it will be great. I agree with Linus, and the reason he thinks it will work great. Steam Deck, and Steam OS, will tune all the nobs and installed packages in a standard way for game devs to target. This makes it simple! Linus and Luke both agreed that for non-gaming normal user tasks Linux OSs are currently at an A to an A+ in terms of usability.


> 1. I don't think Linus thinks CLI tools should not exist (as he uses them often for advanced tasks) but he feels like they shouldn't be the only option. As someone who daily drives Linux on my desktop, laptop, and work computers since 201Xs I rarely use the command line for average user things.

Yeah, I totally understand his attitude on this. I'm not a daily Linux user myself and it's been about a year since I last tried it so please take what I say with a huge grain of salt, but all the times I've tried it out and set up my dev environment, I've run into issues which the forum or Stack usually tells me to resolve using the command line.

It's not that I personally mind using the command line, since I use it all day long as a programmer, but there have been plenty of times where I don't feel it's "warranted". People shouldn't be forced to touch the command line unless it's really necessary.

In general whenever I try out Linux I run into a lot of things in the UI that seem just plain strange and not quite right, even though I understand you can't expect things to work the way you're used to on a different system.


They really aren't.

Substantiation for some idiots who will downvote me despite parent comment not providing substantiation: Slowness, slowness, bugs, bugs, more bugs, security vulnerabilities mostly due to insane NIH ways of doing basic IPC stuff.


So exactly like every other non-Linux desktop environment?

You're not making the case for not using Linux here.


Sorry, I was not following whatever the parents were talking about. I just saw someone claiming Linux DEs are excellent and reacted to that.


Hit the sweet spot for consumers. It’s been the year of the Linux desktop for a couple of decades now.


IMO the DEs themselves are excellent, the problems that keep consumers from adopting Linux have nothing to do with DEs themselves (network effects, hardware support, etc.).

The only reason my wife doesn't use Linux is b/c it doesn't have the apps she wants, and hardware issues (Bluetooth headsets don't work without ruining the audio quality, sleep/hibernation is hit-or-miss, etc.). I just don't see any issues with DEs that are preventing people from using Linux...I would love to shown wrong, because I would love to see more Linux adoption.

But this just seems like a waste of time.


> It’s been the year of the Linux desktop for a couple of decades now.

Funnily enough, since when Linux started and somehow some people thought it'd be the "Windows killer", Linux now powers pretty much the entire real world (servers / routers / phones / appliances). There are billions of devices running Linux.

And still... Because somehow Linux never got to more than 2.5% desktop market share, many see Linux as a failure.

This is both funny and mindboggling.


Not in itself. But the lack of uniformity across linux distributions has held it back quite long and you could argue that the recent convergence on things like snap, flatpak and Steam to distribute common software packages and games instead of the native packaging that each linux distribution has, is actually a good thing and has made Linux somewhat more of a common choice on laptops in the industry in recent years.

If you have any linux distribution with snapd installed, there is a wide range of commercial and OSS software that you can install. E.g. Slack, which is used in many companies. Chrome, Spotify, and many other things. Of course the experience is not always that good and there might be better ways to get the same software, depending on what distribution you are using. But it's a nice baseline way of getting what you need going without too much fuss.

And at least you are not dealing with n different packages for n distributions in various states of obsolescence, support, and brokenness, etc. anymore. Not quite as easy as installing stuff on a Mac but it definitely narrowed the gap a lot and makes it easier for developers to support their software on Linux as well.

The status quo for linux desktop environments has been for many years that there are many options to choose from and that most software tends to work across them without much issues. So, having another one is probably not that harmful. Though you could question whether it will move the needle in any way. It's a nice way for System 76 to show that they care at least and who knows they might actually do a decent job of it and gain some fans.

If I'd be buying a laptop to run linux, I'd probably want to install it myself and not be locked into vendor specific software choices. But that's just me. I'm sure they would not stop me from doing that.


> Does the Linux ecosystem really need yet another desktop environment?

It depends. If you're talking about one written in C/C++ with JavaScript bindings, there's plenty of those already. And they all suffer the same memory/type bugs that make them unreliable and resource-intensive.

I'm not saying rust is a silver bullet, but in my experience the compiler is pretty good at preventing footguns, and the strong type system makes it easier to fork and extend than C-style "send raw bytes to this memory region and pray your gods" APIs. Overall i'm curious to see where this goes!

> hurting their own sales in the long term

I don't think people buy a laptop for a specific desktop environment. In any case, switching desktop environment / distro should take under an hour.


I use a lot of different DEs because I'm a tinkerer, and I've never encountered a single memory bug in any DE I've ever used.


Gnome used to have a giant memory leak in its JS implementation [0]. It’s actually what caused me to go back to windows.

[0] https://phoronix.com/scan.php?page=news_item&px=GNOME-Shell-...


Memory leaks are not uncommon on GNOME, and i assume on other desktops as well. But Rust is not just good for preventing memory bugs: strong typing prevents lots of logic bugs as well.

Also, rust's "fearless refactoring" paradigm enables for incremental optimization which i've found much harder to deal with in other programming languages. I think that's a point worth considering for a big piece of engineering like a desktop environment.

EDIT: Also memory bugs are not just "memory leaks". There's plenty of subtle bugs introduced by off-by-one errors and undefined behavior. Just because memory usage doesn't rise unexpectedly doesn't mean software is working as intending. I don't know about you but i personally have had weird bugs with all desktops i've tried so far.


> But Rust is not just good for preventing memory bugs: strong typing prevents lots of logic bugs as well.

Arc<> does exist though, and is used quite extensively in the rust ecosystem.


I personally never had problems with Arc<RwLock<T>>. The docs appear really clear about in what situations precisely it can be unsafe (if T is not Send+Sync): https://doc.rust-lang.org/std/sync/struct.Arc.html

Am i missing something?

Disclaimer: i'm not a good programmer, nor a low-level programmer; i use Rust as a faster/safer python-like high-level scripting language


We all have heard the elevator pitch for Rust by now, since all it takes is for a submission to say "written in Rust" for it to appear on the front page of HN.


Do not worry. You will be assimilated.


Two examples searching for "memory leak" on DE bug trackers:

MATE: https://github.com/search?q=org%3Amate-desktop+%22memory+lea... (265 results)

KDE: https://bugs.kde.org/buglist.cgi?quicksearch=%22memory%20lea... (97 results)

That's just for the ones we found. I would be curious to run a full DE through valgrind :)

EDIT: Anecdotal datapoint ahead: i just had to kill atril (MATE PDF viewer) on a machine where it was eating 6GB RAM after running for a few days.


> There are so many desktop environments already, all causing grief for anyone trying to switch to Linux with their own stupid choices and incompatibilities.

The current desktop environment situation is more uniform than ever and the situation is quite good and easy for users. Ubuntu and Fedora + RHEL are all-in on Gnome with no changes to the situation in sight, and KDE is a high quality runner up with users enjoying good compatibility between these. Most specialized desktop distros like SteamOS, Clear Linux, etc are also Gnome.


> Does the Linux ecosystem really need yet another desktop environment?

No, and fragmenting the community even further only hurts the ecosystem as a whole.

Sometimes putting your ego on a side and contributing to existing projects does wonders. Unfortunately the RIIR crowd might be unable to do it.


It needs a winning desktop with a real corporate sponsor. Gnome and kde are too bureaucratic for a "good" desktop.

A leading hardware vendor is a great starting point. It can force shame other DEs to support nonsexy but necessary features, it might spark other Linux hardware vendors to join / contribute.

If a viable high end Linux hardware market can be spawned with apple-like margins then things can progress.

But it might just be a other dead end. At least someone with resources is trying.


Sure its another name in the hat but i would argue that also is the benefit. Projects go unmaintained without warning, switch ownership, etc. If system 76 provides extensibility , a good LTS, and eliminates or replaces a lot of "up stream" code then its less code that can change hands or have embedded exploits. Wether it makes it harder to linux or not depends on the documentation.


> Does the Linux ecosystem really need yet another desktop environment?

I think it's a recent trend that as established Linux distributions have largely gone beyond their phase of trying to differentiate through changing the desktop, now sticking much closer to an upstream default Plasma or Gnome, the idea of "we need our own HMI to differentiate our integrated product offering" is coming more from the folks doing hardware. A lot of these products are boutique offerings that need higher margins to compensate for lower volume, likely driving the thinking toward software as value-add.

e.g. Purism with Phosh for the Librem, System76 doing this, etc.


> "we need our own HMI to differentiate our integrated product offering"

I don't think it's so much about differentiating. It's about funneling resources towards innovation. Some distros have become pretty conservative over time. Don't get me wrong, i like that my distro doesn't just apply thousands of random patches introducing subtle bugs.

But at the same time, System76's PopOS appears to be among the few spiritual descendants of Mandriva's user-friendliness: if these few corporations who have a few bucks to spare are not investing in bettering the desktop experience, who will?

I'm personally unconvinced by current desktop environments: they're either too complex/opinionated and ridden with bugs (GNOME/KDE) or too minimal and not packaged with user-friendly apps (i3/openbox). Those that aim for the sweet spot in the middle usually don't have enough resources to iron out all the bugs (MATE/Cinnamon/Budgie/LxQt...), and rustc compiler is pretty good at ironing out all the bugs you write before they end up in a "usable" binary.


I agree that yet another desktop is not needed. Jeff Booth's recent book discusses that a challenger needs a 10x advantage to overtake a large incumbent. Can another desktop, this with Rust, bring 10x? This looks like another distraction and splintering of focus.


> Can another desktop, this with Rust, bring 10x?

I believe so. Rust is a much higher-level language than C so it's easier to hack on, but at the same time has much stronger guarantees.

Overall, its type system prevents many many bugs (it is my personal experience that when code compiles, it just works) and enables "fearless refactoring" which for something as complex as a desktop environment is a killer feature.

I don't know if counting on GTK as a toolkit is a good choice (though it has certain benefits eg for accessibility) but for sure writing a desktop environment in Rust is an interesting experiment.


Feels like we're in a bit of a local minima when it comes to the design and functionality of a desktop. Getting out of that local minima will take a lot of effort.

I don't know if there's much advantage to give outside of a paradigm switch in how windowing works a la tiling. Even then tiling isn't for everyone or every task.

I do have many users in my day job on Linux laptops/VDI (Gnome 3/Mate) with no experience prior and they have adapted fantastically. So much easier to support than Windows.


Maybe a whatwg equivalent for desktop ux is needed ?


To an end user buying their laptop, it probably won’t matter as long as they put the effort in.


As far as I can tell, this is the extent of what’s been discussed in public (mmstick is a System76 engineer)

> mmstick: It will be its own desktop.

> SevenSidedSube: Will the DE be forked from GNOME?

> mmstick: No it is its own thing written in Rust.

If nothing else, it’s encouraging to see a large GUI project in Rust as it will surely lift the (nascent) state of the art there in that area. In the best case, maybe this will get me back on Linux for the desktop.


What end-user problems are they solving though? I only see some quibbles about customization/theming, which seems like an insane reason to drop the entire stack and write one from scratch. From the information given, this just seems like riding the Rust hype wave.


Well, for the record, the current Cosmic desktop is pretty limited. It's clear that Pop!OS has some really good ideas in the desktop space, but they're frankly held back by their reliance on GNOME as a starting point. Particularly these days, with how disastrous the release of GNOME 40 was, I can understand wanting to step away from that dev team. Maybe choosing Rust was hype-driven decision, but writing a new desktop was certainly not uncalled for.


> Maybe choosing Rust was hype-driven decision,

They've been using Rust internally for various tools already, so I think this decision has been motivated by their positive experience with Rust


GNOME keeps making absurdly bad decisions about pretty much everything, and wantonly removing features that even average desktop users expect.

For example, you need an extension to enable putting files/icons on the desktop (!?!?!). And the APIs for GNOME extensions are constantly changing, so the extensions are constantly breaking. Not to mention, the extensions are written in JavaScript and if they crash, the entire shell crashes. It's absolutely insane.

It seems like they want to lock down the UI to customization even more than MacOS and Windows do. I see GNOME as basically a dead end at this point.


> For example, you need an extension to enable putting files/icons on the desktop (!?!?!).

Was so happy about the decision to remove desktop icons. You basically never get there anyways and its just cluttering up the background when you do.

Here's a funny thread about this: https://www.reddit.com/r/gnome/comments/l8euqf/i_get_why_the...

Btw, there were some misconceptions about "disallowing theming". I recommend giving this a read: https://blogs.gnome.org/alatiera/2021/09/18/the-truth-they-a...

I totally understand your point about extensions though.


>if they crash, the entire shell crashes

And the entire session if you're on Wayland


It will be interesting to see what GUI library they chose and on what concepts they'll focus. Rust is an amazing language that's maybe not particularly well suited for GUIs - any progress in that direction will

Would be kinda funny/sad if they chose gtk-rs.


I think that they choose gtk-rs because they have experience with it, if you take a look most stuff is written in Rust with gtk-rs. Also I think that they say they won't drop gtk.


Good to see it's not following gnome. V3/4 are a disaster.


... which GTK is a part of, regardless of what desktop (what does that even mean?) you use. on a mid range off the shelf laptop, practically any GTK based program is unusable because it's too slow, even in a minimal tiling WM.

i guess gnome advocates would consider GTK as a high end application, but i digress.


I’m not exactly a fan of GTK but this surprises me. I toy with Linux on an old circa-2008 QX9300/Quadro FX770M laptop from time to time and can’t recall GTK3 apps being particularly slow on it. GNOME itself is a bit sluggish but that’s no surprise.


GTK3 is indeed slow. GTK2 is fast and Gnome2 was fast (MATE is fast).


This is news to me, but not surprising. After all, Jeremy Soller (A.K.A Jackpot51), is both a system 76 engineer and a long time contributor to Redox OS. Redox is a rust native OS[1].

[1] https://www.redox-os.org/screens/


Discussion: https://news.ycombinator.com/item?id=29131594.

Pop _OS to use it own desktop environment, written in Rust (reddit.com)

158 points by tuananh 18 hours ago | 128 comments


I quite like PopOS and also their extension on top of Gnome Shell. I can get that Gnome is frustrating to work with. I'd love to know why they discounted switching KDE. NIH? Outdated biases around the QT license? Or something about the codebase that doesn't fit core objectives?


They don't even need to switch to Plasma. KDE is build on libraries [1] that build on Qt. You can build a custom desktop environment like LXQt [1] from them.

[1] https://develop.kde.org/products/frameworks/

[2] https://en.wikipedia.org/wiki/LXQt#/media/File:LXQt_0.10_-_A...


AFAIK they're sticking with Gtk. This answers the other question too: they want Gtk apps to continue to feel native.

Gtk in turn is winning probably because of license worries. So you could call it systemic bias.


Gtk and qt are both LGPL.

If I had to guess I assume the problem is C++.


Lack of bindings is a big problem with Qt that often gets ignored. Generally speaking people don’t want to write C++, even if Qt is nicer than average for writing UI with.


In theory it should be possible to use TypeScript or ClojureScript on top of QML. It's beyond my knowledge if this is enough to write applications. A few people have done some work in this regard, but none of the projects really took off:

https://groups.google.com/g/clojurescript/c/bSBfH1hazSg

https://www.reddit.com/r/Clojure/comments/erdo6t/desktop_app...

https://bugreports.qt.io/plugins/servlet/mobile#issue/QTBUG-...


I haven’t played with QML in quite some time but recall it being rather bare-bones compared to Qt Widgets, GTK, AppKit, etc and it felt a lot more mobile-oriented than any of those. I think any alternative to Qt Widgets or GTK is going to need to be more “batteries included”, with a wide variety of highly capable widgets ready to use out of the box.


The usability of KDE aside, it's not exactly the most lightweight interface. While a VM on my system can run GNOME without issues, a KDE one starts showing signs of slowdowns. Both are easily beaten by LXDE though, as crap as it is otherwise.

Given that they're doing it in Rust one'd hope that the end result could be both very usable and fast at the same time, but only time will tell.


KDE Plasma is generally less resource-intensive than Gnome, and has been for a number of years since it was optimized for low-power devices such as the original Pinebook and PinePhone (essentially low-end ARM SBCs, RPi3-class, in different boxes). VM performance may not be representative there.

Not that it's not a very valid use case to perform well in VMs, but that can be down to specific details of emulated drivers, etc. For example in a VM without good 3D acceleration Plasma can be run in software emulation of OpenGL -or- directly via CPU-based 2D rendering, and the latter is a lot speedier.


> The usability of KDE aside, it's not exactly the most lightweight interface.

I wonder if that is still true. I switched from MATE to KDE several months ago and from what I read, KDE invested a lot in optimization of their code (both cpu performance and memory use) in the last couple of years. I switched to KDE on all of my machines. The oldest one it is running on is a Thinkpad X200t with a Core 2 Duo (SL9400) and 4GB RAM (with SSD), and it is running fine when using it with chrome, okular, krita, ... I thought they were kinda forced to focus on optimization because of the development of plasma mobile.

Obviously, it'll still be beaten by LXDE, but compared to Gnome it should perform a lot better nowadays than some years ago.


I heard KDE still uses ~500MB RAM on idle, which is too much for older computers. I don't care for animations and hiDPI but i would care to have <100MB RAM usage and 0% CPU usage on idle.

EDIT: Also catering to slow hardware is not just about memory usage, it's also about how much you need to read from disk. In this regard, both GNOME and KDE are pretty bad when running from HDD.

EDIT2: For comparison, Haiku OS says 384MB RAM is the minimum to run the entire system with desktop environment.


>I heard KDE still uses ~500MB RAM on idle

Plasma is using around 225MB right now on my machine, plus a little bit (like 2 and 6MB for session and gdm).


Interesting, my Kubuntu VM uses like 1G when idle running nothing. Not sure how much of that is plasma, but it can't be a negligible amount.


Cool. I'll be sure to give it a try!


That may be true about the ~500MB RAM, I did not measure it or anything and I agree: if you want to go for <100MB RAM you'll need to look for something else. I actually used i3wm (with separate programs) before on my older computers, but I was pleasantly surprised by KDE performance and decided to stick with it.


I'm using KDE on a System76 Lemur, and it's snappy. It's also not a twelve-year old Thinkpad like my previous computer, for which KDE was not appropriate, but KDE is lighter relative to current hardware than it was eight or ten years ago, when I last used it in earnest on a machine that made sense. I never expected to use KDE again after my experience back then, but they've made it perform well while doing everything I could want a DE to do.


Surprised you mentioned LXDE and ignored lxqt. https://en.m.wikipedia.org/wiki/LXQt I find KDE fully featured and lightweight enough on every modern laptop and desktop I’ve used in the last decade. I haven’t had a reason to switch from KDE, it’s like a much better Windows GUI.


Tbh I've never heard of it, but it looks kinda cool.


I think people are correctly stating that desktop Linux problems are not correctly addressed, and their own desktop environment is unlikely to make a positive difference. Its essentially a hobby rust project of a tech company, no different than something like project ARA in google except its in software. System76 made it easier for some users to use with simple QOL features like by bundling the nvidia driver, and some addons for gnome, but their hardware is nothing special (Clevo OEM with 1080p screens, their laptop doesn't seem to have good aftermarket or even the option to replace the keyboard, the battery is internal only, the aftermarket for repair is going to be very expensive), not priced competitively, Windows default hardware like the Thinkpad I use don't lack any compatibility and I never had an issue with any Intel computers in the last decade. A business class laptop with a good aftermarket from OEMs such as the Thinkpad, Elitebook, and Latitude will allow your Linux laptop to have a very long lifespan since you can supply it with cheap replacement parts. They are not going to be able to replicate that aspect unless they sell as many laptops for years, although its possible they could just have computers that adapt to those parts I doubt that will happen.

I support their removal of Intel ME, its probably a reaction to Dell offering the same for their hardware, but its differentiation that is refreshing is that its a company sells a coreboot computer. https://blog.system76.com/post/168050597573/system76-me-firm...

The Linux desktop has a fragmented problem and this is going to fragment it more. Linux for servers rallied around universal CLI interfaces, and the most usable and successful consumer Linux is android (you can install launchers but they all hook the same way and there is a default).

Pinephone and Librem do the opposite and are essentially imitating ways that failed desktop Linux and are doomed to fail by fragmenting phone GUIs. Every problem will cause a fork and nothing users care about will be fixed, but you’ll be able to and essentially forced to make decisions about the many interfaces, how every fork has another way of doing it differently, and because they’re all essentially nothing more than patches that didn’t get upstreamed they’ll be abandoned.


> I think people are correctly stating that Linux problems are not correctly addressed

For example?


I mentioned fragmentation which this is going to make worst.

To reiterate, lets say you are a new Linux user, and you see there's tons of linux DE, there are over 600 links for new linux users about opinions on what the best desktop environment is, you are not just given choice, you are forced into choosing GNOME, MATE, CINNAMON, KDE, LxQT, LXDE, XFCE, i3, i3-gaps, awesomeWM, fluxbox, Deepin, Budgie, Pantheon, Enlighten etc and getting used to their apps and settings. Not only that, the distro with its own package manager will need to support that DE, and you will need to rely on them to update it and fix bugs you will encounter.

You can buy the System76 one you will get their DE and will probably need to stay on their forums for help, so why would you want to switch to linux? Just because you heard it was supposed to be easier to use and in reality even before you used it and did some light research you'd find the deluge of choices overwhelming and not easy.


Fragmentation is such a silly argument these days when you can install Steam, Spotify, Discord and Telegram on literally every standard Unix-like system these days. The "average person" you're describing isn't going to care about their package manager, their DE or their GTK theme, and why should they? 10 years ago, people used to complain about all these things that Linux couldn't do, and how that was the real reason it died. Nowadays that argument seems to have morphed into "there are to many ways to do things!" which seems pretty shallow to me.


According to you they don’t care about the DE, so System76 won’t help anyone by making a new one. Normal people according to you don’t care about user interface or ease of use (everyone adopted to Windows 8’s tiles and applauded the end of the outdated start menu), program support (aka package managers with prepackaged binaries which don’t matter since new Linux users can install from compiling source code), themes (beautiful interfaces and clashing UI don’t matter to new Linux users only advanced users).

If package managers didn’t matter, and you think the average new user wants to install Discord through command line you’re far too disconnected from reality. https://itsfoss.com/install-discord-linux/#traditional-metho... snaps and flatpak are slower so if package managers don’t matter you’re saying new Linux users will be happy with slow launches, worst performance and forced updates.

Linux 10 years ago was simultaneously not able to do things people cared about and had tons of DE you could choose from, which is the point. More DE is not the solution. Linux fragmentation doesn’t solve the issues people care about, GIMP was just as capable as photoshop but they insisted on 3 or more separate windows for their user interface, and only recently was that changed for instance but imagine if they just made different photoshop clones instead of fixing it.


> so System76 won’t help anyone by making a new one.

This is correct. The upgrade isn't for the end-user, it's for the System76 team that was tired of being forced to comply with another desktop's standards. Windows and MacOS users don't have this liberty though, so I say more power to them. It's too early to know if they succeeded or failed, but drawing conclusions this early would probably be a mistake.

> If the average new user wants to install Discord through command line you’re far too disconnected from reality.

The average user doesn't have to install Discord through the command line, you're cherry picking an example of how they can. Any GUI package manager with support for Flatpak or Snap (see: all of them) has access to prepackaged versions of most software people could want. We could sit here and argue about who's right and which system is wrong, but Linux works perfectly fine for me and thousands of other users.

> imagine if they just made different photoshop clones instead of fixing it.

Why? Photoshop is not GIMP, they're two completely separate programs with separate goals. Photoshop wants to be a comprehensive, professional photo manipulation suite with strong DRM and lock-in for their ecosystem of products. GIMP wants to be a casual photo editing tool that's unencumbered by licensing. You can run Photoshop on Linux if you really want, but most users realized there's plenty of free software that's better suited for their use case anyways.

Your response only solidifies the points I was making earlier. The argument against Linux is one of constantly moving goalposts and subtle, Pyrrhic victories. I won't judge you for staying away from it, but if you intend to shatter the Linux ethos you're going to need a lot more than that.


I use Linux and you ignored every point that addresses your points and assume nobody cares about the UI. They could easily contribute to another project or fork, and if DE don’t matter they don’t have to make one either.

Linux 10 years ago was simultaneously not able to do things people cared about and had tons of DE you could choose from, which is the point. More DE is not the solution. Linux fragmentation doesn’t solve the issues people care about and makes problems worst.

> The average user doesn't have to install Discord through the command line

So you changed your mind that that package managers don’t matter. Either they don’t matter and you build from source or they do and you want one with binaries. Which is it?

> You can run Photoshop on Linux if you really want, but most users realized there's plenty of free software that's better suited for their use case anyways.

Name a replacement for photoshop. Most users didn’t realize there’s plenty of better free software, they are resigned to using many programs because of fragmentation and they don’t have a choice. If by plenty of free software you mean you need 12 different programs to imitate what photoshop does you’re exactly proving my point of why people don’t like Linux, it’s too fragmented, so you have a bunch of crappy apps or people making single use programs by following Unix guidelines, arguing how systemd doesn’t follow it yet contributed greatly to it’s adoption, and wondering why desktop Linux is a failure while android is a success.


> I use Linux

Good God, I should hope so.

> They could easily contribute to another project or fork, and if DE don’t matter they don’t have to make one either.

That's what they were doing before, and it didn't work. Pop!OS ships with an opinionated desktop called "Cosmic", which is based on GNOME and makes several breaking changes to customize the desktop for their specific use case. With GNOME 40, those customizations are no longer possible/sane, so they're deciding to write a new desktop to end their dependency on GNOME. I frankly dislike the current ownership of GNOME, but I also think they're just as bad as Microsoft and Apple (though that's a discussion for a different time and place).

In any case, writing a DE isn't hard work these days. They can still bundle other software to complete the experience the same way Microsoft and Apple do, and they can even steal system components like the GNOME Settings manager wholecloth. They're transitioning from a bloated set of patches to a much smaller, faster codebase. I fail to see how this is a downgrade.

> More DE is not the solution

Well, neither is less DE. GNOME has already tried that, by pretending like other desktops don't matter and introducing asinine, breaking changes that completely destroy the workflow of it's users and developers. Care to guess how that turned out? Recent GNOME releases are both unstable and feature-incomplete, with gaping security flaws and only a modicum of functionality to show for it.

> So you changed your mind that that package managers don’t matter. Either they don’t matter and you build from source or they do and you want one with binaries. Which is it?

You're driving a false equivalency. On my distro (and most distros marketed towards new users), you can just use your built-in software manager to grab the package from official repos. In just about every distribution I've ever used, there was a GUI that allowed you to interface with your package manager, no command line required.

TL:DR - Linux has a lot of problems, but fragmentation is not one of them, nor can it ever be fixed. You should look into how SystemD tried to 'fix' this issue, and only ended up bastardizing the Unix philosophy while degrading the experience across the board.


>Pop!OS ships with an opinionated desktop called "Cosmic", which is based on GNOME and makes several breaking changes to customize the desktop for their specific use case.

That doesn't mean a new DE is the solution and if the idea you floated was that DE don't matter, its irrelevant to anything that would help linux adaption.

>They're transitioning from a bloated set of patches to a much smaller, faster codebase. I fail to see how this is a downgrade.

They could also contribute to another DE. Its going to be better in some ways, inferior in others, have less features than existing DE, some distros will support it and it'll be another DE in the sea of DE that aren't as popular as GNOME/KDE that needs its own community to support it. What is this an upgrade from? They could rewrite GTK2 in rust, use something stable like MATE, rewrite that in rust, but they want to make a new DE, for what benefit over a fork or rewriting and contributing to a project that could use more help over redoing what others have done?

>Well, neither is less DE.

There is no shortage of DE that need contributors and help, imagine if this was still the attitude of Android, to fragment it by flooding it with UIs and custom skins that that didn't work with others. You therefore get zombie phones with features nobody supports. Do you actually think that more DE with less functions versus a few DE with more functions is better? Becuse that is the current state and its a failure and deterrrant to desktop linux. Nobody wants to switch to linux, get less features and need several programs to do what one would do. Again, what program replaces photoshop? Do you think people needing several programs with less features is not a fragmentation problem and its the best approach?

>You're driving a false equivalency. On my distro (and most distros marketed towards new users), you can just use your built-in software manager to grab the package from official repos. In just about every distribution I've ever used, there was a GUI that allowed you to interface with your package manager, no command line required.

The binaries would have to be compiled for it, which is why package managers matters, unless you are saying that all package managers have all the packages and there is no difference with support.

>TL:DR - Linux has a lot of problems, but fragmentation is not one of them, nor can it ever be fixed.

Fragmentation is a huge issue and why theres a million distros that people freeze on switching, the most successful linux is Android and they fixed it, and its the most successful. I don't know why you keep ignoring this point.


That sounds fun as hell, but I'm not sure if it's a good use of time.

Something I've noticed the last years is that people working on companies often don't do the most efficient thing, they do what they want to do, and make arguments for why it's good. And why not!


I’d argue that projects that your employees want to do, but aren’t necessarily the most efficient thing, are incredibly important to do.

Sometimes it’s hard for a company to know what is the most efficient use of time and what will make the most profit.

Some of the projects I learned most from are because I thought it would be fun to do.


I think it's a good but it feels like an ever-unstated fact. We just keep quiet about that we do what we want to do, maybe what's fun, and find other ways to argue for it.


This is great news.

My subjective view of the desktop on linux is that: I find Gnome and Unity to be, frankly, quite unusable and hard to get into a place you can use. Sway is neat but requires skills and plenty of configuration. They really follow the unix way, which means you'll need a solid 3 days of work to get a desktop experience you enjoy.

KDE is a fine desktop experience with ok defaults which can become great with a tiny bit of configuring. You can see a lot of lack of polish and half baked product ideas from the 4.0 ear.

I get it, it's OSS and people will pick the problems they like to solve. Not many people get excited about figuring out the optimal amount of padding in UIs and almost everyone would like to invent something novel - like KDE's activities, on which I wasted a significant amount of time, just trying to get them to disappear forever from my desktop.

Qt is definitely the most mature and complete solution to write GUIs in the world but the Rust bindings are barely working and something like conrod-core could be a good base for a desktop.

Having a profitable making money creating a polished linux desktop experience sounds simply amazing - and exactly what we need.

Hopefully between this and Valve's work on the SteamDeck, things will improve for the linux desktop.


Interested to see a modern take on Linux desktop that's neither irritatingly minimalist or constantly breaking things with every update.


Haven’t has that issue with KDE, gnome is always breaking their compatibility with new GTK versions, while QT supports legacy so well that car manufacturers use it to make their interfaces.


its not like cars getting more firmware updates than phones, and version-lock on LTS version of QT is more than just likely for the entire lifecycle of model row


I think it is awesome that a company is selling Linux laptops AND developing their own OS. On the other hand, I think "oh gosh there goes more fragmentation in Linux UI / desktop world." If System76 has the $ and support to write the software, good on them. I have a Thelio desktop (running RHEL 8) and my wife a laptop running their Pop!OS. Their customer support is outstanding, and I hope that translates into their software projects!


I hope System76 will allow us to install this or offer subscription support for a yearly/monthly fee.

My employer dictates which hardware we buy due to the IT team's limitations, but we're allowed to choose which software we run.

I'm mainly looking for POP_Os or equivalent running on a Thinkpad and would happily pay for a monthly/yearly subscription for features and bug fixes.


You can contribute to Pop with a $12 yearly subscription/donation. It doesn't get you support/etc though.


I actually do want input into features rtc...

Happy to pay for it and will provide bug reports etc..

I don't work on Linux desktops as a day job and won't have the bandwidth to contribute code but I'd like features, hardware support etc...

Happy to pay a higher subscription fee for it.


What do they mean by Desktop? File manager and other tools? How will Rust help in this specific case? Or is it a case of the developers like Rust?


System76 developers like Rust. Many of their tools (daemons, CLIs, etc) use Rust. It would also help in this case because if it’s safety.


> How will Rust help in this specific case?

Here's an answer that's sure to enrage people: it's not C.

I get the hate for Rust. I really do, I use the language on a near-daily basis and run into it's edge cases pretty frequently. However, I'd prefer to write in Rust over C/C++ any day of the week, and I get the feeling that a lot of System76 developers feel the same way. If the name of the game is rapid iteration, C is not going to be a sane choice for your project these days, at least compared to the competition. As more and more languages step up to fill in the gaps, we're starting to see a world where "safe" and "useless" are not mutually exclusive features. To that end, C has become quite antiquated for modern development.


Don't forget that using GTK with C is basically switching to a dynamically-typed language too.

Everything is void pointers so you can pass various kinds of GTK structs around. This leaves you either checking the component type constantly or running the risk of something going very wrong.

With Rust, you can test against the specific types being passed around giving you the best of both worlds where you have static typing that is missing in C and you have the performance of those type checks compiling away.


This is more than just a new desktop environment. This is a new windowing system. This isn't like replacing KDE or Gnome. It's like replacing gtk or qt (though of course qt and gtk apps will run under this environment I'm sure). Considering how opinionated and integrate qt and gnome have become as of late, I applaud that move. I prefer Pantheon myself, but think that the built in "desktop" should be separate from the standard library various apps run in (for several reasons). Let a thousand flowers bloom indeed.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: