mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-04-30 12:44:17 +02:00
* chore(home): drop AstroNvim bundle and centralize editors Remove the bundled Neovim plugin tree to shrink supply-chain exposure; keep a minimal programs.neovim backup. Daily editing stays Helix-first with Yazi and Zellij. - Add Helix/Neovim docs, glossary, and cheatsheets under core/editors/. - Default EDITOR/VISUAL to hx; use SUDO_EDITOR nvim --clean for sudoedit and other sensitive edits; adjust Nushell buffer_editor accordingly. - Apply Helix Home Manager settings (keys, editor UI) in core/editors/helix. - Keep heavy language-server tooling only in home/base/tui/editors/packages.nix; wire it via an explicit default.nix import so core stays lightweight. - Extend modules/base packages.nix where that profile sets global editor env. * docs: link editors, VS Code, and agents from README Document tui/editors versus core/editors; add root README pointers to GUI vscode (Home Manager) and agents/. Cross-link heavy packages README from core/editors.
2.5 KiB
2.5 KiB
Home Manager's Submodules
This directory contains all Home Manager configurations organized by platform and functionality.
Current Structure
home/
├── base/ # Cross-platform home manager configurations
│ ├── core/ # Essential applications and settings
│ │ ├── editors/ # Editor configurations (Neovim, Helix)
│ │ ├── shells/ # Shell configurations (Nushell, Zellij)
│ │ └── ...
│ ├── gui/ # GUI applications and desktop settings
│ │ ├── terminal/ # Terminal emulators (Kitty, Alacritty, etc.)
│ │ └── ...
│ ├── tui/ # Terminal/TUI applications
│ │ ├── editors/ # Heavy editor/tooling pkgs only (`packages.nix`; core editors live under `core/editors`)
│ │ ├── encryption/ # GPG, password-store, etc.
│ │ └── ...
│ └── home.nix # Main home manager entry point
├── linux/ # Linux-specific home manager configurations
│ ├── base/ # Linux base configurations
│ ├── gui/ # Linux GUI applications
│ │ ├── niri/ # Niri window manager
│ │ └── ...
│ ├── editors/ # Linux-specific editors
│ └── ...
├── hosts/ # Host-specific home manager entry modules
│ ├── linux/ # Linux host home modules (ai, shoukei, k3s-*, etc.)
│ └── darwin/ # macOS host home modules (fern, frieren)
└── darwin/ # macOS-specific home manager configurations
├── aerospace/ # macOS window manager
├── proxy/ # Proxy configurations
└── ...
Module Overview
-
base: The base module suitable for both Linux and macOS
- Cross-platform applications and settings
- Shared configurations for editors, shells, and essential tools
-
linux: Linux-specific configuration
- Desktop environments (Noctalia Shell, Niri compositor)
- Linux-specific GUI applications
- System integration tools
-
darwin: macOS-specific configuration
- macOS applications and services
- Platform-specific integrations (Aerospace, Squirrel, etc.)
-
hosts: Host entry modules for Home Manager
- Each output should reference only one host home module file
- Host modules are responsible for importing shared stacks (
home/linux/*orhome/darwin) and applying host overrides