Files
Nomarchy/modules/home/hyprland.nix
Bernardo Magri cfd5e4bb65 feat(core): migrate system state to unified declarative JSON
- Consolidate all configuration toggles (suspend, idle, waybar, etc.) into ~/.config/home-manager/state.json
- Introduce nomarchy.toggles and nomarchy.hyprland options in Nix
- Inject toggle states into all bin/ scripts via environment variables
- Update toggle scripts to mutate JSON and trigger background rebuilds
- Add a migration script to transition legacy flag files to the new format
2026-04-04 10:11:09 +01:00

35 lines
1.1 KiB
Nix

{ config, pkgs, lib, ... }:
let
activeWallpaper = config.nomarchy.wallpaper;
hyprlandState = config.nomarchy.hyprland;
in
{
wayland.windowManager.hyprland = {
enable = true;
settings = {
"general" = {
"gaps_in" = hyprlandState.gaps_in;
"gaps_out" = hyprlandState.gaps_out;
"border_size" = hyprlandState.border_size;
"col.active_border" = "rgb(${config.colorScheme.palette.base0E})";
"col.inactive_border" = "rgb(${config.colorScheme.palette.base03})";
};
"exec-once" = [
"swww-daemon & sleep 0.5 && swww img ${activeWallpaper} --transition-type none"
"nomarchy-on-boot"
"nomarchy-welcome"
] ++ (lib.optional config.nomarchy.toggles.waybar "waybar");
"bind" = [
"SUPER, Space, exec, walker"
"SUPER ALT, Space, exec, nomarchy-theme-selector"
"SUPER CTRL, Space, exec, nomarchy-font-selector"
"SUPER SHIFT, Space, exec, nomarchy-wallpaper-selector"
"SUPER, Return, exec, alacritty"
"SUPER, Q, killactive,"
"SUPER, M, exit,"
];
};
};
}