Skip to content

About

Celestial is a flat design theme for GTK 2/3/4, Gnome-Shell, KDE, Xfce and Cinnamon

Resources

Stars

42 stars

Watchers

2 watching

Forks

Repository files navigation

Celestial GTK Theme

CI Version License GTK Version GNOME Shell KDE Plasma

A modern, customizable GTK theme with multiple color variants

Based on the excellent Arc and Matcha themes

Changelog | Installation Guide | Development Guide

Celestial Theme Showcase

Features

  • 12 Theme Variants - 4 colors (Sea, Aliz, Azul, Pueril) x 3 modes (Light, Standard, Dark)
  • Desktop Support - GTK 2/3/4, GNOME Shell (38-50), Cinnamon, Xfce, Budgie, Pantheon, Unity, Openbox, Labwc
  • KDE Plasma Support - Native theming for KDE Plasma 6
  • Dock Support - Plank Reloaded theming
  • HiDPI Support - Standard, HiDPI, and XHiDPI variants for retina displays
  • Color-Matched Backgrounds - Wallpapers coordinated with each theme variant
  • Additional Theming - GDM login screen, libadwaita apps, GTKSourceView syntax highlighting, cursor theme, Zed editor themes, Alacritty, foot, Ghostty, Kitty, and Konsole terminal themes, Telegram Desktop themes, Halloy IRC client themes, CopyQ clipboard manager themes, Slack themes, Sniffnet network monitor themes, Tk/ttk themes, Firefox themes, Spotifast music player themes

Installation

For complete installation instructions, requirements, and customization options, see INSTALL.md.

Quick Start

git clone https://github.com/zquestz/celestial-gtk-theme.git
cd celestial-gtk-theme
./install.sh

This installs all theme variants to ~/.themes/. For system-wide installation, customization options, and applying the theme to your desktop, see the full installation guide.

KDE Plasma

Celestial provides native KDE Plasma theming for all 12 variants, including the bundled Kvantum themes for Qt apps. The global themes also set Papirus icons, the Celestial cursor, and each color's matching wallpaper - install those, plus the matching SDDM login screen, for the complete look.

# Install all KDE Plasma variants
./install.sh --kde

# Install a specific variant
./install.sh --kde -t azul -c dark

# Install with the Celestial cursors and backgrounds
./install.sh --kde --cursors -b

# Add the matching login screen (system-wide, so it needs root)
sudo ./install.sh --sddm

Then apply from System Settings > Global Theme. One manual step remains: a global theme can select Kvantum as the widget style but can't choose which Celestial variant Kvantum renders, so set it once to match:

kvantummanager --set Celestial-Azul-Dark

GTK/GNOME apps don't follow a Plasma global theme - set them to match under System Settings > Application Style > GNOME/GTK Application Style, selecting your Celestial variant.

The SDDM login screen is applied separately: pick your variant under System Settings > Colors & Themes > Login Screen (SDDM), then click Apply Plasma Settings on the same page (a global theme can't switch the login screen, so it's a one-time selection like the Kvantum step).

Built for Plasma 6. See the KDE Plasma README for full details.

GNOME Desktop

Select your Celestial variant in GNOME Tweaks > Appearance. The shell theme is a separate setting that needs the User Themes extension - see INSTALL.md for both steps.

The panel's Dark Style toggle flips GNOME's color-scheme preference, which only reaches GTK 4 apps: each installed variant is paired with its color's dark stylesheet, so a light or standard variant switches to dark and back. GTK 3 apps, the shell theme, and Qt apps follow the theme you selected, and a dark variant is already dark - so on a dark variant the toggle looks like it does nothing. To switch the whole desktop, change the theme:

gsettings set org.gnome.desktop.interface gtk-theme "Celestial-Sea-Light"
gsettings set org.gnome.shell.extensions.user-theme name "Celestial-Sea-Light"

Qt Applications

On GNOME's Wayland session, Qt applications draw their own titlebars - Mutter offers no server-side decorations - so no theme can style them, and Qt's adwaita decoration plugin (qt6-qtwayland-adwaita-decoration on Fedora, usually preinstalled with GNOME) is hardcoded to the Adwaita look. Two options:

# GNOME-style Qt titlebars (follows light/dark, but always Adwaita)
QT_WAYLAND_DECORATION=adwaita

# Celestial Qt titlebars: run the app under XWayland, where Mutter
# decorates it from the GTK theme; Kvantum still styles the widgets
QT_QPA_PLATFORM=xcb

Set either persistently with a file in ~/.config/environment.d/ (one VAR=value per line), then log out and back in. On KDE Plasma none of this applies - KWin draws the Celestial window decorations for every app.

Recommended Companions

Complete your desktop with these complementary themes:

  • Papirus Icon Theme - Modern icon theme with excellent coverage; pair Papirus with the standard variants, Papirus-Dark with dark, and Papirus-Light with light
  • Papirus XApp Symbolic Icons - Redraws the XApp symbolic icons used by Cinnamon and Linux Mint apps in Papirus style at 16, 22, and 24px, so they stop looking out of place; installs into an existing Papirus theme
  • Plank Reloaded - Modern dock with Celestial theme support
  • Hardcode-Tray - Fix hardcoded tray icons
  • Folder Color - Change individual folder colors in Nautilus, Nemo, and Caja
  • Transparent panels - Cinnamon extension with full theme color support (turn on "Use current theme styles")

Matching Folder Colors

Papirus ships folder icons in every Celestial hue, and papirus-folders sets which one is the default. Pick the color for your variant, and the Papirus flavor you paired it with:

papirus-folders -C teal  -t Papirus-Dark -u   # Sea
papirus-folders -C green -t Papirus-Dark -u   # Pueril
papirus-folders -C blue  -t Papirus-Dark -u   # Azul (Papirus default)
papirus-folders -C red   -t Papirus-Dark -u   # Aliz

Use -t Papirus for the standard variants and -t Papirus-Light for light, matching the pairing above. This changes the Papirus theme itself, so it applies everywhere Papirus is used, not just under Celestial - papirus-folders -D -t <theme> restores the default blue. The command elevates itself with sudo when Papirus is installed system-wide.

Qt Theming

For a consistent look across GTK and Qt applications, we recommend Kvantum - a powerful SVG-based theme engine for Qt applications.

On KDE Plasma, --kde (see KDE Plasma above) already installs these Kvantum themes.

Celestial includes Kvantum themes that can be installed with the -k flag:

# Install all Kvantum theme variants
./install.sh --kvantum

# Install specific variant
./install.sh --kvantum -t azul -c dark

After installation, use Kvantum Manager to select your Celestial theme variant. For more details, see the Kvantum README.

Alternative Qt Theming Tools:

If you prefer a different approach, consider:

  • qt6gtk2 - Qt6 style plugin that uses GTK2 theme rendering
  • Qt Style Plugins - Qt5 style plugins including GTK2 support

These plugins provide alternative ways to ensure Qt applications (KDE apps, VLC, Telegram, etc.) match your GTK theme.

Community

Celestial Theme Forge by Erik Dubois generates Celestial in any accent color you like - 58 colors x light, standard, and dark. It ships a GTK4 picker that lets you grab a color with an eyedropper or a swatch, then builds and installs the theme to ~/.themes, covering GTK 2/3/4, GNOME Shell, Cinnamon, Xfwm4, Metacity, Openbox, Labwc, Plank, Kvantum, and KDE Plasma color schemes, global themes, desktop themes, and Aurorae decorations.

The generated themes are published ready to use at celestial-themes.

Cursor Theme

Celestial includes a modern cursor theme designed to complement all theme variants.

To install the cursor theme:

./install.sh --cursors

For more details, see the Cursors README.

Code Editor Themes

Celestial includes syntax highlighting themes for popular code editors:

GTKSourceView

For editors like Xed and other GTKSourceView-based applications, Celestial provides a comprehensive syntax highlighting theme with a carefully crafted color palette.

The GTKSourceView theme is automatically installed when you run the standard installation:

./install.sh

The theme file is installed to ~/.local/share/gtksourceview-4/styles/celestial.xml (or /usr/share/gtksourceview-4/styles/ for system-wide installations).

Zed Editor

