# Nomarchy — Home Manager entry point. # Consume this via homeModules.nomarchy (flake.nix), which also pulls in # the stylix home module that stylix.nix configures. { config, pkgs, ... }: { imports = [ ./options.nix # the nomarchy.* option surface ./theme.nix # ingests theme-state.json, owns the live-sync hooks ./stylix.nix # GTK/Qt/cursor/fonts from the same JSON ./hyprland.nix ./waybar.nix ./ghostty.nix ./btop.nix ./rofi.nix # launcher theming + the nomarchy-menu dispatcher ./swaync.nix # notification daemon, themed from the same JSON ./idle.nix # hyprlock + hypridle, themed from the same JSON ./yazi.nix # flagship TUI file manager, themed + plugins ./osd.nix # swayosd volume/brightness OSD, themed ./nightlight.nix # scheduled blue-light filter (hyprsunset), opt-in ./updates.nix # passive update-awareness indicator + notification, opt-in ./shell.nix # zsh + starship + bat/eza/zoxide, themed ./keys.nix # gpg-agent (fronts SSH) + pinentry-qt ./fastfetch.nix # system info with the themed Nomarchy logo ]; # Clipboard history (wl-paste watcher); browsed via the SUPER+CTRL+V # menu module. services.cliphist.enable = true; # Wifi from the bar: nm-applet lives in waybar's tray (SNI flag via # preferStatusNotifierItems — without it there is no tray icon). services.network-manager-applet.enable = true; xsession.preferStatusNotifierItems = true; home.stateVersion = "26.05"; home.packages = with pkgs; [ awww # wallpaper daemon with animated transitions (the swww fork) libnotify ]; home.sessionVariables = { TERMINAL = config.nomarchy.terminal; NIXOS_OZONE_WL = "1"; # Electron/Chromium native Wayland # Where the Nomarchy flake (and therefore theme-state.json) lives on # disk. nomarchy-theme-sync writes its state here; rebuilds read from # here. Clone/symlink your flake to this path. NOMARCHY_PATH = "$HOME/.nomarchy"; }; programs.home-manager.enable = true; }