video-showcase.mp4
ii-sddm-theme is a custom theme for the SDDM display manager that tries to replicate the lockscreen aesthetic and settings of illogical impulse. It can be used with ii dotfiles, with Matugen only, or as a standalone theme.
I only have a basic understanding of Qt QML, so this project is a learning experience—piecing together code from various sources while figuring things out along the way.
Currently supports: Arch Linux + Hyprland, to be extended
This theme wouldn't exist without these projects:
- illogical impulse – All the widgets code, the design and the creativeness comes from end-4 repo
- sddm-astronaut-theme – The starting point for this theme
- SilentSDDM – Custom virtual keyboard implementation and various improvements
- matugen - Material You color palette generator
- qt/qtvirtualkeyboard – Default virtual keyboard style template
Depending on your setup, you can choose from one to three different installation modes:
Settings, wallpaper, and colors automatically synced from ii configuration
Wallpaper and colors generated via Matugen, with manual settings configuration
Manually configure your background, colors, and settings
The script will detect your configuration and guide you through the installation:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/3d3f/ii-sddm-theme/main/setup.sh)"Note: Only Arch Linux + Hyprland is supported. Non-standard folder structures will require manual installation. If something goes wrong, please open an issue.
Manual Installation
Follow these steps for a manual installation. You'll choose your integration method after completing the initial setup.
Arch Linux:
yay -S --needed sddm qt6-svg qt6-virtualkeyboard qt6-multimedia-ffmpeg otf-space-grotesk ttf-gabarito-git ttf-material-symbols-variable-git ttf-readex-pro ttf-rubik-vfgit clone -b main --depth=1 https://github.com/3d3f/ii-sddm-theme
cd ii-sddm-theme/./test.shNote: The test appearance is not exactly representative of the theme look. If something goes wrong, open an issue.
Select one of the following installation types based on your needs:
ii + Matugen Integration
This option is for users who have both illogical impulse and matugen configured and want the SDDM theme to automatically match their Hyprland settings, wallpapers, and color schemes.
mkdir -p ~/.config/ii-sddm-theme/
cp -r iiMatugen/* ~/.config/ii-sddm-theme/
chmod +x ~/.config/ii-sddm-theme/sddm-theme-apply.sh
chmod +x ~/.config/ii-sddm-theme/generate_settings.pysudo mkdir -p /usr/share/sddm/themes/ii-sddm-theme
sudo cp -rf . /usr/share/sddm/themes/ii-sddm-theme/Edit /etc/sddm.conf with your preferred editor:
sudo nano /etc/sddm.confEnsure these options are set:
[General]
InputMethod=qtvirtualkeyboard
GreeterEnvironment=QML2_IMPORT_PATH=/usr/share/sddm/themes/ii-sddm-theme/Components/,QT_IM_MODULE=qtvirtualkeyboard
[Theme]
Current=ii-sddm-themeAdd this block to ~/.config/matugen/config.toml:
[templates.iisddmtheme]
input_path = '~/.config/ii-sddm-theme/SddmColors.qml'
output_path = '~/.config/ii-sddm-theme/Colors.qml'
post_hook = 'python3 ~/.config/ii-sddm-theme/generate_settings.py && sudo ~/.config/ii-sddm-theme/sddm-theme-apply.sh &'Allow the apply script to run without a password prompt:
echo "$USER ALL=(ALL) NOPASSWD: /home/$USER/.config/ii-sddm-theme/sddm-theme-apply.sh" | sudo tee /etc/sudoers.d/sddm-theme-$USER > /dev/null
sudo chmod 0440 /etc/sudoers.d/sddm-theme-$USERpython3 ~/.config/ii-sddm-theme/generate_settings.py
sudo ~/.config/ii-sddm-theme/sddm-theme-apply.shsddm-greeter-qt6 --test-mode --theme /usr/share/sddm/themes/ii-sddm-themeRestart your system to see the theme in action.
Matugen Integration Only
This option uses matugen to generate color schemes from your wallpaper without illogical impulse. You'll manually manage theme settings.
mkdir -p ~/.config/ii-sddm-theme/
cp -r Matugen/* ~/.config/ii-sddm-theme/
chmod +x ~/.config/ii-sddm-theme/sddm-theme-apply.shsudo mkdir -p /usr/share/sddm/themes/ii-sddm-theme
sudo cp -rf . /usr/share/sddm/themes/ii-sddm-theme/Edit /etc/sddm.conf with your preferred editor:
sudo nano /etc/sddm.confEnsure these options are set:
[General]
InputMethod=qtvirtualkeyboard
GreeterEnvironment=QML2_IMPORT_PATH=/usr/share/sddm/themes/ii-sddm-theme/Components/,QT_IM_MODULE=qtvirtualkeyboard
[Theme]
Current=ii-sddm-themeAdd this block to ~/.config/matugen/config.toml:
[templates.iisddmtheme]
input_path = '~/.config/ii-sddm-theme/SddmColors.qml'
output_path = '~/.config/ii-sddm-theme/Colors.qml'
post_hook = 'sudo ~/.config/ii-sddm-theme/sddm-theme-apply.sh &'echo "$USER ALL=(ALL) NOPASSWD: /home/$USER/.config/ii-sddm-theme/sddm-theme-apply.sh" | sudo tee /etc/sudoers.d/sddm-theme-$USER > /dev/null
sudo chmod 0440 /etc/sudoers.d/sddm-theme-$USERsudo ~/.config/ii-sddm-theme/sddm-theme-apply.shsddm-greeter-qt6 --test-mode --theme /usr/share/sddm/themes/ii-sddm-themeRestart your system to see the theme in action.
No Matugen Integration
This option is for users who prefer full manual control over background, colors, and settings without any automation.
mkdir -p ~/.config/ii-sddm-theme/
cp -r noMatugen/* ~/.config/ii-sddm-theme/
chmod +x ~/.config/ii-sddm-theme/sddm-theme-apply.shsudo mkdir -p /usr/share/sddm/themes/ii-sddm-theme
sudo cp -rf . /usr/share/sddm/themes/ii-sddm-theme/Edit /etc/sddm.conf with your preferred editor:
sudo nano /etc/sddm.confEnsure these options are set:
[General]
InputMethod=qtvirtualkeyboard
GreeterEnvironment=QML2_IMPORT_PATH=/usr/share/sddm/themes/ii-sddm-theme/Components/,QT_IM_MODULE=qtvirtualkeyboard
[Theme]
Current=ii-sddm-themesudo ~/.config/ii-sddm-theme/sddm-theme-apply.shsddm-greeter-qt6 --test-mode --theme /usr/share/sddm/themes/ii-sddm-themeRestart your system to see the theme in action.
After installation, check the GUIDE.txt file in your ~/.config/ii-sddm-theme/ folder.
Click to expand uninstallation instructions
To completely remove the theme from your system, follow these steps:
sudo rm -rf /usr/share/sddm/themes/ii-sddm-themerm -rf ~/.config/ii-sddm-themesudo rm -f /etc/sudoers.d/sddm-theme-$USERIf you used Matugen integration, remove the theme configuration from ~/.config/matugen/config.toml:
nano ~/.config/matugen/config.tomlRemove the [templates.iisddmtheme] section.
Edit /etc/sddm.conf:
sudo nano /etc/sddm.confChange or remove these lines:
[General]
InputMethod=
GreeterEnvironment=
[Theme]
Current=Or set Current= to your preferred theme (you can check available themes in /usr/share/sddm/themes).
If you no longer need the theme-specific fonts and packages (they are used in ii):
yay -Rns otf-space-grotesk ttf-gabarito-git ttf-material-symbols-variable-git ttf-readex-pro ttf-rubik-vfNote: Only remove
sddm,qt6-svg,qt6-virtualkeyboard, andqt6-multimedia-ffmpegif you're certain no other applications depend on them.
Restart your system to apply the changes:
rebootIf you encounter any issues or have questions:
- Open an issue on GitHub