For Zed users, Celestial provides 8 themes - 4 color variants (Aliz, Azul, Pueril, Sea) with both dark and light modes that match the GTK theme color palette.

To install all Zed themes:

./install.sh --zed

To install specific variant(s):

./install.sh --zed -t azul
./install.sh --zed -t sea -t aliz

Then select your theme from Zed's theme selector (Cmd+K Cmd+T or Ctrl+K Ctrl+T):

  • Celestial Aliz Dark / Light
  • Celestial Azul Dark / Light
  • Celestial Pueril Dark / Light
  • Celestial Sea Dark / Light

For more details, see the Zed theme README.

Note: Zed themes can only be installed for user accounts (not system-wide).

Terminal Themes

Celestial includes color themes for popular terminal emulators:

Alacritty Terminal

For Alacritty terminal users, Celestial provides a terminal theme that incorporates the Celestial color palette.

To install the Alacritty theme:

./install.sh --alacritty

Then import it from your alacritty.toml with [general] import = ["~/.config/alacritty/themes/Celestial.toml"]. For more details, see the Alacritty theme README.

Note: Alacritty themes can only be installed for user accounts (not system-wide).

foot Terminal

For foot terminal users, Celestial provides a terminal theme that incorporates the Celestial color palette.

To install the foot theme:

./install.sh --foot

Then add include=~/.config/foot/themes/Celestial to the top of your foot.ini. For more details, see the foot theme README.

Ghostty Terminal

For Ghostty terminal users, Celestial provides a terminal theme that incorporates the Celestial color palette.

To install the Ghostty theme:

./install.sh --ghostty

Then set theme = "Celestial" in your Ghostty configuration file. For more details, see the Ghostty theme README.

Kitty Terminal

For Kitty terminal users, Celestial provides a terminal theme that incorporates the Celestial color palette.

To install the Kitty theme:

./install.sh --kitty

Then use the Kitty theme kitten (kitty +kitten themes) to select "Celestial", or include the theme in your kitty.conf. For more details, see the Kitty theme README.

Note: Kitty themes can only be installed for user accounts (not system-wide).

Konsole Terminal

For Konsole and Yakuake users, Celestial provides a terminal color scheme that matches the palette. It is installed with the KDE Plasma themes:

./install.sh --kde

Then in Konsole: Settings > Edit Current Profile > Appearance and select the Celestial scheme. For more details, see the Konsole theme README.

Clipboard Manager Themes

CopyQ

For CopyQ clipboard manager users, Celestial provides 8 themes - 4 color variants (Aliz, Azul, Pueril, Sea) with both dark and light modes that match the GTK theme color palette.

To install all CopyQ themes:

./install.sh --copyq

To install specific variant(s):

./install.sh --copyq -t azul
./install.sh --copyq -t sea -c dark

CopyQ themes are installed to ~/.config/copyq/themes/ for user installs or /usr/share/copyq/themes/ for system-wide installs.

Then in CopyQ: File > Preferences > Appearance > Select theme from dropdown menu

Available themes:

  • Celestial Aliz Dark / Light
  • Celestial Azul Dark / Light
  • Celestial Pueril Dark / Light
  • Celestial Sea Dark / Light

For more details and installation instructions, see the CopyQ theme README.

Communication App Themes

Halloy IRC Client

For Halloy IRC client users, Celestial provides 4 dark themes - one for each color variant (Aliz, Azul, Pueril, Sea) that match the GTK theme color palette.

To install all Halloy themes:

./install.sh --halloy

To install specific variant(s):

./install.sh --halloy -t azul
./install.sh --halloy -t sea -t aliz

Halloy themes are installed to ~/.config/halloy/themes/. Then in your Halloy config.toml, set:

theme = "celestial-sea"

For more details and installation instructions, see the Halloy theme README.

Note: Halloy themes can only be installed for user accounts (not system-wide).

Telegram Desktop

For Telegram Desktop users, Celestial provides 8 color palettes - 4 color variants (Sea, Aliz, Azul, Pueril) in light and dark.

Message bubbles stay neutral and are separated by elevation, with the accent reserved for links, controls, and the selected chat. Each theme also sets a flat Celestial chat background, replacing Telegram's patterned default.

