Installation
Quick Install (Shell)
Unix (Linux / macOS):
curl -sfL https://raw.githubusercontent.com/Nisoku/UPI/main/install.sh | sh
Windows (PowerShell):
iwr https://raw.githubusercontent.com/Nisoku/UPI/main/install.ps1 | iex
Each script detects your OS and architecture, downloads the correct binary from the latest release, and installs it to /usr/local/bin (Unix) or %USERPROFILE%\.local\bin (Windows). No dependencies required.
Override the version or destination with environment variables:
Unix:
UPI_VERSION=v0.1.0 UPI_INSTALL_DIR=~/.local/bin \
curl -sfL https://raw.githubusercontent.com/Nisoku/UPI/main/install.sh | sh
Windows:
$env:UPI_VERSION = "v0.1.0"
$env:UPI_INSTALL_DIR = "$env:USERPROFILE\bin"
iwr https://raw.githubusercontent.com/Nisoku/UPI/main/install.ps1 | iex
From Source (crates.io)
cargo install upi
This compiles UPI from source. The binary is placed in ~/.cargo/bin/.
Pre-built Binaries
Download the latest binary for your platform from the releases page.
Available targets:
| Platform | Architecture |
|---|---|
| macOS (Intel) | x86_64-apple-darwin |
| macOS (Apple Silicon) | aarch64-apple-darwin |
| Linux | x86_64-unknown-linux-gnu |
| Linux (musl) | x86_64-unknown-linux-musl |
| Windows | x86_64-pc-windows-msvc |
Build from Source (Git)
git clone https://github.com/Nisoku/UPI.git
cd UPI
cargo build --release
./target/release/upi --help
Requirements
- Rust 1.75+ for building from source
- SQLite: the bundled
libsqlite3-sysstatically links SQLite, no system library needed - Network: only required for Repology lookups (optional; offline mode works without it)
First Run
On first run, UPI decompresses the embedded seed database to ~/.upi/db/seed.db. This happens automatically and requires no user action.