# rushabhp-droid/nixos-conf architecture

> Architecture diagram of the GitHub repository rushabhp-droid/nixos-conf, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-06-17). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/rushabhp-droid/nixos-conf
- Repository: https://github.com/rushabhp-droid/nixos-conf

## Overview

1. **Overall shape**
   This is a single-host Nix flake that produces a reproducible NixOS system plus a Home Manager user environment. The repository is organized around a clear split between **machine-wide configuration** and **user-session/dotfiles configuration**.

2. **Entry points**
   `flake.nix` is the top-level composition layer. It pulls in inputs, exposes outputs, and wires together the host definition under `hosts/laptop/` with shared modules under `modules/`. `treefmt.nix` and `.pre-commit-config.yaml` define the repository’s code-quality boundary.

3. **Host layer**
   `hosts/laptop/configuration.nix` is the NixOS entry point for the laptop. It combines the hardware declaration (`hardware-configuration.nix`, `disk-config.nix`) with the reusable NixOS modules. This is where the system becomes a specific machine profile rather than a generic module set.

4. **System-wide subsystems**
   `modules/nixos/` contains the OS-level responsibilities: core system setup, users, security, hardware tweaks, NVIDIA-specific support, fonts, gaming/Steam, auto-refresh, and secret integration. These modules shape boot-time behavior, drivers, services, and privileged configuration.

5. **User-session subsystem**
   `hosts/laptop/home/home.nix` hands off to `modules/home-manager/`, which defines the user environment. This layer owns shell, terminal, editor, compositor session config, notification tools, and desktop utilities. It is separate from the OS layer so user preferences can evolve independently of the machine config.

6. **Desktop environment stack**
   The session is Wayland-centric and centered on **Hyprland**. Supporting pieces include `waybar` for the panel, `rofi` for launching, `hypridle` and `hyprlock` for session locking/power behavior, plus `swaync`, `swayosd`, and `wleave` for notifications, on-screen display, and logout flow. The `raw/` directories hold the actual config assets consumed by those modules.

7. **Configuration flow for the desktop**
   The Hyprland setup is split into Lua fragments under `modules/home-manager/desktop/raw/hyprland/` for animation, autostart, colors, general settings, keybinds, and rules. Waybar has separate JSON/CSS assets under `raw/waybar/`. This indicates a pattern where Nix modules install and parameterize the apps, while raw files define the exact runtime configuration.

8. **Theming and visual coherence**
   `modules/home-manager/system/stylix.nix` and the README point to **Stylix** as the global theme engine. Styling is propagated across the OS and desktop apps, with shared colors/fonts feeding Waybar, Rofi, terminal appearance, and other UI elements. This is a cross-cutting concern rather than a single app feature.

9. **Shell, terminal, and CLI tools**
   The CLI side is grouped under `modules/home-manager/cli/` and includes `alacritty.nix`, `helix.nix`, and `zsh.nix`. These define the interactive developer environment at the user level, sitting alongside the graphical desktop stack.

10. **Secrets boundary**
   `modules/nixos/system/sops.nix` and `modules/nixos/system/secrets/` handle sensitive data via **sops-nix** with age-encrypted secrets. The encrypted `secrets.yaml` is the source of truth; at evaluation/runtime it becomes injected into system services or users without exposing plaintext in the repo.

11. **Hardware and platform-specific behavior**
   The repository includes dedicated hardware tuning modules, especially for NVIDIA/hybrid graphics and power management. That suggests the architecture is intentionally tuned for this laptop’s runtime constraints rather than being a generic desktop template.

12. **Operations and maintenance**
   The repo is designed to be managed through Nix workflows: rebuilds via `nh`, updates via `nix flake update`, and formatting/linting via `nix fmt` plus pre-commit hooks. In diagram terms, the “control plane” is the flake/dev-shell tooling, while the “data plane” is the generated OS and user configuration applied on the machine.

13. **What to draw**
   A useful diagram would show: **flake inputs → host config → NixOS modules + Home Manager modules → runtime system services and user apps**, with side branches for **hardware-specific tuning**, **secrets injection**, and **theme propagation** through Stylix into the desktop stack.

