Documentation Index
Fetch the complete documentation index at: https://mintlify.com/zirconium-dev/zirconium/llms.txt
Use this file to discover all available pages before exploring further.
Overview
DankMaterialShell (DMS) is a modern, Material Design-inspired desktop shell built with QuickShell. It provides the user interface layer for Zirconium, including panels, launchers, and the login greeter.DMS is installed from the avengemedia/dms-git COPR repository and depends on QuickShell from the avengemedia/danklinux repository.
Components
DankMaterialShell consists of several integrated components:dms
The main shell component that provides:- Desktop panels and taskbar
- System tray integration
- Notifications
- Workspace indicators
- Media controls
dms.service (user service)
dms-cli
Command-line interface for interacting with DMS:Common dms-cli commands
Common dms-cli commands
dms-greeter
The login greeter that launches your Niri session. Configuration:/etc/greetd/config.toml
Greeter user and cache
The greeter runs as a dedicated system user (UID 767) with its own cache directory:Updating greeter configuration
After changing greeter settings:dgop
DankGnomeOnlineProfiles - integration component for online accounts.dgop provides seamless integration with GNOME Online Accounts for cloud services and email.
dsearch
Fast application and file search component integrated into the DMS launcher. Features:- Application launching
- File indexing and search
- Command execution
- Calculator functionality
Configuration files
DMS configuration is managed through chezmoi from zdots:User configuration
- Settings:
~/.config/DankMaterialShell/settings.json - Session state:
~/.local/state/DankMaterialShell/session.json - Color cache:
~/.cache/DankMaterialShell/dms-colors.json
Managed by zdots
All DMS configuration files are automatically synchronized from:Configuration options
Appearance and theming
DMS uses Material Design principles with color theming generated by matugen:- Accent colors: Set system-wide via GNOME settings
- Color scheme: Automatically generated from wallpaper or accent color
- Panel styling: Configured in
settings.json
Setting accent color
Panel configuration
Customize panel behavior, position, and modules in~/.config/DankMaterialShell/settings.json.
Example panel settings
Example panel settings
While specific settings are managed through zdots, you can typically configure:
- Panel position (top/bottom)
- Panel height and opacity
- Module visibility (clock, system tray, workspace indicators)
- Corner radius and styling
- Font and icon sizes
Launcher settings
dsearch launcher can be customized for:- Search behavior and indexing
- Keyboard shortcuts
- Result ordering
- Category filtering
Integration with other components
DMS integrates seamlessly with Zirconium components:Authentication
PAM configuration for fingerprint support:GNOME Keyring
DMS automatically starts and integrates with GNOME Keyring:/etc/pam.d/greetd.
Input methods
fcitx5 integration for multilingual input:Desktop launcher files for fcitx5 are removed to prevent duplicate autostart, as it’s managed via systemd.
Systemd services
DMS-related services are managed through systemd presets:Automatic updates
Chezmoi automatically updates DMS configuration:- On login:
chezmoi-init.service(if~/.config/zirconium/chezmoidoesn’t exist) - Periodic:
chezmoi-update.timer(scheduled updates)
Customizing DMS
Temporary changes
Edit configuration files directly:Persistent changes
For persistent customization:-
Disable automatic dotfile updates:
- Fork zdots and modify DMS configuration there
- Point chezmoi to your custom zdots repository
Troubleshooting
DMS not starting
Check service status and logs:Greeter issues
Check greetd logs:Sync greeter settings
If greeter appearance doesn’t match your session:Reset DMS configuration
Reset to zdots defaults:Next steps
Niri window manager
Configure the Niri window manager
Customization
Deep dive into theming and dotfiles