<feed xmlns='http://www.w3.org/2005/Atom'>
<title>archsetup/CLAUDE.md, branch main</title>
<subtitle>Builds a full dev workstation from a bare Arch Linux install.
</subtitle>
<id>https://git.cjennings.net/archsetup/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/archsetup/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/'/>
<updated>2026-06-11T10:03:02+00:00</updated>
<entry>
<title>docs: per-host overrides shipped — spec decisions, host-tier docs, task close-out</title>
<updated>2026-06-11T10:03:02+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-11T10:03:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=b75d061cbb70b048dc0eeac279a2ecd5ec2d2909'/>
<id>urn:sha1:b75d061cbb70b048dc0eeac279a2ecd5ec2d2909</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor: drop in-repo dotfiles/, move stow tooling to the dotfiles repo</title>
<updated>2026-06-02T17:16:38+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-02T17:16:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=b10cba594db836c0747066addad48bda4d30cd02'/>
<id>urn:sha1:b10cba594db836c0747066addad48bda4d30cd02</id>
<content type='text'>
Since the installer clones DOTFILES_REPO into ~/.dotfiles and stows from there, the in-repo dotfiles/ tree was dead weight. Nothing reads it at install time. I removed it (831 files) now that both machines are migrated.

The Makefile's stow / restow / reset / unstow / import targets and the dotfile-script unit suites moved to the dotfiles repo. They sit alongside the scripts they manage and run standalone (cd ~/.dotfiles &amp;&amp; make ...). This Makefile keeps the VM-integration targets and the installer-helper suite (safe-rm-rf).

I updated CLAUDE.md and README.md so stow operations run from ~/.dotfiles, and the dotfile-management, theme, and unit-test sections point at the standalone repo. The README was already describing the old in-repo model from before the installer switched to cloning. This brings it in line.
</content>
</entry>
<entry>
<title>docs: note that Tailscale traffic traverses ufw on ratio</title>
<updated>2026-05-31T19:21:05+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-31T19:21:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=763e76797e2f6d05f007032734eaf8332cba5530'/>
<id>urn:sha1:763e76797e2f6d05f007032734eaf8332cba5530</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs(claude): correct velox/ratio desktop env (both run Hyprland)</title>
<updated>2026-05-23T00:02:14+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-23T00:02:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=8c58f92f675671bcd4bba3081bf4f1fae0566867'/>
<id>urn:sha1:8c58f92f675671bcd4bba3081bf4f1fae0566867</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs(claude): document the external dotfiles repo and migration</title>
<updated>2026-05-22T23:04:24+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-22T23:04:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=e1810ce42154817c4102080b4d234d78f5755755'/>
<id>urn:sha1:e1810ce42154817c4102080b4d234d78f5755755</id>
<content type='text'>
Phase 2 moved the dotfiles into their own repo at git.cjennings.net/dotfiles.git, so a fresh install clones DOTFILES_REPO to ~/.dotfiles and stows per DESKTOP_ENV. I documented that, the DOTFILES_REPO/BRANCH/DIR config keys, the DOTFILES= Makefile override, the post-install pull-and-restow flow, and the steps to migrate an existing machine off the in-repo dotfiles/.

The migration note calls out quitting Hyprland first: unstowing while it runs makes it write a stub hyprland.conf into the gap, which blocks the restow. The in-repo dotfiles/ stays until ratio and velox migrate, then it gets removed.
</content>
</entry>
<entry>
<title>docs(claude): correct cursor theme reference</title>
<updated>2026-05-19T14:49:17+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-19T12:33:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=43cedd7149a175a3db4a3bc0a57290fb2e50c2a0'/>
<id>urn:sha1:43cedd7149a175a3db4a3bc0a57290fb2e50c2a0</id>
<content type='text'>
CLAUDE.md listed `capitaine-cursors-light`, but every other place in the repo names `Bibata-Modern-Ice`: `hyprland.conf` XCURSOR_THEME, the three Xresources files, `gtk-3.0/settings.ini`, the dconf defaults block in `archsetup`, and the `aur_install bibata-cursor-theme-bin` line. I fixed CLAUDE.md to match.
</content>
</entry>
<entry>
<title>docs: complete .ai/ rename in CLAUDE.md layout + note</title>
<updated>2026-04-20T13:37:41+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-20T13:37:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=e065b4e10bf6c08587750911ffa9f4afa1d7842d'/>
<id>urn:sha1:e065b4e10bf6c08587750911ffa9f4afa1d7842d</id>
<content type='text'>
Missed in the main migration commit (sed pattern didn't match the
layout table or the standalone 'docs/' reference in the note line).
Layout now lists .ai/ correctly; gitignore note refers to .ai/
instead of docs/.
</content>
</entry>
<entry>
<title>restructure: move docs/ to .ai/ + sync latest template</title>
<updated>2026-04-20T13:36:27+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-20T13:36:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=02e233af923169fe0958e1cb80023b6b9a9f8896'/>
<id>urn:sha1:02e233af923169fe0958e1cb80023b6b9a9f8896</id>
<content type='text'>
Per claude-templates c36fd14. Claude tooling moves to hidden .ai/;
project-level docs/ reserved for real documentation.
</content>
</entry>
<entry>
<title>feat: proton-vpn, lid switch, scratchpad resizing</title>
<updated>2026-04-13T15:54:45+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-13T15:54:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=a4bee40267c794da44cf227fbe23b81f3ed53c1b'/>
<id>urn:sha1:a4bee40267c794da44cf227fbe23b81f3ed53c1b</id>
<content type='text'>
- archsetup: add proton-vpn-gtk-app; configure logind to ignore lid switch
- hyprland.conf: autostart protonvpn-app minimized
- waybar: set battery module to BAT1 (velox)
- pypr: resize scratchpads to fit 80x24 minimum; enlarge monitor for btop
- gitconfig: add deepsat GHE credential helpers
- CLAUDE.md: update notes.org reference (lowercase)
</content>
</entry>
<entry>
<title>docs(CLAUDE.md): update project structure and remove stale content</title>
<updated>2026-01-27T12:28:48+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-27T12:28:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=b42384a9699c89126f2352f45fc4b3fc6849b48c'/>
<id>urn:sha1:b42384a9699c89126f2352f45fc4b3fc6849b48c</id>
<content type='text'>
Reflect current directory layout (assets/, scripts/, inbox/), add
theme system section, remove changelog and pending work that belong
in NOTES.org.
</content>
</entry>
</feed>
