Sol 源码构建三步走:新手提交第一个 PR 的保姆级路径
【免费下载链接】solMacOS launcher & command palette项目地址: https://gitcode.com/gh_mirrors/so/sol
源码构建还意味着漫长的依赖报错调试?Sol 作为一款 macOS 启动器与命令面板,只要 6 条命令就能跑通,本文带你从克隆代码一路走到第一个 PR。
图:构建成功后唤出 Sol 启动器,输入几个字母即可匹配到对应应用
Sol 凭什么值得你花一小时折腾
它是原生运行的 macOS 命令启动器:一个全局快捷键弹出自定义搜索框,应用搜索、谷歌翻译、日历提醒、剪贴板管理、AppleScript 脚本统统收进同一个窗口。架构也干净——React Native 前端加 Swift 原生层,跑起来之后很容易找到可以改进的地方。
环境体检:先备齐这 3 样工具
| 工具 | 作用 | 获取方式 |
|---|---|---|
| Mise | 统一版本管理器,按项目配置自动装对 bun、ruby | 在 mise 官网(mise.jdx.dev)下载安装 |
| Xcode | macOS 开发 IDE,编译原生层必需 | Mac App Store 下载 |
| Cocoapods | macOS 依赖管理器,安装 Pods 第三方库 | 用mise plugin add cocoapods随 Mise 装好 |
具体环境配置可参照任意一篇 macOS React Native 开发环境教程,上面三样就是核心。
Sol 源码构建:三步跑起来
第一步,克隆仓库。把源码拉到本地并进入项目目录:
git clone https://gitcode.com/gh_mirrors/so/sol cd sol第二步,安装依赖。给 Mise 注册 Cocoapods 插件、开启钩子支持,然后让它一次性装好全部工具链:
mise plugin add cocoapods mise settings experimental=true mise installmise install会按 mise.toml 装好 bun 和 ruby,并自动执行 postinstall 钩子拉取 JS 依赖、安装 CocoaPods。跑完终端无报错、项目下出现node_modules,这步就算过了。
第三步,构建运行。一条命令编译并启动应用:
bun macosXcode 完成编译后 Sol 会自动启动,触发全局快捷键弹出搜索框,源码构建即一次跑通。
看懂项目骨架:代码该从哪看起
- src/:React Native 前端,
src/widgets/是搜索、设置、scratchpad 等面板,src/stores/放状态管理 - macos/:原生层,Swift 辅助能力集中在
macos/sol-macOS/lib/ - scripts/:版本号 bump 与 appcast 发布脚本
- patches/:对第三方依赖打的补丁
图:Sol 的日历功能,还会把即将到来的日程展示在菜单栏
从 fork 到你的第一个 PR
- Fork仓库到自己账号
- 建特性分支:
git checkout -b feature/my-first-fix - 开发并验证:本地
bun macos确认改动生效 - 提交:
git commit -m "fix: 你的改动描述" - 推送:
git push origin feature/my-first-fix - 发起 PR,标题写清动机,描述里附上改动效果
踩坑提醒:提交前最容易栽的 3 个点
1.mise install卡住或钩子没执行。现象是安装中途停住,依赖没装全。原因是 postinstall 钩子属于实验特性,未开启就不会触发。解法:确认执行过mise settings experimental=true后重跑mise install。
2. Xcode 或 CocoaPods 版本不匹配。现象是pod install阶段报错、编译失败。原因是本机 Xcode 或 Command Line Tools 版本过旧、许可未接受。解法:升级 Xcode,执行sudo xcodebuild -license accept补齐许可后重装依赖。
3. 格式与 lint 不通过。现象是 PR 里被指出格式不一致。原因:项目用 Biome 统一格式化与 lint 规则,配置在 biome.json。解法:提交前按仓库规则跑一遍 Biome 格式化,再用bun run typecheck确认无类型错误。
Sol 的仓库向所有人敞开:修个小 bug、给启动器加个功能、把文档补充完整,都算数。去 issue 列表里挑一个 good first issue,把本文的三步流程走一遍,你的第一个 PR 就从这里开始。
【免费下载链接】solMacOS launcher & command palette项目地址: https://gitcode.com/gh_mirrors/so/sol
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考