主 题:[开源] 用 Swift 写了两个 Mac 小工具:风扇控制 FanBar + 应用多开 Dual
发 布 者:helson-lin
标签分类: 技术
时 间:2026-09-28 11:33:34
内容预览:业余时间写了两个 macOS 小工具,都是为了解决我自己遇到的问题。用了一段时间觉得还算顺手,拿出来分享给各位。两个都是 Swift 原生开发,免费,采用 GPL-3.0 开源,安装包经过 Apple 签名和公证。一、FanBar:看得见的风扇控制GitHub:https://github.com/helson-lin/FanBar起因某天深夜用 Xcode 编译,MacBook 的风扇突然狂转起来。我想知道现在到底多少度、风扇转了多少,结果翻遍系统也找不到。macOS 会自动管理风扇,但完全不告诉你它在做什么。我试过 Macs Fan Control 和 iFan,两个都挺好用,但都是闭源的,前者高级功能还要付费。对于一个需要 root 权限、直接读写硬件的工具,我更希望代码是能看到的。我的要求其实就三条:免费、开源、常驻菜单栏。找了一圈没找到同时满足三条的,于是自己写了一个。它能做什么随时看一眼:菜单栏直接显示 CPU 温度和风扇转速;展开面板能看到 CPU、GPU、SSD、电池的实时温度,还有近 10 分钟的温度曲线。写代码、导视频时:切到「性能」或「极限」模式,让风扇提前介入,别等降频了才反应过来。深夜或者开会时:切到「静音」,让机器安静下来。平时:用「均衡」,或者自己拖曲线,定义每个温度对应的转速。另外还有 90°C 高温提醒、桌面小组件(macOS 14+)、中英双语界面。我比较在意的安全问题权限隔离:菜单栏程序本身不需要 root 权限。只有一个通过 XPC 通信的特权 Helper 可以读写 AppleSMC。出错自动兜底:只写入硬件上报范围内的值。退出应用或 Helper 崩溃时,风扇控制会自动交还给 macOS。不需要绕过系统保护:安装包经过 Developer ID 签名和 Apple 公证。支持 macOS 11+,Apple Silicon 完整支
直达链接: https://www.nodeseek.com/post-952855-1
发 布 者:helson-lin
标签分类: 技术
时 间:2026-09-28 11:33:34
内容预览:业余时间写了两个 macOS 小工具,都是为了解决我自己遇到的问题。用了一段时间觉得还算顺手,拿出来分享给各位。两个都是 Swift 原生开发,免费,采用 GPL-3.0 开源,安装包经过 Apple 签名和公证。一、FanBar:看得见的风扇控制GitHub:https://github.com/helson-lin/FanBar起因某天深夜用 Xcode 编译,MacBook 的风扇突然狂转起来。我想知道现在到底多少度、风扇转了多少,结果翻遍系统也找不到。macOS 会自动管理风扇,但完全不告诉你它在做什么。我试过 Macs Fan Control 和 iFan,两个都挺好用,但都是闭源的,前者高级功能还要付费。对于一个需要 root 权限、直接读写硬件的工具,我更希望代码是能看到的。我的要求其实就三条:免费、开源、常驻菜单栏。找了一圈没找到同时满足三条的,于是自己写了一个。它能做什么随时看一眼:菜单栏直接显示 CPU 温度和风扇转速;展开面板能看到 CPU、GPU、SSD、电池的实时温度,还有近 10 分钟的温度曲线。写代码、导视频时:切到「性能」或「极限」模式,让风扇提前介入,别等降频了才反应过来。深夜或者开会时:切到「静音」,让机器安静下来。平时:用「均衡」,或者自己拖曲线,定义每个温度对应的转速。另外还有 90°C 高温提醒、桌面小组件(macOS 14+)、中英双语界面。我比较在意的安全问题权限隔离:菜单栏程序本身不需要 root 权限。只有一个通过 XPC 通信的特权 Helper 可以读写 AppleSMC。出错自动兜底:只写入硬件上报范围内的值。退出应用或 Helper 崩溃时,风扇控制会自动交还给 macOS。不需要绕过系统保护:安装包经过 Developer ID 签名和 Apple 公证。支持 macOS 11+,Apple Silicon 完整支
直达链接: https://www.nodeseek.com/post-952855-1