182 Commits

Author SHA1 Message Date
57b686cab5 feat: add atuin shell history integration for Fish
Initialize atuin in Fish shell for synced fuzzy history search with CTRL+R.
2025-11-25 15:22:32 -06:00
8f9565d0e0 feat: add Cursor Linux settings and expand Claude Code permissions
- Add comprehensive Cursor settings for Linux platform
- Expand Claude Code allowed bash commands (control flow, tooling)
- Enable KiTTy command finish notification suppression
- Add JVM languages plugin to Claude Code workflows
- Set default model to Sonnet in Claude settings
2025-11-25 15:08:42 -06:00
075810965a feat: add SDKMAN integration and improve mise/tool configuration
- Add SDKMAN initialization to bashrc for Java SDK management
- Create Fish shell wrapper function for SDKMAN commands
- Switch from lazy-loading to automatic mise activation in Fish
- Clean up fish_plugins comments for clarity
- Add pnpm to mise tool-versions
- Enable Shift+Enter in Kitty for Claude Code multi-line prompts
- Make update_pre.ts hook executable
2025-11-24 00:25:02 -06:00
Ryan Walters
262da2f114 fix: use portable file timestamp comparison in fish brew cache check
Replace fish's `-nt` test operator (not available in fish) with explicit stat-based timestamp comparison for cross-shell compatibility.
2025-11-07 11:35:10 -06:00
26f332e1a4 fix: KiTTy not using MesloLGS nerd font 2025-11-07 11:30:15 -06:00
1c87ddfa96 chore: use custom atuin self host, disable enter to accept, disable up arrow keybind in zshrc init 2025-11-07 11:30:06 -06:00
05257607d3 feat: use micro as preferred ssh editor, add Atuin PATH amendment line 2025-11-07 11:29:50 -06:00
8a5c83bdf7 feat: add atuin.sh config 2025-11-07 11:29:41 -06:00
Ryan Walters
3c1ebfe086 refactor: reorganize Claude settings for better readability
Restructure claude-settings.json by moving permissions (allow/deny/ask) before enabledPlugins section for improved logical grouping and readability.
2025-11-06 09:50:26 -06:00
Ryan Walters
4d20cbbacd docs: improve template system documentation with context parameter clarification
- Distinguish between regular templates and partials for variable access
- Document how partials receive context via explicit parameters
- Add examples for both template types with correct syntax
- Templatize global CLAUDE.md for platform-specific shell environment sections
- Add conditional rendering for Windows, WSL, and Linux environments
2025-11-04 11:35:53 -06:00
Ryan Walters
1e55b4862f feat: add Claude settings symlink management
- Add claude-settings.json as source file in chezmoi repo
- Create symlink template for .claude/settings.json
- Update .chezmoiignore to prevent recursion
- Update TODO.md to track Claude configuration progress
2025-11-03 17:04:49 -06:00
Ryan Walters
e5279d9388 feat: add global Claude configuration and update Cursor settings
- Add global CLAUDE.md with comprehensive AI assistant guidelines
- Fix Cursor terminal Shift+Enter keybinding to send escape sequence
- Remove duplicate dark color theme preference in Cursor settings
2025-11-03 16:19:21 -06:00
Ryan Walters
9fb2c304f3 feat: add Windows Terminal helper function across all shells
Add `wt` function to launch Windows Terminal with WSL in current directory across Bash, Fish, Nushell, and PowerShell. The function supports passing additional arguments while maintaining the current working directory context.
2025-11-01 11:08:32 -05:00
Ryan Walters
f4a4800af0 feat: add Cursor and Zed editor CLI integration for WSL
Add PATH configuration for Cursor IDE and Zed editor Windows installations, making their CLI tools accessible from WSL environments. Both editors are now available via command line when installed in their default Windows locations.
2025-10-31 21:49:20 -05:00
Ryan Walters
625cf3c3ae fix: correct WSL detection and improve platform-specific configuration
- 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)
2025-10-27 20:01:56 -05:00
Ryan Walters
751efbc719 feat: add IDE and lazygit configuration management with cross-platform symlinks
Adds comprehensive IDE configuration tracking with platform-specific symlink templates for VS Code, Cursor, and lazygit. Windows configurations stored in AppData paths, Linux configs in .config directories, with conditional templating based on OS detection.
2025-10-27 16:44:18 -05:00
Ryan Walters
f8f0e0e615 perf: optimize shell startup with batched PATH operations and Homebrew caching
- Batch Fish PATH additions into single operation (reduces startup by ~13ms)
- Cache Homebrew shellenv output for 7 days (reduces startup by ~14ms)
- Update CLAUDE.md with TODO list update workflow guidelines
- Change default chezmoi cd shell from bash to fish
- Remove redundant bun completion sourcing in bash

Performance improvements measured through shell startup profiling.
2025-10-27 15:51:07 -05:00
d031952070 docs: update TODO.md with completed configuration tasks
Mark several completed items in TODO.md:
- Hook system documentation
- Authentication token migration to Doppler
- WSL GPG integration documentation
- mise shell integration
- Windows Terminal settings template
- Global CLAUDE.md addition
- Git configuration expansion (aliases, diff tools, signing)
- GPG configuration setup
- README.md comprehensive refactor
- Deprecated hook migration to TypeScript
- File cleanup/template conversion

