Commit Graph
5 Commits
Author SHA1 Message Date
胡飞 0b3a5c0a9b build: HTML 预览的 embedded-webview 改为全平台默认关闭
- `main` 与 `crates/ai_chat_view` 的 `default` 都去掉 `embedded-webview`,
  需要时显式 `--features embedded-webview` 打开
- 删除 `script/linux-release-features.sh`:Linux 不再需要专属 feature 列表,
  三个平台发同一种形态,`release.yml` 的 Linux 分支回到默认构建
- 移除 `NAVOP_LINUX_EMBEDDED_WEBVIEW` 开关;Windows 32 位的显式列表
  (默认集减 shell-plugins)同步去掉该 feature,避免 win32 成为唯一的另一种形态
- `ci.yml` 补编 opt-in 形态(`cargo check -p main --features embedded-webview`
  与 `cargo check -p ai_chat_view --features embedded-webview --tests`):
  默认形态由 `cargo test --all` 覆盖,两个半边都得有地方编到
- `test-release-packaging.mjs` 改为锁「没有平台构建打开该 feature」+ opt-in 形态有 CI 覆盖
- 注释同步:`main/Cargo.toml`(原因与降级行为)、`install-linux.sh`、
  `package-linux-gpu-stack.py`、`AGENTS.md`

动机:WebKitGTK 4.1 无法随 Linux 发布包提供(带它的发行版都在 glibc 2.39+ 上、
`WebKitWebProcess` 按编译期路径解析),而只让 Linux 关掉会让三个平台各发一种形态,
需要多测一套、多维护一个平台专属列表。关闭后 HTML 预览弹窗降级为
「无法创建 HTML 预览 webview,已保留源码视图」,「用浏览器打开」「下载 HTML」不受影响。

验证:`cargo check -p main`(默认形态)、`cargo check -p main --features embedded-webview`、
`cargo check -p ai_chat_view --features embedded-webview --tests` 三者均通过;
`node --test script/test-release-packaging.mjs` 29/29;两个 workflow YAML 解析通过。
2026-09-22 17:24:06 +08:00
胡飞 ed6d1f3306 build(linux): Linux 发布包不再链接 WebKitGTK 4.1
- 新增 `script/linux-release-features.sh` 作为 Linux 发布 feature 集的唯一真源,
  默认输出 `wasm-components,windows-native-rdp,shell-plugins`(默认集减去
  `embedded-webview`)
- `release.yml` 的 Linux 构建改为 `--no-default-features --features "$(...)"`;
  只有设了 `NAVOP_LINUX_EMBEDDED_WEBVIEW=1` 且 pkg-config 真能看到
  `webkit2gtk-4.1` 时才把该 feature 加回来
- `ci.yml` 在 Linux 上补编一次发布形态:`cargo test --all` 走的是默认特性全开,
  覆盖不到关掉 feature 的那半边代码
- `test-release-packaging.mjs` 锁住默认列表、opt-in 路径(stub pkg-config 的
  成功/失败两种结果)以及两个工作流对脚本的接线
- `install-linux.sh`、`package-linux-gpu-stack.py` 的注释同步:WebKitGTK 只服务于
  可选的 `embedded-webview`,不再是发布二进制的必然依赖

带 WebKitGTK 4.1 的发行版都构建在 glibc 2.39+ 上、与发布包的 2.28 基线不相配,
且 `WebKitWebProcess` 是按编译期路径解析的独立 ELF,所以这个库无法随依赖包提供。
UOS / 麒麟这类只带 4.0 的发行版此前会直接以
`error while loading shared libraries: libwebkit2gtk-4.1.so.0` 失败。
2026-09-22 16:41:12 +08:00
苏亚龙 df0b25d4d5 feat(script): 安装环境支持fedora系统 2026-04-03 09:16:45 +08:00
胡飞 6079c034ab fix(install-linux): 补齐 Ubuntu 构建依赖 libudev-dev
- 在 script/install-linux.sh 中新增缺失的 libudev-dev 包
- 保持 workflow 调用链不变,依然通过 script/bootstrap 统一安装依赖
- 避免在多个 workflow 中重复写 apt 安装逻辑
- 确认 serialport 依赖的 libudev 功能不能关闭,保障 Linux 串口枚举正常
- 补充项目背景、操作日志和审查报告,明确改动范围和验证过程
- 本地语法检查通过,完整构建验证需在 Linux 环境完成
2026-03-20 15:09:09 +08:00
胡飞 2f7e373189 feat:项目初始化和迁移 2026-02-15 11:51:18 +08:00