██╗ ██████╗ ██████╗ ███╗ ██╗███████╗ ██║██╔════╝██╔═══██╗████╗ ██║██╔════╝ ██║██║ ██║ ██║██╔██╗ ██║███████╗ ██║██║ ██║ ██║██║╚██╗██║╚════██║ ██║╚██████╗╚██████╔╝██║ ╚████║███████║ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚══════╝
DankMaterialShell will use the QT6 icon theme system as primary source for application icons. Depending on which platform theme you're using, icons are configured in different locations.
Qt6 applications, including DankMaterialShell, look for icon themes based on your QT_QPA_PLATFORMTHEME setting. Each platform theme reads icon configuration from a different location:
~/.config/gtk-3.0/settings.ini)~/.config/qt6ct/qt6ct.conf)~/.config/kdeglobals)DMS respects these platform-specific configurations and doesn't override your icon theme choices.
You can also set the icon theme directly using the QS_ICON_THEME environment variable:
export QS_ICON_THEME=Papirus-Dark
This takes precedence over platform theme settings and is useful for testing or when you want DMS to use a different icon theme than your other Qt applications.
If you're using the GTK passthrough method for Qt theming, icon themes are controlled via GTK settings.
Edit ~/.config/gtk-3.0/settings.ini:
[Settings]
gtk-icon-theme-name=Papirus-Dark
Common icon themes:
Papirus / Papirus-DarkAdwaitabreeze / breeze-darkTelaNordzy# Arch - Papirus
sudo pacman -S papirus-icon-theme
# Arch - Adwaita (usually pre-installed)
sudo pacman -S adwaita-icon-theme
# Flatpak icon themes (available to all apps)
flatpak install flathub org.kde.PaplirusIconTheme
When using qt6ct for dedicated Qt control, icon themes are managed through the qt6ct interface or configuration file.
qt6ct from your application launcherEdit ~/.config/qt6ct/qt6ct.conf:
[Appearance]
icon_theme=Papirus-Dark
If you're using KDE Plasma or the KDE platform theme, icon themes are managed through KDE's configuration system.
Edit ~/.config/kdeglobals:
[Icons]
Theme=Papirus-Dark
Icon themes can be installed system-wide or per-user.
# Arch
sudo pacman -S papirus-icon-theme
sudo pacman -S breeze-icons
sudo pacman -S adwaita-icon-theme
# Fedora
sudo dnf install papirus-icon-theme
sudo dnf install breeze-icon-theme
sudo dnf install adwaita-icon-theme
Download icon themes and extract to ~/.local/share/icons/:
# Example: Installing from a downloaded archive
mkdir -p ~/.local/share/icons
cd ~/.local/share/icons
tar xf ~/Downloads/Papirus-Dark.tar.gz
Flatpak applications use icon themes from the Flatpak runtime:
# List available icon theme extensions
flatpak search icon
# Install Papirus for Flatpak apps
flatpak install flathub org.kde.PaplirusIconTheme
Check which platform theme you're currently using:
echo $QT_QPA_PLATFORMTHEME
:::tip DankInstall Users
dankinstall sets QT_QPA_PLATFORMTHEME=gtk3 in ~/.config/environment.d/90-dms.conf. Check this file to see your current setting.
:::
This variable must be exposed to the dms process. dankinstall users have this in ~/.config/environment.d/90-dms.conf. Manual setups typically set it in the compositor config or a custom environment.d file.
Check icon theme for each configuration:
# GTK configuration
cat ~/.config/gtk-3.0/settings.ini | grep icon-theme
# qt6ct configuration
cat ~/.config/qt6ct/qt6ct.conf | grep icon_theme
# KDE configuration
cat ~/.config/kdeglobals | grep -A 1 "\[Icons\]"
Make sure you've restarted applications after changing icon themes. Qt applications cache icon information and need to be relaunched.
# Restart DMS to apply icon theme changes
dms restart
Some applications might show missing icons if the theme doesn't include all required icons. Install a fallback theme:
# Arch
sudo pacman -S adwaita-icon-theme hicolor-icon-theme
# Fedora
sudo dnf install adwaita-icon-theme hicolor-icon-theme
Verify that your platform theme environment variable matches your configuration:
# Check current setting
echo $QT_QPA_PLATFORMTHEME
If you change QT_QPA_PLATFORMTHEME, you must restart your compositor session for the change to take effect.
If qt6ct shows an empty icon theme list, check that icon themes are installed in the correct location:
# Check system icon themes
ls /usr/share/icons/
# Check user icon themes
ls ~/.local/share/icons/
Flatpak applications run in a sandboxed environment and may not see your system icon themes. Install icon themes via Flatpak:
flatpak install flathub org.kde.PaplirusIconTheme
~/.config/gtk-3.0/settings.ini~/.config/qt6ct/qt6ct.conf~/.config/kdeglobalsqt6ct