Aaron's Blog

Packaging up COSMIC in NixOS

The work so far to get COSMIC on NixOS

[ nixos  nixos-unstable  nixos-23.11  nixos-24.05  ] 2 min read

From the beginning

Let’s first start what COSMIC is and it’s history, we’ll look at the first blog post from System76 (the company behind COSMIC) here. Now for their latest update to date progress on COSMIC we’ll look at their blog post here.

The Nix/NixOS part of the story

First started by nyanbinary in this issue on Oct 7th 2023 and has had amazing progress getting everything into the nixpkgs repository. I’ve been working on COSMIC Edit, COSMIC Term and COSMIC Files and with the packaging of COSMIC applications on Nix/NixOS this bug was found and fixed!

Community-led Effort

This is largely a community effort with help from community members like:

  • lilyinstarlight like this PR which will help other Rust projects in NixOS or this PR from nbdd0121 which will with packaging of COSMIC for other distros then just NixOS!
  • nyabinary and a-kenji packaging up most of the COSMIC components like cosmic-settings, cosmic-icons,
  • alyssais with a few drive-by commits with the large commit to package cosmic-comp, cosmic-panel and cosmic-applets.

If you want to join in to help feel free to join our Matrix channel!

The fruits of this work

Thanks to this work you can now use one of the following packaged applications in NixOS! (you may need to pull it from unstable depending on how recent the merge was):

  • cosmic-edit (NixOS 23.11, newer version in unstable)
  • cosmic-settings (NixOS 23.11, newer version in unstable)
  • cosmic-term (unstable so NixOS 24.05)
  • cosmic-files (unstable so NixOS 24.05)

Current state

COSMIC Session running
cosmic-applibrary cosmic-launcher
cosmic-applibrary cosmic-launcher
Tiling in COSMIC
Tiling in COSMIC
File Dialogs
file dialogs in COSMIC

Work still to be done

The major next step would be to have a module for COSMIC so that users can enable it similar to other Desktop Environments such as GNOME, Plasma and more! The progress for that is being tracked here.


Comment on this blog post by publicly replying to this Mastodon post using a Mastodon or other ActivityPub/​Fediverse account. Known non-private replies are displayed below.

No known comments, yet. Reply to this Mastodon post to add your own!