System76 Reportedly Developing Their Own Rust-Written Desktop
phoronix.com
phoronix.com
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 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 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 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’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.
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.
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)?
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 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)
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.
Definitely enjoying nixos so far though :D
Then again, Linux won over Windows in 1996 for me so perhaps I'm a bit of an outlier.
The war is over people. Even the xorg people are happy about this.
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.
In this context Linux has won nothing, nada, niente.
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.
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.
Can configure some to hibernate until you move the mouse into the display.
[0] - https://symless.com/help-articles/operating-systems-supporte...
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
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.
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.
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?
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?
If only Apple had a decent API for GPGPU programming!
There’s tons of options for Win9x desktop clones, though. The best of those IMO is Cinnamon, or if configured correctly XFCE and Budgie.
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.
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.
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.
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.
> 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.
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."
A new popular project has the potential to bring in more users.
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.
Playing devil’s advocate herem by this logic we should also splinter the kernel development for multiple, competing, projects.
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).
The word you're looking is "contradictory"...
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.
Nonetheless ive found it to be much more stable in the last 18 months. They have recognized their problem and improved.
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%.
> 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.
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.
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.
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 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?
> 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.
GNOME and KDE have needed help for the past 15 years. If it hasn’t happened by now, it’s not going to happen.
That's just not true. CDE was released before KDE, and the Motif widget set CDE uses is older still.
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.
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?
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.
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 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.
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.
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 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.
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.
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.
You're not making the case for not using Linux here.
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.
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.
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.
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.
[0] https://phoronix.com/scan.php?page=news_item&px=GNOME-Shell-...
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.
Arc<> does exist though, and is used quite extensively in the rust ecosystem.
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
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.
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.
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.
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.
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.
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 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.
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.
> 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.
They've been using Rust internally for various tools already, so I think this decision has been motivated by their positive experience with Rust
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.
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.
And the entire session if you're on Wayland
Would be kinda funny/sad if they chose gtk-rs.
i guess gnome advocates would consider GTK as a high end application, but i digress.
Pop _OS to use it own desktop environment, written in Rust (reddit.com)
158 points by tuananh 18 hours ago | 128 comments
[1] https://develop.kde.org/products/frameworks/
[2] https://en.wikipedia.org/wiki/LXQt#/media/File:LXQt_0.10_-_A...
Gtk in turn is winning probably because of license worries. So you could call it systemic bias.
If I had to guess I assume the problem is C++.
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-...
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.
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.
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.
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.
Plasma is using around 225MB right now on my machine, plus a little bit (like 2 and 6MB for session and gdm).
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.
For example?
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.
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.
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.
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.
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.
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.
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!
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.
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.
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.
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.
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.
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.