Files
nix-config/home/base
Ryan Yin e4c2548a93 refactor: replace redundant mkForce with plain values and mkDefault
Each of these overrode a value nothing else set at a higher priority:

- qemu-guest: btrbk, hardwareTools and cloud-init have no competing
  definition on the guests.
- mdns: nixpkgs' sunshine module sets avahi.publish.* with mkDefault.
- computer-use: i18n now sets the time zone with mkDefault.
- darwin terminal: the shared ghostty/kitty font sizes are now mkDefault.
- shoukei: sunshine is mkDefault false in remote-desktop.nix, zram's
  memoryPercent is mkDefault 50; supportedFilesystems now merges instead
  of discarding the fsType entries other modules add.
- youko: nothing enables docker.
- nixpak: pasta.enable and sockets.pipewire are mkDefault in the shared
  modules, sockets.pulse already was.

Every NixOS host's toplevel drvPath is unchanged; on fern and frieren the
terminal font sizes and time zone evaluate to the same values.

Assisted-by: Claude Code (claude-opus-5-5)
2026-11-01 10:14:27 -06:00
..

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, Nushell; zsh is Darwin-only under home/darwin/)
    • 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
    • privacy.nix: Cross-app telemetry opt-out (DO_NOT_TRACK)
    • starship.nix: Cross-shell prompt configuration
    • theme.nix: Color schemes and theming
    • xdg.nix: XDG base-directory configuration
    • yazi.nix: Terminal file manager configuration

Desktop Environment

  • gui/: Cross-platform GUI applications and configurations
    • dev-tools.nix: Misc development and network tools (mitmproxy, wireshark)
    • media.nix: Media players and utilities
    • zed-editor.nix: Zed editor configuration (primary GUI editor)
    • rime/: Rime (flypy) customisation shared by fcitx5-rime (Linux) and Squirrel (macOS)
    • terminal/: Terminal emulator configurations
      • ghostty.nix: Ghostty terminal (default)
      • kitty.nix: Kitty terminal
    • work-gitconfig.nix: Work git identity for repositories under ~/work, linked from agenix

Terminal Interface

  • tui/: Terminal-based interface configurations
    • agents/: AI coding agents — global rules and skills deployment, CLIs, and telemetry/auto-update opt-outs
    • 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/: Shell environment configurations
    • ssh.nix: SSH configuration and management
    • tuios/: Terminal window manager / multiplexer (config + nushell auto-start)

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

Usage

These base configurations provide the foundation for both Linux and Darwin systems while allowing for platform-specific customizations.