Main entry points: [`hosts/laptop/configuration.nix`](https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/configuration.nix) (Laptop host), [`modules/nixos/default.nix`](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/default.nix) (NixOS mods), [`modules/home-manager/desktop/hyprland.nix`](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hyprland.nix) (Desktop stack), [`modules/home-manager/default.nix`](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/default.nix) (Home modules)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_composition["Composition"]
  node_flake["Flake<br/>composition<br/>[flake.nix]"]
end

subgraph group_host["Laptop host"]
  node_laptop["Laptop host<br/>nixos host<br/>[configuration.nix]"]
  node_disk["Disk config<br/>storage<br/>[disk-config.nix]"]
  node_hardware["Hardware cfg<br/>platform hw"]
  node_homeentry["Home entry<br/>hm entry<br/>[home.nix]"]
end

subgraph group_nixos["NixOS layer"]
  node_nixosmods["NixOS mods<br/>module set<br/>[default.nix]"]
  node_coreos["Core system<br/>nixos base<br/>[core.nix]"]
  node_users["Users<br/>account mgmt<br/>[users.nix]"]
  node_security["Security<br/>hardening<br/>[security.nix]"]
  node_sops["Secrets<br/>sops-nix<br/>[sops.nix]"]
  node_hardwaretune["HW tweaks<br/>platform tune"]
  node_nvidia["NVIDIA<br/>gpu support<br/>[nvidia.nix]"]
  node_desktopsys["Desktop sys<br/>desktop enablement<br/>[desktop.nix]"]
  node_fonts["Fonts<br/>font stack<br/>[fonts.nix]"]
  node_hyprsys["Hyprland sys<br/>session base<br/>[hyprland.nix]"]
  node_apps["Apps<br/>game stack<br/>[gaming.nix]"]
  node_steam["Steam<br/>gaming<br/>[steam.nix]"]
end

subgraph group_home["Home Manager"]
  node_homenix["Home modules<br/>hm module set<br/>[default.nix]"]
  node_corehome["User core<br/>hm base<br/>[core.nix]"]
end

subgraph group_desktop["Desktop runtime"]
  node_desktophm["Desktop stack<br/>hm desktop<br/>[hyprland.nix]"]
  node_hyprland["Hyprland<br/>wayland compositor<br/>[hyprland.nix]"]
  node_waybar["Waybar<br/>panel<br/>[waybar.nix]"]
  node_rofi["Rofi<br/>launcher<br/>[rofi.nix]"]
  node_hypridle["Hypridle<br/>idle mgr<br/>[hypridle.nix]"]
  node_hyprlock["Hyprlock<br/>lock screen<br/>[hyprlock.nix]"]
  node_swaync["SwayNC<br/>notifications<br/>[swaync.nix]"]
end

subgraph group_cli["CLI tools"]
  node_cli["CLI stack<br/>user tools<br/>[alacritty.nix]"]
  node_alacritty["Alacritty<br/>terminal<br/>[alacritty.nix]"]
  node_helix["Helix<br/>editor<br/>[helix.nix]"]
  node_zsh["Zsh<br/>shell<br/>[zsh.nix]"]
end

subgraph group_systemui["System UI"]
  node_gtk["GTK<br/>theme bridge<br/>[gtk.nix]"]
  node_stylix["Stylix<br/>theme engine<br/>[stylix.nix]"]
end

subgraph group_ops["Operations"]
  node_tooling["Tooling<br/>fmt/hooks<br/>[treefmt.nix]"]
  node_secretfile["Secret store<br/>encrypted secrets<br/>[secrets.yaml]"]
end

