Commit Graph

10 Commits

Author SHA1 Message Date
e686b6396d Add spinning donut screensaver with matrix rain
Terminal screensaver written in C, triggered by tmux lock-after-time
(180s idle), bind S, or `donut` alias. Features:

- Spinning torus with precomputed trig tables, randomized rotation
- Matrix rain overlay — donut luminance colors the rain characters
- 64-shade teal foreground palette with gradual dimming over time
- Chunky 7x5 clock with shadow, blinking colon, periodic drift
- Activity time display below clock (read from heartbeat state file)
- Rim lighting and ambient occlusion on donut edges
- RLE escape state machine — only emits SGR on shade transitions
- Row-skip rendering — empty/leading/trailing regions use cursor jumps
- Projection runs at adaptive rate (24fps bright, 6fps dim)
- select()-based frame pacing, deep sleep after 2hr (1fps)
- Resume detection — flushes stale PTY output after sleep/lock
- Mouse click to quit (SGR + X11 protocols, release filtered)
- write_all() retries partial writes, SIGPIPE handled gracefully
- Alternate screen buffer preserves shell scrollback

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-27 16:56:44 +00:00
e7a2b3c10e Fix bat install on Debian: symlink batcat to bat
Debian's apt package installs the binary as 'batcat' due to a naming
conflict. Add a symlink to /usr/local/bin/bat after apt install so the
dotfiles can reference 'bat' consistently across all platforms.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-25 15:14:47 +00:00
53bd2f49ef bat build and zsh widget perf 2026-02-24 20:26:04 +00:00
faad821c77 terminal tool colours 2026-02-24 20:00:53 +00:00
e8165041d9 fix: codespaces gitconfig override 2026-02-24 19:02:28 +00:00
7d2825f9d1 profile: invalidate PATH cache when base PATH changes
Store the base PATH alongside the cached result so the cache is
only used when the pre-modification PATH still matches.  This
prevents stale entries when the shell inherits a different base
PATH (e.g. inside tmux or after system updates).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-24 16:10:12 +00:00
6fd897b8b5 Merge remote-tracking branch 'origin/master' 2026-02-24 16:08:51 +00:00
2acae0b4f2 vim: add plugins, tmux: status bar, fix Ctrl+A clash
- Add vim-gitgutter, vim-commentary, vim-surround via install
script
- Rebind git log widget from Ctrl+A to Ctrl+T (tmux prefix
clash)
- Add date, time, and battery indicator to tmux status
bar
- Set tmux clock colour to teal

Co-authored-by: Copilot
<223556219+Copilot@users.noreply.github.com>
2026-02-24 16:08:10 +00:00
409bc6fef5 fix: install outputs, mise keyrings, termcolor 2026-02-23 08:49:43 -08:00
eb958a36e0 feat: install script re-org 2026-02-13 15:13:12 +00:00