System76, which develops the Linux distribution Pop!_OS, published the release of the desktop environment COSMIC 1.10.0. Packages with COSMIC 1.11.0 are available in the distribution kit Pop!_OS 24.04 and are expected in the near future in Fedora, NixOS, Arch Linux, openSUSE, aerynOS, Redox and CachyOS. The code is written in Rust and distributed under the GPLv3 (applications) and MPL-2.0 (libraries) licenses.
COSMIC is being developed as a universal project, not tied to a specific distribution and compliant with Freedesktop specifications.
To build the interface in COSMIC, the Iced library is used, which uses safe types, modular architecture and the reactive programming, and also offers an architecture familiar to developers familiar with the language of declarative construction of interfaces Elm. Multiple rendering engines are provided, supporting Vulkan, Metal, DX12, OpenGL 2.1+ and OpenGL ES 2.0+. Developers are offered a ready-made set of widgets, the ability to create asynchronous handlers and use adaptive layout of interface elements depending on the size of the window and screen.
In addition to the use of the Rust language, COSMIC features include the modes of hybrid mosaic window layout and stacked window pinning (grouping windows similar to tabs in a browser), which can be enabled in conjunction with virtual desktops. The project is also developing a composite server cosmic-comp based on Wayland.
Among the changes:
- In libcosmic, when processing text input press interception has been stopped Escape keys, which solved problems with closing some menus by pressing Escape.
- In the application library (cosmic-app-library), a transition to the first application in the search results is implemented when pressing the down cursor key. On systems with hybrid graphics, the selection of the correct GPU is ensured when launching games.
- The composite server (cosmic-comp) implements support for the Wayland protocol “xdg-dialog-v1