How to Customize Qt and GTK Themes on Arch Linux
Categories:
5 minute read
Arch Linux, known for its simplicity, flexibility, and user control, gives you complete reign over every aspect of your system—including its appearance. Whether you use a GTK-based desktop environment like GNOME or XFCE, or a Qt-based one like KDE Plasma or LXQt, customizing your theme allows you to create a visually cohesive and personalized user experience.
However, theming on Arch Linux can be a bit more involved than on more curated distributions like Ubuntu or Fedora, especially when mixing applications based on different UI toolkits. This guide covers how to customize both GTK and Qt themes on Arch Linux, ensuring consistency across your desktop.
Understanding GTK and Qt Toolkits
Before diving into customization, it helps to understand the distinction between GTK and Qt:
- GTK (GIMP Toolkit) is used primarily by desktop environments like GNOME, XFCE, MATE, and Cinnamon. GTK apps include Nautilus, Gedit, and Firefox.
- Qt is the toolkit behind KDE Plasma, LXQt, and applications like Dolphin, Kdenlive, and VLC.
Each toolkit handles theming differently, and settings for one won’t necessarily apply to the other. That’s why configuring both is essential for a consistent look.
1. Setting Up GTK Themes
Step 1: Install GTK Themes
GTK themes are available in both the official Arch repositories and the AUR. Some popular GTK themes include:
- Adwaita (default for GNOME)
- Arc
- Materia
- Nordic
- Gruvbox
Install your desired theme using pacman
or an AUR helper like yay
.
sudo pacman -S arc-gtk-theme
# Or from AUR
yay -S materia-theme
GTK themes are usually stored in:
- System-wide:
/usr/share/themes
- User-specific:
~/.themes
Step 2: Apply GTK Theme
How you apply a GTK theme depends on your desktop environment:
GNOME: Use
gnome-tweaks
sudo pacman -S gnome-tweaks
Open Tweaks → Appearance → Themes, and select your desired theme.
XFCE: Go to Settings → Appearance and Window Manager to change the theme.
Cinnamon/MATE: Use their respective appearance settings tools.
For standalone window managers like i3, Openbox, or bspwm, you’ll need to manually set GTK variables.
Create or edit ~/.config/gtk-3.0/settings.ini
:
[Settings]
gtk-theme-name = Arc-Dark
gtk-icon-theme-name = Papirus-Dark
gtk-font-name = Noto Sans 10
And for GTK2 (older applications), edit or create ~/.gtkrc-2.0
:
gtk-theme-name = "Arc-Dark"
gtk-icon-theme-name = "Papirus-Dark"
gtk-font-name = "Noto Sans 10"
2. Setting Up Qt Themes
Qt theming can be slightly more complex, especially outside KDE Plasma. Here’s how to manage it depending on your environment.
Step 1: Install Kvantum (Recommended for Qt5/Qt6)
Kvantum is a powerful SVG-based theme engine for Qt applications. It provides fine-tuned control and works even when not using KDE.
Install it with:
sudo pacman -S kvantum-qt5 kvantum-theme-arc
You can find more themes in the AUR, such as kvantum-theme-materia
.
Step 2: Configure Kvantum
Run the Kvantum Manager:
kvantummanager
- Choose your desired theme (e.g., Arc-Dark)
- Apply it
- Set Kvantum as the Qt style engine
To make Kvantum the default for Qt5/6 apps outside of KDE, export the following environment variable:
export QT_STYLE_OVERRIDE=kvantum
You can place this in your ~/.xprofile
, ~/.profile
, or ~/.bashrc
depending on your session startup mechanism.
For persistent configuration:
echo "export QT_STYLE_OVERRIDE=kvantum" >> ~/.profile
Step 3: For KDE Users (Using Plasma)
If you’re running KDE Plasma, you can configure themes through System Settings → Appearance.
- Global Theme: Changes everything—colors, icons, cursors, plasma style, and application style.
- Application Style: Directly influences Qt widget appearance.
- Plasma Style: For the desktop environment itself (panels, widgets).
- Colors and Icons: Configurable independently.
KDE Plasma will automatically apply Qt themes system-wide, and Kvantum can still be integrated via System Settings → Application Style → Kvantum.
3. Icon and Cursor Themes
A unified appearance often includes consistent icons and cursors.
Step 1: Install Icon and Cursor Themes
Some popular choices:
- Papirus:
sudo pacman -S papirus-icon-theme
- Numix:
sudo pacman -S numix-icon-theme
- Tela (AUR):
yay -S tela-icon-theme
Cursors:
- Bibata:
yay -S bibata-cursor-theme
- Capitaine:
yay -S capitaine-cursors
Step 2: Apply Icon and Cursor Themes
Set in GTK environments via Tweaks or Appearance settings.
For standalone setups, add to ~/.config/gtk-3.0/settings.ini
:
gtk-icon-theme-name = Papirus-Dark
gtk-cursor-theme-name = Bibata-Modern-Ice
And for Qt:
In KDE: System Settings → Appearance → Icons and Cursors.
For non-KDE environments, edit ~/.config/Trolltech.conf
or rely on Kvantum’s icon settings.
4. Font Configuration
Fonts complete your theme. You can set fonts via GUI in most DEs, but here’s how to do it manually:
GTK:
gtk-font-name = "Noto Sans 10"
Qt (for non-KDE):
Edit or create ~/.config/Trolltech.conf
:
[Qt]
font="Noto Sans,10,-1,5,50,0,0,0,0,0"
Or use qt5ct
:
sudo pacman -S qt5ct
Then:
export QT_QPA_PLATFORMTHEME=qt5ct
And run qt5ct
to change Qt themes, fonts, and icons.
5. Advanced Tips
Mix GTK and Qt Apps Seamlessly
Even if you’re running KDE (Qt), you might still need GTK apps like Firefox or GIMP. And vice versa in GTK environments.
To harmonize appearance:
- Match GTK and Kvantum themes (e.g., Arc GTK + Kvantum Arc)
- Use consistent icons
- Set
QT_QPA_PLATFORMTHEME=qt5ct
orkvantum
, but avoid conflicts between qt5ct and KDE
Use Theme Matching Tools
Some themes are made for both GTK and Qt, such as:
- Arc
- Materia
- Nordic
- Adapta
This helps ensure visual consistency across all applications.
6. Troubleshooting
1. Theme Not Applying?
- Check file ownership and permissions.
- Ensure themes are located in the correct directories:
~/.themes
,/usr/share/themes
, or~/.config/Kvantum
. - Reboot or relogin after setting environment variables.
2. Kvantum Theme Doesn’t Match GTK?
Some Kvantum themes may not have a GTK counterpart. Search for matching GTK themes or tweak manually.
3. Qt Apps Ignore Theme?
Make sure QT_STYLE_OVERRIDE=kvantum
is exported early during session start—use .xprofile
or .profile
.
Conclusion
Customizing GTK and Qt themes on Arch Linux provides a rewarding way to make your system reflect your personal taste. While it may take some manual configuration—especially when mixing toolkits—the result is a polished, cohesive look across all your applications.
By installing and applying GTK and Kvantum themes, setting icons and cursors, and tuning fonts and environment variables, you can achieve a seamless desktop experience, whether you’re using a full DE like GNOME/KDE or a lightweight WM like i3 or bspwm.
And since it’s Arch, you’re not just customizing—you’re learning how Linux works under the hood. Enjoy the journey!
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.