- add home/theme.nix as the single Silicon Volt palette and pass it to home modules via extraSpecialArgs - drive foot, hyprland, hyprlock, mako, fzf, starship, rofi and the herdr picker from that palette; raw config files use @color@ tokens substituted at build time - pass my = config.my into home-manager; add my.pi.enable, my.flakeDir - gate home/pi.nix on my.pi.enable (enabled on hades) - route zshconf/hyprconf aliases and FLAKE_CONFIG through my.flakeDir - rename the hyprland monitor option volt.monitors -> hypr.monitors - fix use_auto_tmux command-substitution bug in zsh/init.zsh - track home/nvim/config/lazy-lock.json for reproducible plugins - document theming and toggles in the README
104 lines
2.8 KiB
Nix
104 lines
2.8 KiB
Nix
{ theme, ... }:
|
|
|
|
{
|
|
programs.hyprlock = {
|
|
enable = true;
|
|
|
|
settings = {
|
|
general = {
|
|
disable_loading_bar = true;
|
|
grace = 0;
|
|
hide_cursor = true;
|
|
no_fade_in = false;
|
|
ignore_empty_input = true;
|
|
};
|
|
|
|
# Background: screenshot darkened into the site's #0e0e0e glass tone
|
|
background = [
|
|
{
|
|
path = "screenshot";
|
|
blur_passes = 4;
|
|
blur_size = 12;
|
|
noise = 0.0117;
|
|
contrast = 0.9;
|
|
brightness = 0.55;
|
|
vibrancy = 0.1;
|
|
vibrancy_darkness = 0.4;
|
|
}
|
|
];
|
|
|
|
label = [
|
|
# Big clock
|
|
{
|
|
monitor = "";
|
|
text = "$TIME";
|
|
color = "rgba(${theme.bare.textPrimary}dd)";
|
|
font_size = 90;
|
|
font_family = "JetBrainsMono Nerd Font";
|
|
position = "0, 220";
|
|
halign = "center";
|
|
valign = "center";
|
|
}
|
|
# Date
|
|
{
|
|
monitor = "";
|
|
text = "cmd[update:1000] echo \" $(date +'%A, %B %d') \"";
|
|
color = "rgba(${theme.bare.textMuted}ff)";
|
|
font_size = 20;
|
|
font_family = "JetBrainsMono Nerd Font";
|
|
position = "0, 120";
|
|
halign = "center";
|
|
valign = "center";
|
|
}
|
|
# Session banner
|
|
{
|
|
monitor = "";
|
|
text = "NIXOS // SILICON VOLT";
|
|
color = "rgba(${theme.bare.accentVolt}ee)";
|
|
font_size = 14;
|
|
font_family = "JetBrainsMono Nerd Font";
|
|
position = "0, 60";
|
|
halign = "center";
|
|
valign = "center";
|
|
}
|
|
# User + hostname line
|
|
{
|
|
monitor = "";
|
|
text = "cmd[update:3600000] echo \" $USER @ $(hostname) \"";
|
|
color = "rgba(${theme.bare.textMuted}99)";
|
|
font_size = 13;
|
|
font_family = "JetBrainsMono Nerd Font";
|
|
position = "0, -160";
|
|
halign = "center";
|
|
valign = "center";
|
|
}
|
|
];
|
|
|
|
# Password Input Field
|
|
input-field = [
|
|
{
|
|
monitor = "";
|
|
size = "300, 50";
|
|
outline_thickness = 2;
|
|
dots_size = 0.2;
|
|
dots_spacing = 0.2;
|
|
dots_center = true;
|
|
# Volt lime outline, dark glass interior
|
|
outer_color = "rgba(${theme.bare.accentVolt}ee)";
|
|
inner_color = "rgba(${theme.bare.glassBg}, 0.9)";
|
|
check_color = "rgba(${theme.bare.accentVoltLight}ee)";
|
|
fail_color = "rgba(${theme.bare.accentCoral}ee)";
|
|
font_color = "rgba(${theme.bare.textSecondary}ff)";
|
|
fail_text = "$FAIL (<b>attempts: $ATTEMPTS</b>)";
|
|
fade_on_empty = false;
|
|
placeholder_text = "<i> Enter Password...</i>";
|
|
hide_input = false;
|
|
position = "0, -80";
|
|
halign = "center";
|
|
valign = "center";
|
|
}
|
|
];
|
|
};
|
|
};
|
|
}
|