{ config, pkgs, ... }: let currentTheme = config.services.displayManager.sddm.theme; sddm-sugar-candy = pkgs.stdenv.mkDerivation { pname = "sddm-sugar-candy"; version = "master"; src = pkgs.fetchgit { url = "https://framagit.org/MarianArlt/sddm-sugar-candy.git"; hash = "sha256-XggFVsEXLYklrfy1ElkIp9fkTw4wvXbyVkaVCZq4ZLU="; }; installPhase = '' runHook preInstall mkdir -p $out/share/sddm/themes/sugar-candy cp -r /build/sddm-sugar-candy/* $out/share/sddm/themes/sugar-candy runHook postInstall ''; }; /* Adds a theme.conf.user file to the current sddm theme's folder, allowing you to change it's configuration without needing to repackage it */ customcfg = pkgs.stdenv.mkDerivation { name = "sddm-theme-customizer"; dontUnpack = true; # TODO: generate theme.conf.user outside of installPhase installPhase = '' runHook preInstall mkdir -p $out/share/sddm/themes/${currentTheme}/ echo "[General] background = ${pkgs.plasma-workspace-wallpapers}/share/wallpapers/MilkyWay/contents/images/5120x2880.png" >> $out/share/sddm/themes/${currentTheme}/theme.conf.user runHook postInstall ''; }; in { # Enable SDDM. services.displayManager.sddm = { enable = true; wayland.enable = true; # theme = "sugar-candy"; settings = { General = {Numlock = "off";}; Theme = {CursorTheme = "Breeze_Snow";}; }; }; # Sugar candy doesn't seem to work on qt6 :( # environment.systemPackages = [sddm-sugar-candy customcfg]; }