dotfiles-nix/modules/programs/hypr/hyprlock.nix

97 lines
2.6 KiB
Nix
Raw Normal View History

2025-01-21 02:43:35 +00:00
{ config, pkgs, lib, inputs, ... }:
let
# inputs
system = pkgs.stdenv.hostPlatform.system;
hyprlock = inputs.hyprlock.packages.${system};
in
{
config = lib.mkIf config.desktop.enable {
home-manager.users.${config.user} = {
programs.hyprlock = {
enable = true;
package = hyprlock.hyprlock;
settings = {
background = {
monitor = "";
path = config.wallpaper;
blur_passes = 3;
contrast = 0.8916;
brightness = 0.8172;
vibrancy = 0.1696;
vibrancy_darkness = 0.0;
};
general = {
no_fade_in = false;
grace = 0;
disable_loading_bar = true;
};
input-field = {
monitor = "";
size = "250, 60";
outline_thickness = 2;
dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
dots_spacing = 0.2; # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true;
outer_color = "rgba(0, 0, 0, 0)";
inner_color = "rgba(0, 0, 0, 0.5)";
font_color = "rgb(${config.theme.colors.base05})";
font_family = config.theme.font;
fade_on_empty = false;
placeholder_text = "<i><span foreground=\"#${config.theme.colors.base05}\">Input Password...</span></i>";
hide_input = false;
position = "0, -120";
halign = "center";
valign = "center";
};
label = [
# Clock
{
monitor = "";
text = "cmd[update:1000] echo \"$(date +\"%-H:%M:%S\")\"";
font_size = 80;
font_color = "rgb(${config.theme.colors.base05})";
font_family = config.theme.headerFont;
position = "0, 500";
halign = "center";
valign = "center";
}
# Name
{
monitor = "";
text = config.fullName;
font_color = "rgb(${config.theme.colors.base05})";
font_family = config.theme.headerFont;
font_size = 25;
position = "0, 50";
halign = "center";
valign = "center";
}
];
# Profile image
image = {
monitor = "";
path = config.avatar;
size = 300;
rounding = -1;
border_size = 0;
position = "0, 250";
halign = "center";
valign = "center";
};
};
};
};
};
}