Current state of main at 0240060 feat(hp-laptop): install TeleportFling from its flake. History intentionally collapsed to a single commit; this repo mirrors only the latest state.
90 lines
2.4 KiB
Nix
90 lines
2.4 KiB
Nix
# Shared color palette for the "sci-fi dark glass + vivid neon" desktop.
|
|
# Single source of truth: every consumer (QuickShell QML theme, kitty,
|
|
# wvkbd, wofi, hyprlock, Hyprland borders/shadows, matugen fallback) reads
|
|
# its colors from here instead of hardcoding hex literals.
|
|
#
|
|
# Colors are stored as raw hex WITHOUT the leading '#'. Use the helpers below
|
|
# to format for each consumer:
|
|
# palette.hash "#rrggbb" (QML, kitty, wofi borders)
|
|
# palette.cssRgba "rgba(r, g, b, a)" (wofi)
|
|
# palette.lockRgba "rgba(r, g, b, a)" (hyprlock)
|
|
# palette.hyprRgba "rgba(rrggbbaa)" (Hyprland, compact hex+alpha)
|
|
# palette.rgb [ r g b ] decimals
|
|
rec {
|
|
# ---- Surfaces (translucent over the Hyprland layer blur) ----
|
|
# glass/glassPanel are 8-digit AARRGGBB for QML only.
|
|
glass = "8c0f111c";
|
|
glassPanel = "c2141627";
|
|
surface = "24283b";
|
|
panel = "141627"; # wofi / hyprlock solid panel
|
|
line = "394b70";
|
|
|
|
# ---- Text ----
|
|
text = "c0caf5";
|
|
muted = "a9b1d6";
|
|
ink = "0b0e14";
|
|
|
|
# ---- Neon accents ----
|
|
neon = "00e5ff";
|
|
magenta = "ff2e97";
|
|
violet = "7c4dff";
|
|
cyan = "7dcfff";
|
|
blue = "7aa2f7";
|
|
green = "9ece6a";
|
|
yellow = "e0af68";
|
|
purple = "bb9af7";
|
|
teal = "73daca"; # kitty url_color
|
|
danger = "f7768e";
|
|
|
|
# ---- kitty extras (Tokyo Night inspired) ----
|
|
bgDark = "1a1b26";
|
|
color0 = "15161e";
|
|
color8 = "414868";
|
|
selection = "33467c";
|
|
tabBg = "292e42";
|
|
tabFg = "545c7e";
|
|
tabFgBright = "16161e";
|
|
|
|
# ---- wvkbd ----
|
|
wvkbdBg = "1b1e2d";
|
|
wvkbdFgSp = "1f2740";
|
|
|
|
# ---- helpers ----
|
|
hexToInt =
|
|
h:
|
|
let
|
|
m = {
|
|
"0" = 0;
|
|
"1" = 1;
|
|
"2" = 2;
|
|
"3" = 3;
|
|
"4" = 4;
|
|
"5" = 5;
|
|
"6" = 6;
|
|
"7" = 7;
|
|
"8" = 8;
|
|
"9" = 9;
|
|
a = 10;
|
|
b = 11;
|
|
c = 12;
|
|
d = 13;
|
|
e = 14;
|
|
f = 15;
|
|
};
|
|
len = builtins.stringLength h;
|
|
chars = builtins.genList (i: builtins.substring i 1 h) len;
|
|
in
|
|
builtins.foldl' (acc: c: acc * 16 + m.${c}) 0 chars;
|
|
|
|
rgb = h: [
|
|
(hexToInt (builtins.substring 0 2 h))
|
|
(hexToInt (builtins.substring 2 2 h))
|
|
(hexToInt (builtins.substring 4 2 h))
|
|
];
|
|
|
|
hash = c: "#${c}";
|
|
cssRgba = c: a: "rgba(${builtins.concatStringsSep ", " (map toString (rgb c))}, ${a})";
|
|
lockRgba = c: a: "rgba(${builtins.concatStringsSep ", " (map toString (rgb c))}, ${a})";
|
|
hyprRgba = c: a: "rgba(${c}${a})";
|
|
}
|