mpm - CLI options shared by all subcommands.
mpm [OPTIONS] COMMAND [ARGS]...
CLI options shared by all subcommands.
- --ignore-auto-updates
/ --include-auto-updates
- Report all outdated packages, including those tagged as auto-updating.
Only applies to outdated and upgrade subcommands.
- --stop-on-error /
--continue-on-error
- Stop right away or continue operations on manager CLI error.
- --sudo /
--no-sudo
- Force running privileged manager operations with (or without) sudo. Unset
by default, letting each manager decide: system managers (apt, dnf,
pacman, ...) escalate, user-level managers do not. When escalation is
needed on a terminal, mpm authenticates once up front instead of prompting
mid-run; off a terminal, managers needing root fail fast rather than
stalling.
- -d /
--dry-run
- Do not actually perform any action, just simulate CLI calls.
- -t / --timeout
INTEGER RANGE
- Maximum duration in seconds for each CLI call. Applies to every manager
and operation. When unset, a per-operation default is used instead: a
short cap for read-only queries (installed, outdated, search) and a longer
one for state-changing operations (install, upgrade, remove, sync,
cleanup).
- --cooldown
DURATION
- Refuse to install or upgrade any package version published more recently
than this duration, as a mitigation against supply-chain attacks. Accepts
a friendly duration ('7 days', '1 week', '12h'), an ISO 8601 duration
('P7D', 'PT12H'), or an RFC 3339 absolute timestamp
('2024-05-01T00:00:00Z'). Only honored by managers with native release-age
support (npm, pip, pipx, pnpm, uv, uvx, yay); the others are skipped
unless --allow-unsupported-managers is set.
- --require-cooldown-support
/ --allow-unsupported-managers
- When --cooldown is set, whether to require each manager to natively
enforce it. The default (--require-cooldown-support) skips managers that
cannot, so nothing slips in unguarded (fail-closed).
--allow-unsupported-managers runs install and upgrade on them anyway,
trading the supply-chain safeguard for broader manager coverage.
- -j / --jobs
[auto|max|INTEGER]
- Maximum number of managers to run concurrently. Defaults to one less than
the CPU count; set 1 to run sequentially. Applies to read-only queries
(installed, outdated, search), maintenance commands (sync, cleanup,
upgrade --all), and the state changers (install, remove, upgrade,
restore), which fan out across managers while running each manager's own
packages one at a time. Installing a package left untied to a manager
stays sequential.
- --description
- Show package description in results. Shorthand for adding the
'description' column to 'mpm search'; an explicit --columns selection
wins.
- -s / --sort-by
[manager_id|manager_name|package_id|package_name|version]
- Sort results by this field. Repeat to add tie-breakers in priority order,
like '-s manager_id -s package_id'.
- --summary /
--no-summary
- Print an end-of-run summary on stderr: a count line of per-manager totals
plus any subcommand-specific follow-up notes (like SBOM enrichment and
merge counts). Defaults on; use --no-summary to silence.
- --network /
--no-network
- Opt into network calls during the run. Today this only affects 'mpm sbom',
which uses the flag to query OSV.dev for vulnerability data and attach it
to the rendered document. Responses are cached on disk so repeat runs are
fast. Defaults off; the offline path remains the default. Note: when
enabled, this transmits the package inventory to the queried
services.
- --suggest-contribs
/ --no-suggest-contribs
- Print a contribution invitation when a user override targets a field that
likely indicates an upstream detection bug (cli_names, cli_search_path,
requirement, version_cli_options, version_regexes).
- --time /
--no-time
- Measure and print elapsed execution time.
- --config
CONFIG_PATH
- Location of the configuration file. Supports local path with glob patterns
or remote URL.
- --no-config
- Ignore all configuration files and only use command line parameters and
environment variables.
- --validate-config
FILE
- Validate the configuration file and exit.
- --export-config
FORMAT
- Export the configuration in the selected format to <stdout>, then
exit.
- --accessible
- Accessibility mode: disable colors and render tables in a plain,
screen-reader-friendly format.
- --color[=auto|always|never]
- Colorize the output. A bare --color is the same as --color=always.
- --no-color
- Disable colorization (alias of --color=never).
- --progress /
--no-progress
- Show progress indicators during long operations. Disabled for
non-interactive output (pipes, dumb terminals, CI) and by
--accessible.
- --theme
[dark|dracula|light|manpage|monokai|nord|solarized_dark]
- Color theme used for help screens.
- --show-params
- Show all CLI parameters, their provenance, defaults and value, then
exit.
- --table-format
[aligned|asciidoc|colon-grid|csv|csv-excel|csv-excel-tab|csv-unix|double-grid|double-outline|fancy-grid|fancy-outline|github|grid|heavy-grid|heavy-outline|hjson|html|jira|json|json5|jsonc|latex|latex-booktabs|latex-longtable|latex-raw|mediawiki|mixed-grid|mixed-outline|moinmoin|orgtbl|outline|pipe|plain|presto|pretty|psql|rounded-grid|rounded-outline|rst|simple|simple-grid|simple-outline|textile|toml|tsv|unsafehtml|vertical|xml|yaml|youtrack]
- Rendering style of tables.
- --verbosity
LEVEL
- Either CRITICAL, ERROR, WARNING, INFO, DEBUG.
- --verbose /
-v
- --quiet /
-q
- --man
- Show the command's man page (roff) and exit.
- --version
- Show the version and exit.
- -0 / --zero-exit
- Always exit with a status code of 0, even when problems are found.
- -h / --help
- Show this message and exit.
- cleanup
- Cleanup local data.
- config-template
- Print per-manager overrides as a TOML config template.
- dump
- Snapshot installed packages to a TOML manifest or a Brewfile.
- help
- Show help for a command.
- install
- Install a package.
- installed
- List installed packages.
- managers
- List every registered package manager and check its presence on the
system.
- outdated
- List outdated packages.
- remove
- Remove a package.
- restore
- Install packages referenced in TOML files.
- sbom
- Export installed packages to a SBOM document.
- search
- Search packages.
- sync
- Sync local package info.
- upgrade
- Upgrade packages.
- which
- Locate CLIs on system.
- MPM_APK
- Select Alpine apk.
- MPM_APM
- Select Atom apm. (DEPRECATED)
- MPM_APT
- Select Debian apt.
- MPM_APT_MINT
- Select Linux Mint apt.
- MPM_ASDF
- Select asdf.
- MPM_BREW
- Select Homebrew Formulae.
- MPM_CASK
- Select Homebrew Cask.
- MPM_CHOCO
- Select Chocolatey.
- MPM_COMPOSER
- Select PHP Composer.
- MPM_CONDA
- Select Conda.
- MPM_DEB_GET
- Select deb-get.
- MPM_DNF
- Select Fedora DNF.
- MPM_DNF5
- Select Fedora DNF5.
- MPM_EMERGE
- Select Gentoo emerge.
- MPM_EOPKG
- Select Solus eopkg.
- MPM_FLATPAK
- Select Flatpak.
- MPM_FWUPD
- Select Linux fwupd.
- MPM_GEM
- Select RubyGems.
- MPM_GUIX
- Select GNU Guix.
- MPM_MACPORTS
- Select MacPorts.
- MPM_MAS
- Select Mac App Store.
- MPM_MISE
- Select mise.
- MPM_NIX
- Select Nix.
- MPM_NPM
- Select Node npm.
- MPM_PACAUR
- Select Arch Linux pacaur.
- MPM_PACMAN
- Select Arch Linux pacman.
- MPM_PACSTALL
- Select Pacstall.
- MPM_PARU
- Select Arch Linux paru.
- MPM_PIP
- Select Python pip.
- MPM_PIPX
- Select Python pipx.
- MPM_PKCON
- Select PackageKit.
- MPM_PKG
- Select FreeBSD pkg.
- MPM_PNPM
- Select Node pnpm.
- MPM_PORTS
- Select FreeBSD Ports Collection.
- MPM_PWSH_GALLERY
- Select PowerShell Gallery.
- MPM_SCOOP
- Select Scoop.
- MPM_SDKMAN
- Select SDKMAN.
- MPM_SFSU
- Select Scoop sfsu.
- MPM_SNAP
- Select Snap.
- MPM_STEW
- Select stew.
- MPM_SUN_TOOLS
- Select Solaris SVR4 package tools.
- MPM_TAZPKG
- Select TazPkg.
- MPM_UV
- Select Python uv.
- MPM_UVX
- Select Python uvx.
- MPM_WINGET
- Select WinGet.
- MPM_XBPS
- Select Void XBPS.
- MPM_YARN_BERRY
- Select Yarn Berry.
- MPM_YARN
- Select Yarn Classic.
- MPM_YAY
- Select Arch Linux yay.
- MPM_YUM
- Select Fedora YUM.
- MPM_ZEROBREW
- Select zerobrew.
- MPM_ZYPPER
- Select openSUSE Zypper.
- MPM_APT_CYG
- Select apt-cyg.
- MPM_CARGO
- Select Rust cargo.
- MPM_CAVE
- Select cave.
- MPM_CHROMEBREW
- Select Chromebrew.
- MPM_CPAN
- Select Perl CPAN.
- MPM_FINK
- Select Fink.
- MPM_GH_EXT
- Select GitHub CLI extensions.
- MPM_OPKG
- Select opkg.
- MPM_PKG_TOOLS
- Select OpenBSD pkg tools.
- MPM_PKGIN
- Select Pkgin.
- MPM_SLAPT_GET
- Select slapt-get.
- MPM_SOAR
- Select Soar.
- MPM_SORCERY
- Select Sorcery.
- MPM_STEAMCMD
- Select Valve SteamCMD.
- MPM_SWUPD
- Select Clear Linux Software Updater.
- MPM_TLMGR
- Select TeX Live Manager.
- MPM_TOPGRADE
- Select Topgrade.
- MPM_URPMI
- Select urpmi.
- MPM_VSCODE
- Select Visual Studio Code.
- MPM_VSCODIUM
- Select VSCodium.
- MPM_NO_APK
- Deselect Alpine apk.
- MPM_NO_APM
- Deselect Atom apm. (DEPRECATED)
- MPM_NO_APT
- Deselect Debian apt.
- MPM_NO_APT_MINT
- Deselect Linux Mint apt.
- MPM_NO_ASDF
- Deselect asdf.
- MPM_NO_BREW
- Deselect Homebrew Formulae.
- MPM_NO_CASK
- Deselect Homebrew Cask.
- MPM_NO_CHOCO
- Deselect Chocolatey.
- MPM_NO_COMPOSER
- Deselect PHP Composer.
- MPM_NO_CONDA
- Deselect Conda.
- MPM_NO_DEB_GET
- Deselect deb-get.
- MPM_NO_DNF
- Deselect Fedora DNF.
- MPM_NO_DNF5
- Deselect Fedora DNF5.
- MPM_NO_EMERGE
- Deselect Gentoo emerge.
- MPM_NO_EOPKG
- Deselect Solus eopkg.
- MPM_NO_FLATPAK
- Deselect Flatpak.
- MPM_NO_FWUPD
- Deselect Linux fwupd.
- MPM_NO_GEM
- Deselect RubyGems.
- MPM_NO_GUIX
- Deselect GNU Guix.
- MPM_NO_MACPORTS
- Deselect MacPorts.
- MPM_NO_MAS
- Deselect Mac App Store.
- MPM_NO_MISE
- Deselect mise.
- MPM_NO_NIX
- Deselect Nix.
- MPM_NO_NPM
- Deselect Node npm.
- MPM_NO_PACAUR
- Deselect Arch Linux pacaur.
- MPM_NO_PACMAN
- Deselect Arch Linux pacman.
- MPM_NO_PACSTALL
- Deselect Pacstall.
- MPM_NO_PARU
- Deselect Arch Linux paru.
- MPM_NO_PIP
- Deselect Python pip.
- MPM_NO_PIPX
- Deselect Python pipx.
- MPM_NO_PKCON
- Deselect PackageKit.
- MPM_NO_PKG
- Deselect FreeBSD pkg.
- MPM_NO_PNPM
- Deselect Node pnpm.
- MPM_NO_PORTS
- Deselect FreeBSD Ports Collection.
- MPM_NO_PWSH_GALLERY
- Deselect PowerShell Gallery.
- MPM_NO_SCOOP
- Deselect Scoop.
- MPM_NO_SDKMAN
- Deselect SDKMAN.
- MPM_NO_SFSU
- Deselect Scoop sfsu.
- MPM_NO_SNAP
- Deselect Snap.
- MPM_NO_STEW
- Deselect stew.
- MPM_NO_SUN_TOOLS
- Deselect Solaris SVR4 package tools.
- MPM_NO_TAZPKG
- Deselect TazPkg.
- MPM_NO_UV
- Deselect Python uv.
- MPM_NO_UVX
- Deselect Python uvx.
- MPM_NO_WINGET
- Deselect WinGet.
- MPM_NO_XBPS
- Deselect Void XBPS.
- MPM_NO_YARN_BERRY
- Deselect Yarn Berry.
- MPM_NO_YARN
- Deselect Yarn Classic.
- MPM_NO_YAY
- Deselect Arch Linux yay.
- MPM_NO_YUM
- Deselect Fedora YUM.
- MPM_NO_ZEROBREW
- Deselect zerobrew.
- MPM_NO_ZYPPER
- Deselect openSUSE Zypper.
- MPM_NO_APT_CYG
- Deselect apt-cyg.
- MPM_NO_CARGO
- Deselect Rust cargo.
- MPM_NO_CAVE
- Deselect cave.
- MPM_NO_CHROMEBREW
- Deselect Chromebrew.
- MPM_NO_CPAN
- Deselect Perl CPAN.
- MPM_NO_FINK
- Deselect Fink.
- MPM_NO_GH_EXT
- Deselect GitHub CLI extensions.
- MPM_NO_OPKG
- Deselect opkg.
- MPM_NO_PKG_TOOLS
- Deselect OpenBSD pkg tools.
- MPM_NO_PKGIN
- Deselect Pkgin.
- MPM_NO_SLAPT_GET
- Deselect slapt-get.
- MPM_NO_SOAR
- Deselect Soar.
- MPM_NO_SORCERY
- Deselect Sorcery.
- MPM_NO_STEAMCMD
- Deselect Valve SteamCMD.
- MPM_NO_SWUPD
- Deselect Clear Linux Software Updater.
- MPM_NO_TLMGR
- Deselect TeX Live Manager.
- MPM_NO_TOPGRADE
- Deselect Topgrade.
- MPM_NO_URPMI
- Deselect urpmi.
- MPM_NO_VSCODE
- Deselect Visual Studio Code.
- MPM_NO_VSCODIUM
- Deselect VSCodium.
- MPM_ALL_MANAGERS
- Force evaluation of all managers implemented by mpm, including those not
supported by the current platform or deprecated. Still applies filtering
by --<manager-id> / --no-<manager-id> options before calling
the subcommand.
- MPM_XKCD
- Preset manager selection as defined by XKCD #1654. Equivalent to: --pip
--brew --npm --dnf --apt --steamcmd.
- MPM_IGNORE_AUTO_UPDATES
- Report all outdated packages, including those tagged as auto-updating.
Only applies to outdated and upgrade subcommands.
- MPM_STOP_ON_ERROR
- Stop right away or continue operations on manager CLI error.
- MPM_SUDO
- Force running privileged manager operations with (or without) sudo. Unset
by default, letting each manager decide: system managers (apt, dnf,
pacman, ...) escalate, user-level managers do not. When escalation is
needed on a terminal, mpm authenticates once up front instead of prompting
mid-run; off a terminal, managers needing root fail fast rather than
stalling.
- MPM_DRY_RUN
- Do not actually perform any action, just simulate CLI calls.
- MPM_TIMEOUT
- Maximum duration in seconds for each CLI call. Applies to every manager
and operation. When unset, a per-operation default is used instead: a
short cap for read-only queries (installed, outdated, search) and a longer
one for state-changing operations (install, upgrade, remove, sync,
cleanup).
- MPM_COOLDOWN
- Refuse to install or upgrade any package version published more recently
than this duration, as a mitigation against supply-chain attacks. Accepts
a friendly duration ('7 days', '1 week', '12h'), an ISO 8601 duration
('P7D', 'PT12H'), or an RFC 3339 absolute timestamp
('2024-05-01T00:00:00Z'). Only honored by managers with native release-age
support (npm, pip, pipx, pnpm, uv, uvx, yay); the others are skipped
unless --allow-unsupported-managers is set.
- MPM_REQUIRE_COOLDOWN_SUPPORT
- When --cooldown is set, whether to require each manager to natively
enforce it. The default (--require-cooldown-support) skips managers that
cannot, so nothing slips in unguarded (fail-closed).
--allow-unsupported-managers runs install and upgrade on them anyway,
trading the supply-chain safeguard for broader manager coverage.
- MPM_DESCRIPTION
- Show package description in results. Shorthand for adding the
'description' column to 'mpm search'; an explicit --columns selection
wins.
- MPM_SORT_BY
- Sort results by this field. Repeat to add tie-breakers in priority order,
like '-s manager_id -s package_id'.
- MPM_SUMMARY
- Print an end-of-run summary on stderr: a count line of per-manager totals
plus any subcommand-specific follow-up notes (like SBOM enrichment and
merge counts). Defaults on; use --no-summary to silence.
- MPM_NETWORK
- Opt into network calls during the run. Today this only affects 'mpm sbom',
which uses the flag to query OSV.dev for vulnerability data and attach it
to the rendered document. Responses are cached on disk so repeat runs are
fast. Defaults off; the offline path remains the default. Note: when
enabled, this transmits the package inventory to the queried
services.
- MPM_SUGGEST_CONTRIBS
- Print a contribution invitation when a user override targets a field that
likely indicates an upstream detection bug (cli_names, cli_search_path,
requirement, version_cli_options, version_regexes).
- MPM_BAR_PLUGIN_PATH
- Print location of the Xbar/SwiftBar plugin.
- MPM_TIME
- Measure and print elapsed execution time.
- MPM_CONFIG
- Location of the configuration file. Supports local path with glob patterns
or remote URL.
- MPM_VALIDATE_CONFIG
- Validate the configuration file and exit.
- MPM_EXPORT_CONFIG
- Export the configuration in the selected format to <stdout>, then
exit.
- MPM_ACCESSIBLE
- Accessibility mode: disable colors and render tables in a plain,
screen-reader-friendly format.
- MPM_COLOR
- Colorize the output. A bare --color is the same as --color=always.
- MPM_NO_COLOR
- Disable colorization (alias of --color=never).
- MPM_PROGRESS
- Show progress indicators during long operations. Disabled for
non-interactive output (pipes, dumb terminals, CI) and by
--accessible.
- MPM_THEME
- Color theme used for help screens.
- MPM_SHOW_PARAMS
- Show all CLI parameters, their provenance, defaults and value, then
exit.
- MPM_TABLE_FORMAT
- Rendering style of tables.
- MPM_VERBOSITY
- Either CRITICAL, ERROR, WARNING, INFO, DEBUG.
- MPM_VERBOSE
- MPM_QUIET
- MPM_MAN
- Show the command's man page (roff) and exit.
- MPM_VERSION
- Show the version and exit.
- MPM_ZERO_EXIT
- Always exit with a status code of 0, even when problems are found.
- MPM_JOBS
- Maximum number of managers to run concurrently. Defaults to one less than
the CPU count; set 1 to run sequentially. Applies to read-only queries
(installed, outdated, search), maintenance commands (sync, cleanup,
upgrade --all), and the state changers (install, remove, upgrade,
restore), which fan out across managers while running each manager's own
packages one at a time. Installing a package left untied to a manager
stays sequential.
- MPM_HELP
- Show this message and exit.
~/.config/mpm/{*.toml,*.yaml,*.yml,*.json,*.json5,*.jsonc,*.hjson,*.ini,*.xml,pyproject.toml}
- 0
- Success.
- 1
- A runtime error, or an aborted prompt (Ctrl-C, a declined
confirmation).
- 2
- A usage error: unknown option, invalid value, missing operand, or an
unparsable configuration file.