updt 0.1.34

Cross-platform update helper for npm, cargo, rustup, fnm, scoop, Homebrew, paru, flatpak, pacman, and pkg.
updt-0.1.34 is not a library.

updt

A cross-platform system update helper written in Rust.

updt checks upgrade candidates and lets you choose what to upgrade interactively. It mirrors the behavior of the original script, but the workflow is implemented in Rust.

Supported update targets

  • Homebrew (macOS)
  • npm global packages
  • cargo installed crates (via cargo-install-update)
  • rustup toolchains
  • fnm managed Node.js versions (latest/LTS)
  • scoop packages (Windows)
  • paru AUR packages (Arch Linux)
  • flatpak apps (Arch Linux profile)
  • pacman packages (Arch Linux)
  • pkg packages (Termux)

Windows support includes npm, cargo, rustup, fnm, and scoop. Windows system package managers winget and choco are intentionally unsupported.

System policy

updt enables targets by OS profile.

  • macOS: Homebrew, npm, cargo, rustup
  • Windows: npm, cargo, rustup, fnm, scoop
  • Arch Linux: npm, cargo, rustup, fnm, paru, pacman, flatpak
  • Termux: pkg, npm, cargo, fnm
  • other systems: all targets disabled by policy

Install

cargo install updt

Run

updt

The program does 3 stages.

  1. Check upgrade candidates.
  2. Select targets to upgrade.
  3. Run upgrades for selected targets.

Check stage runs in parallel across enabled targets for faster detection.

Default selection is TUI:

  • Up / Down: move cursor
  • Space: toggle selected target
  • Enter: confirm selection
  • q / Esc: quit selection

CLI

Show version:

updt --version

Update only selected targets (skip interactive selector):

updt update npm

updt update npm,cargo

updt update npm cargo

Install fish completion script to ~/.config/fish/completions/updt.fish:

updt fish

Available subcommands:

  • update
  • fish

Notes

  • cargo checks require cargo-install-update in PATH.
  • pacman upgrade uses sudo pacman -Syu.
  • Termux pkg checks use apt list --upgradable.
  • updt calls existing package manager commands and forwards their output.