hyprlock.nix
1 { 2 lib, 3 inputs, 4 pkgs, 5 config, 6 ... 7 }: let 8 cfg = config.programs.hyprlock; 9 inherit (lib) mkEnableOption mkIf; 10 in { 11 options.programs.hyprlock.enable = mkEnableOption "hyprlock"; 12 13 config = mkIf cfg.enable { 14 inputs.hyprlock.url = "github:hyprwm/hyprlock"; 15 16 # hmModules = [inputs.hyprlock.homeManagerModules.default]; 17 18 hm.programs.hyprlock = { 19 enable = true; 20 21 settings = { 22 general.hide_cursor = false; 23 24 background = [ 25 { 26 path = "${config.wallpaper_dir}"; 27 monitor = ""; 28 # color = "rgba(25, 20, 20, 1.0)"; 29 blur_size = 3; 30 blur_passes = 4; 31 noise = 0.03; 32 } 33 ]; 34 35 input-field = [ 36 { 37 monitor = "eDP-1"; 38 39 # placeholder_text = "<b>Do you know me?</b>"; 40 dots_center = true; 41 dots_spacing = 0.3; 42 fade_on_empty = true; 43 } 44 ]; 45 46 label = [ 47 { 48 monitor = ""; 49 text = "$TIME"; 50 51 position = { 52 x = 0; 53 y = 100; 54 }; 55 56 valign = "center"; 57 halign = "center"; 58 } 59 ]; 60 61 # input_fields = { 62 # placeholder_text = "<i><b>Guess the pwd...</i></b>"; 63 # }; 64 65 # labels = { 66 # text = "<b>$TIME</b>"; 67 # }; 68 }; 69 }; 70 }; 71 }