mpm puts the same menu on two desktops. On macOS it is a plugin for the menu bar, running under Xbar or SwiftBar. On Linux it is a GNOME Shell extension in the top bar. Both list the outdated packages mpmoutdated reports across every package manager on the system, and upgrade them one by one or per manager.
Clicking a package runs mpm--<manager-id>upgrade<package-id>, and a section’s Upgrade all entry runs mpm--<manager-id>upgrade--all. Neither invokes the package manager directly, so a click is subject to the same policy as the mpm run that rendered the menu: manager selection, Privilege escalation and sudo escalation, per-manager Per-manager overrides and the release-age Cooldown all apply.
That last one is the visible consequence: with a cooldown set, clicking a package of a manager that cannot enforce it natively skips it with a warning instead of upgrading it ungated. Set policy="best-effort" in the [mpm.cooldown] table to let those managers run anyway, without the safeguard.
How the command is run is each frontend’s own business, and both pages cover their terminal handling.
A frontend’s own settings only decide the menu layout and the check cadence. Everything else comes from mpm’s configuration file: neither frontend passes an option beyond the ones it decides itself, so the file found at its default location on the system applies to every run either of them triggers. See Configuration for the search paths and the full schema.
Each outdated package has its version diff colored with the same convention as mpmoutdated: unchanged prefix in gray, installed-version suffix in red, latest-version suffix in green. Both frontends split a version at the same point, so a package listed in both reads the same way on either desktop.
The menu then carries a bootstrap pair in place of the package list: an Install mpm with uv entry running uvtoolinstall--upgrademeta-package-manager, and an Open mpm installation instructions entry opening Installation for the systems uv does not answer for. The menu bar plugin shows the same pair for an mpm older than it requires.
Both frontends report the same states, and only the vocabulary differs. The plugin spells each one as an emoji, which Xbar and SwiftBar render as text wherever it appears. The extension names a stock symbolic icon instead, which the shell resolves against whichever icon theme is in force: an emoji is a font glyph a desktop theme cannot restyle, and the GNOME reviewers ask for icons. The panel icons table puts the two vocabularies side by side.