[Feature] Viva 桌面客户端(desktop/)在 Windows 上构建、链接 Rust Core,并跑通欢迎页、工作台和日志窗口
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- go, rust, typescript
Hướng nghiên cứu
Start with #1794 section 3 and the existing scripts under scripts/desktop/, then inspect desktop/desktop-go.sh, desktop/internal/workbench/app.go, desktop/internal/logwindow/window.go, and the Windows logstore path. Establish the required MSVC, Go, and Rust toolchain combination and fixed Rust Core revision before implementing. Done means the Windows build and listed UI, logging, session shutdown, and user data path checks run on Windows with screenshots and recorded results.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem to solve / 要解决的问题
#1794 计划让 macOS 和 Windows 共用 desktop/ 下的 Viva(Go)客户端。第一个外壳 PR(Refs #1794)已经交付欢迎页、工作台外壳(六个 IDEA 式工具条锚点、可拖动工具按钮和插入线、标题栏齿轮菜单)、v2 结构化日志和一比一复刻 macOS 的“日志与诊断”窗口,但只在 macOS arm64 上构建和验证过。
Windows 上目前缺这些:
- 构建入口只支持 macOS。
scripts/desktop/build-desktop-core.sh和desktop-go.sh都是 zsh 脚本,会设置MACOSX_DEPLOYMENT_TARGET,链接 rustc 报告的 macOS 系统库。Windows 上没有对应的入口能构建 Lithe-core-rust 静态库,再把它交给 cgo 链接。 - 快捷键写死为 ⌘。 工作台(
desktop/internal/workbench/app.go的onShortcut)和日志窗口(desktop/internal/logwindow/window.go的按键处理)只认ModifierMeta,菜单里显示的也是⌘,、⇧⌘L。Windows 上按 Ctrl 不会触发这些快捷键。 - 桌面专属路径没有在 Windows 上验证过。
desktop/internal/logstore/dir_windows.go和store.Open的os.UserConfigDir()已经有 Windows 分支,但还没有在 Windows 上实际运行过,也没有检查它们不会写进安装目录。 - 终端移植还没接线。
desktop/internal/term、localshell、shellkind是从 motty 移植过来的,没有接入工作台,localshell也还没验证 Windows ConPTY。
Proposed solution / 建议方案
- 为 Windows 增加与
scripts/desktop/等价的构建入口:固定同一个 Lithe-core-rust 修订,在 MSVC 工具链下构建静态库,交给 cgo 链接;工具链组合(Go、MinGW 或 clang、Rust MSVC)按 #1794 第 3 节 P0 的要求确定,并记录 identity。 - 快捷键改为按平台映射:macOS 用 ⌘,Windows 用 Ctrl。映射规则和显示文本放进 Rust Core 现有的快捷键规则,不在 Go 里各写一份。
- 在 Windows 上跑通以下工作流,记录截图和验证结论:欢迎页、打开项目、六个锚点拖放、齿轮菜单、
Ctrl+Shift+L打开日志窗口、日志写入和查询、关闭项目时结束 Core 会话。 - 确认日志与偏好只写到
%LOCALAPPDATA%/%APPDATA%下的平台目录,不写安装目录;对应的检查加进 Windows 资源只读验证。
Target platform / 目标平台
Windows
Area / 模块
UI / 界面
Priority / 优先级
P2 / 后续考虑:目前不着急,可安排到后续版本
Alternatives considered / 已考虑的替代方案
- 继续让 Windows 只用 React/Tauri 客户端:与 #1794 统一两端界面的目标冲突,两端仍要各自维护。
- 先用交叉编译证明 Windows 能构建:#1794 已明确说明交叉编译成功不等于能启动和退出,必须在 Windows 上实际运行验证。
Additional context / 补充信息
- 上游计划:#1794(Windows/macOS 统一 Viva 工作台)。
- macOS 外壳 PR 合入后,这里补上 PR 链接和 Lithe-core-rust 的固定修订。
- 可以参考
.agents/skills/debug-windows-on-parallels/SKILL.md,在 Parallels 虚拟机里构建和运行 Windows 产品。
Checklist / 提交前检查
- I searched existing issues for duplicates. / 我已搜索现有 Issue,确认没有重复建议。
- Ngôn ngữ chính
- TypeScript
- Star
- 1.8k
- Fork
- 151
- Merge trung bình
- 10 giờ 29 phút
- Pull request đã merge (30 ngày)
- 407
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của 1lck/Lithe-IDEA
-
review: high
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
1lck/Lithe-IDEA#1797 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:other bug P2 platform:other review: high
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
1lck/Lithe-IDEA#1789 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
review: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
1lck/Lithe-IDEA#1670 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:editor bug P0 platform:macos review: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
1lck/Lithe-IDEA#1118 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:other enhancement P2 platform:cross-platform refactor review: high
Độ khó 4/5 1-2 ngày Mức phù hợp với người mới 57/100
1lck/Lithe-IDEA#1796 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của 1lck/Lithe-IDEA
Issue tương tự
-
Waiting for: Product Owner
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
getsentry/sentry-javascript#26203 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
bytedance/flowgram.ai#1235 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
devswha/herdr-web-ui#3325 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100