feat: 内置 Desktop Pandoc 最小运行时

This commit is contained in:
SkyJourney
2026-08-02 10:44:40 +08:00
parent 9a2aa3c341
commit 3a8d2c1c2e
16 changed files with 636 additions and 46 deletions
+15 -8
View File
@@ -1,6 +1,6 @@
# Pandoc 运行时与分发规范
状态:`v0.6.0` 阶段 2 冻结。
状态:`v0.6.0` 阶段 2 冻结Desktop 内置运行时已实现
## 1. 固定版本
@@ -26,6 +26,7 @@ DOCX OOXML、Word/WPS 互操作和包体回归。
SHA-256C97542F2800F446E788D9F74237856D995421AD1BB3CC8324286840C5F272D3A
压缩大小:41,250,425 字节
pandoc.exe231,056,136 字节
pandoc.exe SHA-256E83F8354C0F507222B5684797B9C5AE766F03889785995D14AAC27816EC456BA
```
发行包来源:
@@ -136,8 +137,8 @@ Pandoc 采用 GNU GPL version 2 or later。项目将其作为未修改的独立
项目发布资产计划至少包含:
```text
md-to-pdf-0.6.0-x86_64-Setup.exe
md-to-pdf-0.6.0-x86_64.zip
MorphDoc-0.6.0-x86_64-Setup.exe
MorphDoc-0.6.0-x86_64.zip
pandoc-3.9.0.2-source.tar.gz
THIRD_PARTY_NOTICES.md
```
@@ -154,17 +155,18 @@ Docker 镜像必须包含许可证、版权声明和源码归档位置说明,
基线为本机已有 `v0.5.1` 正式产物。以下数值使用官方压缩包和解压程序
实测,NSIS 与 ZIP 最终值仍以 `v0.6.0` 构建结果为准。
| 产物 | v0.5.1 基线 | v0.6.0 估算 | 增量 |
| 产物 | v0.5.1 基线 | v0.6.0 实测/估算 | 增量 |
| --- | ---: | ---: | ---: |
| Desktop 运行目录 | 333.98 MiB | 554.33 MiB | 220.35 MiB |
| NSIS 安装包 | 109.38 MiB | 约 148.71 MiB | 约 39.34 MiB |
| Desktop ZIP | 145.13 MiB | 约 184.47 MiB | 约 39.34 MiB |
| Desktop 运行目录 | 333.98 MiB | 556.94 MiB | 222.96 MiB |
| NSIS 安装包 | 109.38 MiB | 133.78 MiB | 24.40 MiB |
| Desktop ZIP | 145.13 MiB | 183.38 MiB | 38.25 MiB |
| Docker 内容大小 | 615.91 MiB | 约 770.05 MiB | 154.13 MiB |
| Docker 压缩拉取层 | — | — | 约 32.92 MiB |
结论:
- Desktop 解压目录增长明显,但安装包和 ZIP 受压缩后增量约 39 MiB;
- Desktop 解压目录增长明显;实测安装包增加 24.40 MiB,ZIP 增加
38.25 MiB
- Docker 运行时内容增长约 154 MiB,镜像传输增量约 33 MiB
- 不采用首次使用时联网下载,以保持内网和离线 Desktop 能力;
- 不使用 UPX 或二次修改官方二进制,避免兼容性、杀毒误报和合规风险;
@@ -182,6 +184,11 @@ Docker 镜像必须包含许可证、版权声明和源码归档位置说明,
- 许可证和版权文件;
- 对应源码归档地址。
Desktop 清单位于
`packages/docx-engine/src/pandoc-runtime.json`;准备脚本位于
`apps/desktop/scripts/prepare-pandoc-runtime.mjs`。下载缓存和解压目录
位于被 Git 忽略的 `apps/desktop/.runtime/`,不会进入源码提交。
构建流程必须:
1. 根据清单下载或读取缓存;