diff --git a/flake.lock b/flake.lock index 9d751ae..01c0331 100644 --- a/flake.lock +++ b/flake.lock @@ -149,9 +149,30 @@ "home-manager": "home-manager", "niri": "niri", "nixpkgs": "nixpkgs", + "silentSDDM": "silentSDDM", "sops-nix": "sops-nix" } }, + "silentSDDM": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1769900466, + "narHash": "sha256-WeoJBj/PhqFCCJEIycTipqPbKm5BpQT2uzFTYcYZ30I=", + "owner": "uiriansan", + "repo": "SilentSDDM", + "rev": "a44caf771b4cb72f5c2514f7d488455b0fa860d2", + "type": "github" + }, + "original": { + "owner": "uiriansan", + "repo": "SilentSDDM", + "type": "github" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ diff --git a/flake.nix b/flake.nix index e469f38..936cb1d 100644 --- a/flake.nix +++ b/flake.nix @@ -85,5 +85,12 @@ repo = "sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; + + silentSDDM = { + type = "github"; + owner = "uiriansan"; + repo = "SilentSDDM"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; } diff --git a/nixosModules/services/sddm/service.nix b/nixosModules/services/sddm/service.nix new file mode 100644 index 0000000..bde0724 --- /dev/null +++ b/nixosModules/services/sddm/service.nix @@ -0,0 +1,27 @@ +{ config, pkgs, lib, inputs', ... }: + +{ + options.sddm = { + enable = lib.mkEnableOption "enables sddm"; + }; + + config = lib.mkIf config.sddm.enable (let + sddm-theme = inputs'.silentSDDM.packages.default.override { + theme = "catppuccin-macchiato"; + }; + in { + qt.enable = true; + environment.systemPackages = [ sddm-theme sddm-theme.test ]; + services.displayManager.sddm = { + wayland.enable = true; + package = pkgs.kdePackages.sddm; + enable = true; + theme = sddm-theme.pname; + extraPackages = sddm-theme.propagatedBuildInputs; + settings.General = { + GreeterEnvironment = "QML2_IMPORT_PATH=${sddm-theme}/share/sddm/themes/${sddm-theme.pname}/components/,QT_IM_MODULE=qtvirtualkeyboard"; + InputMethod = "qtvirtualkeyboard"; + }; + }; + }); +} diff --git a/nixosModules/services/displaymanager/service.nix b/nixosModules/services/tuigreet/service.nix similarity index 100% rename from nixosModules/services/displaymanager/service.nix rename to nixosModules/services/tuigreet/service.nix