diff --git a/flake.lock b/flake.lock index 66b83fe..f8d024a 100644 --- a/flake.lock +++ b/flake.lock @@ -399,7 +399,28 @@ }, "hyprlang_2": { "inputs": { - "nixpkgs": "nixpkgs" + "nixpkgs": [ + "hyprlock", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1708212860, + "narHash": "sha256-nW3Zrhh9RJcMTvOcXAaKADnJM/g6tDf3121lJtTHnYo=", + "owner": "hyprwm", + "repo": "hyprlang", + "rev": "11d5ccda071c153dfdc18ef65338956a51cef96a", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprlang", + "type": "github" + } + }, + "hyprlang_3": { + "inputs": { + "nixpkgs": "nixpkgs_2" }, "locked": { "lastModified": 1704230242, @@ -415,10 +436,29 @@ "type": "github" } }, - "hyprpaper": { + "hyprlock": { "inputs": { "hyprlang": "hyprlang_2", - "nixpkgs": "nixpkgs_2" + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1708456808, + "narHash": "sha256-EIKG85AxF7snTjkC7/a4O4NBRINBGOb92JgENWIilHc=", + "owner": "hyprwm", + "repo": "hyprlock", + "rev": "7b15d34f0af9b1c8ef49279827eee47e4dca9afa", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprlock", + "type": "github" + } + }, + "hyprpaper": { + "inputs": { + "hyprlang": "hyprlang_3", + "nixpkgs": "nixpkgs_3" }, "locked": { "lastModified": 1707095251, @@ -493,7 +533,7 @@ "nix": { "inputs": { "lowdown-src": "lowdown-src", - "nixpkgs": "nixpkgs_5" + "nixpkgs": "nixpkgs_6" }, "locked": { "lastModified": 1609520816, @@ -551,7 +591,7 @@ "nix-gaming": { "inputs": { "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs_3" + "nixpkgs": "nixpkgs_4" }, "locked": { "lastModified": 1707614138, @@ -633,6 +673,22 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1702645756, + "narHash": "sha256-qKI6OR3TYJYQB3Q8mAZ+DG4o/BR9ptcv9UnRV2hzljc=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "40c3c94c241286dd2243ea34d3aef8a488f9e4d0", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1703637592, "narHash": "sha256-8MXjxU0RfFfzl57Zy3OfXCITS0qWDNLzlBAdwxGZwfY=", @@ -648,7 +704,7 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_4": { "locked": { "lastModified": 1707451808, "narHash": "sha256-UwDBUNHNRsYKFJzyTMVMTF5qS4xeJlWoeyJf+6vvamU=", @@ -664,7 +720,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_5": { "locked": { "lastModified": 1707546158, "narHash": "sha256-nYYJTpzfPMDxI8mzhQsYjIUX+grorqjKEU9Np6Xwy/0=", @@ -680,7 +736,7 @@ "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_6": { "locked": { "lastModified": 1602702596, "narHash": "sha256-fqJ4UgOb4ZUnCDIapDb4gCrtAah5Rnr2/At3IzMitig=", @@ -695,7 +751,7 @@ "type": "indirect" } }, - "nixpkgs_6": { + "nixpkgs_7": { "locked": { "lastModified": 1706925685, "narHash": "sha256-hVInjWMmgH4yZgA4ZtbgJM1qEAel72SYhP5nOWX4UIM=", @@ -771,12 +827,13 @@ "home-manager": "home-manager", "hyprland": "hyprland", "hyprland-plugins": "hyprland-plugins", + "hyprlock": "hyprlock", "hyprpaper": "hyprpaper", "hyprwm-contrib": "hyprwm-contrib", "nh": "nh", "nix-colors": "nix-colors", "nix-gaming": "nix-gaming", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_5", "nixvim": "nixvim", "sops-nix": "sops-nix", "ssbm-nix": "ssbm-nix", @@ -1005,7 +1062,7 @@ "inputs": { "crane": "crane_2", "flake-utils": "flake-utils_4", - "nixpkgs": "nixpkgs_6", + "nixpkgs": "nixpkgs_7", "rust-overlay": "rust-overlay_2" }, "locked": { diff --git a/flake.nix b/flake.nix index e8e1a29..6b76602 100644 --- a/flake.nix +++ b/flake.nix @@ -39,6 +39,8 @@ url = "github:hyprwm/hyprland-plugins"; inputs.hyprland.follows = "hyprland"; }; + + hyprlock.url = "github:hyprwm/hyprlock"; hyprpaper.url = "github:hyprwm/hyprpaper"; diff --git a/home/modules/desktop/wayland/lockscreen/default.nix b/home/modules/desktop/wayland/lockscreen/default.nix index d181690..9ba48ff 100644 --- a/home/modules/desktop/wayland/lockscreen/default.nix +++ b/home/modules/desktop/wayland/lockscreen/default.nix @@ -4,12 +4,18 @@ imports = [ #./gtkLock --- still needs to be implemented ./swaylock + ./hyprlock ]; options.homeModules.desktop.wayland.lockscreen = { swaylock = { enable = lib.mkEnableOption "Enable Swaylock screen"; }; + hyprlock = { + enable = lib.mkEnableOption "Enable hyprlock screen"; + }; }; + + #TODO: make assertion to prevent 2 lockscreens } diff --git a/home/modules/desktop/wayland/lockscreen/hyprlock/default.nix b/home/modules/desktop/wayland/lockscreen/hyprlock/default.nix new file mode 100644 index 0000000..ac98886 --- /dev/null +++ b/home/modules/desktop/wayland/lockscreen/hyprlock/default.nix @@ -0,0 +1,18 @@ +{ lib, config, inputs, ... }: + +let + cfg = config.homeModules.desktop.wayland.lockscreen.hyprlock; + inherit (config.colorscheme) colors; +in + +{ + imports = [ inputs.hyprlock.homeManagerModules.hyprlock ]; + + config = lib.mkIf cfg.enable { + programs.hyprlock = { + enable = true; + }; + }; + + +}