Browse Source

Modularize greeter, ++

Johan Rong 1 tháng trước cách đây
mục cha
commit
5871ecaa69

+ 40 - 37
flake.lock

@@ -1,5 +1,26 @@
 {
   "nodes": {
+    "dank-greeter": {
+      "inputs": {
+        "dank-qml-common": "dank-qml-common",
+        "nixpkgs": [
+          "nixpkgs"
+        ]
+      },
+      "locked": {
+        "lastModified": 1788455394,
+        "narHash": "sha256-Qjpv8Oq255lsCsm/rCFFr73W2euvw2HTbNnZ2xnf2jk=",
+        "owner": "AvengeMedia",
+        "repo": "dank-greeter",
+        "rev": "54e41b9d97938ca055bf090ab08e2684b5030989",
+        "type": "github"
+      },
+      "original": {
+        "owner": "AvengeMedia",
+        "repo": "dank-greeter",
+        "type": "github"
+      }
+    },
     "dank-qml-common": {
       "flake": false,
       "locked": {
@@ -16,9 +37,25 @@
         "type": "github"
       }
     },
+    "dank-qml-common_2": {
+      "flake": false,
+      "locked": {
+        "lastModified": 1788376015,
+        "narHash": "sha256-/tT8rTznLADndTwLBzdgzzgfJH1ZhYQibYo5v/F8U+U=",
+        "owner": "AvengeMedia",
+        "repo": "dank-qml-common",
+        "rev": "26396ce432d6c71c3f5367438f96f4a8d667e160",
+        "type": "github"
+      },
+      "original": {
+        "owner": "AvengeMedia",
+        "repo": "dank-qml-common",
+        "type": "github"
+      }
+    },
     "dms": {
       "inputs": {
-        "dank-qml-common": "dank-qml-common",
+        "dank-qml-common": "dank-qml-common_2",
         "flake-compat": "flake-compat",
         "nixpkgs": [
           "nixpkgs"
@@ -108,47 +145,13 @@
         "type": "github"
       }
     },
-    "nixpkgs_2": {
-      "locked": {
-        "lastModified": 1777578337,
-        "narHash": "sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM+Z4=",
-        "owner": "nixos",
-        "repo": "nixpkgs",
-        "rev": "15f4ee454b1dce334612fa6843b3e05cf546efab",
-        "type": "github"
-      },
-      "original": {
-        "owner": "nixos",
-        "ref": "nixos-unstable",
-        "repo": "nixpkgs",
-        "type": "github"
-      }
-    },
     "root": {
       "inputs": {
+        "dank-greeter": "dank-greeter",
         "dms": "dms",
         "home-manager": "home-manager",
         "nix-flatpak": "nix-flatpak",
-        "nixpkgs": "nixpkgs",
-        "vm-curator": "vm-curator"
-      }
-    },
-    "vm-curator": {
-      "inputs": {
-        "nixpkgs": "nixpkgs_2"
-      },
-      "locked": {
-        "lastModified": 1786476083,
-        "narHash": "sha256-W0UsPEsUQfAfnQ6rkgBX1L23Fr2iPQ1Z7la9yzKl1ZA=",
-        "owner": "mroboff",
-        "repo": "vm-curator",
-        "rev": "cdcf2acc2027a4db07e9f65b046d4e3119ee8a08",
-        "type": "github"
-      },
-      "original": {
-        "owner": "mroboff",
-        "repo": "vm-curator",
-        "type": "github"
+        "nixpkgs": "nixpkgs"
       }
     }
   },

+ 4 - 2
flake.nix

@@ -12,14 +12,16 @@
       url = "github:AvengeMedia/DankMaterialShell/stable";
       inputs.nixpkgs.follows = "nixpkgs";
     };
-    vm-curator.url = "github:mroboff/vm-curator";
+    dank-greeter = {
+      url = "github:AvengeMedia/dank-greeter";
+      inputs.nixpkgs.follows = "nixpkgs";
+    };
   };
 
   outputs =
     {
       self,
       nix-flatpak,
-      vm-curator,
       ...
     }@inputs:
 

+ 4 - 1
home/modules/shells/dms-shell/default.nix

@@ -1,5 +1,8 @@
 { config, pkgs, lib, inputs, ... }:
 
