Skip to content

Installer follow-ups: shellcheck CI, docs, venv ownership#2

Open
davidj4tech wants to merge 1 commit into
mainfrom
installer-followups
Open

Installer follow-ups: shellcheck CI, docs, venv ownership#2
davidj4tech wants to merge 1 commit into
mainfrom
installer-followups

Conversation

@davidj4tech

Copy link
Copy Markdown
Owner

Summary

Follow-up to #1. Three independent fixes bundled together:

  • Shellcheck CI. New .github/workflows/shellcheck.yml runs shellcheck -S warning on scripts/ for every push to main and every PR. Verified locally: current scripts/install.sh is clean at warning level.
  • Docs. docs/INSTALL.md now documents (a) the new fresh-install flow — run installer, edit /etc/sacred-brain/*, then --update to start; (b) that all units in ops/systemd/ get installed, not a hardcoded subset; (c) the new --uninstall / --uninstall --purge modes.
  • Venv ownership. Phase 4 now chown -R sacred:sacred "$REPO_DIR/.venv". Services run as sacred, so leaving the venv root-owned breaks any post-install pip operation invoked from a just recipe or hook running as that user.

Also adds a CHANGELOG entry under "Unreleased".

Test plan

  • CI: shellcheck workflow runs and passes on this PR
  • After fresh install on a test host, ls -ld /opt/sacred-brain/.venv shows sacred sacred
  • just <recipe-that-pips> works without sudo from the sacred user
  • docs/INSTALL.md Quick Start steps reproduce a working install end-to-end

🤖 Generated with Claude Code

- Add .github/workflows/shellcheck.yml so installer regressions get caught
  in CI. Runs on push to main and on PRs.
- Update docs/INSTALL.md to document the new fresh-install flow (run, edit,
  --update), the loosened unit discovery (any unit in ops/systemd/ with an
  [Install] section), and the new --uninstall / --uninstall --purge modes.
- chown the Python venv to sacred:sacred after Phase 4. Services run as
  sacred, so leaving the venv root-owned breaks any post-install pip work
  from just recipes or hooks.
- Add CHANGELOG entry.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants