Skip to content

feat: add package-manager distribution#38

Merged
saldestechnology merged 7 commits into
mainfrom
feat/package-manager-distribution
Jul 13, 2026
Merged

feat: add package-manager distribution#38
saldestechnology merged 7 commits into
mainfrom
feat/package-manager-distribution

Conversation

@saldestechnology

Copy link
Copy Markdown
Collaborator

Summary

  • standardize deterministic release archives and aggregate checksums
  • add cargo-binstall, Homebrew, AUR, Scoop, Debian, and RPM packaging
  • generate and validate package-manager metadata in CI
  • prevent self-update from overwriting package-manager-owned binaries
  • document release and external repository maintenance

Supported release targets

  • x86_64-unknown-linux-gnu
  • x86_64-apple-darwin
  • aarch64-apple-darwin
  • x86_64-pc-windows-msvc (no default DuckDB feature)

Linux ARM64 and musl remain unsupported because the existing CI has not established reliable builds for them.

Validation

  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • update unit tests (15 passed)
  • self-update CLI tests (9 passed in focused worktree)
  • package metadata generator --check, Ruby/JSON/Bash/Python syntax checks
  • deterministic archive layout/checksum validation for all supported targets

Full cargo test --workspace reached 311 passing tests but failed 9 pre-existing OpenAI/Ollama provider tests on this macOS host because system-configuration attempted to create a NULL dynamic-store object. Packaging and updater tests passed. Debian/RPM construction and installation are exercised by release CI on Ubuntu.

@saldestechnology
saldestechnology merged commit 877a6d2 into main Jul 13, 2026
9 checks passed
@saldestechnology saldestechnology mentioned this pull request Jul 13, 2026
18 tasks
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