this post was submitted on 09 May 2024
42 points (100.0% liked)

libre

9655 readers
1 users here now

Welcome to libre

A comm dedicated to the fight for free software with an anti-capitalist perspective.

The struggle for libre computing cannot be disentangled from other forms of socialist reform. One must be willing to reject proprietary software as fiercely as they would reject capitalism. Luckily, we are not alone.

libretion

Resources

  1. Free Software, Free Society provides an excellent primer in the origins and theory around free software and the GNU Project, the pioneers of the Free Software Movement.
  2. Switch to GNU/Linux! If you're still using Windows in $CURRENT_YEAR, flock to Linux Mint!; Apple Silicon users will want to check out Asahi Linux.

Rules

  1. Be on topic: Posts should be about free software and other hacktivst struggles. Topics about general tech news should be in the technology comm or programming comm. That doesn't mean all posts have to be serious though, memes are welcome!
  2. Avoid using misleading terms/speading misinformation: Here's a great article about what those words are. In short, try to avoid parroting common Techbro lingo and topics.
  3. Avoid being confrontational: People are in different stages of liberating their computing, focus on informing rather than accusing. Debatebro nonsense is not tolerated.
  4. All site-wide rules still apply

Artwork

founded 3 years ago
MODERATORS
 

I just tried out the COSMIC Desktop Environment (DE) created and engineered by System76 (people who are behind POP!_OS). It was an incredible experience even though it was just a pre-alpha.

COSMIC was engineered virtually from the ground-up to be System76's solution to move away from GNOME and onto their own tech stack. The entire DE is written in the Rust programming language utilizing the iced application framework with their in-house application library libcosmic (similar to how KDE uses Qt+Breeze+Frameworks or GNOME uses GTK + Libadwaita).

Impressions

If you're familiar with POP!_OS 22.04's take on GNOME, then the workflow is no different here with emphasis on features such as tiling, application dock, application launcher, universal search launcher and of course: auto-tiling.

One of the exclusive features of COSMIC is its 1st class support for custom theming on the fly. You're allowed to theme the desktop in almost any way you can (even with nauseating colors) and the DE will adapt to your preferences.

It can even theme gnome apps! (I read other books dw)

Auto-tiling is also great to use, you can toggle specific windows to be floating or tiled.

Theme integration with Qt apps are a work in progress + some quirks of running COSMIC in a container with KDE. So far, I really enjoy how buttery smooth everything is (besides some pre-alpha stuttering), the entire desktop feels like a really cohesive experience. It has the efficiency of a tiling window manager but the convenience of a DE.

It has an overview!!! (super+w)

You can also stack windows on top of each other

Not everything is implemented (obviously) but just the promise of a DE that does tiling and window management like this has me sold.

How to try out COSMIC?

NixOS

There's a flake

Fedora Atomic Desktop

You can use a universal blue image and rebase to that, it even includes options for having a fallback desktop environment of either GNOME or KDE as well.

Other

Note that this cannot be used in production: cosmic is pre-alpha software as well as needing to turn off SELinux.

Or wait until POP!_OS 24.04 is released with a stable version of COSMIC this summer. This has been my first time running COSMIC but when the stable version drops you bet I'm switching over (though no one can take away my Fedora atomic distro).


Switch to GNU/Linux or pay the ultimate price freedom-hater

top 11 comments
sorted by: hot top controversial new old
[–] dannoffs@hexbear.net 8 points 4 months ago (1 children)

Looks neat but since KDE 5 got good I've just never felt compelled to try any other DEs. This just seems like more unnecessary fracturing of effort.

[–] hello_hello@hexbear.net 5 points 4 months ago (1 children)

That's valid, all the work that goes into cosmic also goes into the Rust application stack as well, so people are passively benefiting from this as well.

Plus there are only 2 Wayland desktop environments, the big 2 have to be challenged sometime.

[–] dannoffs@hexbear.net 11 points 4 months ago* (last edited 4 months ago)

2025 will be the year of the Enlightenment desktop.

Also lmao

[–] LesbianLiberty@hexbear.net 6 points 4 months ago (1 children)

Damn, I gotta admit that I was a hater before, but this is actually incredibly slick. I'll have to try it out!

[–] hello_hello@hexbear.net 3 points 4 months ago* (last edited 4 months ago)

If you want to turn into a COSMIC fan. Their app store takes approximately a second to fully load everything. Searches take on the magnitude of milliseconds to complete.

