OMG Documentation
The Complete Guide to the Fastest Unified Package Manager
Welcome to the official OMG documentation. This comprehensive guide covers everything from basic usage to advanced enterprise features, performance tuning, and security hardening.
🎯 Documentation Overview
OMG is a next-generation package manager that unifies system packages (Arch Linux, Debian/Ubuntu) with language runtime management (Node.js, Python, Go, Rust, Ruby, Java, Bun) into a single, blazing-fast binary. This documentation is organized into progressive sections, from getting started to deep technical internals.
📖 Table of Contents
Getting Started
| Guide | Description |
|---|---|
| Quick Start | Installation and first commands in 5 minutes |
| CLI Reference | Complete command reference with examples |
| Configuration | Configuration files, paths, and customization |
Core Features
| Guide | Description |
|---|---|
| Package Management | Search, install, update, remove packages |
| Runtime Management | Managing Node.js, Python, Go, Rust, Ruby, Java, Bun |
| Shell Integration | Hooks, completions, and PATH management |
| Task Runner | Unified task execution across ecosystems |
Advanced Features
| Guide | Description |
|---|---|
| Security & Compliance | Vulnerability scanning, SBOM, secrets, audit logs |
| Team Collaboration | Environment lockfiles, drift detection, team sync |
| Container Support | Docker/Podman integration |
| TUI Dashboard | Interactive terminal dashboard |
| History & Rollback | Transaction history and system rollback |
Architecture & Internals
| Guide | Description |
|---|---|
| Architecture Overview | System design and component overview |
| Daemon Internals | Background service, IPC, and state management |
| Caching System | In-memory and persistent caching |
| IPC Protocol | Binary protocol for CLI-daemon communication |
| Package Search | Search indexing and ranking algorithms |
| CLI Internals | CLI implementation details |
Reference
| Guide | Description |
|---|---|
| Workflows | Common workflows and recipes |
| Troubleshooting | Common issues and solutions |
| FAQ | Frequently asked questions |
| Changelog | Version history and release notes |
🚀 Why OMG?
Performance That Matters
OMG achieves 22x faster searches than pacman and 59-483x faster than apt-cache through:
- Zero subprocess overhead — Direct library integration with libalpm and rust-apt
- Persistent daemon — In-memory package index with instant lookups
- Pure Rust implementation — No Python, no shell scripts, just raw speed
- Smart caching — moka (in-memory) + redb (persistent) caching layers
| Operation | OMG | pacman | Speedup |
|---|---|---|---|
| Search | 6ms | 133ms | 22x |
| Info | 6.5ms | 138ms | 21x |
| Explicit list | 1.2ms | 14ms | 12x |
Unified Experience
Stop juggling multiple tools:
- ❌
pacman+yay+nvm+pyenv+rustup+rbenv+sdkman - ✅ Just
omg
Enterprise-Grade Security
Built-in security features that would cost thousands in enterprise tools:
- Vulnerability scanning (ALSA + OSV.dev)
- CycloneDX 1.5 SBOM generation
- PGP signature verification (Sequoia-OpenPGP)
- SLSA provenance verification via Sigstore
- Secret scanning with 20+ credential patterns
- Tamper-proof audit logging
🏗️ Architecture at a Glance
┌─────────────────────────────────────────────────────────────────┐
│ OMG CLI (omg) │
│ ┌─────────┬──────────┬──────────┬──────────┬────────────────┐ │
│ │ Package │ Runtime │ Security │ Task │ TUI Dashboard │ │
│ │ Mgmt │ Mgmt │ Audit │ Runner │ │ │
│ └────┬────┴────┬─────┴────┬─────┴────┬─────┴───────┬────────┘ │
│ │ │ │ │ │ │
│ └─────────┴──────────┴──────────┴─────────────┘ │
│ │ Unix Socket IPC │
└─────────────────────────┼───────────────────────────────────────┘
│
┌─────────────────────────┼───────────────────────────────────────┐
│ ▼ │
│ OMG Daemon (omgd) │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Package Index │ moka Cache │ redb Persistence │ Workers │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ ┌──────────────┬──────────────┬──────────────────────────┐ │
│ │ libalpm │ rust-apt │ AUR Client │ │
│ │ (Arch) │ (Debian) │ (HTTP API) │ │
│ └──────────────┴──────────────┴──────────────────────────┘ │
└──────────────────────────────────────────────────────────────────┘
🎓 Learning Path
For New Users
- Quick Start — Install OMG and run your first commands
- CLI Reference — Learn all available commands
- Shell Integration — Set up shell hooks and completions
- Workflows — Common patterns and recipes
For Power Users
- Runtime Management — Master multi-runtime environments
- Task Runner — Unified task execution
- Team Collaboration — Share environments with teammates
- TUI Dashboard — Real-time system monitoring
For Enterprise/DevOps
- Security & Compliance — SBOM, vulnerability scanning, audit logs
- Container Support — CI/CD and container integration
- Daemon Internals — Deployment and scaling considerations
- Configuration — Policy enforcement and customization
For Contributors
- Architecture Overview — System design
- CLI Internals — Command implementation
- Daemon Internals — Background service details
- IPC Protocol — Binary protocol specification
📞 Support & Community
- GitHub Issues: github.com/PyRo1121/omg/issues
- Discussions: github.com/PyRo1121/omg/discussions
- Documentation Source: docs/
📄 License
OMG is licensed under AGPL-3.0-or-later. See the LICENSE file for details.
Commercial licenses are available for organizations that cannot comply with AGPL requirements. Contact us for details.
Next Steps: Quick Start Guide →