System76, the developer of Linux-based Pop!_OS, has announced the progress in the development of their user shell, Cosmic. The shell, which has been under development for over two years, is being rewritten in a new language and is close to the formation of its first alpha release. This will mark the readiness of the basic set of features, making the shell a fully functional product. The alpha version is expected to be released by the end of March, allowing for more reviews and feedback to further enhance its functionality and user experience.[1]
Cosmic is being developed as a universal project that is not tied to any specific distribution. It aims to adhere to Freedesktop specifications. The shell utilizes the iced library, which employs safe types, modular architecture, and reactive programming. It also incorporates a familiar declarative interface construction language known as ELM. The shell provides support for drawing in Vulkan, Metal, DX12, OpenGL 2.1+, and OpenGL ES 2.0+. Additionally, developers have access to a set of ready-made widgets, the ability to create asynchronous handlers, and adaptive layout options for different screen sizes.[2]
Alongside the shell, System76 is concurrently working on a composite server called Cosmic-comp, based on the Wayland protocol.[3]
The minimum necessary features for the alpha release of Cosmic include:
- The terminal emulator, Cosmic Terminal, written using the Alacritty_Terminal framework. It supports GPU acceleration, customizable themes, and advanced input methods. Future goals for development tasks are to add support for mouse emulation and the ability to open hyperlinks in the terminal.[4]
- Cosmic Randr, a utility for configuring screen settings in Wayland, is also being created. It will be used in the Cosmic settings configurator.[5]