mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-11-13 12:13:36 +01:00
- root README: VS Code config moved from home/linux/gui/base/editors.nix to vscode.nix - READMEs now list both GUI editors (Zed, the primary one, plus VS Code) - base README: xdg is a directory now, nvidia.nix no longer exists, editors.nix -> vscode.nix - idols-ai README: disko-fs-media.nix -> disko-fs-data.nix (/persistent/data) - secrets README: password-store moved from home/base/desktop to home/base/tui - drop unused link definitions (AstroNvim, wl-clipboard, Catppuccin) - fix a pre-existing typo flagged by the typos hook (keeped -> kept)
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
├── 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 (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