Repomaker:用网页工具创建自己的迷你 F-Droid 应用商店
Repomaker 是什么
Repomaker 是 F-Droid 提供的网页工具,让不熟悉命令行的人也能轻松创建自己的迷你 F-Droid 应用仓库。
想象一下:你可以做一个只有你们公司内部应用的私有仓库、一个只给家人用的精选开源应用仓库、或者一个专注某个主题(比如教育、儿童、健康)的特色仓库。这些仓库可以被任何 F-Droid 客户端添加使用。
在 Repomaker 出现之前,自建 F-Droid 仓库需要用 fdroidserver 命令行工具,门槛较高。Repomaker 把整个流程搬到了浏览器里。
典型场景
场景一:企业内部应用分发
一个小公司想给员工分发自研的 Android 应用:
- 用 Repomaker 创建仓库
- 把公司的 APK 都放进去
- 部署到内部 Web 服务器(或 GitHub Pages、Cloudflare Pages)
- 让员工在 F-Droid 中添加这个仓库
员工不需要 Google Play 账号,不需要企业 MDM,直接用 F-Droid 就能获取公司应用和更新。
场景二:家人朋友的精选仓库
为家人做一个只有你验证过的安全开源应用仓库。
场景三:特定主题的应用仓库
比如做一个「儿童教育」主题的迷你仓库,收录你筛选过的儿童应用。
安装 Repomaker
方式一:Docker(推荐)
最简单,一条命令启动:
docker run -p 8080:8080 -v $(pwd)/repomaker-data:/data registry.gitlab.com/fdroid/repomaker:latest
然后浏览器打开 http://localhost:8080 就能开始用。
方式二:pip 安装
pip install repomaker
repomaker start
需要 Python 3 + Node.js(用于前端)。
方式三:F-Droid 上的 Android 应用
Repomaker 本身也有 Android 版本,可以在 F-Droid 上找到(包名 org.fdroid.repomaker)。用手机就能创建和管理仓库。
使用 Repomaker 的流程
步骤 1:创建仓库
打开 Repomaker 后:
- 点击「Create New Repository」
- 填写仓库名称、描述
- 设置仓库 URL(之后部署时用)
- Repomaker 会自动生成签名密钥
签名密钥很重要——妥善保存私钥。如果你丢了私钥,就无法再为这个仓库签名了,客户端会因为签名不匹配而拒绝同步。
步骤 2:添加应用
有几种方式:
- 上传 APK 文件 — 直接拖入 APK
- 从现有 F-Droid 仓库导入 — 选择 F-Droid 仓库中的应用,一键添加到你的仓库
- 从源码构建 — Repomaker 可以帮你拉取源码、构建 APK(需要配置构建环境)
步骤 3:发布
Repomaker 生成的仓库就是一个静态文件目录,包含:
my-repo/
├── index-v1.jar # 仓库索引(已签名)
├── index-v1.jar.asc # 签名验证文件
├── app1.apk
├── app2.apk
├── ...
└── icons/
你需要把这个目录部署到任何可以通过 HTTPS 访问的 Web 服务器上:
- GitHub Pages — 免费,支持 HTTPS
- Cloudflare Pages — 免费
- 自建服务器 — Nginx/Apache
- S3 + CloudFront — AWS
部署完成后,你的仓库 URL 就是 Repomaker 设置中填的那个地址。
步骤 4:分享给用户
在你的仓库页面,Repomaker 会生成:
- 一个二维码(F-Droid 直接扫)
- 一个仓库 URL(手动粘贴)
- 签名指纹(用户添加仓库时需要确认)
把这些信息分发给目标用户,他们在 F-Droid → 设置 → 软件仓库 → 添加,就能使用你的仓库了。
更新仓库
每次你的应用有新版本:
- 把新 APK 放到 Repomaker 中
- Repomaker 重新签名、更新索引
- 重新部署静态文件
- 用户的 F-Droid 会在下次同步时自动看到更新
Repomaker 和 fdroidserver 的关系
| 维度 | Repomaker | fdroidserver |
|---|---|---|
| 界面 | 网页图形界面 | 命令行 |
| 易用性 | 低门槛,拖拽上传 | 需要技术背景 |
| 灵活性 | 基础功能够用 | 完整控制 |
| 适合 | 个人/小团队自建仓库 | F-Droid 官方构建、高级用户 |
| 底层 | 调用 fdroidserver | 就是 fdroidserver |
Repomaker 本质上是 fdroidserver 的网页前端包装——底层还是调用 fdroidserver 的 API。所以 Repomaker 创建的仓库和 fdroidserver 创建的仓库是兼容的,可以混用。
安全注意
- 签名私钥 — 务必备份,最好存到离线安全位置
- 仓库 URL 必须 HTTPS — 否则 F-Droid 客户端会拒绝连接
- 不要在公共仓库里放私人应用 — 任何人扫到都能添加
- 保持 Repomaker 更新 — 安全修复会定期发布