COSMIC Desktop Environment (DE) is a new project by System76, the company behind the popular Linux distribution Pop!_OS. In this tutorial, we will give you an overview about COSMIC DE and its features, and then we will walk you through the steps to install COSMIC Desktop Environment in the latest Fedora 40 Linux system.
Table of Contents
What is COSMIC Desktop Environment?
The COSMIC (Computer Operating System Main Interface Components) Desktop Environment is a customized graphical user interface developed by System76 for their Pop!_OS Linux distribution.
COSMIC debuted with Pop!_OS 21.04 and is designed to enhance the user experience by offering a more refined and customizable interface compared to the GNOME Shell it's based on.
Unlike their current Pop!_OS desktop which is a customized GNOME, COSMIC is built from the ground up using Rust programming language and iced library for the graphical user interface.
COSMIC offers a high degree of customization. Users can expect to tweak panels, wallpapers and functionalities to their preference.
It consists of various independent components, including a compositor (cosmic-comp), libraries (cosmic-applibrary) and applets (cosmic-applets) that can be installed or updated individually.
COSMIC is expected to be the default desktop environment for future Pop!_OS versions, replacing the current GNOME customization.
COSMIC is currently in alpha stage. While some components are available on repositories like Arch AUR and NixOS, a public release date for the complete desktop environment hasn't been announced yet.
As per the System 76's official blog post, COSMIC DE is expected to be released in Pop!_OS 24.04 LTS, which will be based on Ubuntu 24.04 LTS.
Features
COSMIC DE ships with many unique features and goodies that you rarely find on other DEs.
1. Customization and Efficiency
COSMIC aims to provide a highly customizable experience while maintaining a minimalist and powerful desktop environment.
COSMIC allows users to customize many things to fit their preferences. This includes adjusting workflows, keyboard shortcuts, and how the desktop looks and feels.
2. Workspace Management
It introduces a more intuitive and efficient workspace management system, making it easier for users to organize and switch between different tasks and applications.
COSMIC will offer both vertical and horizontal workspace options, allowing users to choose between the default vertical workspace or a GNOME-like horizontal workspace.
3. Application Launcher
COSMIC comes with an improved application launcher that offers quick access to installed applications and system utilities, along with a search function for finding apps and files rapidly.
4. Custom Terminal (COSMIC Terminal)
- COSMIC DE includes its own terminal application called COSMIC Terminal (cosmic-term).
- Features include bidirectional rendering, ligatures, desktop themes, syntax themes, and GPU rendering.
- The terminal was optimized for performance, comparable to Alacritty.
- It supports both left-to-right and right-to-left languages.
5. COSMIC Randr
- A command-line utility for listing and configuring displays in Wayland.
- Used by the display settings page in COSMIC Settings.
- Utilizes wlr output configuration Wayland protocols.
6. Frosted Glass Effect
COSMIC features a frosted glass effect, adding a touch of elegance to the interface.
7. Tiling and Window Management
COSMIC provides tiling capabilities for efficient window management. For users who prefer a tiling window management workflow, COSMIC gives options for automatic window tiling, enhancing productivity for users who work with multiple applications simultaneously.
8. Hybrid Graphics Mode
COSMIC DE operates in hybrid graphics mode, alongside a power-saving setting that turns off the dedicated GPU to preserve battery life.
9. Custom Setup Utility
COSMIC includes a custom setup utility for configuring various aspects of the desktop environment.
9. Top Navigation Bar
The top bar is split into Activities (Applications) and Workspaces areas.
10. Power User Features
COSMIC supports numerous keyboard shortcuts and multitouch trackpad gestures for power users.
11. Dock and Taskbar
COSMIC comes with a customizable dock that allows users to pin their favorite applications for quick access, along with a taskbar for managing currently running applications and workspaces.
Docks and panels on your desktop can be hidden automatically when not in use, and you can position them on any side of the screen. This lets you create layouts like Unity, GNOME, or KDE/Windows.
Adding and customizing applets on the dock and panel is similar to Xfce. You can swap out applets, like replacing the clock with an app list, or even hide the dock entirely.
12. Lightweight and Efficient
COSMIC is designed to be much lighter and more efficient compared to the current GNOME desktop.
13. Capable Toolkit Replacement
The lib-cosmic toolkit will serve as an excellent replacement for GTK, offering robust functionality.
14. Improved Wayland and Compositor Support
COSMIC will feature great Wayland support and introduce a new compositor called cosmic-comp, with X11 apps running through the Xwayland compatibility layer.
15. Traditional Desktop Features
COSMIC will include native support for traditional desktop features like icons, tray icons, and a modern dock.
16. Optimized Native Features
Features from the original COSMIC, such as the cosmic-dock, cosmic-launcher, and tiling, will now be natively integrated, faster, and better implemented.
17. HiDPI and Fractional Scaling Support
COSMIC will offer excellent support for HiDPI screens with true fractional scaling, a feature currently lacking in GNOME and many other desktop environments.
18. Modular and User-Customizable
System76 is adopting a modular approach for COSMIC, allowing users to add or remove main UI elements without major limitations.
19. Versatile Panels and Applet System
COSMIC will feature versatile cosmic-panels that can be customized for specific workflows, and an applet system that lets users show only the features they need, with custom layouts.
20. Robust Applet API and Theming Support
COSMIC will have a stable, secure, and powerful API for cosmic-applets, making it easier for the community to develop new applets. It will also include theming support.
These are just a few of the features I've noticed, but there's more to discover! For a complete list, please refer to the official documentation provided at the end.
Install COSMIC Desktop in Fedora 40
Being available on COPR allows interested Fedora users to easily test and experiment with the COSMIC desktop on the Fedora 40, and Fedora 39 systems.
To install COSMIC Desktop Environment on your Fedora Linux, follow the steps below:
1. Open a Terminal Window.
2. Enable the ryanabx/cosmic-epoch
COPR repository for the current Fedora system using command:
$ sudo dnf copr enable ryanabx/cosmic-epoch
Sample Output:
Enabling a Copr repository. Please note that this repository is not part of the main distribution, and quality may vary. The Fedora Project does not exercise any power over the contents of this repository beyond the rules outlined in the Copr FAQ at <https://docs.pagure.org/copr.copr/user_documentation.html#what-i-can-build-in-copr>, and packages are not held to any quality or security level. Please do not file bug reports about these packages in Fedora Bugzilla. In case of problems, contact the owner of this repository. Do you really want to enable copr.fedorainfracloud.org/ryanabx/cosmic-epoch? [y/N]: y
3. Finally, install the cosmic-epoch
package, which contains the core components of the COSMIC desktop using the following command:
$ sudo dnf install cosmic-desktop
Switch to COSMIC Desktop Environment
Once you installed COSMIC DE, log out from your current session to reach the GDM login screen.
Click on your username but do not enter your password yet. At the bottom right of the screen, there should be a gear icon that allows you to select the desktop environment you wish to use for the session.
If COSMIC has been properly installed, it should appear in the list of available desktop environments. Click on it to select it.
Enter your password and log in. The session should start with the COSMIC Desktop Environment.
This is how the COSMIC DE looks like on Fedora 40.
As you can see, COSMIC DE's appearance is quite simple and clean. It looks like an customized XFCE version for me.
Exploring COSMIC DE on Fedora
I quickly spin up a Fedora 40 VM to try out the COSMIC DE. I really like this new DE. It is simple, and fast!
Launch Search Functionality
Pressing the START or SUPER key brings up the Search functionality, allowing you to search for installed applications from your system.
You can type ?
to bring up some command line shortcuts that can be directly run from the Search bar. Type ?
in the Search bar and a drop-down window provides a list of available shortcuts along with a brief description, syntax and example command for each shortcut.
For instance, if you want to search something on the Web, simply choose the "Web search" shortcut from the list or press Ctrl+6 and type the search query in the Search bar and hit ENTER key.
COSMIC uses DuckDuckGo as the default search engine to search for your queries and displays the results in your default browser.
This is new for me. I never seen this feature in GNOME and other popular DEs.
Application Launcher
Clicking on the Applications option in the Top bar will display the Applications menu. Just like the GNOME, all the applications are neatly categorized in distinct groups. You can also create a new group and move your preferred apps to that group.
COSMIC Files
The COSMIC Files is the file manager for the COSMIC DE.
The COSMIC Files has a navigation bar button on the top left corner of every window which toggles the navigation bar panel.
COSMIC Terminal
COSMIC Terminal (cosmic-term) has several advanced features like support for bidirectional text rendering (left-to-right and right-to-left languages), ligature rendering (e.g., æ), desktop and syntax themes, and GPU acceleration.
It's built using the Alacritty terminal framework with a custom renderer based on COSMIC Text. The GPU rendering utilizes glyphon, wgpu, softbuffer, and tiny-skia as a fallback.
Through optimal optimizations, COSMIC Terminal achieves performance similar to Alacritty, both in benchmarks and when displaying large text files.
It supports profiles. You can also customize its appearance and split the screen horizontal or vertical.
COSMIC Screenshot
The COSMIC Desktop Environment includes a built-in screenshot utility that enables users to capture images of their entire desktop, individual application windows, or custom-selected areas of the screen.
COSMIC Settings
You can launch the COSMIC Settings window either from the Dock or from the Power button applet on the top right corner. From the Settings window, you can configure:
- Desktop settings
- Input devices
- Displays
- Sound
- User accounts
- Time and language etc.
It is also still work in progress, so many features are not implemented yet.
COSMIC Applets
Unlike GNOME, COSMIC uses an applets system. This allows users to customize their layout by choosing which features to show or hide based on their preferences and personal taste.
COSMIC DE ships with a few applets at the time of writing this guide. You can access them from the top right corner of the COSMIC desktop.
Tiling Window Manager
For users who prefer a tiling window management workflow, COSMIC provides options for automatic window tiling, enhancing productivity for users who work with multiple applications simultaneously.
Click the Computer icon (near the Volume icon) on the top right.
Toggle the button that says "Automatically tile windows" to ON.
Sound
Network Connections Applet
Battery Applet
Notification Applet
Power Button
Frequently Asked Questions
Here's a FAQ (Frequently Asked Questions) about the COSMIC Desktop Environment.
A: COSMIC (Computer Operating System Main Interface Components) Desktop Environment is a customized graphical user interface developed by System76 for their Pop!_OS Linux distribution.
A: System76's decision to develop COSMIC was driven by a desire to offer Pop!_OS users a unique and efficient desktop experience that stands out in the Linux ecosystem.
A: While COSMIC builds upon the strengths of GNOME, it is being developed from the ground up using the Rust programming language and the iced GUI library.
A: Some key features include extensive customization options, improved workspace management, an enhanced application launcher, support for tiling window management, a customizable dock and taskbar, and a strong emphasis on keyboard navigation with shortcuts.
A: Yes. Unlike the current Pop!_OS desktop which is a customized version of GNOME, COSMIC is a separate desktop environment built specifically for Pop!_OS.
A: Currently, COSMIC is primarily targeted for future versions of Pop!_OS, replacing the current GNOME customization. However, some components are available for installation on distributions like Fedora (via COPR) and Arch Linux (via AUR).
A: For Fedora 39, you can install the COSMIC components from the ryanabx/cosmic-epoch
COPR repository using the following commands:sudo dnf copr enable ryanabx/cosmic-epoch
sudo dnf install cosmic-desktop
A: Yes, one of the key design philosophies behind COSMIC is to provide a highly customizable experience, allowing users to adjust workflows, shortcuts, and the overall look and feel of the desktop to suit their individual needs.
A: As of now, COSMIC is in the alpha stage of development. While some individual components are available for testing, a complete public release date for the entire desktop environment has not been announced yet.
Conclusion
System76 developed COSMIC to provide Pop!_OS users with a unique and efficient desktop experience that sets it apart from other Linux desktops.
While building upon GNOME's strengths, COSMIC introduces new features and optimizations, making it an appealing choice for both new Linux users and experienced ones.
If you're currently using Fedora 40, give COSMIC DE a try. I hope you will like it.
Further reading about COSMIC DE:
- System76 Blog on COSMIC DE: https://blog.system76.com/tags/COSMICDE
- COSMIC on GitHub: https://github.com/pop-os/cosmic
- COSMIC on ArchWiki: https://wiki.archlinux.org/title/COSMIC
Related Read:
- Pop!_OS 24.04 LTS First Alpha With COSMIC Desktop Is Released
- How To Dual Boot Windows And Pop!_OS
- How To Upgrade To Pop OS 22.04 LTS [GUI & CLI Methods]
3 comments
I successfully enabled the repository, but when I try to install cosmic-epoch it briefly shows a progress bar then quickly stops and gives me the following message:
Copr repo for cosmic-epoch owned by ryanabx 2.7kB/s | 1.5 kB 00:00
No match for argument: cosmic-epoch
Error: Unable to find a match: cosmic epich
Looks like a typo in your command. It is not “cosmic epich”. It is “cosmic epoch”.
The installation instructions have changed. Please see the updated post.