/noclamshell

Sleep despite annoying clamshell mode

Primary LanguageShellMIT LicenseMIT

Tired of the annoying iOS clamshell mode when MacBook doesn't go to sleep when you close the lid with an external monitor connected?

Use this!

Known to work on on Apple Silicon macs, and older Intel macs. No issues for years.

No clamshell mode

What is a clamshell mode? As per this doc:

You can use an external display or projector with a Mac notebook while its built-in display is closed. This is known as "closed-clamshell" or "closed-display" mode.

Basically, when you're connected with power adapter and there's an external monitor connected, when you close the lid, nothing happens.

But this mode doesn't fit all, and there's still no good solution, and there is no option to turn it off in settings. Some tricks exist, none of them gets you a sleeping machine when just closing the lid:

  • unplug power adapter, close lid, plug power back;
  • close lid, unplug power adapter, plug power back;
  • before closing the lid, press power button (actually long-press it and then click on "Sleep");
  • put external display off using a hot corner, close lid

Some discussion threads from back then and pretty recent as well.

Less fuss

Imagine a magic script that monitors your lid state, and when it is closed, puts your machine to sleep. Here it is!

How does this work

It periodically checks if lid is closed and puts machine to sleep. Nothing fancy, it uses command line tools that come with OSX, specifically ioreg, which displays I/O registry and pmset to manipulate power management settings.

Installation

Using a custom tap:

brew install pirj/noclamshell/noclamshell
brew services start noclamshell

Uninstall

In case utility didn't work as you expected, you can turn it off:

brew services stop noclamshell
brew uninstall pirj/noclamshell/noclamshell

Please drop me a note on what went wrong!

Self-ad

I also maintain an utility that reduces the brightness of internal display to zero when lid is open. Appreciate if you check it out!

Blah

Author: Phil Pirozhkov

Contributors:

License: MIT