Skip to content

feat: install.sh installs spf-tools and aggregateCIDR.pl#24

Merged
edmundlod merged 1 commit into
mainfrom
feat/install-deps
Apr 14, 2026
Merged

feat: install.sh installs spf-tools and aggregateCIDR.pl#24
edmundlod merged 1 commit into
mainfrom
feat/install-deps

Conversation

@edmundlod

Copy link
Copy Markdown
Owner

Summary

  • contrib/install.sh now installs both runtime dependencies in addition to creating the postallow user and output directory
  • spf-tools scripts cloned to a tmpdir, installed individually with install -m 755 into /usr/local/bin/ — no subdirectory, no wildcard chmod, no leftover .git/README
  • aggregateCIDR.pl uses the same tmpdir pattern
  • Both prompt Reinstall to update? [y/N] when already present and running interactively; skip silently when non-interactive (CI)
  • spftoolspath updated to /usr/local/bin everywhere (ci.yml, conf/postallow.conf.in)
  • CI simplified: redundant separate dep-install steps removed from all four Linux jobs and the FreeBSD inline block
  • README manual installation section expanded with split tables and explicit dep-install steps; ToC added with doctoc markers
  • make toc target added; .githooks/pre-commit auto-updates ToC on commit if npx is available (activate with git config core.hooksPath .githooks)

Test plan

  • Trigger CI on this PR and confirm all five jobs pass
  • Manually verify sudo contrib/install.sh on a clean Linux system installs spf-tools scripts and aggregateCIDR.pl into /usr/local/bin/
  • Re-run sudo contrib/install.sh and confirm the reinstall prompt appears
  • Confirm make toc updates the ToC in README.md

contrib/install.sh now installs both runtime dependencies in addition
to creating the postallow user and output directory:

- spf-tools scripts cloned to a tmpdir and installed individually with
  'install -m 755' into /usr/local/bin/ (no subdirectory, no wildcard
  chmod, no leftover .git/README)
- aggregateCIDR.pl installed the same way (tmpdir pattern was already
  in place)
- Both prompt 'Reinstall to update? [y/N]' when already present and
  running interactively; skip silently in non-interactive/CI context

spftoolspath updated to /usr/local/bin everywhere (ci.yml, conf.in).
CI jobs simplified: the now-redundant separate install steps removed
from all four Linux jobs and the FreeBSD inline block.

README.md: manual installation section expanded with split tables and
explicit dep-install steps; ToC added with doctoc markers.
Makefile: 'make toc' target added (npx --yes doctoc).
.githooks/pre-commit: auto-updates ToC on commit if npx is available.
@edmundlod edmundlod merged commit e19fc50 into main Apr 14, 2026
5 checks passed
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.

1 participant