Personal dev environment — zsh, LunarVim, tmux
  • Shell 90.9%
  • Lua 7.8%
  • Python 1.1%
  • Go Template 0.2%
Find a file
forge fe7c32a513 nvim/neotree: move sidebar to right + best-practice tweaks
- 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
2026-05-17 15:22:13 +02:00
dot_claude harden bootstrap, add update-tools, drop CLAUDE.md rule dupes 2026-05-17 14:13:32 +02:00
dot_config/nvim nvim/neotree: move sidebar to right + best-practice tweaks 2026-05-17 15:22:13 +02:00
private_dot_local/bin switch to LazyVim + Node tarball, drop nvm, hardening pass 2026-05-17 15:05:29 +02:00
.chezmoiignore add chezmoiignore for repo-only files, fix zshrc mode 2026-04-19 23:36:21 +02:00
dot_p10k.zsh remove hooks, memory_reflect, security scripts, mcp template 2026-05-17 13:13:58 +02:00
dot_tmux.conf zsh/tmux: cleanup and improvements 2026-04-19 11:10:37 +02:00
dot_zshenv.tmpl switch to LazyVim + Node tarball, drop nvm, hardening pass 2026-05-17 15:05:29 +02:00
dot_zshrc switch to LazyVim + Node tarball, drop nvm, hardening pass 2026-05-17 15:05:29 +02:00
README.md switch to LazyVim + Node tarball, drop nvm, hardening pass 2026-05-17 15:05:29 +02:00
run_once_bootstrap.sh switch to LazyVim + Node tarball, drop nvm, hardening pass 2026-05-17 15:05:29 +02:00

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.sh runs automatically on first chezmoi 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