MemRelay-Operation: memory-save:rapt-package-py-20260927 MemRelay-Resource: c8015de9-c56c-478b-a0b9-2e77f00d6dd2
2.2 KiB
title, type, permalink, stable_id, scope, memory_type, project_id, usage_profile_id, status, revision, request_id, created_at, updated_at, tags
| title | type | permalink | stable_id | scope | memory_type | project_id | usage_profile_id | status | revision | request_id | created_at | updated_at | tags | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 用 Python 脚本打 Windows 分发 zip | decision | main/projects/280dd2a0-d23d-4a71-91e1-dce4353163be/用-python-脚本打-windows-分发-zip | c8015de9-c56c-478b-a0b9-2e77f00d6dd2 | project | decision | 280dd2a0-d23d-4a71-91e1-dce4353163be | 0c9feb46-d06e-43cd-9ef0-c5813c84a998 | active | 1 | rapt-package-py-20260927 | 2026-09-26T22:48:23.721430+00:00 | 2026-09-26T22:48:23.721430+00:00 |
|
Windows 分发包用仓库根目录的 python scripts/package.py 生成。脚本按平台拆开:目前只实现 Windows;macOS 和 Linux 进入对应函数会直接退出并说明运行时还没接上。
产物:dist/RaptDrama-Download-Tools-windows-x64.zip,顶层目录 RaptDrama-Download-Tools。解压后运行 raptdrama.exe。包内有 release 程序、dist/ui、server(不含 .venv)、嵌入式 Python 3.13.15(runtime/python)、ffmpeg(tools/ffmpeg/ffmpeg.exe)、WebView2 固定版本 154.0.4258.37(vendor/webview2)。
WebView2 不能用单个 Core nupkg。从 152 起运行时拆成三个 NuGet 包,都要合并到同一个 WebView2 目录:webview2.runtime.x64、webview2.runtime.x64.core(里面是 msedge.dll)、webview2.runtime.locales(含 zh-CN.pak)。下载地址是 https://api.nuget.org/v3-flatcontainer/{id}/{version}/{id}.{version}.nupkg,文件名必须带版本号,否则 404。缓存在 dist/cache,不提交。
Cargo 输出目录由 src-tauri/.cargo/config.toml 指到 dist/target,release 程序是 dist/target/release/raptdrama.exe,不是 src-tauri/target/release。
Windows 10 上固定版本运行时从 v120 起要给目录授予 AppContainer 读执行权限。解压不会保留 ACL,所以 prepare_webview_runtime 在第一次启动时对 vendor/webview2 执行 icacls(*S-1-15-2-2 和 *S-1-15-2-1 的 (OI)(CI)(RX)),成功后写 .appcontainer-acl 标记,避免每次重复授权。窗口宽度 1080、背景 #363636 是用户改过的,不要改回。
这次打包相关改动(README、scripts/package.py、lib.rs 的运行时路径和 ACL)尚未提交。用户没有要求提交或推送。