treewide: theme hyprlock
This is the catppuccin hyprlock theme, with base16 colors so that it may work with my theming configuration.
|
@ -1,35 +1,5 @@
|
||||||
_: {
|
_: {
|
||||||
programs.hyprlock = {
|
programs.hyprlock = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
|
||||||
general = {
|
|
||||||
disable_loading_bar = true;
|
|
||||||
hide_cursor = true;
|
|
||||||
no_fade_in = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
background = [
|
|
||||||
{
|
|
||||||
path = "screenshot";
|
|
||||||
blur_passes = 3;
|
|
||||||
blur_size = 8;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
input-field = [
|
|
||||||
{
|
|
||||||
size = "200, 50";
|
|
||||||
position = "0, -80";
|
|
||||||
monitor = "";
|
|
||||||
dots_center = true;
|
|
||||||
fade_on_empty = false;
|
|
||||||
font_color = "rgb(202, 211, 245)";
|
|
||||||
inner_color = "rgb(91, 96, 120)";
|
|
||||||
outer_color = "rgb(24, 25, 38)";
|
|
||||||
outline_thickness = 5;
|
|
||||||
shadow_passes = 2;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
BIN
images/avatar.png
Normal file
After Width: | Height: | Size: 7.4 KiB |
Before Width: | Height: | Size: 2.2 MiB After Width: | Height: | Size: 2.2 MiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
@ -9,7 +9,9 @@
|
||||||
inherit (lib) mkEnableOption mkOption mkIf attrNames;
|
inherit (lib) mkEnableOption mkOption mkIf attrNames;
|
||||||
inherit (lib.strings) removePrefix;
|
inherit (lib.strings) removePrefix;
|
||||||
inherit (lib.types) path package enum;
|
inherit (lib.types) path package enum;
|
||||||
inherit (lib') generateGtkColors rgba;
|
|
||||||
|
inherit (lib') generateGtkColors;
|
||||||
|
|
||||||
cfg = config.theme;
|
cfg = config.theme;
|
||||||
in {
|
in {
|
||||||
imports = [
|
imports = [
|
||||||
|
@ -61,6 +63,13 @@ in {
|
||||||
default = 32;
|
default = 32;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
avatar = mkOption {
|
||||||
|
description = ''
|
||||||
|
Path to an avatar image (used for hyprlock).
|
||||||
|
'';
|
||||||
|
default = ../../images/avatar.png;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
config = let
|
config = let
|
||||||
scheme = inputs.basix.schemeData.base16.${config.theme.schemeName};
|
scheme = inputs.basix.schemeData.base16.${config.theme.schemeName};
|
||||||
|
@ -92,7 +101,98 @@ in {
|
||||||
blur.enabled = true;
|
blur.enabled = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
|
hyprlock = {
|
||||||
|
settings = {
|
||||||
|
background = [
|
||||||
|
{
|
||||||
|
path = "screenshot";
|
||||||
|
blur_passes = 3;
|
||||||
|
blur_size = 8;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
general = {
|
||||||
|
disable_loading_bar = true;
|
||||||
|
hide_cursor = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
label = [
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "Layout: $LAYOUT";
|
||||||
|
font_size = 25;
|
||||||
|
color = scheme.palette.base05;
|
||||||
|
|
||||||
|
position = "30, -30";
|
||||||
|
halign = "left";
|
||||||
|
valign = "top";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "$TIME";
|
||||||
|
font_size = 90;
|
||||||
|
color = scheme.palette.base05;
|
||||||
|
|
||||||
|
position = "-30, 0";
|
||||||
|
halign = "right";
|
||||||
|
valign = "top";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "cmd[update:43200000] date +\"%A, %d %B %Y\"";
|
||||||
|
font_size = 25;
|
||||||
|
color = scheme.palette.base05;
|
||||||
|
|
||||||
|
position = "-30, -150";
|
||||||
|
halign = "right";
|
||||||
|
valign = "top";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
image = {
|
||||||
|
monitor = "";
|
||||||
|
path = "${cfg.avatar}"; # Replace with your avatar path
|
||||||
|
size = 100;
|
||||||
|
border_color = scheme.palette.base0D;
|
||||||
|
|
||||||
|
position = "0, 75";
|
||||||
|
halign = "center";
|
||||||
|
valign = "center";
|
||||||
|
};
|
||||||
|
|
||||||
|
input-field = [
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
|
||||||
|
size = "300, 60";
|
||||||
|
outline_thickness = 4;
|
||||||
|
dots_size = 0.2;
|
||||||
|
dots_spacing = 0.2;
|
||||||
|
dots_center = true;
|
||||||
|
|
||||||
|
outer_color = scheme.palette.base0D;
|
||||||
|
inner_color = scheme.palette.base02;
|
||||||
|
font_color = scheme.palette.base05;
|
||||||
|
|
||||||
|
fade_on_empty = false;
|
||||||
|
placeholder_text = "<span foreground=\"#${scheme.palette.base03}\"><i> Logged in as </i><span foreground=\"#${scheme.palette.base0D}\">$USER</span></span>";
|
||||||
|
|
||||||
|
hide_input = false;
|
||||||
|
check_color = scheme.palette.base0D;
|
||||||
|
fail_color = scheme.palette.base08;
|
||||||
|
|
||||||
|
fail_text = "<i>$FAIL <b>($ATTEMPTS)</b></i>";
|
||||||
|
capslock_color = scheme.palette.base0E;
|
||||||
|
|
||||||
|
position = "0, -47";
|
||||||
|
halign = "center";
|
||||||
|
valign = "center";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
niri = {
|
niri = {
|
||||||
settings = {
|
settings = {
|
||||||
layout.focus-ring.active.color = scheme.palette.base0D;
|
layout.focus-ring.active.color = scheme.palette.base0D;
|
||||||
|
|