What is Meta Package Manager?
- provides the
mpm
CLI, a wrapper around all package managers mpm
is likeyt-dlp
, but for package managers instead of videosmpm
solves XKCD #1654 - Universal Install Script
- Inventory and list all package managers available on the system.
- Supports macOS, Linux and Windows.
- Standalone executables for Linux, macOS and Windows.
- List installed packages.
- List duplicate installed packages.
- Search for packages.
- Install a package.
- Remove 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).
- Support plain, versionned and purl package specifiers.
- Export output to JSON or print user-friendly tables.
- Shell auto-completion for Bash, Zsh and Fish.
- Provides a Xbar/SwiftBar plugin for friendly macOS integration.
- Because
mpm
try to wrap all other package managers, it became another pathological case of XKCD #927: Standards
Package manager | Min. version | BSD1 | Linux2 | macOS | Unix3 | Windows | installed |
outdated |
search |
install |
upgrade |
upgrade_all |
remove |
sync |
cleanup |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
apm |
1.0.0 | ๐ง | ๐ | ๐ช | โ | โ | โ | โ | โ | โ | |||||
apt |
1.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | ||||
apt-mint |
1.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | ||||
brew |
2.7.0 | ๐ง | ๐ | โ | โ | โ | โ | โ | โ | โ | โ | โ | |||
cargo |
1.0.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | โ | โ | ||||||
cask |
2.7.0 | ๐ | โ | โ | โ | โ | โ | โ | โ | โ | โ | ||||
choco |
0.10.9 | ๐ช | โ | โ | โ | โ | โ | โ | |||||||
composer |
1.4.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | โ | โ | โ | โ | โ | |||
dnf |
4.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | ||||
emerge |
3.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | ||||
flatpak |
1.2.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | |||||
gem |
2.5.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | โ | โ | โ | โ | โ | โ | ||
mas |
1.6.1 | ๐ | โ | โ | โ | โ | โ | โ | |||||||
npm |
4.0.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | โ | โ | โ | โ | โ | |||
opkg |
0.2.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | |||||
pacaur |
4.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | โ | |||
pacman |
5.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | โ | |||
paru |
1.9.3 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | โ | |||
pip |
10.0.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | โ | โ | โ | โ | ||||
pipx |
1.0.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | โ | โ | โ | โ | ||||
scoop |
0.2.4 | ๐ช | โ | โ | โ | โ | โ | โ | โ | โ | โ | ||||
snap |
2.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | ||||||
steamcmd |
None | ๐ง | ๐ | >_ |
๐ช | โ | |||||||||
vscode |
1.60.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | ||||||||
yarn |
1.20.0 | ๐ง | ๐ | >_ |
๐ช | โ | โ | โ | โ | โ | โ | โ | โ | ||
yay |
11.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | โ | |||
yum |
4.0.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ | ||||
zypper |
1.14.0 | ๐ง | >_ |
โ | โ | โ | โ | โ | โ | โ | โ |
Note: Missing manager
If your favorite manager is missing or does not support an operation, you can influence its implementation: open a ticket to document its output or read the contribution guide and submit a pull request.
I can do that work for you if you purchase business support ๐ค or sponsor the project ๐ซถ.
Easiest way is to install mpm
from sources with pipx
:
$ pipx install meta-package-manager
Other alternatives installation methods are available in the documentation.
Standalone executables of mpm
's latest version are available for several platforms and architectures:
Platform | x86_64 |
---|---|
Linux2 | Download mpm-linux-x64.bin |
macOS | Download mpm-macos-x64.bin |
Windows | Download mpm-windows-x64.exe |
List all supported package managers and their status on current system (macOS in this case):
$ mpm --all-managers managers
โญโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโฌโโโโโโโโโโโโฎ
โ Manager ID โ Name โ Supported โ CLI โ Executable โ Version โ
โโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโผโโโโโโโโโโโโค
โ apm โ Atom's apm โ โ โ โ apm not found โ โ โ
โ apt โ APT โ โ Linux only โ โ /usr/bin/apt โ โ โ โ โ
โ apt-mint โ Linux Mint's apt โ โ Linux only โ โ /usr/bin/apt โ โ โ โ โ
โ brew โ Homebrew Formulae โ โ โ โ /opt/homebrew/bin/brew โ โ โ โ 3.6.3 โ
โ cargo โ Rust's cargo โ โ โ โ /opt/homebrew/bin/cargo โ โ โ โ 1.64.0 โ
โ cask โ Homebrew Cask โ โ โ โ /opt/homebrew/bin/brew โ โ โ โ 3.6.3 โ
โ choco โ Chocolatey โ โ Windows only โ โ choco not found โ โ โ
โ composer โ PHP's Composer โ โ โ โ /opt/homebrew/bin/composer โ โ โ โ 2.4.2 โ
โ dnf โ DNF โ โ Linux only โ โ dnf not found โ โ โ
โ emerge โ Emerge โ โ Linux only โ โ emerge not found โ โ โ
โ flatpak โ Flatpak โ โ Linux only โ โ flatpak not found โ โ โ
โ gem โ Ruby Gems โ โ โ โ /usr/bin/gem โ โ โ โ 3.0.3.1 โ
โ mas โ Mac AppStore โ โ โ โ /opt/homebrew/bin/mas โ โ โ โ 1.8.6 โ
โ npm โ Node's npm โ โ โ โ /opt/homebrew/bin/npm โ โ โ โ 8.19.2 โ
โ opkg โ OPKG โ โ Linux only โ โ opkg not found โ โ โ
โ pacman โ Pacman โ โ Linux only โ โ pacman not found โ โ โ
โ paru โ Paru โ โ Linux only โ โ paru not found โ โ โ
โ pip โ Pip โ โ โ โ ~/.pyenv/shims/python3 โ โ โ โ 22.2.2 โ
โ pipx โ Pipx โ โ โ โ /opt/homebrew/bin/pipx โ โ โ โ 1.1.0 โ
โ scoop โ Scoop โ โ Windows only โ โ scoop not found โ โ โ
โ snap โ Snap โ โ Linux only โ โ snap not found โ โ โ
โ steamcmd โ Valve Steam โ โ โ โ steamcmd not found โ โ โ
โ vscode โ Visual Studio Code โ โ โ โ /opt/homebrew/bin/code โ โ โ โ 1.71.2 โ
โ yarn โ Node's yarn โ โ โ โ /opt/homebrew/bin/yarn โ โ โ โ 1.22.19 โ
โ yay โ Yay โ โ Linux only โ โ yay not found โ โ โ
โ yum โ YUM โ โ Linux only โ โ yum not found โ โ โ
โ zypper โ Zypper โ โ Linux only โ โ zypper not found โ โ โ
โฐโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโดโโโโโโโโโโโโฏ
If your favorite manager is not supported yet, you can help! See the contibution guide.
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 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 โ
โ [email protected] โ [email protected] โ 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 โ [email protected] โ 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).
Other subcommands and options are documented in:
- the detailed help screens
- the
list of use-cases
where youโll find inspiration on how to leverage
mpm
power