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/hosts/onizuka/default.nix b/hosts/onizuka/default.nix index 46a9717..dbff8d3 100644 --- a/hosts/onizuka/default.nix +++ b/hosts/onizuka/default.nix @@ -15,7 +15,7 @@ sshd.enable = true; tailscale.enable = true; - tuigreet.enable = true; + sddm.enable = true; niri.enable = true; steam.enable = true; diff --git a/nixosModules/automatic/default.nix b/nixosModules/automatic/default.nix index 05d82c7..f6b9a74 100644 --- a/nixosModules/automatic/default.nix +++ b/nixosModules/automatic/default.nix @@ -1,4 +1,4 @@ -{ config, pkgs, lib, ... }: +{ config, pkgs, lib, inputs, ... }: { options.system = { @@ -9,7 +9,7 @@ "Enable if you are running a non-EFI system"; users.bigWheels = lib.mkOption { default = []; }; }; - + config = lib.mkMerge [ (lib.mkIf config.system.isNonEFI { boot.loader.grub.enable = false; @@ -29,15 +29,26 @@ # Packages & Default Packages nixpkgs.config.allowUnfree = true; + nix = { + registry.nixpkgs.flake = inputs.nixpkgs; + gc = { automatic = true; options = "--delete-older-than 5d"; }; + channel.enable = false; + settings = { + auto-optimise-store = true; + keep-going = true; + use-xdg-base-directories = true; + experimental-features = [ + "flakes" + "nix-command" + ]; + }; + }; environment.systemPackages = with pkgs; [ git neovim xdg-user-dirs ] ++ config.system.extraPkgs; - # XDG Compliance - nix.settings.use-xdg-base-directories = true; - users = { users = builtins.listToAttrs (map ( user: { 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 diff --git a/users/onizuka/default.nix b/users/onizuka/default.nix index 7a03bfb..fd6988c 100644 --- a/users/onizuka/default.nix +++ b/users/onizuka/default.nix @@ -28,9 +28,8 @@ mouse.accel = -0.53; outputs = { "DP-1" = { - position = { x = 2560; y = -100; }; + position = { x = 2560; y = 0; }; mode = { width = 2560; height = 1440; refresh = 144.000; }; - transform.rotation = 270; }; "DP-2" = { position = { x = 0; y = 0; }; @@ -108,10 +107,4 @@ discord.enable = true; lutris.enable = true; - - extraPkgs = with pkgs; [ - # Applications - logseq - claude-code - ]; }