COSMIC
COSMIC is a desktop environment developed in the Rust programming language, using the iced cross platform GUI library for Rust, and Smithay as building blocks for its compositor, cosmic-comp. Cosmic-comp is comparable to smithay's own anvil compositor demonstration, just like the Wayland project uses Weston as demo compositor.
COSMIC was primarily developed for use in the Pop!_OS distribution.
NixOS module (starting with NixOS 25.05)
COSMIC support in nixpkgs is still in development. You can follow progress via the tracking issue.
You can enable COSMIC on your NixOS system by setting the following configuration options:
{
# Enable the COSMIC login manager
services.displayManager.cosmic-greeter.enable = true;
# Enable the COSMIC desktop environment
services.desktopManager.cosmic.enable = true;
}
Support for automatic logins is present when using the `cosmic-greeter` login manager. All you need is the following configuration:
{
services.displayManager.autoLogin = {
enable = true;
# Replace `yourUserName` with the actual username of user who should be automatically logged in
user = "yourUserName";
};
}
Alternatively, there is a flake to setup COSMIC on NixOS.
COSMIC packages
While the whole desktop is not configured many packages are available in nixpkgs already. You can search for packages with a query similar to this one https://search.nixos.org/packages?query=cosmic&from=0&size=1000&sort=relevance&channel=unstable. Note that not all of the results will be part of the COSMIC desktop.