昨天我干了一件事:把 Vaultwarden 1.37.1 手动打包成了飞牛 fnOS 的 fpk 应用。
起因是浏览器插件升级到 2026.7 后要求服务端不低于 1.37.0,而飞牛官方应用中心的 Vaultwarden 还停在 1.32.0,等官方更新遥遥无期,只好自己动手。
一整天的流程下来,我把每一步都踩了一遍:
- 官方 release 没有二进制资产,只能
docker pull镜像后用docker cp提取/vaultwarden和/web-vault; - 默认镜像的二进制要求
GLIBC_2.39,飞牛的 Debian 12 只有 2.36,直接报version GLIBC_2.39 not found,必须换成 -alpine 静态 musl 变体才能跑; - 手写
manifest、cmd/main生命周期脚本、wizard安装向导、privilege/resource 配置; - 用
fnpack build打包成 fpk,再appcenter-cli install-fpk装到数据卷上实测,最后验证端口、状态、改端口……
折腾了一上午,终于把 1.37.1 跑起来了,还顺手写了篇完整教程。
装完那一刻,我脑子里冒出一个念头:这套方法能不能用在更多应用上? Jellyfin、Immich、Ollama、Homepage……飞牛应用中心里缺的、版本旧的,都可以这么搞。
发现:conversun/fnos-apps
今天,我在GitHub上闲逛想学习别人飞牛应用的仓库命名时,无意间刷到了这个仓库:
https://github.com/conversun/fnos-apps

面向飞牛 fnOS 的第三方应用打包仓库。自动跟踪上游版本,构建可直接安装的
.fpk包。
552 个 Star(我刚点了一个上去)、44 个 Fork、147个应用**,而且还在持续更新。读完 README 我的第一反应是:这不就是我想做的自动化吗?而且这位大神比我超前了整整两步。
比我超前在哪两步
第一步:全自动打包流水线
仓库里每个应用一个目录,apps/<应用名>/fnos/ 下放着 manifest、cmd/ 生命周期脚本、wizard/ 安装向导、config/ 权限配置和官方图标——全部开源、可审查。
而真正厉害的是 GitHub Actions 这套 CI:它自动跟踪每个上游项目的新版本,一旦上游发了新 release,就自动构建fpk,自动发布到 GitHub Releases。
也就是说,我昨天手动干的那套活——提取二进制、选对 musl 变体、fnpack build、双架构各打一个包——在人家那里是 CI 每天自动跑的事情。我打包一次就完了,人家是上游每发一次新版就自动打一次,永远保持最新。
第二步:把 fpk 做成了第三方应用商店
如果说第一步是"自动造包",第二步就是"自动分发"。
conversun 不只是把 fpk 丢在 Release 里,他还做了一个应用叫 fnOS Apps(fnos-apps-store,端口 8011)——一个跑在飞牛上的第三方应用中心。把它装进飞牛后,整个仓库目前147 个应用的安装、更新、卸载全在一个界面里完成:
- 想装 Jellyfin?商店里点一下;
- 想装 Ollama?商店里点一下;
- 上游发布了新版本?商店里一键更新,不用再手动下载 fpk 重新安装。
这就是我目前能想到的终极形态:上游更新 → 自动构建 → 一键安装,全链路自动化。我昨天还在琢磨"能不能让打包这件事自动化",今天就看到有人把整个生态做成了商店。

应用生态速览(147+ 个,还在涨)
| 分类 | 代表应用 |
|---|---|
| 🤖 AI | Ollama、Open WebUI、LibreChat、LocalAI、MaxKB、CoPaw、ZeroClaw |
| 🎬 媒体服务 | Plex、Emby、Jellyfin、Immich、PhotoPrism、Komga、Navidrome、Kavita |
| 📺 媒体自动化 | Sonarr、Radarr、Prowlarr、Bazarr、Jackett、Lidarr、Readarr |
| 🔧 系统工具 | Vaultwarden、Nginx UI、Homepage、Sun-Panel、DDNS-GO、Certimate、Gotify |
| ⬇️ 下载与其他 | Transmission、sub-store、Frigate、Sunshine、Jellyseerr、Ombi |
每个应用在 README 里都标注了端口、说明和上游来源,装之前可以看得明明白白。
上手:一分钟装好(我实测过)
我在自己的飞牛(x86_64)上已经装好了,全程不到一分钟:
# 1. 从 Releases 下载商店包(选自己架构:_x86.fpk 或 _arm.fpk)
# https://github.com/conversun/fnos-apps/releases?q=fnos-apps-store
# 2. 安装到数据卷(-v 1 是卷索引,从 1 开始)
appcenter-cli install-fpk fnos-apps-store_1.8.3_x86.fpk -v 1
# 3. 启动
appcenter-cli start fnos-apps-store
启动后端口 8011 监听、curl 返回 200,飞牛桌面上出现 fnOS Apps 图标,点开就是第三方应用中心,可以开始逛了。
(小提示:GitHub Release 直连偶尔慢,可以挂加速镜像下载 fpk。)
结语
这个仓库给我的最大冲击不是"147个应用",而是它把整个打包-分发-更新的链路做成了闭环——上游更新、CI 自动构建双架构、商店一键安装。这正是我手动打包 vaultwarden 之后脑子里模糊想过的方向,人家已经做成产品形态了,而且持续维护着。
所以我必须把它安利给所有飞牛玩家:无论你是嫌官方应用中心应用少、版本旧,还是想像我一样自己折腾打包,conversun/fnos-apps 都值得你先装上商店,再慢慢逛。
也推荐大家去翻翻仓库源码——每个应用的 manifest 和生命周期脚本都是现成的、比我写的还规范的打包教程。
仓库地址:https://github.com/conversun/fnos-apps
给大神点个 Star ⭐️ 不过分吧?