Desktop environments Archive

Customizing COSMIC: theming and applications

It’s Back to School season, so grab yourself a brand new discounted computer and let’s get back to COSMIC class! Our new, not yet released Rust-based desktop environment for Pop!_OS and other Linux distros is filling out with some essential systems that cater the DE to both users and developers alike. Customization is one of our main focuses for COSMIC, and was a huge focus for us in August, too. There’s a lot of cool stuff in this update about COSMIC. First and foremost, customisation is important, so they’ve effectively implemented something similar to Android’s Material You theming engine, where the desktop environment will automatically determine derived colours that match the colour you’ve chosen as to maintain readability, contrast, and so on. You can also set the density of the interface, and how ’rounded’ everything looks. Sadly, there’s no word on actual theming in there, but they do mention that “nothing in the components of the design system is meant to be hard-coded”, so hopefully this means custom themes that radically alter the look of the UI are possible. There’s also a new API for application developers. We added an application API to the libcosmic widget library to provide a framework for developing applications and applets in COSMIC DE. It automates integration with COSMIC theme support, along with Wayland protocols, COSMIC’s configuration back-end, and common application elements like header bars and navigation. For application developers, this means convenient development without having to worry about managing the low-level desktop and window manager integrations. For us, this ensures consistency across COSMIC applications and applets. COSMIC is shaping up nicely, and I can’t wait to try it out.

Window Maker 0.96.0 released

After three years, there’s a new Window Maker release – version 0.96.0 – and it’s got some useful new features. First, the NeXTSTEP-inspired window manager now supports hot corners, so you can send your mouse to a corner of your display and have it execute a command. Second, you can now set keyboard shortcuts for various functions related to taking screenshots, which is a very welcome addition. On top of these, there’s a few smaller new features as well.

Paginator: desktop pager for Window Maker and similar environments

Speaking of fun little tools: Paginator is a desktop pager for EWMH-compliant X11 window managers. Paginator provides a graphical interface displaying the current configuration of all desktops, allowing the user to change the current desktop or the current active window with the mouse. Exactly what it says on the tin, and adds some usability to the desktop pager concept to something like Window Maker.

COSMIC DE gets fractional scaling

Beyond the dazzling sea of licensed fireworks and thunderclouds lies a cosmic array of ancient stars. It’s within our gaze upon these stars where we find the inspiration for COSMIC DE, our new desktop environment created for Pop!_OS and other Linux distros. Let’s get into the updates! COSMIC DE is System76’s in-progress Rust-based desktop environment. System76 has done some neat tricks while resizing windows in tiled mode, they’re splitting up the notifications subsystems into separate threads, they added fractional scaling, and more.

Budgie 10.7 released

Budgie 10.7 is a brand new release series for Budgie Desktop, featuring major re-architectures, new APIs for extensibility, and polish to the user experience. For a point release, there’s a lot of changes, improvements, and new features in here, as the release notes detail. The changes are all over the place – from a brand new application indexer to replace libgnome-menus, to dual-GPU support, notification improvements, general UX improvements, and much more.

LXQt 1.2 desktop environment released with initial Wayland support, various improvements

LXQt 1.2 is here about seven months after LXQt 1.1 and it’s a major update to the lightweight desktop environment that introduces initial support for the Wayland display server in an attempt to keep up with the times and the new technologies most GNU/Linux distributions are adopting these days. Still based on the long-term supported Qt 5.15 LTS open-source application framework, LXQt 1.2 also improves its file manager component with a new search history feature that offers separate lists for name and content searches. Users can search the maximum number of history items in Preferences > Advanced > Search. I’m glad Wayland support is spreading out to smaller, less popular desktop environments too. Once you go Wayland, you stay Wayland.

IceWM 3.1 released

IceWM was released only a short while ago, and now we’ve got 3.1. IceWM 3.1 introduces a new window option “frame” to automatically group application windows with the same “frame” value as tabs within a single frame. IceWM 3.1 also now shows indicators for the presence of tabs on the title bar, clicking on the title bar tab indicators can change tabs, tray hints are now preserved across restarts, improved Alt + Tab handling, improvements to the CMake build system integration, and a variety of other changes. I’m glad to see development has truly picked up again.

System76’s Pop!_OS COSMIC Desktop to make use of Iced Rust toolkit rather than GTK

