Personal dev environment — zsh, LunarVim, tmux
- Shell 90.9%
- Lua 7.8%
- Python 1.1%
- Go Template 0.2%
- position right (35 cols) - enable buffers + git_status sources with winbar selector - libuv file watcher + follow_current_file (live updates) - group_empty_dirs collapses foo/bar/baz/ into one node - bind_to_cwd=false so navigating the tree doesn't change cwd - hijack_netrw so `nvim dir/` opens neo-tree - richer git-status icons; rounded popup borders - single-click <LeftRelease> opens/expands; `P` for inline preview; `H` toggles hidden files (filesystem-only mapping); vim-style h/l navigate - on file_opened, refresh git_status source |
||
|---|---|---|
| dot_claude | ||
| dot_config/nvim | ||
| private_dot_local/bin | ||
| .chezmoiignore | ||
| dot_p10k.zsh | ||
| dot_tmux.conf | ||
| dot_zshenv.tmpl | ||
| dot_zshrc | ||
| README.md | ||
| run_once_bootstrap.sh | ||
dotfiles
Managed with chezmoi.
What's included
| Path | Description |
|---|---|
~/.zshrc |
Zsh config — Oh My Zsh, plugins, aliases |
~/.zshenv |
Env vars — SECOND_BRAIN_VAULT, BRAIN_CONTEXT (per-machine template) |
~/.p10k.zsh |
Powerlevel10k prompt config |
~/.tmux.conf |
tmux config |
~/.config/nvim/ |
LazyVim config (bootstraps on first nvim launch) |
~/.claude/CLAUDE.md |
Claude Code global context |
~/.local/bin/statusline-native |
Claude Code statusline script |
~/.local/bin/update-tools |
Refresh oh-my-zsh, p10k, plugins, nvim/Mason, kubectl |
Fresh machine setup
1. Install chezmoi
sh -c "$(curl -fsLS get.chezmoi.io)"
2. Create ~/.config/chezmoi/chezmoi.toml
[data]
second_brain_vault = "/path/to/your/SecondBrain"
brain_context = "homelab" # or "office"
3. Apply dotfiles
One-way (read-only, no auth required):
chezmoi init https://hanausek.dev/forge/dotfiles.git
chezmoi apply
Bi-directional (SSH, requires key registered on Forgejo):
chezmoi init git@hostinger-vps:forge/dotfiles.git
chezmoi apply
4. Run bootstrap
~/.local/share/chezmoi/run_once_bootstrap.sh
Note:
run_once_bootstrap.shruns automatically on firstchezmoi apply.
Machine-specific config
~/.config/chezmoi/chezmoi.toml is never committed. Set per machine:
| Key | Description |
|---|---|
second_brain_vault |
Absolute path to SecondBrain/ directory |
brain_context |
homelab or office — exported as $BRAIN_CONTEXT |