id = "meta-package-manager" name = "Meta Package Manager" homepage = "https://mpm.run/" description = "A CLI for multi-package manager upgrades." executables = ["mpm"] [dotfiles] # Official configuration docs list the per-user application directory on each # platform (https://mpm.run/configuration/). paths = ["[appData]/mpm/", "[configHome]/mpm/", "%APPDATA%/mpm/"] secret = [] [commands] format = 1 label = "Meta Package Manager" description = "Search, list outdated, upgrade and install packages across managers. Manager selectors (--brew, --no-apt, ...) and global options such as --dry-run are left out." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.subcommand]] path = ["search"] label = "Search packages" [[commands.subcommand.source]] id = "doc" kind = "manual" url = "https://mpm.run/cli-parameters/" evidence = """ Usage: mpm search [OPTIONS] QUERY --extended / --id-name-only Extend search to description, instead of --exact / --fuzzy Only keep packages whose ID or name matches the --columns COLUMNS Restrict and reorder table columns, SQL SELECT- """ [[commands.subcommand.field]] id = "query" label = "Query" type = "string" position = 0 sources = ["doc"] [[commands.subcommand.field]] id = "extended" label = "Search descriptions too" type = "boolean" option = ["--extended"] sources = ["doc"] [[commands.subcommand.field]] id = "exact" label = "Exact match only" type = "boolean" option = ["--exact"] sources = ["doc"] [[commands.subcommand.field]] id = "columns" label = "Columns" type = "string" option = ["--columns"] description = "Comma-separated column IDs." sources = ["doc"] [[commands.subcommand.task]] id = "search" label = "Search" fields = ["query"] required = ["query"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["query", "extended", "exact"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["columns"] [[commands.subcommand]] path = ["outdated"] label = "List outdated packages" [[commands.subcommand.source]] id = "doc" kind = "manual" url = "https://mpm.run/cli-parameters/" evidence = """ Usage: mpm outdated [OPTIONS] [QUERY] --exact / --fuzzy With a QUERY, only keep packages whose ID or name matches --columns COLUMNS Restrict and reorder table columns, SQL SELECT- """ [[commands.subcommand.field]] id = "query" label = "Query" type = "string" position = 0 sources = ["doc"] [[commands.subcommand.field]] id = "exact" label = "Exact match only" type = "boolean" option = ["--exact"] sources = ["doc"] [[commands.subcommand.field]] id = "columns" label = "Columns" type = "string" option = ["--columns"] description = "Comma-separated column IDs." sources = ["doc"] [[commands.subcommand.task]] id = "outdated" label = "List outdated" fields = ["query"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["query", "exact"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["columns"] [[commands.subcommand]] path = ["upgrade"] label = "Upgrade packages" [[commands.subcommand.source]] id = "doc" kind = "manual" url = "https://mpm.run/cli-parameters/" evidence = """ Usage: mpm upgrade [OPTIONS] [PACKAGES_SPECS]... PACKAGES_SPECS... A mix of plain , simple -A, --all Upgrade all outdated packages. Will make the command --columns COLUMNS Restrict and reorder table columns, SQL SELECT- """ [[commands.subcommand.field]] id = "packages" label = "Packages" type = "string" position = 0 multiple = true sources = ["doc"] [[commands.subcommand.field]] id = "all" label = "Upgrade all outdated packages" type = "boolean" option = ["--all", "-A"] effect = "exec" sources = ["doc"] [[commands.subcommand.field]] id = "columns" label = "Columns" type = "string" option = ["--columns"] description = "Comma-separated column IDs." sources = ["doc"] [[commands.subcommand.task]] id = "upgrade_all" label = "Upgrade everything" fields = ["all"] required = ["all"] set = { all = [true] } [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["packages", "all"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["columns"] [[commands.subcommand]] path = ["install"] label = "Install packages" [[commands.subcommand.source]] id = "doc" kind = "manual" url = "https://mpm.run/cli-parameters/" evidence = """ Usage: mpm install [OPTIONS] PACKAGES_SPECS... PACKAGES_SPECS... A mix of plain , simple --columns COLUMNS Restrict and reorder table columns, SQL SELECT- """ [[commands.subcommand.field]] id = "packages" label = "Packages" type = "string" position = 0 multiple = true effect = "exec" sources = ["doc"] [[commands.subcommand.field]] id = "columns" label = "Columns" type = "string" option = ["--columns"] description = "Comma-separated column IDs." sources = ["doc"] [[commands.subcommand.task]] id = "install" label = "Install" fields = ["packages"] required = ["packages"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["packages"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["columns"]