node_flake -->|"builds host"| node_laptop
node_flake -->|"imports"| node_nixosmods
node_flake -->|"imports"| node_homenix
node_flake -.->|"dev workflow"| node_tooling
node_laptop -->|"platform"| node_hardware
node_laptop -->|"storage"| node_disk
node_laptop -->|"hands off"| node_homeentry
node_laptop -->|"uses"| node_coreos
node_laptop -->|"uses"| node_users
node_laptop -->|"uses"| node_security
node_laptop -->|"secrets"| node_sops
node_sops -.->|"reads"| node_secretfile
node_nixosmods -->|"includes"| node_desktopsys
node_nixosmods -->|"includes"| node_fonts
node_nixosmods -->|"includes"| node_hyprsys
node_nixosmods -->|"includes"| node_hardwaretune
node_nixosmods -->|"includes"| node_nvidia
node_nixosmods -->|"includes"| node_apps
node_apps -->|"includes"| node_steam
node_homenix -->|"includes"| node_corehome
node_homenix -->|"includes"| node_gtk
node_homenix -->|"includes"| node_stylix
node_homenix -->|"includes"| node_cli
node_homenix -->|"includes"| node_desktophm
node_cli -->|"contains"| node_alacritty
node_cli -->|"contains"| node_helix
node_cli -->|"contains"| node_zsh
node_desktophm -->|"contains"| node_hyprland
node_desktophm -->|"contains"| node_waybar
node_desktophm -->|"contains"| node_rofi
node_desktophm -->|"contains"| node_hypridle
node_desktophm -->|"contains"| node_hyprlock
node_desktophm -->|"contains"| node_swaync
node_hyprland -.->|"styled by"| node_stylix
node_waybar -.->|"styled by"| node_stylix
node_rofi -.->|"styled by"| node_stylix
node_gtk -->|"bridges"| node_stylix

