Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

macdeepsleep

让你的 Mac 睡个真正的好觉 💤


🔋 为什么你需要它?

MacBook 合盖休眠一晚上,第二天打开发现电量平白无故掉了 10% 甚至更多?你是否也因为类似的问题而苦恼?

有人建议关闭 tcpkeepalive、关闭隔空投送、关闭 Find My 等。然而,在系统设置层面的这些修修补补,往往无法从根本上解决耗电问题。

罪魁祸首:疯狂的 DarkWake

检查电源日志会发现,大概率是 macOS 的 DarkWake(暗黑唤醒) 机制在作祟。苹果设计这个机制的初衷是好的:在电脑休眠时偶尔唤醒它(屏幕不亮),用于处理 DHCP 租约续期、iCloud 同步、Find My 位置上报以及接收各种推送。

按设计,Mac 每深度睡眠 60 分钟只会触发一次约 10 秒的 DarkWake,一晚上 8 小时理应只耗电 1-2%。但现实很骨感:各种杂乱的网络请求、局域网的唤醒包(AWDL)会让这个机制失控。你的 Mac 会在合盖后被网络持续不断地频繁唤醒,陷入 “唤醒 → 尝试休眠 → 再被网络唤醒” 的死循环。这就是一晚上合盖掉电 10%+ 的根因。

最彻底的解法只有一个:拔掉它的“网线”。 关掉 Wi-Fi、蓝牙和 AWDL,彻底切断物理层面的网络连接。系统没有网络任务需要处理,就不会被周期性唤醒,从而真正进入功耗极低的深度睡眠。


🚀 macdeepsleep 是怎么做的?

macdeepsleep 做的就是这件纯粹的事: 👉 合盖时,自动秒关 Wi-Fi、蓝牙和 AWDL;开盖时,按原状瞬间恢复。

由于直接监听操作系统的底层电源事件(kIOMessageSystemWillSleepkIOMessageSystemHasPoweredOn),因此它完全兼容Amphetamine等阻止休眠的软件。只有当系统真正决定要睡过去时才会切断网络。

🛠️ 安装与使用

提供一键安装脚本,自动下载最新版本的预编译二进制并配置好系统服务。

一键安装 / 更新 / 卸载

打开「终端」(Terminal),复制并执行以下命令:

curl -fsSL https://raw.githubusercontent.com/EAEdward/macdeepsleep/main/install.sh | sudo bash

(注:由于需要注册系统级守护进程,该命令会要求输入你的开机密码)

执行完毕后,直接合上屏幕再打开,感受下无缝衔接的网络恢复吧!

📜 协议

MIT License

About

彻底解决 MacBook 合盖休眠掉电问题!监听 macOS 底层电源事件,休眠时自动秒断 Wi-Fi、蓝牙与 AWDL,彻底阻断 DarkWake 网络唤醒,让 Mac 睡个真正的好觉 💤 (Fix macOS battery drain during sleep)

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages