What is Meta Package Manager?
- provides the
mpmCLI, a wrapper around all package managers mpmis likeyt-dlp, but for package managers instead of videosmpmsolves XKCD #1654: Universal Install Script
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.
- 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).
- Export results in JSON or user-friendly tables.
- Shell auto-completion for Bash, Zsh and Fish.
- Provides a Xbar/SwiftBar plugin for friendly macOS integration.
- Because
mpmtry to wrap all other package managers, it became another pathological case of XKCD #927: Standards
Supported package managers and operations
| Package manager | Min. version | Linux | macOS | 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.4 | ๐ช | โ | โ | โ | โ | โ | โ | |||||
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 | ๐ง | โ | โ | โ | โ | โ | โ | โ | ||||
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 | ๐ง | โ | โ | โ | โ | โ | โ | โ | โ |
Quickstart
Easiest way is to install mpm with pipx:
$ pipx 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 โ
โ Rust's cargo โ cargo โ โ โ โ /opt/homebrew/bin/cargo โ โ โ โ 1.59.0 โ
โ 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 โ โ โ
โ Emerge โ emerge โ โ Linux only โ โ emerge 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 โ
โ Pipx โ pipx โ โ โ โ /opt/homebrew/bin/pipx โ โ โ โ 1.0.0 โ
โ Snap โ snap โ โ Linux only โ โ snap not found โ โ โ
โ SteamCMD โ steamcmd โ โ โ โ /opt/local/bin/steamcmd โ โ โ โ 1648077083 โ
โ Visual Studio Code โ vscode โ โ โ โ /usr/local/bin/code โ โ โ โ 1.61.0 โ
โ Node's yarn โ yarn โ โ โ โ yarn not found โ โ โ
โ 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 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:
- the detailed help screens
- the
list of use-cases
where youโll find inspiration on how to leverage
mpmpower
Metadata
Release files for meta-package-manager 5.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| meta-package-manager-5.7.0.tar.gz | 95.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| meta_package_manager-5.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 242.7 kB
Release files / meta-package-manager-5.7.0.tar.gz
| Download URL | meta-package-manager-5.7.0.tar.gz |
|---|---|
| Size | 95.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1d0fdada8fcbb732ec9ea2a34519d31d56332958be4063b5eda6a770ea0042c7
|
|
BLAKE2b-256 checksum How to use checksums |
02239cb38216a8a505d49ea115cf4c92dcb75515c15750158a372607d6ee5b4c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.14
|
Release files / meta_package_manager-5.7.0-py3-none-any.whl
| Download URL | meta_package_manager-5.7.0-py3-none-any.whl |
|---|---|
| Size | 147.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
658fb68b678ae612a47ee12fcf68220240e4cd7092390a772be30ae8975999f3
|
|
BLAKE2b-256 checksum How to use checksums |
fcd51ead3de2a9d7a6124af9b0bcf9994b7c285cb4d07696ce710fa49cdfbc67
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.14
|