click node_flake "https://github.com/rushabhp-droid/nixos-conf/blob/next/flake.nix"
click node_tooling "https://github.com/rushabhp-droid/nixos-conf/blob/next/treefmt.nix"
click node_laptop "https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/configuration.nix"
click node_disk "https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/disk-config.nix"
click node_hardware "https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/hardware-configuration.nix"
click node_homeentry "https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/home/home.nix"
click node_nixosmods "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/default.nix"
click node_coreos "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/core.nix"
click node_users "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/users.nix"
click node_security "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/security.nix"
click node_sops "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/sops.nix"
click node_secretfile "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/secrets/secrets.yaml"
click node_hardwaretune "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/hardware/hardware-tweaks.nix"
click node_nvidia "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/hardware/nvidia.nix"
click node_desktopsys "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/desktop/desktop.nix"
click node_fonts "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/desktop/fonts.nix"
click node_hyprsys "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/desktop/hyprland.nix"
click node_apps "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/apps/gaming.nix"
click node_steam "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/apps/steam.nix"
click node_homenix "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/default.nix"
click node_corehome "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/system/core.nix"
click node_gtk "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/system/gtk.nix"
click node_stylix "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/system/stylix.nix"
click node_cli "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/alacritty.nix"
click node_alacritty "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/alacritty.nix"
click node_helix "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/helix.nix"
click node_zsh "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/zsh.nix"
click node_desktophm "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hyprland.nix"
click node_hyprland "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hyprland.nix"
click node_waybar "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/waybar.nix"
click node_rofi "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/rofi.nix"
click node_hypridle "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hypridle.nix"
click node_hyprlock "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hyprlock.nix"
click node_swaync "https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/swaync.nix"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_flake,node_gtk,node_stylix toneBlue
class node_laptop,node_disk,node_hardware,node_homeentry,node_tooling,node_secretfile toneAmber
class node_nixosmods,node_coreos,node_users,node_security,node_sops,node_hardwaretune,node_nvidia,node_desktopsys,node_fonts,node_hyprsys,node_apps,node_steam toneMint
class node_homenix,node_corehome toneRose
class node_desktophm,node_hyprland,node_waybar,node_rofi,node_hypridle,node_hyprlock,node_swaync toneIndigo
class node_cli,node_alacritty,node_helix,node_zsh toneTeal
```

## Components

### Composition

Flake entrypoints and repo workflow

- [Flake](https://github.com/rushabhp-droid/nixos-conf/blob/next/flake.nix): composition · Top-level Nix flake composing host and shared modules · `flake.nix`

### Laptop host

Machine-specific NixOS and Home Manager wiring

- [Laptop host](https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/configuration.nix): nixos host · Machine profile for the laptop system · `hosts/laptop/configuration.nix`
- [Disk config](https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/disk-config.nix): storage · Disk and partition layout for the host · `hosts/laptop/disk-config.nix`
- [Hardware cfg](https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/hardware-configuration.nix): platform hw · Generated hardware declaration for the laptop · `hosts/laptop/hardware-configuration.nix`
- [Home entry](https://github.com/rushabhp-droid/nixos-conf/blob/next/hosts/laptop/home/home.nix): hm entry · Host-level handoff into the user environment · `hosts/laptop/home/home.nix`

### NixOS layer

System-wide modules and hardware support

- [NixOS mods](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/default.nix): module set · Shared system modules for the host · `modules/nixos/default.nix`
- [Core system](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/core.nix): nixos base · Basic OS setup and shared system defaults · `modules/nixos/system/core.nix`
- [Users](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/users.nix): account mgmt · User and privilege configuration · `modules/nixos/system/users.nix`
- [Security](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/security.nix): hardening · System security policy and permissions · `modules/nixos/system/security.nix`
- [Secrets](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/sops.nix): sops-nix · Secret injection using encrypted age-backed files · `modules/nixos/system/sops.nix`
- [HW tweaks](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/hardware/hardware-tweaks.nix): platform tune · Laptop-specific hardware tuning and power behavior · `modules/nixos/hardware/hardware-tweaks.nix`
- [NVIDIA](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/hardware/nvidia.nix): gpu support · Discrete or hybrid graphics support · `modules/nixos/hardware/nvidia.nix`
- [Desktop sys](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/desktop/desktop.nix): desktop enablement · System-wide desktop and session support · `modules/nixos/desktop/desktop.nix`
- [Fonts](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/desktop/fonts.nix): font stack · System font configuration for desktop use · `modules/nixos/desktop/fonts.nix`
- [Hyprland sys](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/desktop/hyprland.nix): session base · System-level support for the Wayland compositor · `modules/nixos/desktop/hyprland.nix`
- [Apps](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/apps/gaming.nix): game stack · Gaming and Steam-related system packages and settings · `modules/nixos/apps/gaming.nix`
- [Steam](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/apps/steam.nix): gaming · Steam integration and runtime support · `modules/nixos/apps/steam.nix`

### Home Manager

User-session modules and desktop stack

- [Home modules](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/default.nix): hm module set · Shared user-environment modules · `modules/home-manager/default.nix`
- [User core](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/system/core.nix): hm base · Base user-session settings and defaults · `modules/home-manager/system/core.nix`

### Desktop runtime

Wayland session components and assets

- [Desktop stack](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hyprland.nix): hm desktop · User-level Wayland session applications and controls · `modules/home-manager/desktop/hyprland.nix`
- [Hyprland](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hyprland.nix): wayland compositor · Main session compositor and input/binding logic · `modules/home-manager/desktop/hyprland.nix`
- [Waybar](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/waybar.nix): panel · Status bar and workspace panel · `modules/home-manager/desktop/waybar.nix`
- [Rofi](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/rofi.nix): launcher · Application launcher and menu entrypoint · `modules/home-manager/desktop/rofi.nix`
- [Hypridle](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hypridle.nix): idle mgr · Idle handling, power, and lock behavior · `modules/home-manager/desktop/hypridle.nix`
- [Hyprlock](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/hyprlock.nix): lock screen · Session lock screen configuration · `modules/home-manager/desktop/hyprlock.nix`
- [SwayNC](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/desktop/swaync.nix): notifications · Notification center and popups · `modules/home-manager/desktop/swaync.nix`

### CLI tools

Shell, terminal, and editor configuration

- [CLI stack](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/alacritty.nix): user tools · Terminal, shell, and editor configuration · `modules/home-manager/cli/alacritty.nix`
- [Alacritty](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/alacritty.nix): terminal · Terminal emulator configuration · `modules/home-manager/cli/alacritty.nix`
- [Helix](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/helix.nix): editor · Modal editor configuration · `modules/home-manager/cli/helix.nix`
- [Zsh](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/cli/zsh.nix): shell · Interactive shell configuration · `modules/home-manager/cli/zsh.nix`

### System UI

Shared visual theming and GTK integration

- [GTK](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/system/gtk.nix): theme bridge · GTK appearance and application theming · `modules/home-manager/system/gtk.nix`
- [Stylix](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/home-manager/system/stylix.nix): theme engine · Cross-cutting theme propagation across apps and session · `modules/home-manager/system/stylix.nix`

### Operations

Secrets and repo maintenance

- [Tooling](https://github.com/rushabhp-droid/nixos-conf/blob/next/treefmt.nix): fmt/hooks · Formatting and pre-commit workflow for the repository · `treefmt.nix`
- [Secret store](https://github.com/rushabhp-droid/nixos-conf/blob/next/modules/nixos/system/secrets/secrets.yaml): encrypted secrets · Encrypted source of truth for runtime secrets · `modules/nixos/system/secrets/secrets.yaml`

## Connections

- Flake → Laptop host: builds host · Flake wires the laptop system as the main NixOS output
- Flake → NixOS mods: imports · Flake composes shared NixOS modules into the system
- Flake → Home modules: imports · Flake composes shared Home Manager modules into the user environment
- Flake → Tooling: dev workflow · Repository formatting and hooks support the flake-based workflow
- Laptop host → Hardware cfg: platform · The host uses generated hardware configuration
- Laptop host → Disk config: storage · The host includes its disk layout definition
- Laptop host → Home entry: hands off · Machine configuration delegates to the user environment
- Laptop host → Core system: uses · Host config assembles the base system module
- Laptop host → Users: uses · Host config includes user and privilege setup
- Laptop host → Security: uses · Host config applies security policy modules
- Laptop host → Secrets: secrets · Host config enables secret injection
- Secrets → Secret store: reads · SOPS decrypts the encrypted secret source
- NixOS mods → Desktop sys: includes · Shared NixOS modules enable the desktop environment
- NixOS mods → Fonts: includes · Shared NixOS modules define system fonts
- NixOS mods → Hyprland sys: includes · Shared NixOS modules support the compositor stack
- NixOS mods → HW tweaks: includes · Shared NixOS modules add hardware tuning
- NixOS mods → NVIDIA: includes · Shared NixOS modules add GPU-specific support
- NixOS mods → Apps: includes · Shared NixOS modules enable application groups
- Apps → Steam: includes · Gaming layer includes Steam support
- Home modules → User core: includes · Home Manager module set starts from the base user config
- Home modules → GTK: includes · User environment bridges GTK theming
- Home modules → Stylix: includes · Home Manager module set propagates global styling
- Home modules → CLI stack: includes · Home Manager module set includes CLI applications
- Home modules → Desktop stack: includes · Home Manager module set includes the desktop session stack
- CLI stack → Alacritty: contains · Terminal configuration is part of the CLI stack
- CLI stack → Helix: contains · Editor configuration is part of the CLI stack
- CLI stack → Zsh: contains · Shell configuration is part of the CLI stack
- Desktop stack → Hyprland: contains · The desktop stack centers on the Hyprland compositor
- Desktop stack → Waybar: contains · The desktop stack includes the panel
- Desktop stack → Rofi: contains · The desktop stack includes application launching
- Desktop stack → Hypridle: contains · The desktop stack handles idle and power behavior
- Desktop stack → Hyprlock: contains · The desktop stack includes locking
- Desktop stack → SwayNC: contains · The desktop stack includes notifications
- Hyprland → Stylix: styled by · Compositor visuals are themed through Stylix
- Waybar → Stylix: styled by · Panel appearance is driven by shared theming
- Rofi → Stylix: styled by · Launcher appearance is driven by shared theming
- GTK → Stylix: bridges · GTK settings translate the shared theme into app appearance
