这个项目能做什么
Meta Package Manager 提供了 `mpm` 命令行工具,作为 macOS、Linux、Windows 及多种 BSD/Solaris 系统上大量包管理器的统一封装。其核心工作流程是将每个已安装的包导出到单个 TOML 清单或 Brewfile 中,然后在新机器上恢复该清单以重现相同的包集合。
除了快照和恢复功能外,`mpm` 还能盘点可用的包管理器、列出已安装的包、查找重复项、搜索包、安装或移除包、列出过期包并高亮版本差异、识别孤立包、同步本地包信息,以及诊断包管理器健康状况。它可以通过一条命令升级所有包管理器中的过期包,即使个别包管理器失败也会继续执行。发布冷却期选项可以拒绝最近发布的版本,以帮助缓解供应链攻击。
该工具支持将已安装的包导出为 SPDX 或 CycloneDX 软件物料清单,通过包含/排除选择器选择包管理器子集,以及使用普通、带版本号或 purl 包标识符。输出可以格式化为 JSON 或用户友好的表格,并为 Bash、Zsh 和 Fish 提供 shell 自动补全。可选集成包括用于 macOS 菜单栏的 SwiftBar/Xbar 插件和用于 Linux 的 GNOME Shell 扩展,两者都能显示过期包并允许从菜单中进行升级。
安装可通过 PyPI 使用 `uv tool install meta-package-manager`,或通过 Homebrew、MacPorts、Scoop,以及适用于 Linux、macOS 和 Windows 的独立二进制文件。该项目文档记录了对大量包管理器的支持,包括系统、语言、编辑器和 shell 插件管理器。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。