- Set WSL detection to false by default for proper conditional evaluation
- Add delta as diff pager for improved git diff output
- Change Windows cd command from nu to powershell.exe with -NoLogo flag
- Refactor .chezmoiignore to use clearer platform-specific sections
- Fix WSL-only files to be properly excluded on non-WSL systems
- Separate Linux/Unix and Windows file exclusions for better clarity
- Remove zsh profile from Cursor settings (migrated to Fish shell)
Configure chezmoi to automatically set up WSL to use Windows GPG for native
Qt5 GUI passphrase prompts during git commit signing:
- Add symlink_dot_gnupg.tmpl to link ~/.gnupg to Windows GPG directory
- Add run_onchange_before_setup-wsl-gpg.sh.tmpl for system GPG symlink
- Update .chezmoiignore to handle .gnupg appropriately per platform
- Document GPG configuration in CLAUDE.md and ONBOARDING.md
This enables seamless git commit signing in WSL environments (including
Claude Code) without passphrase prompt issues, while maintaining platform
independence for regular Linux installations.
Major shell migration replacing Zsh/Oh-My-Zsh with Fish shell:
- Remove all Zsh configurations (dot_zshrc.tmpl, dot_p10k.zsh)
- Remove Oh-My-Zsh external dependencies from .chezmoiexternal.toml
- Add complete Fish shell setup with config.fish.tmpl and abbr.fish.tmpl
- Implement Fish-native functions for lazy-loading tools (mise, pyenv, zoxide, etc.)
- Create commonrc.fish.tmpl for cross-shell compatibility
- Add Fish plugin management via Fisher (tide prompt, fzf.fish)
- Update documentation (CLAUDE.md, TODO.md, ONBOARDING.md) to reflect Fish
- Add .fish.tmpl file association to VS Code settings
- Enhance PowerShell profile with lsd aliases
- Configure git delta pager and zdiff3 merge conflict style
- Update WSL keychain integration for Fish shell
This migration maintains all existing tool integrations while improving
startup performance through lazy-loading and Fish's native features.
Migrate hardcoded encrypted files to centralized secret management:
- Replace encrypted domain file with Doppler variable PRIVATE_DOMAIN
- Remove encrypted R2 FUSE script and s3fs password files
- Update hishtory server configuration in commonrc.sh and install script
- Clean up .chezmoiignore for removed encrypted files
This consolidates secret management into Doppler, reducing the number of encrypted files in the repository while maintaining security.
- Add comprehensive CLAUDE.md with chezmoi best practices and AI assistant guidelines
- Restructure TODO.md with prioritized tasks and detailed organization
- Add PowerShell profile template for Windows platform support
- Split git configs into identity-specific templates (ryan/xevion)
- Convert nushell env.nu and gitconfig to templates for cross-platform rendering
- Refactor chezmoi hooks to TypeScript (.init_pre.ts, .update_pre.ts)
- Update .chezmoiignore with better platform-specific file handling
- Remove deprecated shellchecker.sh and tasks.json from VS Code config
- Add mise integration to shell configs (bash, zsh, nushell, PowerShell)
- Clean up commonrc.sh.tmpl WSL-specific code
- Disable Deno in VS Code settings, enable simple dialog mode
- Add nushell extension recommendation to VS Code
This commit establishes better cross-platform support (Windows/WSL/Linux),
improves documentation for future maintenance, and standardizes configuration
management patterns across the repository.