<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotfiles/run_onchange_after_deploy-etc.sh, branch master</title>
<subtitle>My linux config and rc files
</subtitle>
<id>https://git.sommerfeld.dev/dotfiles/atom?h=master</id>
<link rel='self' href='https://git.sommerfeld.dev/dotfiles/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/'/>
<updated>2026-04-21T00:23:19Z</updated>
<entry>
<title>refactor: merge etc2/ into etc/, add content hashes to run scripts</title>
<updated>2026-04-21T00:23:19Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:23:19Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=fcafb03c9b1030dea399d44dda52f62e9117ad96'/>
<id>urn:sha1:fcafb03c9b1030dea399d44dda52f62e9117ad96</id>
<content type='text'>
- etc2/ only existed because stow used symlinks and reflector refused
  them. Chezmoi copies files, so no reason to keep them separate.
- Run scripts are now .tmpl files with sha256sum hashes of deployed
  files. chezmoi only re-runs them when file content actually changes,
  avoiding unnecessary doas prompts on every apply.
</content>
</entry>
<entry>
<title>fix: use cp --remove-destination in etc deploy script</title>
<updated>2026-04-21T00:23:19Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:23:19Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=f1be7b1a74bf21db40a08f82bdbb9bee1d16f955'/>
<id>urn:sha1:f1be7b1a74bf21db40a08f82bdbb9bee1d16f955</id>
<content type='text'>
Old stow symlinks in /etc/ point back to the repo, making source and
dest the same file. --remove-destination removes the symlink first.
</content>
</entry>
<entry>
<title>fix: use CHEZMOI_SOURCE_DIR env var in run scripts</title>
<updated>2026-04-21T00:23:19Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:23:19Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=928ec33857f0ed83c9d89ee05fa5c26773323473'/>
<id>urn:sha1:928ec33857f0ed83c9d89ee05fa5c26773323473</id>
<content type='text'>
Cannot call 'chezmoi source-path' from within a run script — it
deadlocks on the persistent state lock. Use the CHEZMOI_SOURCE_DIR
env var that chezmoi provides to run scripts instead.
</content>
</entry>
<entry>
<title>fix: use chezmoi source-path in run scripts</title>
<updated>2026-04-21T00:23:19Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:23:19Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=98360109941998cef8c0eda8c421c474dc3f324b'/>
<id>urn:sha1:98360109941998cef8c0eda8c421c474dc3f324b</id>
<content type='text'>
chezmoi executes run scripts from a temp directory, so $(dirname $0)
resolves to /tmp instead of the repo. Use 'chezmoi source-path' to
locate etc/, etc2/, and firefox/ files.
</content>
</entry>
<entry>
<title>feat: add chezmoi config, ignore, and deploy scripts</title>
<updated>2026-04-21T00:23:18Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:23:18Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=f185694ff83f40f93ea535358ea36eccc837fa6e'/>
<id>urn:sha1:f185694ff83f40f93ea535358ea36eccc837fa6e</id>
<content type='text'>
- .chezmoi.toml.tmpl: minimal config with hostname data
- .chezmoiignore: exclude repo-only files from deployment
- run_onchange_after_deploy-etc.sh: deploy etc/ and etc2/ to /etc
- run_onchange_after_deploy-firefox.sh: deploy firefox overrides to profile
</content>
</entry>
</feed>
