#package-manager #manage #assistant #command #helps #search #pa

app package-assistant

Package Assistant helps you manage your package managers

2 unstable releases

0.10.0 Nov 26, 2024
0.9.0 Nov 12, 2024

#1240 in Command line utilities

Download history 115/week @ 2024-11-11 12/week @ 2024-11-18 131/week @ 2024-11-25 3/week @ 2024-12-02 7/week @ 2024-12-09

160 downloads per month

MIT license

26KB
669 lines

Package Assistant

Package Assistant provides a consistent CLI interface for all supported package managers, across multiple OSes, so you don't have to remember the specific syntax on a given system. Additionally, it helps you manage several package managers on a single system (for example, apt and snap on Ubuntu).

Configure which package managers you want to use and pick a main (default) package manager (run pa config to choose). You can then use pa to run your usual package commands, for example:

pa search foo
pa info foo
pa install foo

If you want to run a command with all configured package managers, just add -a:

pa search -a foo
pa update -a
pa upgrade -a

You can also run a command with a specific manager:

pa install -m snap foo

Run pa help for the full usage:

Usage: pa [OPTIONS] <COMMAND>

Commands:
  config     Create or update configuration
  info       Show package details
  install    Install packages
  list       List installed packages
  search     Search for package
  managers   List available package managers
  uninstall  Uninstall packages
  update     Update package database
  upgrade    Upgrade installed packages
  version    Show package manager version
  help       Print this message or the help of the given subcommand(s)

Options:
  -a, --all-managers       Apply command to all configured package managers
  -m, --manager <MANAGER>  Run command with secified package manager
  -h, --help               Print help
  -V, --version            Print version

Supported package managers

Installation

Cargo

If you have rustc and cargo installed (if not, see rustup.rs)
you can build and install from crates.io, just run:

cargo install package-assistant

Or clone this repo, cd into it, and run:

cargo install --path .

Dependencies

~5–17MB
~152K SLoC