登录 注册
其他 packaging
11,517
Stars
1,065
Forks
227
Watchers
786
Open Issues
NOASSERTION
许可证
Ruby
语言
2011-01-03
创建时间
2026-09-14
最近更新

项目能做什么

简单高效的多平台打包工具,可轻松构建 deb、rpm 等多种格式的安装包。
来源:AI 基于仓库事实生成 · 内容以仓库实际 README 为准

使用说明 查看原始 README 原仓库文档

中文使用说明暂未生成。下面保留原仓库 README 摘录,命令与配置均以原文为准。
原始 README 摘录(英文原文,节选前 3000 字符)
fpm
===

|Gem|

The goal of fpm is to make it easy and quick to build packages such as rpms,
debs, OSX packages, etc.

fpm, as a project, exists to help you build packages, therefore:

* If fpm is not helping you make packages easily, then there is a bug in fpm.
* If you are having a bad time with fpm, then there is a bug in fpm.
* If the documentation is confusing, then this is a bug in fpm.

If there is a bug in fpm, then we can work together to fix it. If you wish to
report a bug/problem/whatever, I welcome you to do on `the project issue tracker`_.

.. _the project issue tracker: https://github.com/jordansissel/fpm/issues

You can find out how to use fpm in the `documentation`_.

.. _documentation: https://fpm.readthedocs.io/en/latest/

You can learn how to install fpm on your platform in the `installation guide`_.

.. _installation guide: https://fpm.readthedocs.io/en/latest/installation.html

Project Principles
------------------

* Community: If a newbie has a bad time, it's a bug.
* Engineering: Make it work, then make it right, then make it fast.
* Capabilities: If it doesn't do a thing today, we can make it do it tomorrow.


Backstory
---------

Sometimes packaging is done wrong (because you can't do it right for all
situations), but small tweaks can fix it.

And sometimes, there isn't a package available for the tool you need.

And sometimes if you ask "How do I get python 3.9 on RHEL 8?" some unhelpful
trolls will tell you to "Use another distro"

Further, job switches have me flipping between Ubuntu and CentOS. These use
two totally different package systems with completely different packaging
policies and support tools. Learning both was painful and confusing. I want to
save myself (and you) that pain in the future.

It should be easy to say "here's my install dir and here's some dependencies;
please make a package"

The Solution - FPM
------------------

I wanted a simple way to create packages without needing to memorize too much.

I wanted a tool to help me deliver software with minimal steps or training.

The goal of FPM is to be able to easily build platform-native packages.

With fpm, you can do many things, including:

* Creating packages easily (deb, rpm, freebsd, etc)
* Tweaking existing packages (removing files, changing metadata/dependencies)
* Stripping pre/post/maintainer scripts from packages

.. include: docs/installing

Things that should work
-----------------------

Sources:

* gem (even autodownloaded for you)
* python modules (autodownload for you)
* pear (also downloads for you)
* directories
* tar(.gz) archives
* rpm
* deb
* node packages (npm)
* pacman (ArchLinux) packages

Targets:

* deb
* rpm
* solaris
* freebsd
* tar
* directories
* Mac OS X `.pkg` files (`osxpkg`)
* pacman (ArchLinux) packages

.. include: docs/contributing

.. |Gem| image:: https://img.shields.io/gem/v/fpm.svg
   :target: https://rubygems.org/gems/fpm
阅读完整原文

项目深度分析 AI 生成

Cloud Package Hub (基于云的打包与多格式构建 CI 服务)

产品构想提供 SaaS 化服务,开发者只需推送代码、tar 包或指定语言生态包(Python/Gem/NPM),云端利用 fpm 自动化打出全平台(deb, rpm, pkg, arch)包并托管直接供用户 apt-get/yum 下载。
核心功能Webhook 触发构建、多格式(deb/rpm/pkg)并发构建、全自动化 GPG 签名、APT/YUM 软件源一键托管与 CDN 分发。
目标用户没有精力维护完整打包机器和各发行版 VM 的小型团队及独立开发者。
难度/周期中等 · 2-3 个月 · 成本:极低(容器化构建环境与云对象存储费用)。
收费模式免费额度 + 阶梯按月订阅(根据存储量、流量及构建并发数收费)。
竞争风险市面上存在 Cloudsmith、Packagecloud 等成熟商业托管竞品,需在易用性和定价上打出差异化。
依据 已验证事实(fpm 支持多源到多目标打包) + 数据支持的判断(依赖跨系统分发的需求长期存在)

现代化 CI/CD GitHub Action / Runner 企业安全打包插件

产品构想围绕主流 CI/CD 平台提供企业级打包增强套件,解决 fpm 在 CI 环境依赖配置繁琐、缺少签名审计与 SBOM(软件物料清单)生成的问题。
核心功能开箱即用的容器化打包环境、自动注入 cosign/GPG 签名、内置 CVE 和漏洞扫描、一键生成 SBOM、错误自动化排查建议。
目标用户在 GitHub Actions 或 GitLab CI 中重度使用 CI/CD 构建发布包的企业 DevOps 团队。
难度/周期低 · 1 个月 · 成本:低(主要为维护和编写 CI Action 代码及镜像维护)。
收费模式开源基础版 + 企业版许可(提供合规审计报告导出、私有云支持和技术 SLA)。
竞争风险容易被开源脚本直接替代,缺乏技术壁垒,需强依赖合规性与企业级特性。
依据 AI推测

GUI / 桌面端一键打包工作台(跨平台打包工具)

产品构想为不熟悉命令行参数、只需偶尔分发原生二进制工具的开发者制作一个可视化的桌面/Web 工具,拖入构建产物和脚本即可生成配置并导出 deb/rpm/pkg。
核心功能可视化配置依赖和元数据、Pre/Post 钩子脚本编辑器、预览包内结构树、预设配置文件(fpm recipe)导出与复用。
目标用户桌面软件开发者、小型商业工具开发者、初级系统管理员。
难度/周期中等 · 1-2 个月 · 成本:极低(主要是本地客户端 UI 开发与 fpm 包装封装)。
收费模式买断制 License(针对商业桌面应用开发者)或终身更新收费。
竞争风险开发者普遍偏好命令行与脚本化(CI/CD),纯 GUI 市场天花板较低。
依据 尚需验证的假设
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心

竞品与相似项目 GitHub Search 真实检索

相似项目数据正在完善中,暂不展示(避免误导)

项目优势与风险

技术成熟度创建于 2011-01-03,最近推送 2026-09-14,发布过 6 个 Release
社区活跃Star 11,517 / Fork 1,065 / Issue 786(数据支持,可自行核实)
许可证NOASSERTION
主要风险上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价

安装与使用

此项目未提供 Docker 镜像,安装步骤以原仓库 README 为准(涉及依赖安装与环境配置,对新手门槛较高)。