Skip to content

macOS:在应用程序目录外启动时支持便携数据模式 - #128

Open
WilliamWang1721 wants to merge 1 commit into
Kuddev:mainfrom
WilliamWang1721:codex/macos-portable-startup
Open

WilliamWang1721 wants to merge 1 commit into
Kuddev:mainfrom
WilliamWang1721:codex/macos-portable-startup

Conversation

@WilliamWang1721

@WilliamWang1721 WilliamWang1721 commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

用户结果

在 macOS 上,从 /Applications/System/Applications~/Applications 之外启动 Pebrel.app 时,询问是否启用便携运行。用户可选择便携运行、普通运行或退出。

便携模式把 Pebrel 配置、会话、历史、导入字体和临时文件放在应用旁的 Pebrel Data,记住启用状态;退出后一起移动应用和数据目录,下次启动按新位置读取。首次使用独立配置,已有设置可通过备份导入。

设计边界

  • 在迁移、日志、路径缓存和工作线程启动之前确定存储位置,复用已有配置目录和文件格式;新增规则集中于 macOS 启动适配器,设计依据见 ADR-0010。
  • 显式配置覆盖保持优先;未打包的开发程序和 CLI 子命令不触发首次询问,已启用便携模式的 CLI 可找到同一目录。
  • 目录不可写、数据目录为符号链接或应用处于 App Translocation 时明确失败,不悄悄回退到本机配置;不把其他 Mac 的旧数据迁入便携目录。
  • Windows/Linux 启动逻辑保持原样。SSH 密钥、系统凭据、外部工具和项目文件不包含在便携数据内;不会迁移正在运行的进程或改写用户配置中的绝对路径。

验证依据

  • 本地通过:5 项便携启动回归;原生启动模块独立测试共 16 项;实际启动模块的 CLI 和整目录搬迁检查;共享设置 45 项;架构规则 51 项;Rust 行数检查 2 项;格式与差异检查。
  • 国际化生产源码独立测试 14 项通过,包含零分配合同。固定锁文件的独立 i18n 命令本地因缺失依赖且网络不可达未完成,已由本轮 Actions 验证通过。
  • 本地完整 GPUI 检查被缺少 Metal 编译器阻断,已在 Actions 完成两种 macOS 架构的真实 GPUI 构建。便携启动提示本身的真实点击、键盘和视觉验收仍未完成;电脑控制工具不能访问系统通知窗口,现有 CI 运行验收不能替代这项手工检查。
  • 最新提交:f96115f6cfb60b54e4c84b2ae6dc866acc3a61d4
  • fork 架构、设置及国际化合同:已通过。
  • fork 完整跨平台测试与预览构建:全部通过,包含 macOS Apple Silicon / Intel、Windows 和 Linux。四个平台的 workspace、Shell/SSH 相关检查、GPUI release 构建及运行一致性检查通过;macOS DMG 挂载与 LaunchServices 验收、Linux X11/Wayland 检查和最终产物汇总校验通过。公开发布按 publish=false 跳过。
  • fork Linux Lua 配置专项:全部通过,包含 Lua 配置测试与 Linux release 检查。
  • 原仓库 PR Actions 处于外部贡献者审批状态,需要维护者批准;fork 结果不等同于原仓库必需检查已通过。本 PR 保持 Draft。

必须确认

  • 遵循 CONTRIBUTING、架构、工程约束及国际化规范。
  • 未提高预算、删除测试或扩大依赖;按启动生命周期划分职责。
  • 架构检查基于原仓库 main 的 ce068600b2382d71301070535dcdb4e038156b56 通过。
  • 新文案使用类型化 ID,中英文占位符对应;其他语言明确回退英文。
  • 已列明测试成功、失败路径和平台验收边界。
  • 本次不修改治理规则;勾选项不代替 CI 结果或维护者审查。

@WilliamWang1721
WilliamWang1721 marked this pull request as ready for review September 21, 2026 13:12
@WilliamWang1721
WilliamWang1721 force-pushed the codex/macos-portable-startup branch 2 times, most recently from 2747afb to d8dc96f Compare September 21, 2026 13:59
@WilliamWang1721
WilliamWang1721 force-pushed the codex/macos-portable-startup branch from d8dc96f to 3255151 Compare September 21, 2026 14:13
@WilliamWang1721

Copy link
Copy Markdown
Contributor Author

@Kuddev

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant