Skip to content

Improve macOS support and GitHub release updates#2

Merged
Birditch merged 12 commits into
Birditch:mainfrom
backspace135:codex/macos-github-updates
Jul 10, 2026
Merged

Improve macOS support and GitHub release updates#2
Birditch merged 12 commits into
Birditch:mainfrom
backspace135:codex/macos-github-updates

Conversation

@backspace135

@backspace135 backspace135 commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

拉取请求 (Pull Request)

摘要 (Summary)

改进 AndroidTreeView 的 macOS 支持,并将应用更新源迁移到公开的 GitHub Releases。macOS CLI 现在通过 Terminal.app 启动;.app 打包包含规范尺寸的 ICNS 图标、可保留的签名和正确权限;App/Mini 使用程序集发布版本并从 GitHub 获取版本、资产、校验文件和发布说明。

SIGN 声明 (SIGN Declaration)

  • SIGN: 我确认我有权提交这些改动,并同意它们按本仓库许可证发布。
    (I certify that I have the right to submit this work and agree it is provided under this repository's license.)

类型 (Type)

  • 缺陷修复 (Bug fix)
  • 新功能 (Feature)
  • 文档 (Documentation)
  • 重构 (Refactor)
  • 测试 (Test)
  • 维护 (Maintenance)

细节 (Details)

macOS

  • 使用 Terminal.app 运行 CLI 工作流,替代仅支持 Windows 的 cmd.exe 路径。
  • 生成完整 .app bundle,包含 ICNS、安全区尺寸、执行权限和 ad-hoc 签名。
  • 使用 ditto 打包,确保 ZIP 解压后签名扩展属性仍然有效。

更新与版本

  • 将内网 NekoIndex 更新接口替换为 GitHub Releases API。
  • 从 GitHub Release 解析 App/Mini 安装包、SHA-256、发布说明和发布页链接。
  • 从当前可执行程序集读取版本,避免 UI 版本与 workflow 发布版本漂移。
  • macOS 提供 GitHub 发布页链接,同时保持仅 Windows x64 自动安装。

发布与文档

  • 将产品版本 1.0.6 同步到程序集、manifest、打包配置和文档。
  • 更新 Windows/macOS 使用说明,并增加半自动 Root 流程设计与实施计划。

安全影响 (Security Impact)

  • 未修改 GitHub Actions、发布脚本、打包脚本或二进制产物。
    (No GitHub Actions, release scripts, packaging scripts, or binary artifacts were changed.)
  • 如修改了上述敏感区域,我已在摘要或细节中说明原因。
    (If sensitive areas were changed, I explained why in the summary or details.)

本 PR 修改发布和打包文件,以支持 GitHub Releases 更新、macOS .app 签名及 ICNS 安全区。第三方 PR 安全门禁会按设计要求维护者手动审阅这些文件。

验证 (Verification)

  • dotnet build -c Release 通过 (build succeeds).
  • dotnet test -c Release 通过 (tests pass).
  • 已运行 dotnet format --verify-no-changes(或已格式化)(code is formatted).
  • 行为或 API 变化时,我已更新文档与本地化文案 (updated docs and localization strings when behavior or API changed).
  • 我已考虑无障碍、性能和兼容性影响 (I considered accessibility, performance, and compatibility impact).

验证结果:全量测试 270/270 通过;Release 构建 0 警告、0 错误;macOS arm64 ZIP 的校验和、bundle 结构、权限、release.json、ICNS 安全区和解压后签名均已验证。

关联 Issue (Related Issues)

无。

backspace135 and others added 9 commits July 9, 2026 15:43
- CliLauncher: branch by platform. macOS now writes an equivalent .command
  shell script with the same numbered menu and opens it in Terminal.app;
  previously it hardcoded cmd.exe + .bat and failed silently on macOS.
- Surface launch failures via Notifier (toast) instead of only logging.
- Add cli.unsupported / cli.launchFailed strings to both ResX files.
- Packaging: generate AppIcon.icns from atv-icon.png (sips + iconutil) and
  set CFBundleIconFile so the macOS .app shows an icon in Dock/Finder.
Sync version across AppInfo, App/Mini/Mini.Mac project metadata,
app.manifest, packaging scripts, wix, docs, and README.
- Platform badge Windows -> Windows + macOS
- Describe as cross-platform (Windows + macOS Apple Silicon), not Windows-only
- Generalize the usage section and add a macOS subsection (Terminal.app CLI,
  drag to /Applications, Gatekeeper). English README already covered this.
分步向导:上传刷机包→提取 boot.img→手机端官方 Magisk 修补→进 bootloader→flash boot,写操作前强制确认+自动备份原始 boot。双平台(Windows/macOS)。
- 构建时打包固定版 Magisk APK(SHA-256 校验),运行时 adb install
- 修补改用已装 App 自带的 boot_patch.sh + native 组件,不再桌面侧拆各 ABI 二进制
- 同步 §1.1/§2/§3/§4/§5.1/§6.2/§7/§8/§10/§11/§13
- 保留第 4 步实机验证警告(已装 App 脚本能否被 adb shell 直接调到仍待验证)
…con' into fix/macos-cli-terminal-and-app-icon

# Conflicts:
#	CLAUDE.md
@backspace135 backspace135 requested a review from Birditch as a code owner July 10, 2026 05:58
@backspace135 backspace135 changed the title Codex/macos GitHub updates Improve macOS support and GitHub release updates Jul 10, 2026
@Birditch

Copy link
Copy Markdown
Owner

/chatgpt-review

1 similar comment
@Birditch

Copy link
Copy Markdown
Owner

/chatgpt-review

@github-actions

github-actions Bot commented Jul 10, 2026

Copy link
Copy Markdown

ChatGPT PR 初审

我会先看更新服务和打包脚本的实际改动,因为这类 PR 最容易出现发布或自动更新层面的用户可见问题。重点会放在是否会破坏现有 Windows 自动更新、macOS 打包是否能产出可运行包。
当前 diff 很长且被截断,我会直接查工作区里的相关文件来确认细节,避免只凭摘要判断。
我将检查 GitHubUpdateServiceUpdateProductOptions、共享服务注册以及 PowerShell 打包脚本中 macOS 分支的参数处理。
(开始读取关键文件。)

结论

建议通过。基于提供的 diff,未发现会导致构建失败、发布包损坏、自动更新不可用、安全漏洞或明确用户可见故障的阻塞问题。本建议仅为自动化预审,不代表维护者正式批准。

阻塞问题

非阻塞建议

  • 可在合并前由维护者重点复核一次 GitHubUpdateService 的 GitHub API 请求头、限流和失败提示,确保真实网络环境下更新检查失败时不会影响 App 正常使用。
  • README*.md 新增引用 docs/images/product-devices-v1.0.5.png,建议确认该图片已存在于仓库或发布分支中,避免 README 显示断图。
  • macOS 打包改为 codesign + ditto 后,建议在发布机上保留一次解压后 codesign --verify --deep --strict 的实际验证记录,方便后续排查 Gatekeeper 或签名扩展属性问题。

这是自动初审建议,不代表维护者正式批准。第三方 PR 的代码没有在此 workflow 中执行。

@Birditch Birditch merged commit 1fbf416 into Birditch:main Jul 10, 2026
6 checks passed
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.

2 participants