Update Git identity configurations:
- Switch Ryan identity to new GPG key (301511AAD64FA365)
- Disable GPG signing for Xevion identity (no key available)
- Add WSL-specific GPG configuration using Windows GPG symlink
- Consolidate Windows/WSL config blocks in dot_gitconfig.tmpl
2025-10-27 15:26:58 -05:00
b71c320ea5 feat: add WSL GPG integration with Windows pinentry support
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.
2025-10-27 15:17:17 -05:00
4d914f1e2f feat: migrate from Zsh to Fish shell with comprehensive configuration
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.
2025-10-27 14:45:37 -05:00
Ryan Walters
4095b2d242 refactor: standardize shell aliases and remove Bitwarden login helpers
Remove the custom `bw_login` function/alias from Nushell, bash, and PowerShell configurations as it's no longer needed. Expand PowerShell profile with comprehensive git aliases matching bash conventions, add clipboard navigation helper (`cdp`), and enable chezmoi completions.
2025-10-27 02:06:46 -05:00
Ryan Walters
48d40b2872 refactor: reorganize Nushell configurations with Windows support
- Add shared Nushell config templates in .chezmoitemplates/
- Create Windows-specific Nushell configs in AppData/Roaming/
- Add Windows Terminal settings.json configuration
- Update PowerShell profile template
- Consolidate Nushell env.nu and config.nu templates across platforms
2025-10-27 01:51:21 -05:00
Ryan Walters
4f0b832564 refactor: migrate private domain and R2 credentials to Doppler
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.
2025-10-26 19:29:48 -05:00
Ryan Walters
397b21122e refactor: migrate private domain to encrypted file and improve configuration
- Replace interactive prompt with encrypted domain.txt.age file
- Move encryption config to top level in .chezmoi.toml.tmpl
- Add platform-specific shell configuration for chezmoi cd command
- Remove unused Perl PATH configuration from commonrc
- Add commit-staged slash command for git workflow
- Enable nushell banner and improve init_pre.ts logging
- Clean up deprecated installation scripts (ovpn, gitconfig)
- Update hishtory server configuration to use encrypted domain
2025-10-26 18:18:37 -05:00
Ryan Walters
02b9236ecf feat: major dotfiles refactor with documentation and multi-platform improvements
- 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.
2025-10-26 17:01:45 -05:00
8b718db155 chore: updated p10k 2025-08-23 12:53:05 -05:00
9ec39ae48a add dotnet tools PATH mod to commonrc 2025-06-24 19:20:42 -05:00
660940c643 add WSL specific settings block to commonrc, add BROWSER url opening fix 2025-06-24 19:20:22 -05:00
227ba01201 fix pulumi commonrc PATH mod 2025-06-24 19:19:56 -05:00
fdd54b3b50 add ssh keychain startup to bashrc/WSL 2025-06-24 19:19:43 -05:00
8f0d5c209a add systemctl/journaltctl aliases, es shell reload alias 2025-06-24 19:19:22 -05:00
3424173fc7 SSH keychain initialize on WSL before instant prompt 2025-06-24 19:19:08 -05:00
94e8fde27a Reconfigure p10k 2025-06-11 15:33:07 -05:00
e090509339 Remove special p10k/Cursor handling, use VSCode shell integration properly 2025-06-11 15:28:28 -05:00
d1d925232d Add duplicate mounting/unmounting handling, remove unused variables, skip_mount 2025-06-07 16:23:51 -05:00
bdebd36f9a viofo_backup: fixed indentation, always unmount after mounting properly 2025-06-07 15:05:00 -05:00
1e2e2935c6 viofo_backup: use std/log, error catching, smarter drive select filter, network connectivity, backup destination, space availability check, existing mount check 2025-06-07 14:22:51 -05:00
f8572c7f8a remove eza plugin from zshrc 2025-06-07 14:20:25 -05:00
a557028659 Improve viofo backup script: command check, hostname check, available space check, configurable host/path 2025-06-06 19:23:45 -05:00
35675edd22 Limit omz plugins loaded for Cursor, TODO mise switch from asdf 2025-06-06 18:33:35 -05:00
9757acdcd3 Detune P10k Zsh config to support Cursor MCP agent 2025-06-06 18:19:38 -05:00
454b7ac8b4 Add host definitions to ~/.ssh/config 2025-06-06 18:18:30 -05:00
838e2a8a91 Add pulumi to commonrc.sh.tmpl 2025-06-06 18:18:08 -05:00
69b0b9b4d0 Remove ~/.config/rbw/config.json 2025-03-03 03:29:45 -06:00
5c47f8cf65 use LATE_FAIL_EXIT properly in source state script 2025-03-03 03:29:11 -06:00
0c1d2ba546 Remove rbw installer, disable cargo binstall, add doppler & deno installer steps 2025-03-03 03:27:29 -06:00
ed5216ff0e Switch to doppler key vault for remaining rbw usages 2025-03-03 02:29:16 -06:00
093fd52451 Use doppler for Wakatime, key.txt, ovpn_config runner hook 2025-03-03 02:23:14 -06:00
b73887bfad Disable read source state hook: rbw related functions 2025-03-03 02:22:25 -06:00
733d070d6d Switch init_pre hook to Deno (typescript) 2025-03-03 02:22:01 -06:00