Configs in this repo are symlinked into their expected locations on the host:
| Tool | Source |
|---|---|
| Wezterm | wezterm/.wezterm.lua |
| Tabby | tabby/config.yaml |
| Starship | starship/starship.toml |
| PowerShell | psh/dose_profile.ps1 |
| Git | git/.gitconfig |
| Neovim | nvim/init.lua |
| Micro | micro/settings.json |
| Lazygit | lazygit/config.yml |
| Bat | bat/config |
| Radian | radian/.radian_profile |
| R | R/.Rprofile |
| LintR | linter/.lintr |
The list of apps to install lives in scoop/Scoopfile.json; bundled fonts (FiraCode, JetBrains Mono, Hack Nerd Font) live in fonts/.
-
Windows only.
-
scooppackage manager:Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
-
Bootstrap dependencies (so
just bootstrapcan run):scoop install git python just
-
Symlink creation requires admin privileges or Developer Mode (Settings → Privacy & security → For developers → Developer Mode).
just bootstrapRuns symlinks → fonts → scoop apps → PowerShell modules in order. Or run individual recipes:
just symlinks # symlink all dotfiles into their target locations
just fonts # install bundled fonts for current user
just apps # scoop import scoop/Scoopfile.json
just psmodules # Install-Module PSFzf (and any future modules)
just scoop-export # refresh scoop/Scoopfile.json from current scoop stateAfter just psmodules runs once, PSFzf adds two shortcuts in PowerShell:
- Ctrl-T — fuzzy file search at the cursor
- Ctrl-R — fuzzy command-history search
setup_symlinks.py also:
- Adds the
scriptsfolder toPATH - Sets
DOTFILESenv var to the repo root - Sets
R_LIBS_USER - Sets
YAZI_FILE_ONE
If a real config file already exists at a target location, it's renamed to <file>.bak.<timestamp> before being replaced by a symlink.