It's literally faster than typing flatpak install <app-name> -> y. GNOME Software and KDE Discover don't come close to this level of blazingly fast rust speeds.

[–] Maoo@hexbear.net 4 points 4 months ago (1 children)

That looks pretty great!

Do you know why they decided to build their own GUI stack (not just DE)? For example, there have been some attempts to use Qt to build non-KDE DEs before. Is it just to have independence from the other two big DEs?

[–] hello_hello@hexbear.net 3 points 4 months ago

They didn't technically build their own GUI stack, iced already existed and this was during the time where native Rust applications were being theorized about but no one really put pen to paper yet. So COSMIC acts as an example of what iced is capable of doing and what it needs to implement to improve.

LXQT comes to mind when leveraging Qt for the desktop and it certainly works, but KDE is much more than just a Qt-based desktop since it has its own components on top of it (like Kio, etc.) System76 is a hardware company so their principal interest is to ship an operating system that works with their client's hardware without any hiccups (or at least hiccups that can be fixed immediately by them instead of waiting for upstream). They can't afford to wait for GNOME or KDE to implement certain wayland protocols or desktop features that they know their clients already expect with their GNOME 42 spin. Wayland is reaching critical mass and they can't afford bargaining with GNOME nor switching to a C++ based KDE when most of their engineers use Rust.

It's a technical exercise as well as a pragmatic one. If you have the resources to engineer your own compositor and DE on your own stack, then you should take the opportunity since that's a once in a lifetime thing (considering wayland KDE and GNOME have dominated the space for so long).

[–] TheModerateTankie@hexbear.net 3 points 4 months ago

I've been looking forward to this, it seems like it has a decent tiling window mode. Very promising DE.

[–] nossaquesapao@lemmy.eco.br 2 points 4 months ago

That looks awesome. I've been looking for gnome alternatives, but got too attached to its way to use. I will try this one.

[–] ProletarianDictator@hexbear.net 2 points 4 months ago (1 children)

Loved pop-shell when I used it. I still use a tiling extension for GNOME. Wouldn't want to live without it.

I love the ideas behind cosmic, but I am skeptical about System76 dominating development rather than letting the community run things. Specifically, I very much want a Rust-ified GNONE-Shell and GTK with tiling & stacking features. Ideally, I'd like to see a Rust rewrite of GTK. I'd say GNOME-Shell too, but idk how well you could maintain extension compatibility with that.

I don't care much for the looks of iced applications, but these ones look better than what I've seen so far. They look like a mix of the awkward elements of Qt and Android.

Even in these screenshots, I still far prefer the aesthetics of the Libadwaita apps. I wonder if there will be Adwaita themes for iced eventually. Not sure how well it would mesh with the iced layout though.

[–] hello_hello@hexbear.net 2 points 4 months ago

but I am skeptical about System76 dominating development rather than letting the community run things

Don't worry, they've already been accepting community contributions to COSMIC (such as gestures and window preview). They just have to work on finalizing the initial foundation of libcosmic and write documentation for it (but there are already non S76 COSMIC apps). They're also leveraging the Rust community's crates to build everything while also giving back to the community (like with cosmic-text text rendering which has become the de-facto standard on Rust). Iced is entirely community maintained and isn't even at its stable 1.0 release yet.

Rust rewrite of GTK

The issues they had with GNOME went far beyond the application toolkit. GNOME simply wouldn't implement swiftly (or at all) wayland protocols and desktop features that their (S76) clients and userbase wanted. COSMIC is exactly what you're asking here. They will have desktop extensions (and applet extensions), just not the ones GNOME have already.

They look like a mix of the awkward elements of Qt and Android.

I had that impression too. And when you're using it there's no animations or transitions between widgets. It's very much still in the pre-alpha stage right now (they even disabled light themes because theming wasn't working properly). I didn't like how far spaced apart some widgets were (like in COSMIC settings but that app isn't even near to be completed).

Even in these screenshots, I still far prefer the aesthetics of the Libadwaita apps. I wonder if there will be Adwaita themes for iced eventually. Not sure how well it would mesh with the iced layout though.

No one is beating GNOME on aesthetics no matter how hard you try lol, they cracked the code pretty much for the most appealing applications. But I think COSMIC's support for advanced theming that you can do on the fly will distinguish it aesthetically from KDE and GNOME apps (which have no such 1st class feature, yet. I know KDE is working on accent theming for 6.1). You can also change icon themes easily and Qt theming is still in the works so there's an effort to make the desktop integrate well together no matter the app.