Files
nix-config/home/base/README.md
Ryan Yin 74a9106917 security(home): drop all neovim plugins to shrink supply-chain exposure (#259)
* 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.
2026-04-27 21:31:58 +08:00

2.3 KiB

Home Manager's Base Submodules

This directory contains cross-platform base configurations that are shared between Linux and Darwin systems.

Configuration Structure

Core System

  • core/: Essential cross-platform configurations
    • core.nix: Minimal home-manager configuration
    • shells/: Shell configurations (bash, zsh, fish, nu)
    • editors/: Helix + Neovim (Home Manager) and usage docs (README.md per editor)
    • btop.nix: System monitoring tools
    • git.nix: Git configuration and aliases
    • npm.nix: Node.js package management
    • pip.nix: Python package management
    • starship.nix: Cross-shell prompt configuration
    • theme.nix: Color schemes and theming
    • yazi.nix: Terminal file manager configuration
    • zellij/: Terminal multiplexer with custom layouts

Desktop Environment

  • gui/: Cross-platform GUI applications and configurations
    • dev-tools.nix: Development tools and IDEs
    • media.nix: Media players and utilities
    • terminal/: Terminal emulator configurations
      • alacritty/: Alacritty terminal
      • kitty/: Kitty terminal
      • foot/: Foot terminal (Linux)
      • ghostty/: Ghostty terminal

Terminal Interface

  • tui/: Terminal-based interface configurations
    • cloud/: Cloud development tools (Terraform, etc.)
    • container.nix: Container tools (Docker, Podman)
    • dev-tools.nix: Terminal-based development tools
    • editors/: Extra terminal editor Nix (see core/editors/ for docs and baseline enables)
    • encryption/: Encryption and security tools
    • gpg/: GPG key management
    • password-store/: Password management with pass
    • shell.nix: Shell environment configurations
    • ssh/: SSH configuration and management
    • zellij/: Terminal workspace management

System Management

  • home.nix: Main home manager configuration file

Platform Compatibility

All configurations in this directory are designed to work across:

  • Linux: All distributions with Nix and Home Manager
  • macOS: Darwin systems with Home Manager
  • WSL: Windows Subsystem for Linux

Usage

These base configurations provide the foundation for both Linux and Darwin systems, ensuring consistent environments across different platforms while allowing for platform-specific customizations.