+let
+  users = import ./../../../../config/users.nix;
+in
 {
   imports = [
     inputs.dms.homeModules.dank-material-shell
@@ -30,7 +33,7 @@
 
     session = {
       isLightMode = false;
-      wallpaperPath = "/home/johron/Pictures/shell-imgs/bg.png";
+      wallpaperPath = "/home/${users.default}/Pictures/shell-imgs/bg.png";
       wallpaperFillMode = "PreserveAspectCrop";
     };
   };

+ 5 - 2
home/modules/shells/dms-shell/settings.nix

@@ -1,11 +1,14 @@
 { config, pkgs, lib, inputs, ... }:
 
+let
+  users = import ./../../../../config/users.nix;
+in
 {
   programs.dank-material-shell = {
     settings = {
       currentThemeName = "dynamic";
       currentThemeCategory = "dynamic";
-      customThemeFile = "/home/johron/.config/DankMaterialShell/themes/gnomeAdwaita/theme.json";
+      customThemeFile = "/home/${users.default}/.config/DankMaterialShell/themes/gnomeAdwaita/theme.json";
       registryThemeVariants = {
         deepmono = {
           dark = {
@@ -68,7 +71,7 @@
       clockDateFormat = "dddd, d. MMM";
       greeterEnableFprint = true;
       greeterEnableU2f = true;
-      greeterWallpaperPath = "/home/johron/Pictures/shell-imgs/bg.png";
+      greeterWallpaperPath = "/home/${users.default}/Pictures/shell-imgs/bg.png";
       weatherEnabled = false;
       networkPreference = "wifi";
       cursorSettings = {

+ 1 - 1
hosts/ideapad/nixos/default.nix

@@ -21,7 +21,7 @@ in
     ../../../nixos/modules/hardware/biometric/elan-fingerprint.nix
 
     ../../../nixos/modules/desktop/hyprland
-    ../../../nixos/modules/desktop/hyprland/greeter-default.nix
+    ../../../nixos/modules/greeter/dank-greeter/hyprland.nix
 
   ];
 

+ 1 - 1
hosts/nixstation/nixos/default.nix

@@ -21,7 +21,7 @@ in
     ../../../nixos/modules/hardware/bluetooth
 
     ../../../nixos/modules/desktop/hyprland
-    ../../../nixos/modules/desktop/hyprland/greeter-default.nix
+    ../../../nixos/modules/greeter/dank-greeter/hyprland.nix
   ];
   
   boot.kernelParams = [

+ 0 - 4
nixos/modules/desktop/hyprland/default.nix

@@ -1,9 +1,5 @@
 { config, pkgs, ... }:
 {
-  imports = [
-    
-  ];
-
   environment.systemPackages = with pkgs; [
     cliphist
     wl-clipboard

+ 0 - 36
nixos/modules/desktop/hyprland/greeter-default.nix

@@ -1,36 +0,0 @@
-{ config, pkgs, inputs, ... }:
-
-let
-  users = import ./../../../../config/users.nix;
-in
-{
-  imports = [
-    inputs.dms.nixosModules.greeter
-  ];
-
-  environment.systemPackages = with pkgs; [
-    #tuigreet
-  ];
-
-  security.pam.services.greetd.enableGnomeKeyring = true;
-  security.pam.services."dankshell-u2f".text = ''
-    auth     required ${pkgs.pam_u2f}/lib/security/pam_u2f.so cue
-    account  required pam_permit.so
-  '';
-
-  services.displayManager.dms-greeter = {
-    enable = true;
-    compositor.name = "hyprland";
-    configHome = "/home/${users.default}";
-  };
-
-  #services.greetd = {
-  #  enable = true;
-  #  settings.default_session = {
-  #    command = ''
-  #      ${pkgs.tuigreet}/bin/tuigreet --time --cmd "start-hyprland"
-  #    '';
-  #    user = users.default;
-  #  };
-  #};
-}

+ 17 - 0
nixos/modules/greeter/dank-greeter/common.nix

@@ -0,0 +1,17 @@
+{ config, pkgs, inputs, ... }:
+
+let
+  users = import ./../../../../config/users.nix;
+in
+{
+  security.pam.services.greetd.enableGnomeKeyring = true;
+  security.pam.services."dankshell-u2f".text = ''
+    auth     required ${pkgs.pam_u2f}/lib/security/pam_u2f.so cue
+    account  required pam_permit.so
+  '';
+
+  programs.dms-greeter = {
+    enable = true;
+    configHome = "/home/${users.default}";
+  };
+}

+ 12 - 0
nixos/modules/greeter/dank-greeter/hyprland.nix

@@ -0,0 +1,12 @@
+{ config, pkgs, inputs, ... }:
+
+{
+  imports = [
+    inputs.dank-greeter.nixosModules.default
+    ./common.nix
+  ];
+  
+  programs.dms-greeter = {
+    compositor.name = "hyprland";
+  };
+}