To install one, open the theme file for your variant with Telegram Desktop:

xdg-open src/extra/telegram/Celestial-Sea-Dark.tdesktop-theme

Double-clicking the file or dragging it onto the Telegram window works too.

For more details, see the Telegram theme README.

Slack

For Slack users, Celestial provides 8 custom themes - 4 color variants (Aliz, Azul, Pueril, Sea) with both dark and light modes that match the GTK theme color palette.

Slack themes are simple copy-paste installations:

  1. Open Slack
  2. Click on your workspace name in the top-left
  3. Go to Preferences > Appearance > Custom theme
  4. Copy and paste one of the theme codes from the Slack theme README

Available themes:

  • Celestial Aliz Dark / Light
  • Celestial Azul Dark / Light
  • Celestial Pueril Dark / Light
  • Celestial Sea Dark / Light

Each theme uses a simple 4-value format: background,accent,accent,accent where the accent color is used for selected items, presence indicators, and notifications.

For theme codes and more details, see the Slack theme README.

Network Monitor Themes

Sniffnet

For Sniffnet network monitor users, Celestial provides 8 themes - 4 color variants (Aliz, Azul, Pueril, Sea) with both dark and light modes that match the GTK theme color palette.

Sniffnet loads custom themes from a file path - there is no installer step:

  1. Open Sniffnet and go to Settings
  2. Select the Style tab and scroll to the custom theme field at the bottom
  3. Enter the full path to one of the theme files in src/extra/sniffnet/ (e.g. celestial-sea-dark.toml)
  4. Sniffnet validates the file and applies it immediately

Available themes:

  • Celestial Aliz Dark / Light
  • Celestial Azul Dark / Light
  • Celestial Pueril Dark / Light
  • Celestial Sea Dark / Light

For more details, see the Sniffnet theme README.

Music Player Themes

Spotifast

For Spotifast users, Celestial provides 8 palettes - 4 color variants (Aliz, Azul, Pueril, Sea) in light and dark, generated from the GTK theme colors.

To install all Spotifast palettes:

./install.sh --spotifast

To install specific variant(s):

./install.sh --spotifast -t azul
./install.sh --spotifast -t sea -c dark

Then in Spotifast: Settings > Appearance > Theme and pick a Celestial palette. If Spotifast is already open, run spotifast reload-themes first so it sees the new files. Turn off Colour from album art in the same section to keep Celestial's colors throughout.

Available themes:

  • Celestial Aliz Dark / Light
  • Celestial Azul Dark / Light
  • Celestial Pueril Dark / Light
  • Celestial Sea Dark / Light

For more details, see the Spotifast theme README.

Note: Spotifast themes can only be installed for user accounts (not system-wide).

Development

Building from Source

If you modify SCSS files, rebuild the CSS:

./parse_sass.sh

This will regenerate all CSS files from SCSS sources.

Screenshots

Dark Themes

Aliz Dark

Aliz Dark

Azul Dark

Azul Dark

Pueril Dark

Pueril Dark

Sea Dark

Sea Dark

Light Themes

Aliz Light

Aliz Light

Azul Light

Azul Light

Pueril Light

Pueril Light

Sea Light

Sea Light

Standard Themes

Aliz

Aliz

Azul

Azul

Pueril

Pueril

Sea

Sea

Troubleshooting

For troubleshooting common issues, see the Troubleshooting section in INSTALL.md.

Contributing

Contributions are welcome! For development guidelines and detailed instructions, see HACKING.md.

Quick Start:

  1. Fork and create a feature branch
  2. Edit SCSS files in src/*/sass/ directories
  3. Compile with ./parse_sass.sh
  4. Test with ./install.sh -t azul -c dark
  5. Submit a pull request

Credits

Celestial GTK Theme is based on:

Customized and maintained by:

Special thanks to all contributors who have helped improve this theme!

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE.md file for details.

Support

If you like this theme, please consider:

  • Starring the repository
  • Reporting bugs or requesting features
  • Contributing code improvements
  • Sharing with others

Made with care for the Linux community

About

Celestial is a flat design theme for GTK 2/3/4, Gnome-Shell, KDE, Xfce and Cinnamon

Resources

Stars

42 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages