Skip to main content

๐Ÿ“ฆ one CLI for all package managers

Project description

Meta Package Manager

Last release Python versions Unittests status Documentation status Coverage status

What is Meta Package Manager?


Features

  • Inventory and list all package managers available on the system.
  • Supports macOS, Linux and Windows.
  • List installed packages.
  • Search for packages.
  • Install a package.
  • List outdated packages.
  • Sync local package infos.
  • Upgrade all outdated packages.
  • Backup list of installed packages to TOML file.
  • Restore/install list of packages from TOML files.
  • Pin-point commands to a subset of package managers (include/exclude selectors).
  • Export results in JSON or user-friendly tables.
  • Shell auto-completion for Bash, Zsh and Fish.
  • Provides a xbar plugin for friendly macOS integration.
  • Because mpm try to wrap all other package managers, it became another pathological case of XKCD #927: Standards

Supported package managers

Package manager Min. version macOS Linux Windows sync installed search install outdated upgrade cleanup
apm 1.0.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
apt 1.0.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
apt-mint 1.0.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
brew 2.7.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
cask 2.7.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
choco 0.10.4 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
composer 1.4.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
dnf 4.0.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
flatpak 1.2.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
gem 2.5.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
mas 1.6.1 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
npm 4.0.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
opkg 0.2.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
pacman 5.0.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
pip 10.0.0 โœ“ โœ“ โœ“ โœ“ โœ˜* โœ“ โœ“ โœ“
snap 2.0.0 โœ“ โœ“ โœ“ โœ“ โœ“
vscode 1.60.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“
yarn 1.21.0 โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“ โœ“

Quickstart

  1. Install mpm with pip:

    $ pip install meta-package-manager
    

Other alternatives installation methods are available in the documentation.

List managers

List all supported package managers and their status on current system (macOS in this case):

$ mpm --all-managers managers
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ Package manager    โ”‚ ID       โ”‚ Supported      โ”‚ CLI                       โ”‚ Executable โ”‚ Version  โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ Atom's apm         โ”‚ apm      โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/apm      โ”‚ โœ“          โ”‚ โœ“ 2.6.2  โ”‚
โ”‚ APT                โ”‚ apt      โ”‚ โœ˜ Linux only   โ”‚ โœ“ /usr/bin/apt            โ”‚ โœ“          โ”‚ โœ˜        โ”‚
โ”‚ Linux Mint's apt   โ”‚ apt-mint โ”‚ โœ˜ Linux only   โ”‚ โœ“ /usr/bin/apt            โ”‚ โœ“          โ”‚ โœ˜        โ”‚
โ”‚ Homebrew Formulae  โ”‚ brew     โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/brew     โ”‚ โœ“          โ”‚ โœ“ 3.2.16 โ”‚
โ”‚ Homebrew Cask      โ”‚ cask     โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/brew     โ”‚ โœ“          โ”‚ โœ“ 3.2.16 โ”‚
โ”‚ Chocolatey         โ”‚ choco    โ”‚ โœ˜ Windows only โ”‚ โœ˜ choco not found         โ”‚            โ”‚          โ”‚
โ”‚ PHP's Composer     โ”‚ composer โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/composer โ”‚ โœ“          โ”‚ โœ“ 2.1.8  โ”‚
โ”‚ DNF                โ”‚ dnf      โ”‚ โœ˜ Linux only   โ”‚ โœ˜ dnf not found           โ”‚            โ”‚          โ”‚
โ”‚ Flatpak            โ”‚ flatpak  โ”‚ โœ˜ Linux only   โ”‚ โœ˜ flatpak not found       โ”‚            โ”‚          โ”‚
โ”‚ Ruby Gems          โ”‚ gem      โ”‚ โœ“              โ”‚ โœ“ /usr/bin/gem            โ”‚ โœ“          โ”‚ โœ“ 3.0.3  โ”‚
โ”‚ Mac AppStore       โ”‚ mas      โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/mas      โ”‚ โœ“          โ”‚ โœ“ 1.8.3  โ”‚
โ”‚ Node's npm         โ”‚ npm      โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/npm      โ”‚ โœ“          โ”‚ โœ“ 7.24.0 โ”‚
โ”‚ OPKG               โ”‚ opkg     โ”‚ โœ˜ Linux only   โ”‚ โœ˜ opkg not found          โ”‚            โ”‚          โ”‚
โ”‚ Pacman             โ”‚ pacman   โ”‚ โœ˜ Linux only   โ”‚ โœ˜ pacman not found        โ”‚            โ”‚          โ”‚
โ”‚ Pip                โ”‚ pip      โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/python3  โ”‚ โœ“          โ”‚ โœ“ 21.2.4 โ”‚
โ”‚ Snap               โ”‚ snap     โ”‚ โœ˜ Linux only   โ”‚ โœ˜ snap not found          โ”‚            โ”‚          โ”‚
โ”‚ Visual Studio Code โ”‚ vscode   โ”‚ โœ“              โ”‚ โœ“ /usr/local/bin/code     โ”‚ โœ“          โ”‚ โœ“ 1.61.0 โ”‚
โ”‚ Node's yarn        โ”‚ yarn     โ”‚ โœ“              โ”‚ โœ˜ yarn not found          โ”‚            โ”‚          โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

