Files
dotfiles/README.md
T
lkrav e87e55521f Track Windows Terminal settings in the repo
- windows/windows-terminal/settings.json: Australis scheme, VictorMono
  Nerd Font Mono, acrylic on the PowerShell profile
- link-dotfiles.ps1: link it into the Terminal LocalState folder
- README: document the windows/ folder and Terminal setup

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 13:29:45 -07:00

72 lines
2.5 KiB
Markdown

# dotfiles
Personal dotfiles. Configs are organized by where they get linked:
| Folder | Links into | Examples |
| -------------- | ------------ | --------------------------------- |
| `home_root` | `~` | `.zshrc`, `.wezterm.lua`, `.nanorc` |
| `home_config` | `~/.config` | `nvim`, `ohmyposh`, `zellij`, `ghostty` |
| `windows` | Windows-only | `windows-terminal/settings.json` |
| `lk-installers`| n/a | helper scripts to install tooling |
## Linux / macOS (GNU stow)
Requires [`stow`](https://www.gnu.org/software/stow/).
```bash
./link-dotfiles
```
This runs `stow home_root` and `stow --target=$HOME/.config home_config`.
## Windows (PowerShell)
`stow` doesn't run natively on Windows, so use the PowerShell equivalent. It
mirrors stow by creating **junctions** for directories and **symlinks/hardlinks**
for files — none of which require administrator rights:
```powershell
pwsh -File .\link-dotfiles.ps1
```
- Re-running is safe: already-correct links are skipped.
- Any real file/dir that would be overwritten is moved aside to `<name>.bak`.
- Preview without changing anything: `pwsh -File .\link-dotfiles.ps1 -DryRun`
The repo stays the source of truth — edit files under `home_root` /
`home_config` and the linked locations update live.
### Windows Terminal
`windows/windows-terminal/settings.json` is linked into the Terminal package
folder (`...\Microsoft.WindowsTerminal_*\LocalState\settings.json`) by
`link-dotfiles.ps1`. Because it's linked, changes you make in the Terminal UI
write straight back into this repo. The settings include the **Australis**
color scheme and the **VictorMono Nerd Font Mono** profile font; install the
font (see below) so glyphs render.
## Installers
| Script | Platform | Purpose |
| ------------------------------- | -------- | ------------------ |
| `lk-installers/install-ohmyposh` | bash | oh-my-posh (Linux/macOS) |
| `lk-installers/install-ohmyposh.ps1` | pwsh | oh-my-posh (Windows, via winget) |
```powershell
# Windows: install oh-my-posh, then link
pwsh -File .\lk-installers\install-ohmyposh.ps1
pwsh -File .\link-dotfiles.ps1
```
### oh-my-posh
The prompt theme lives at `home_config/ohmyposh/lkraven.toml` and is loaded from
your shell profile, e.g. in PowerShell:
```powershell
oh-my-posh init pwsh --config '~/.config/ohmyposh/lkraven.toml' | Invoke-Expression
```
It expects a Nerd Font (e.g. **VictorMono Nerd Font Mono**) to be installed and
selected in your terminal for the glyphs to render correctly.