Files
NixOS-Configs/home/hypr/default.nix
2026-08-31 21:20:26 -07:00

73 lines
2.0 KiB
Nix

{ pkgs, lib, config, ... }:
let
# Deterministic Silicon Volt wallpaper: rendered from SVG at build time,
# so the same source always produces a byte-identical image.
wallpaper = pkgs.runCommand "silicon-volt-wallpaper.png" { } ''
${pkgs.librsvg}/bin/rsvg-convert -w 3840 -h 2160 ${./wallpaper.svg} > $out
'';
in
{
imports = [
./hyprland.nix
./hyprlock.nix
./hypridle.nix
./quickshell.nix
];
home.packages = with pkgs; [
# Utilities & Tools
grim
slurp
wl-clipboard
cliphist
brightnessctl
jq
# Desktop Environment / Hyprland ecosystem
hyprpaper
hyprpolkitagent
];
# Build-time rendered wallpaper
xdg.dataFile."backgrounds/silicon-volt.png".source = wallpaper;
# hyprpaper: load the Silicon Volt wallpaper on every output
xdg.configFile."hypr/hyprpaper.conf".text = ''
preload = ${config.home.homeDirectory}/.local/share/backgrounds/silicon-volt.png
wallpaper = ,${config.home.homeDirectory}/.local/share/backgrounds/silicon-volt.png
splash = false
'';
# Notifications: flat brutalist-glass cards with volt accents
services.mako = {
enable = true;
settings = {
background-color = "#1c1b1bee";
text-color = "#e5e2e1";
border-color = "#cffc00";
border-size = 1;
border-radius = 0;
width = 420;
margin = "12";
padding = "14";
default-timeout = 6000;
font = "JetBrainsMono Nerd Font 11";
format = "<b>%s</b>\\n%b";
"icon-location" = "left";
max-icon-size = 48;
"urgency=critical" = {
border-color = "#ff7a59";
text-color = "#ffffff";
default-timeout = 0;
};
"urgency=low" = {
border-color = "#2a2929";
text-color = "#adaaaa";
};
};
};
}