VinC的博客

Resolve Macbook6,2 Suspend Problems on Mint 18.1

Macbook Air 6,2 has a few suspend issues with Linux Mint 18.1. Here is my solution resolving these Macbook suspend problems. Currently these solutions works pretty well for me.

  1. Use mba6x_bl if your Macbook has black screen after suspended. Follow their instruction.
  2. Use Bob-El’s solution to resolve Macbook can’t suspend after lid closed.

    • backup and open /etc/acpi/events/powerbtn
      sudo cp /etc/acpi/events/powerbtn /etc/acpi/events/powerbtn_bak
      sudo nano /etc/acpi/events/powerbtn
    • replace content of powerbtn with text below

      # /etc/acpi/events/lidbtn
      # This is called when the user closes the lid and calls
      # /etc/acpi/lidbtn.sh for further processing.
      # Optionally you can specify the placeholder %e. It will pass
      # through the whole kernel event message to the program you’ve
      # specified.
      # We need to react on “button lid.“ and “button/lid.“ because
      # of kernel changes.
      event=button[ /]lid
      action=/etc/acpi/lidbtn.sh

    • create /etc/acpi/lidbtn.sh
      sudo nano /etc/acpi/lidbtn.sh

    • place the following text into it
      <pre><code>#!/bin/bash
      if grep -q closed /proc/acpi/button/lid/*/state
      then
          /usr/sbin/pm-suspend
      fi</code></pre>
      
  3. Fix Macbook sometime won’t suspend when power connected.
    Open Power Management -> On AC Power -> Actions -> When laptop lid is closed, choose Blank screen. This will keep Macbook suspend when power connected.
  4. Fix keyboard backlight level always being set to highest after wake up. Detail

    • Disable keyboard light auto-adjust.
      sudo nano /etc/dbus-1/system.d/org.freedesktop.UPower.conf
      and change <allow to <deny in the following line:

      1
      2
      <allow send_destination="org.freedesktop.UPower"
      send_interface="org.freedesktop.UPower.KbdBacklight"/>
    • Add alias function to so we can at least change keyboard backlight manually.
      Open your bash config file like .bashrc or .zshrc under home directory (in my case I use zsh, so I have .zshrc), add the following function to the end of file:
      kbd() { echo "$@" | sudo /usr/bin/tee -a "/sys/class/leds/smc::kbd_backlight/brightness" }
      Now you have a function that can change keyboard backlight. Example: kdb 0 will turn off the keyboard backlight. The integer parameter has to be an integer between 0 and 255.

    • Solution 4 will disable the keybaord backlight shortcut on Macbook due to modified org.freedesktop.UPower, but surely this solution is good enough, and you can find many workaround to bring these shortcut back