Skip to content

Universal Linux package manager - one command for apt, dnf, pacman, snap, flatpak & AppImage. Built in Rust with real rollback capabilities and enterprise security.

License

Notifications You must be signed in to change notification settings

therealcoolnerd/omni

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

🌟 Omni Universal Package Manager β€” One Command for All Platforms

Omni Logo

Universal Cross-Platform Package Manager | Linux | Windows | macOS | Package Management Made Simple

The only package manager you'll ever need. Install software on any operating system with one command.

Rust License Platform GitHub

    ╔═══════════════════════════════════════════════════════════╗
    β•‘  🎯 THE GOAL: One command that works everywhere           β•‘
    β•‘  ⚑ THE APPROACH: Simple, fast, reliable                  β•‘
    β•‘  πŸ”§ THE REALITY: What actually works                      β•‘
    β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

⚑ Quick Start β€’ πŸ“¦ What Works β€’ πŸ› οΈ Install β€’ βš™ Configuration


πŸš€ The Mission

The problem: Every developer knows the pain. Windows has winget. macOS has brew. Ubuntu has apt. Arch has pacman. It's 2025 and we're still memorizing different commands for every platform.

The solution: omni install firefox β€” one command that works everywhere.

What we built: A single, focused package manager that wraps the native package managers on each platform. No bloat, no enterprise complexity, just working cross-platform package management.


⚑ Quick Start

πŸ› οΈ Installation

# Build from source
git clone https://github.com/therealcoolnerd/omni.git
cd omni
cargo build --release

# The binary will be in target/release/omni

πŸ”₯ The Universal Command

# Instead of this platform chaos:
sudo apt install firefox          # Linux
winget install Firefox           # Windows  
brew install firefox             # macOS

# Just do this everywhere:
omni install firefox            # Works on ALL platforms πŸ”₯

πŸ“¦ What Works

Supported Package Managers

Platform Package Managers
Linux apt, dnf, pacman, snap, flatpak, zypper, emerge, nix
macOS homebrew, mas (App Store)
Windows winget, chocolatey, scoop

Core Commands

omni install <package>     # Install a package
omni remove <package>      # Remove a package
omni search <query>        # Search for packages
omni list                  # List installed packages
omni update               # Update packages
omni info <package>       # Get package information

Hardware Detection & Driver Management

# Detect server hardware and show configuration
omni hardware detect

# Auto-detect and install optimal drivers for mixed servers
omni hardware install

# Install vendor-specific drivers (Dell, HP, Supermicro, etc.)
omni hardware vendor <vendor-name>

Optional Features

# GUI interface (if compiled with --features gui)
omni gui

# SSH remote management (if compiled with --features ssh)
omni ssh <host> install <package>

πŸ–₯️ Mixed Server Scenarios

Omni excels in heterogeneous server environments where you need to manage different hardware vendors and configurations:

Server Hardware Support

Vendor Drivers & Tools
Dell dell-smbios, dcdbas, dell-wmi
HP/HPE hpilo, hp-wmi, hp-health
Supermicro ipmi_si, ipmi_devintf, supermicro-bmc
Lenovo thinkpad-acpi, lenovo-wmi
Cisco UCS cisco-ucs, cisco-enic

Common Use Cases

# Mixed datacenter with different vendors
omni hardware detect                    # Identify all server hardware
omni hardware install                   # Install optimal drivers automatically

# Specific vendor environments  
omni hardware vendor dell              # Dell PowerEdge servers
omni hardware vendor hp                # HP ProLiant servers
omni hardware vendor supermicro        # Supermicro servers

# Network-attached storage and specialized hardware
omni install mellanox-drivers          # High-speed networking
omni install nvidia-driver             # GPU compute workloads
omni install intel-ethernet            # Intel network adapters

Why This Matters

  • Consistent tooling across different server vendors
  • Automated driver detection for optimal performance
  • Mixed cloud/on-premise deployments simplified
  • Hardware vendor independence in your automation scripts

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                 Omni CLI                        β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Cross-Platform Package Manager Detection       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Linux     β”‚   macOS      β”‚   Windows          β”‚
β”‚  ────────  β”‚   ─────────  β”‚   ───────────      β”‚
β”‚  apt       β”‚   homebrew   β”‚   winget           β”‚
β”‚  dnf       β”‚   mas        β”‚   chocolatey       β”‚
β”‚  pacman    β”‚              β”‚   scoop            β”‚
β”‚  snap      β”‚              β”‚                    β”‚
β”‚  flatpak   β”‚              β”‚                    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸš€ Development

Build Requirements

  • Rust 1.70+
  • Cargo

Build Commands

# Standard build
cargo build --release

# With GUI support
cargo build --release --features gui

# With SSH support  
cargo build --release --features ssh

# Full features
cargo build --release --features gui,ssh

Project Structure

src/
β”œβ”€β”€ main.rs              # CLI interface
β”œβ”€β”€ lib.rs               # Library entry point
β”œβ”€β”€ boxes/               # Package manager implementations
β”‚   β”œβ”€β”€ apt.rs          # Debian/Ubuntu
β”‚   β”œβ”€β”€ brew.rs         # macOS Homebrew
β”‚   β”œβ”€β”€ winget.rs       # Windows
β”‚   └── ...             # Other package managers
β”œβ”€β”€ config.rs           # Configuration management
β”œβ”€β”€ database.rs         # SQLite operations
β”œβ”€β”€ brain.rs            # Core logic
└── gui.rs              # Optional GUI (feature-gated)

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test on multiple platforms
  5. Submit a pull request

Adding Package Manager Support

To add a new package manager:

  1. Create src/boxes/newmanager.rs
  2. Implement the package manager interface
  3. Add detection logic in src/distro.rs
  4. Test on the target platform

πŸ“„ License

AGPL-3.0-or-later - see LICENSE for details.


πŸ”₯ Built By

therealcoolnerd β€” Making package management work everywhere

πŸ“§ Contact: [email protected]
πŸ’Ό Business: Available for consulting and custom integrations


⭐ Star this repo β€’ πŸ› Report Issues β€’ πŸ’‘ Request Features


πŸ” Keywords & Topics

Package Manager | Cross Platform | Universal Package Manager | Linux Package Manager | Windows Package Manager | macOS Package Manager | apt wrapper | brew wrapper | winget wrapper | dnf wrapper | pacman wrapper | snap wrapper | flatpak wrapper | Package Management Tool | Software Installation | Command Line Tool | CLI Package Manager | Rust Package Manager | Open Source Package Manager | Multi Platform | System Administration | DevOps Tools | Developer Tools | System Package Manager | Package Installation | Software Management | Cross Platform Development | Linux Tools | Windows Tools | macOS Tools | System Tools | Package Management System

Omni Universal Package Manager - The ultimate cross-platform package management solution for Linux, Windows, and macOS. Install software packages with one command across all operating systems. Open source Rust-based package manager that wraps apt, brew, winget, dnf, pacman, snap, flatpak and more.

"One CLI to rule them all." ⚫

No marketing hype. Just working cross-platform package management.

Releases

No releases published

Sponsor this project

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •