Skip to content
Willian Santos edited this page Jun 22, 2025 · 35 revisions

Warning

PRE-RELEASE
Bugs are expected. SDDM itself has some annoying issues and limitations that make it very hard to create an actual good theme. If you encounter a bug, feel free to open an issue.

This theme is very resource-intensive. Use at your own risk.

silent.mp4

Presets

configs/default.conf
default.mp4
configs/rei.conf
blue-light.mp4
configs/ken.conf
ken.mp4
configs/silvia.conf
Record_select-area_20250619210838.mp4
configs/catppuccin-latte.conf
configs/catppuccin-frappe.conf
configs/catppuccin-macchiato.conf
configs/catppuccin-mocha.conf

Dependencies

  • SDDM ≥ 0.20;
  • QT ≥ 6.5;
  • qt6-svg;
  • qt6-virtualkeyboard
  • qt6-multimedia

Installation

NixOS with flakes

If you're using Nix flakes, you can use this theme as a system package and set it as your SDDM theme like this:

In your flake.nix:

inputs.silent-sddm = {
  url = "github:uiriansan/SilentSDDM";
  inputs.nixpkgs.follows = "nixpkgs";
}

outputs = {nixpkgs, silent-sddm, ... }: {
  nixosConfigurations.<hostname> = nixpkgs.lib.nixosSystem {
    modules = [
      ({
        services.displayManager.sddm.enable = true;
        services.displayManager.sddm.package = pkgs.kdePackages.sddm; # qt6 version
        services.displayManager.sddm.theme = "silent";
        services.displayManager.sddm.extraPackages = [  # this makes sddm inherit dependencies of the theme.
          silent-sddm.packages.x86_64-linux.sddm-silent
        ];
        sddm.settings = { 
          General = {
            GreeterEnvironment = "QML2_IMPORT_PATH=/run/current-system/sw/share/sddm/themes/silent/components/,QT_IM_MODULE=qtvirtualkeyboard";
            InputMethod = "qtvirtualkeyboard";
          };
        };


        environment.systemPackages = [
          silent-sddm.packages.x86_64-linux.sddm-silent
        ];
      })
    ];
  };
};

You’ll also want to make sure the package is added to systemPackages, or else SDDM won’t find it, Nix won’t magically link it for you. That also goes for sddm.extraPackages. Note that these options can be configured anywhere you can reference inputs.

[!NOTE] Because of how Qt themes are handled on NixOS, it might look like nothing is happening at first. If you’re not seeing the theme show up:

  • Double-check the path in /nix/store/...
  • Make sure /etc/sddm.conf is set correctly
  • Reboot or restart the display manager

AUR packages for Arch

If you run Arch Linux, consider installing one of the :

# stable version
yay -S sddm-silent-theme
# git version
yay -S sddm-silent-theme-git

or just run the install script:

git clone -b main --depth=1 https://github.com/uiriansan/SilentSDDM && cd SilentSDDM && ./install.sh

Important

Make sure to test the theme before rebooting by running ./test.sh, otherwise you might end up with a broken login screen.

Manual installation

1. Install dependencies:

Arch Linux

sudo pacman -S --needed sddm qt6-svg qt6-virtualkeyboard qt6-multimedia-ffmpeg

Debian

sudo apt-get install sddm qt6-svg qt6-virtualkeyboard qt6-multimedia

Void Linux

sudo xbps-install sddm qt6-svg qt6-virtualkeyboard qt6-multimedia

Fedora

sudo dnf install sddm qt6-qtsvg qt6-qtvirtualkeyboard qt6-qtmultimedia

OpenSUSE

sudo zypper install sddm-qt6 libQt6Svg6 qt6-virtualkeyboard qt6-virtualkeyboard-imports qt6-multimedia qt6-multimedia-imports

2. Clone this repo:

git clone -b main --depth=1 https://github.com/uiriansan/SilentSDDM
cd SilentSDDM/

Note

You can also get the compressed files from the latest release.

3. Test the theme to make sure you have all dependencies:

./test.sh

4. Copy the theme to /usr/share/sddm/themes/:

cd SilentSDDM/
sudo mkdir -p /usr/share/sddm/themes/silent
sudo cp -rf . /usr/share/sddm/themes/silent/

5. Install the fonts:

sudo cp -r /usr/share/sddm/themes/silent/fonts/* /usr/share/fonts/

6. Replace the current theme and set the environment variables in /etc/sddm.conf:

sudoedit /etc/sddm.conf

# Make sure these options are correct:
[General]
GreeterEnvironment=QML2_IMPORT_PATH=/usr/share/sddm/themes/silent/components/,QT_IM_MODULE=qtvirtualkeyboard
InputMethod=qtvirtualkeyboard

[Theme]
Current=silent

Acknowledgements

I couldn't find the source for some of the images used here. E-mail me if you are the creator and want it removed or acknowledged.

Clone this wiki locally