-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
π¦ OpenVox Agent Universal Installer β Proposal Summary
π― Purpose
The goal of this project is to provide a unified, cross-platform installation experience for the openvox-agent across major operating systems (Linux, macOS, Windows). It allows users to install and configure the agent with a single command tailored to their environment, reducing friction and ensuring consistency in deployments.
π§© Design Overview
The installation system uses a universal wrapper script (install.sh or equivalent) that detects the platform and delegates to the appropriate OS-specific install script. Each script:
- Installs the agent using native package managers or installers (
apt,dnf,msiexec,installer) - Imports GPG keys or handles certificates
- Configures repository metadata as needed
- Offers to symlink common tools (
puppet,facter,pxp-agent) into$PATH
π§ Core Design Principles
- π οΈ Platform-native installation (no Docker dependencies)
- π‘ Auto-detection of OS and architecture
- β User-friendly prompts with safe defaults
- π Use of official signing keys for trust
- π§ͺ Testable via GitHub Actions and local Bats framework
π₯οΈ Supported Platforms
| OS Family | Versions Supported | Installer Format |
|---|---|---|
| Debian | 10, 11, 12 | .deb + APT repo |
| Ubuntu | 18.04, 20.04, 22.04, 24.04 | .deb + APT repo |
| RHEL-based | RHEL 7β10, Rocky, Alma, Amazon Linux, SLES | .rpm + YUM/DNF repo |
| Fedora | 36, 40, 41, 42 | .rpm + DNF repo |
| macOS | Ventura+ on Apple Silicon | .dmg with .pkg |
| Windows | Windows 10, 11, Server (x64) | .msi installer |
π¦ Deliverables
install.shβ universal wrapper script (except windows)install-openvox-deb.shβ for Debian/Ubuntuinstall-openvox-rpm.shβ for RedHat-based distrosinstall-openvox-mac.shβ for macOSinstall-openvox-windows.ps1β for Windows- GitHub Actions CI with container matrix testing (Debian, Ubuntu, RHEL variants)
- Bats test framework with mocked local repo/host environment
π§ͺ Testing & Validation
- GitHub Actions matrix tests for all Linux platforms using Docker containers
- macOS and Windows tested via native runners in CI
- Local testing supported via:
run-local-test.sh(Linux Bats)- HTTPS mocking using
python3 -m http.server - Certificate validation override (or trust install)
π§° How It's Used
β One-Liner (Universal Install)
# linux, Mac
curl -fsSL https://raw.githubusercontent.com/voxpupuli/openvox-install/main/install.sh | bash -s -- 8 openvox-agent
or when published officially
curl -fsSL https://voxpupuli.com/install.sh | bash -s -- 8 openvox-agentπͺ Windows
powershell -NoProfile -ExecutionPolicy Bypass -Command "iwr -useb https://raw.githubusercontent.com/voxpupuli/openvox-install/main/install-openvox-windows.ps1 | iex"
or
powershell -NoProfile -ExecutionPolicy Bypass -Command "iwr -useb https://voxpupuli.com/install-openvox-windows.ps1 | iex"
π§ Maintenance Plan
- Scripts hosted in
voxpupuli/openvox-install - Raw GitHub URLs used for live delivery
- CI runs on every push and PR to validate OS compatibility
- Community-supported with release tagging and version pinning
π§ Intended Use Cases
- Easy onboarding for new agents
- Testing internal agent behavior across supported systems
Working POC (code only)
I have created a working POC but the scripts will need to be hosted somewhere either via github or vox site.
Metadata
Metadata
Assignees
Labels
No labels