COSMIC - ArchWiki

Jump to content

# COSMIC

From ArchWiki

Related articles

- Desktop environment
- greetd

COSMIC is the desktop environment made for Pop!_OS. It was originally a heavily modified version of GNOME but was later remade from scratch 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 a demo compositor. Its first release is called Epoch.

## Installation

COSMIC can be installed via cosmic-session or the cosmic group.

Tip When building cosmic-session-gitAUR, beware the cosmic-applets-gitAUR dependency needs more than 8GB of RAM. Restricting linking to one job is an option to get it built. If you build it repeatedly, setting the `CARGO_TARGET_DIR` environment variable helps downloading less often:

    MOLD_JOBS=1 CARGO_TARGET_DIR=/tmp/mytarget

### Individual components coming as dependencies of cosmic-session

COSMIC comprises a compositor, library, and applets, which may be installed as parts. cosmic-comp, cosmic-applets, cosmic-app-library, cosmic-bg, cosmic-icon-theme, cosmic-launcher, cosmic-notifications, on screen display to overlay messages with cosmic-osd, a dock and panel with cosmic-panel, cosmic-settings, and others.

### Independent components

An editor, cosmic-text-editor, a file manager cosmic-files, a terminal, cosmic-terminal, a multimedia player cosmic-player, and wallpapers, cosmic-wallpapers are provided.

### Network shares in COSMIC Files

To connect to network shares in COSMIC Files, the relevant GVFS package needs to be installed:

Protocol | Package
--- | ---
AppleTalk | gvfs
File Transfer Protocol (FTP) | gvfs
Network File System (NFS) | gvfs-nfs
Server Message Block (SMB) | gvfs-smb
SSH | gvfs
WebDAV | gvfs-dnssd

COSMIC doesn't provide a secrets store/keyring, so to remember passwords, install a secrets storage component such as gnome-keyring. See also GNOME/Keyring.

## Starting

The easiest way to start COSMIC is through a display manager, where it will show up as an additional option after installation, alongside GNOME, KDE Plasma, etc.

To start COSMIC directly from the console, run:

    $ start-cosmic

### Using Cosmic Greeter

COSMIC ships cosmic-greeter, a display manager based on greetd. To use it, enable `cosmic-greeter.service`.

## Configuration

The panel can be used to configure besides using the settings applet, examples of applets are provided.

### SSH_AUTH_SOCK not set

The `$SSH_AUTH_SOCK not set` message appears briefly at login with Cosmic Login Manager when the variable has not been properly configured for use with SSH.

To use the GNOME Keyring as a wrapper around ssh-agent that automatically sets this variable, see GNOME/Keyring#Setup gcr

To use the systemd service and manually set the environment variable, see SSH keys#Start ssh-agent with systemd user.

### Night light

Because COSMIC DE does not yet implement the `wlr-gamma-control-unstable-v1` Wayland protocol (see pop-os/cosmic-comp#2059), tools like wlsunset and gammastep cannot control backlight color temperature from within a COSMIC session.

To work around this issue, you can directly adjust DRM gamma tables via libdrm from a TTY before the COSMIC DE compositor launches, using tools like redshift or gammastep. Another option is to use drm-colortemp or nebula-drm-gitAUR which rely on a systemd service to automate the process.

## See also

- COSMIC Welcome Page
- System76 Blog
- Pop!_OS Welcome Page
- COSMIC shifting from GNOME to rust-based DE

Category:

- Desktop environments

COSMIC
Add topic