System76 has been developing their own COSMIC desktop as the next evolution for their Pop!_OS Linux distribution built atop an Ubuntu base. Interestingly with this big COSMIC desktop undertaking, which is being written in the Rust programming language, they have decided to shift away from using the GTK toolkit to instead make use of Iced-Rs as a Rust-native, multi-platform graphical toolkit. This makes more sense than some might think. One of the engineers over at System76 is also the creator and lead developer of Redox OS, and GTK itself has become more and more insularly focused on GNOME than any of the other GTK-based desktop environments on Linux, BSD, and similar platforms. This is a big bet for what is essentially still a small company, but it sure does show some gusto. My major concerns would be consistency, both visually and behaviourally, since the vast majority of popular applications on Linux are either GTK or at least somewhat trying to integrate with GTK, so there’s a lot of work to do to make everything feels are least somewhat coherent. Still, I’m definitely curious to see what this will look like, what it will feel like, and how it will perform.

CDE 2.5 released

CDE 2.5.0 is now available on SourceForge. This is a significant release compared to the previous one with, among many other things, a replacement of the build system from ancient Imake to somewhat less ancient Autotools. There’s also a ton of bug fixes, as well as new features and other changes.

Not so Common Desktop Environment (NsCDE) 2.2 released

NsCDE is a retro but powerful UNIX desktop environment which resembles CDE look (and partially feel) but with a more powerful and flexible framework beneath-the-surface, more suited for 21st century unix-like and Linux systems and user requirements than original CDE. NsCDE can be considered as a heavyweight FVWM theme on steroids, but combined with a couple other free software components and custom FVWM applications and a lot of configuration, NsCDE can be considered a lightweight hybrid desktop environment. It also contains themes for Qt, Gtk, and more, to ensure a consistent CDE look and feel. NsCDE 2.2 has just been released, and it contains a ton of improvements. This is such a cool and fascinating project.

Budgie team details plans for Budgie 10, 11

Joshua Strobl, the lead developer of Budgie, the (currently) Gtk+-based desktop, posted a lengthy article about the state of the project and the future it’s embarking on. Budgie had been in a feature-freeze and maintenance mode for a long time, but now that Strobl is no longer involved with the Linux distribution Solus, Budgie has become truly independent, and development can pick up again. The article touches upon a lot – such as the way the Budgie developers intend to lead the project, how they want to involve the community as much as they can, and similar things. They don’t want to mandate defaults or force distributions into “stock” Budgie. They intend to take this pretty far. We have made technical decisions for Budgie 11 and beyond that focuses on a clear separation between the “data layer” that enables complex Budgie functionality, and the visual / “presentation layer”. This reduces our reliance on any one given upstream for a toolkit or related libraries, allowing us to potentially explore different models for achieving the presentation layer, and even enabling other developers to build on top of Budgie’s data layer with their own presentations. As for actual plans for future versions – they intend to first nip and tuck Budgie 10.x, the current version, before diving fully into Budgie 11. The idea is that they want Budgie 10.x to be a solid base for distributions to work with while Budgie 11 is being developed. When I created Buddies of Budgie, my first priority was “unlocking” Budgie 10.x so everyone from Ubuntu Budgie to GeckoLinux, myself and other independent contributors – could get it into a state we were all happy with, and that users would be even happier with. I was not happy with the state it was in and there was a lot of catching up for us to do on fixing a thousand papercuts. Some of the major points that need to be addressed is adding full Wayland support to Budgie, since Budgie 11 is intended to be Wayland first. They also intend to remove a whole bunch of GNOME technologies they’re currently relying on. Budgie 11, meanwhile, will be a big change. Budgie 11 will take this much further. All data-related logic, collating, and reformatting possible will be in daemon, allowing the presentation layer (panel, applets, Raven, and more) to be much simpler. We will likely be leveraging protobuf to create more structured messages that is supported in more programming languages.. Not only that but this actually minimizes the impact that the toolkit choice will actually have and will even pave the way for other developers, should they choose, to leverage the data layer of Budgie and build their own “presentations” on top of that and in the toolkit of their choice! Budgie / its libraries / window manager will be written in a mix of Rust and C – with Rust being the choice for aspects of Budgie that are more mission critical (like the window manager, which may leverage smithay). Budgie Desktop itself will always be designed for the “desktop” metaphor. I’m getting mild KDE vibes from this. There’s definitely room in the market for a Gtk+ desktop that embraces more of the user choice first mentality of KDE, especially now that GNOME has forced that ship to sail. It’s fascinating to read all of these musings, and it provides a great insight into a project trying to reinvigorate itself.

Trinity Desktop Environment R14.0.12 released

The Trinity Desktop Environment, a fork of the KDE 3.x codebase, has released its latest version. This release comes with a new D-Bus based polkit authentication agent, new markdown document viewer, support for HTML5 in Quanta, support for Let’s Encrypt certificates, some improvements to GUI options, better cooperation between tdm and plymouth, fix for ICEAuthority ownership stealing when using sudo, various other bug fixes and improvements. It also adds support for Ubuntu Jammy while it drops support for Debian Jessie and Ubuntu Trusty. C++11 is now allowed in the code base. I doubt the audience for a KDE 3.x desktop is massive, but thanks to the wonders of open source – the people that want it, can have it.

Unity 7.6 released for testing

Unity 7.6 will be the first major release of Unity in 6 years (the last release was in May 2016). We have restarted the active development of Unity7 and will be releasing new versions with more features regularly. I was never a fan of Ubuntu’s Unity, but I’ve seen quite a few people over the years who miss it. Your call has been answered – this first release has a a lot of visual touch-ups and updates to make it look a bit more modern, and there’s bugfixes in here, too, of course.

LXQt 1.1.0 released

LXQt 1.1.0 has been released. As its version number makes clear, this isn’t a major release, but you wouldn’t be able to tell from the changelog – there’s a lot in here. The biggest improvement is better integration of Gtk+ applications into the desktop environment, so that, among other things, applications like Chromium and Firefox can call LXQt’s own file picker. There’s a lot more, so be sure to read the release notes.

EndeavourOS delivers new tiling window manager

EndeavourOS is an Arch-based Linux distribution, and in and of itself not something I’d write about here. However, at the very end of the release notes for its latest release, there’s this: This release is also shipping with a brand-new Window Manager developed by our community editions team member Codic12 and we are more than proud to present you this WM that was developed a little bit under our wing. Codic12 decided to develop this WM to satisfy his need for a lightweight window manager that worked well with both floating and tiling modes and had window decorations with minimise, maximise and close buttons in any layout desired and that could run on a semi-embedded system like the PIZero. Worm is written in Nim and is based on X11, a Wayland version isn’t in the pipeline in the near future, according to him. There’s been a surge of interest in tiling window managers lately, with tons of articles and howtos about things like i3 and Awesome, and System76, too, made tiling a prime feature in Pop!_OS. Heck, even Windows is in on the game. Tiling isn’t for me – I’ll manage and resize my window manually, like an animal, thank you very much – but there’s no denying there seems to be a huge demand for tiling features.

Exploring System76’s new Rust-based desktop environment

A few months ago, System76 announced that they would be developing a new desktop environment based on the Rust programming language called COSMIC. Their idea is to create a desktop environment that is similar to the one that is currently available for the Pop!_OS operating system, but with a different focus. System76’s objective is to create something that is faster, more customizable, and free of the limitations of the GNOME desktop environment, and let’s face it, we’re all curious how this desktop will look. This post will explore how this new desktop environment is shaping up. There’s not a ton to see here yet, and it’s clearly very early days. Still, it’s interesting to see the beginnings.

Maui Shell is a convergent shell for Linux on desktops, phones, and tablets

I’ve been keeping an eye on MauiKit for a while now, and over Christmas, they surprised us with their brand new convergent desktop environment – Maui Shell – targeted at both desktops, tablets, and mobile devices. After developing a whole set of applications, as well as a Linux distribution to use them, their next step is now a complete desktop environment. The objective of Maui Shell is to deploy a convergent desktop shell with different form factors, from mobile phones and tablets to desktop computers. Maui Shell will adapt to various form factors, and there’s no need for multiple versions targeting different form factors. Maui Shell is still in early development, but they’ve published a tight schedule with the first complete release scheduled for late 2022, with several preview releases in between then and now. In fact, the next release of Nitrux will include the first test release as an alternative shell for users to log into. If you’re interested in a modern take on the Linux desktop, phone, and tablet – these are the projects to follow. They’ve got some good stuff under their belt already, a proven track record, and a clear vision of what they want Maui Shell and its applications to be.