Pop!_OS desktop environment COSMIC will use Iced instead of GTK

COSMIC using Iced instead of GTK

COSMIC using Iced instead of GTK

Some days ago Michael Aaron Murphy, Pop!_OS Development Lead and Redox OS contributor, talked about working on a new edition of the user environment from «COSMIC».

For those who are unaware of COSMIC, they should know that is a proprietary desktop environment for Pop! _YOU which is based on a modified GNOME Shell with additional extensions, but differs in a deeper redesign of the desktop and the introduction of conceptual changes.

It must be remembered that COSMIC was introduced to Pop!_OS last year in Pop!_OS version 21.04 and those responsible for the System76 project describe the environment as a clean solution that makes the desktop easier to use, while being more powerful and efficient for users through customization.

It is also mentioned that new designs have been developed from extensive testing and user feedback since the launch of Pop! _OS 20.04, and are currently being refined in their testing phase.

Instead of the unified horizontal navigation of virtual desktops and applications in the “Activity Overview” that appeared in GNOME 40, COSMIC continues to separate views to navigate desktops alongside open windows and existing applications.yes A split view gives you the ability to access a selection of apps with a single click, and a simpler layout keeps visual clutter from being distracting.

The UX team has been carefully designing widgets and apps for the last year. We are now at the point where it is critical for the engineering team to decide on a GUI toolkit for COSMIC. After much deliberation and experimentation over the last year, the engineering team decided to use Iced instead of GTK.

During user testing, it was mentioned that it was found that GNOME users tend to pause the task after opening the "Activities Overview". split viewss allow access to the application launcher with a single click, while the cleaner user interface design prevents visual distraction.

Iced is a native Rust GUI toolkit that has recently progressed enough to become viable for use in COSMIC. Several COSMIC applets have already been written in both GTK and Iced for comparison. 

It is noted that after long discussions and experiments, the developers decided to use the Iced library instead of GTK to build the interface. According to System76 engineers, the Iced library, which has been actively developed recently, it has already reached a sufficient level to be used as the basis for a user environment.

The latest development versions of Iced have an API that is very flexible, expressive and intuitive compared to GTK. It feels very natural in Rust, and anyone familiar with Elm will appreciate its design.

During the tests carried out several COSMIC applets were prepared, simultaneously written in GTK and Iced to compare technologies. The tests carried out have shown that compared to GTK, the Iced library provides a more flexible, expressive and understandable API, pairs naturally with Rust code and offers a familiar architecture for developers familiar with the Elm declarative interface construction language.

Library Iced is written entirely in the Rust language., uses safe types, a modular architecture, and a reactive programming model. Various rendering engines compatible with Vulkan, Metal, DX12, OpenGL 2.1+ and OpenGL ES 2.0+ are provided, as well as a windows shell and a web integration engine.

All the Iced-based apps can be built for Windows, macOS, Linux, and run in a web browser. Developers are offered a set of out-of-the-box widgets, the ability to create asynchronous controllers, and use responsive layout of interface elements based on window and screen size. The code is distributed under the MIT license.

Finally if you are interested in knowing more about it, you can check the details in the following link


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.