镜像自地址
https://github.com/JGZYES/ParlzPackageManger.git
已同步 2026-09-11 12:02:43 +08:00
69 行
2.4 KiB
Markdown
69 行
2.4 KiB
Markdown
# PMM 镜像仓库(mirror/)
|
||
|
||
这是 ParlzPackageManger (PMM) 的**软件包镜像**:一个"目录+索引"式包仓库,
|
||
像清华 apt 镜像那样,可被浏览器查看、也可供 `pmm`/`pdm` 直接下载安装。
|
||
|
||
## 内容
|
||
|
||
```
|
||
mirror/
|
||
├── README.md # 本说明
|
||
├── index.php # 只读 PHP 包浏览页(索引 + 详情 + 下载)
|
||
└── packages/ # 实际包文件 + registry 索引
|
||
├── <包>.json # latest 指针(含 variants)
|
||
└── <包>/<版本>-<平台>-<架构>.pdm/.json
|
||
```
|
||
|
||
已收录的包(`packages/` 下):
|
||
|
||
| 包 | 版本 | 平台 / 架构 | 文件 |
|
||
|---|---|---|---|
|
||
| nodejs | 24.20.0 | windows/amd64, linux/amd64 | `nodejs/24.20.0-windows.pdm`, `24.20.0-linux.pdm` |
|
||
| git | 2.55.0.5 | windows/amd64 | `git/2.55.0.5-windows.pdm` |
|
||
| pmm | 0.1.1 | windows/amd64, linux/amd64, linux/aarch64 | `pmm/0.1.1-*.pdm` |
|
||
| pureftpd | 1.0.51 | linux | `pureftpd/1.0.51-linux.pdm` |
|
||
|
||
## 查看 / 下载
|
||
|
||
把本目录用 PHP 服务起来即可(不要用 router 参数,让 `.pdm` 走静态文件):
|
||
|
||
```sh
|
||
cd mirror && php -S 0.0.0.0:8080
|
||
```
|
||
|
||
- 打开 `http://host:8080/` → 列出镜像目录下所有文件(点击即下载)
|
||
- `http://host:8080/packages/<包>/<版本>-<平台>.pdm` → 直接下载文件
|
||
|
||
Apache / Nginx 同理:`DirectoryIndex index.php`,`.pdm` 走静态文件即可。
|
||
|
||
## 客户端使用
|
||
|
||
把镜像加入客户端并安装:
|
||
|
||
```ini
|
||
# ~/.pmm/mirror.ini(Windows: %USERPROFILE%\.pmm\mirror.ini;或 -pd 后 D:\.pmm\mirror.ini)
|
||
[main]
|
||
registry = https://pmm.parlz.com/mirror/packages
|
||
priority = 1
|
||
|
||
[sz]
|
||
registry = https://sz.pmm.parlz.com/mirror/packages
|
||
priority = 20
|
||
```
|
||
|
||
```sh
|
||
pmm install nodejs # 自动识别本机 os/arch,从镜像下载对应平台
|
||
pmm install pmm # 安装 PMM 工具(含 pmm/pdm)
|
||
pmm self-update # 更新 pmm(自动选平台/架构)
|
||
```
|
||
|
||
也可直接 `pmm install ./packages/nodejs/24.20.0-windows.pdm` 安装本地包。
|
||
|
||
## 数据格式
|
||
|
||
- `packages/<包>.json` — latest 指针:`{ name, version, os, arch, variants:[...] }`
|
||
- `packages/<包>/<版本>-<平台>-<架构>.pdm` — 包文件(`bin/` 内的可执行)
|
||
- `packages/<包>/<版本>-<平台>-<架构>.json` — 该变体元数据(url / sha256 / size)
|
||
|
||
`pmm install` 会按当前系统的 os+arch + 版本约束,在 `variants` 里选最高版本下载。
|