Overview

Theming on Soplos covers two stacks: GTK (used by many apps and XFCE) and Qt (used by Plasma and KDE apps). Additionally, icon and cursor themes influence the overall look. Tyron (XFCE) and Boro (GNOME) use GTK-first themes; Tyson (Plasma) uses Qt and Plasma global themes.

GTK & Qt Themes

GTK themes affect GTK2/GTK3/GTK4 applications. Qt apps on XFCE may respect GTK theme via qt5ct or qt6ct. On Plasma, use native Qt/Plasma themes.

  • XFCE (Tyron): GTK theme + GTK engine controls most apps.
  • GNOME (Boro): GTK theme (libadwaita/GTK4) controls apps. Use GNOME Tweaks for legacy GTK3 themes.
  • Plasma (Tyson): Use System Settings → Global Theme and Plasma style for consistent Qt visuals.
  • Qt apps on XFCE: install and configure qt5ct or qt6ct and set environment variable QT_QPA_PLATFORMTHEME=qt5ct for consistent appearance.

Icon Themes

Icon themes are installed to /usr/share/icons (system) or ~/.icons (user). After copying icons, update the cache:

sudo cp -r YourIconTheme /usr/share/icons/
sudo gtk-update-icon-cache /usr/share/icons/YourIconTheme

Then select the icon theme in Appearance dialogs (Tyson: System Settings → Icons; Tyron: Appearance → Icons; Boro: GNOME Tweaks → Appearance).

Cursor Themes

Cursor themes follow the same paths as icons. Install to /usr/share/icons or ~/.icons and select in Appearance → Cursors. A logout/login may be required to apply globally.

Installing Themes

Common approaches:

  • Package manager: many themes are available via APT (search with apt search theme).
  • Manual install: extract into ~/.themes (GTK/window themes) or ~/.icons for icons.
  • System-wide install: copy to /usr/share/themes or /usr/share/icons with sudo.
# Example: install to user folder
mkdir -p ~/.themes ~/.icons
unzip SomeTheme.zip -d ~/.themes/
unzip SomeIcons.zip -d ~/.icons/

Applying Themes

  • Tyron (XFCE): Settings → Appearance (GTK theme, icons, fonts) and Settings → Window Manager (window decorations).
  • Boro (GNOME): Settings → Appearance (Background, Style) or GNOME Tweaks (Themes, Icons, Shell).
  • Tyson (Plasma): System Settings → Global Theme → Apply. Use Plasma-specific widgets and KWin settings for effects.
  • Qt apps on GTK desktops: configure qt5ct/qt6ct and set the platform theme env var.

Creating a Simple Theme

Quick guide to create a minimal GTK theme:

  1. Create folder ~/.themes/MyTheme/gtk-3.0/ and place a gtk.css with custom rules.
  2. Add an index.theme file in ~/.themes/MyTheme/ describing the theme.
  3. Restart GTK apps or logout/login to test.

Troubleshooting

  • If icons don't show correctly, clear and update icon cache: sudo gtk-update-icon-cache /usr/share/icons/YourTheme.
  • If GTK and Qt apps look inconsistent, ensure QT_QPA_PLATFORMTHEME is set and qt5ct/qt6ct configured.
  • For cursor not updating system-wide, run sudo update-alternatives --config x-cursor-theme or relogin.
  • When Plasma ignores a theme, open System Settings → Global Theme and check if components (Plasma, GTK) are applied separately.
  • For Boro (GNOME), ensure User Themes extension is enabled to change the Shell theme.