No description
Find a file
Vadym Samoilenko d31fbf9c99 Initial dotfiles setup — Kitty + Obsidian logging system
- GNU Stow packages: kitty, fish, nvim, btop, fastfetch, starship, git, claude
- install.sh with modular install, template rendering, fish plugins setup
- uninstall.sh (stow -D) and scripts/doctor.sh for health checks
- Brewfile (macOS) + Aptfile (Linux servers)
- Claude Code hooks pipeline: settings.json.tpl, Obsidian session logging scripts
- memory-compiler inline copy with env-var-based paths
- Python scripts patched: os.environ.get() for OBSIDIAN_VAULT + PROJECTS_ROOT
- fish/config.fish: platform-aware Homebrew PATH (macOS + Linuxbrew)
- .env.example template for ~/.dotfiles.env

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-16 12:57:30 +01:00
btop/.config/btop Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
claude/.claude Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
fastfetch/.config/fastfetch Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
fish/.config/fish Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
fish-seed Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
git Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
kitty/.config/kitty Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
lib Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
nvim/.config/nvim Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
scripts Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
starship/.config Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
.env.example Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
.gitignore Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
Aptfile Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
Brewfile Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
install.sh Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
README.md Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00
uninstall.sh Initial dotfiles setup — Kitty + Obsidian logging system 2026-04-16 12:57:30 +01:00

obsidian_kitty_setup

Dotfiles for Kitty terminal + Obsidian logging system. Managed with GNU Stow. Works on macOS (Homebrew) and Linux servers (apt).

What's included

Package Contents
kitty/ Kitty config — Kanagawa theme, Hasklug Nerd Font, fish shell
fish/ Fish config — Tide prompt, modern CLI aliases, SSH aliases
nvim/ LazyVim config — Kanagawa theme
btop/ btop system monitor config
fastfetch/ System info display
starship/ Starship prompt config (reference)
git/ Global .gitconfig (rendered from template)
claude/ Claude Code settings.json, Obsidian hook scripts, memory-compiler

The Obsidian vault (Templates, CLAUDE.md, wiki) lives in a separate repo: → SamoilenkoVadym/obsidian

First-time setup

1. Clone

git clone git@github.com:SamoilenkoVadym/obsidian_kitty_setup.git ~/.dotfiles

2. Configure machine-specific values

cp ~/.dotfiles/.env.example ~/.dotfiles.env
nano ~/.dotfiles.env   # or your preferred editor

Fill in:

  • OBSIDIAN_VAULT — path to your Obsidian vault (iCloud or Obsidian Sync path)
  • PROJECTS_ROOT — path to Oliver Agency code root
  • ANTHROPIC_API_KEY — your Anthropic API key
  • CC_API_KEY / CC_SERVER — CC Dashboard credentials (optional)

3. Run installer

cd ~/.dotfiles
./install.sh

Specific modules only:

./install.sh --module fish claude    # just shell + Claude hooks
./install.sh --module kitty fish nvim  # terminal setup only
./install.sh --no-packages           # skip brew/apt, just stow

4. Verify

bash scripts/doctor.sh

After install — Obsidian vault

Clone the vault repo to the path you set in OBSIDIAN_VAULT:

git clone https://github.com/SamoilenkoVadym/obsidian "$OBSIDIAN_VAULT"

Then re-run ./install.sh --module claude to create the knowledge/ symlink.

Updating configs

Since all configs are symlinked from ~/.dotfiles/, editing them directly edits the repo. Commit and push to sync across machines:

cd ~/.dotfiles
git add -p
git commit -m "update kitty/fish config"
git push

Modules

Module Stow package Post-install
packages none runs brew/apt
kitty kitty/
fish fish/ seeds fish_variables, installs fisher + tide
nvim nvim/
btop btop/
fastfetch fastfetch/
starship starship/
git git/ renders .gitconfig from template
claude claude/ creates knowledge/ symlink, runs uv sync

Uninstall

./uninstall.sh          # remove all symlinks
./uninstall.sh kitty    # remove specific package

Config files remain in ~/.dotfiles/ — nothing is deleted.

Platform notes

macOS Linux server
Packages brew bundle apt + manual for lsd/lazygit
Homebrew path /opt/homebrew/bin /home/linuxbrew/.linuxbrew/bin
Vault sync iCloud Clone SamoilenkoVadym/obsidian manually
GUI apps Kitty, Obsidian, Ghostty n/a