List installed packages

List all packages installed on current system:

$ mpm installed
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ Package name                โ”‚ ID                          โ”‚ Manager โ”‚ Installed version  โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ github                      โ”‚ github                      โ”‚ apm     โ”‚ 0.36.9             โ”‚
โ”‚ update-package-dependencies โ”‚ update-package-dependencies โ”‚ apm     โ”‚ 0.13.1             โ”‚
โ”‚ rust                        โ”‚ rust                        โ”‚ brew    โ”‚ 1.55.0             โ”‚
โ”‚ x264                        โ”‚ x264                        โ”‚ brew    โ”‚ r3060              โ”‚
โ”‚ atom                        โ”‚ atom                        โ”‚ cask    โ”‚ 1.58.0             โ”‚
โ”‚ visual-studio-code          โ”‚ visual-studio-code          โ”‚ cask    โ”‚ 1.52.0             โ”‚
โ”‚ nokogiri                    โ”‚ nokogiri                    โ”‚ gem     โ”‚ x86_64-darwin      โ”‚
โ”‚ rake                        โ”‚ rake                        โ”‚ gem     โ”‚ 13.0.3             โ”‚
โ”‚ iMovie                      โ”‚ 408981434                   โ”‚ mas     โ”‚ 10.2.5             โ”‚
โ”‚ Telegram                    โ”‚ 747648890                   โ”‚ mas     โ”‚ 8.1                โ”‚
โ”‚ npm                         โ”‚ npm                         โ”‚ npm     โ”‚ 7.24.0             โ”‚
โ”‚ raven                       โ”‚ raven                       โ”‚ npm     โ”‚ 2.6.4              โ”‚
โ”‚ jupyterlab                  โ”‚ jupyterlab                  โ”‚ pip     โ”‚ 3.1.14             โ”‚
โ”‚ Sphinx                      โ”‚ Sphinx                      โ”‚ pip     โ”‚ 4.2.0              โ”‚
โ”‚ ms-python.python            โ”‚ ms-python.python            โ”‚ vscode  โ”‚ 2021.10.1317843341 โ”‚
โ”‚ ms-toolsai.jupyter          โ”‚ ms-toolsai.jupyter          โ”‚ vscode  โ”‚ 2021.9.1001312534  โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
16 packages total (brew: 2, pip: 2, apm: 2, gem: 2, cask: 2, mas: 2, vscode: 2, npm: 2, composer: 0).

List outdated packages

List all packages installed for which an upgrade is available:

$ mpm outdated
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ Package name โ”‚ ID          โ”‚ Manager โ”‚ Installed version โ”‚ Latest version โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ curl         โ”‚ curl        โ”‚ brew    โ”‚ 7.79.1            โ”‚ 7.79.1_1       โ”‚
โ”‚ git          โ”‚ git         โ”‚ brew    โ”‚ 2.33.0            โ”‚ 2.33.0_1       โ”‚
โ”‚ openssl@1.1  โ”‚ openssl@1.1 โ”‚ brew    โ”‚ 1.1.1l            โ”‚ 1.1.1l_1       โ”‚
โ”‚ rake         โ”‚ rake        โ”‚ gem     โ”‚ 13.0.3            โ”‚ 13.0.6         โ”‚
โ”‚ Telegram     โ”‚ 747648890   โ”‚ mas     โ”‚ 8.1               โ”‚ 8.1.3          โ”‚
โ”‚ npm          โ”‚ npm@8.0.0   โ”‚ npm     โ”‚ 7.24.0            โ”‚ 8.0.0          โ”‚
โ”‚ pip          โ”‚ pip         โ”‚ pip     โ”‚ 21.2.4            โ”‚ 21.3           โ”‚
โ”‚ regex        โ”‚ regex       โ”‚ pip     โ”‚ 2021.9.30         โ”‚ 2021.10.8      โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
8 packages total (brew: 3, pip: 2, gem: 1, mas: 1, npm: 1, apm: 0, cask: 0, composer: 0).

Usage

More documentation is available in:

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

meta-package-manager-4.13.1.tar.gz (70.1 kB view details)

Uploaded Source

Built Distribution

meta_package_manager-4.13.1-py3-none-any.whl (110.8 kB view details)

Uploaded Python 3

File details

Details for the file meta-package-manager-4.13.1.tar.gz.

File metadata

  • Download URL: meta-package-manager-4.13.1.tar.gz
  • Upload date:
  • Size: 70.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for meta-package-manager-4.13.1.tar.gz
Algorithm Hash digest
SHA256 e961856e3939e437b5930fa81d6aaed44f361471b39f6466f3d6a33342c9cf30
MD5 41f9503182129610542900ea784a1caa
BLAKE2b-256 6470b0e71bdb8bda8a776ef984eedad3b1d1f9390290f1b860bba9971fbe415e

See more details on using hashes here.

File details

Details for the file meta_package_manager-4.13.1-py3-none-any.whl.

File metadata

File hashes

Hashes for meta_package_manager-4.13.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f40a2071486ffaa77fb1cd62036b616287a967b5694c361a414d868041197b7e
MD5 e410f6473a32eeb6778b33541b21ef83
BLAKE2b-256 27ff40d75752891245a48b5f6f5271e2690de5cf901e3274b3e44b55a252b019

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page