= General = These instructions cover the late 2010 !MacBookAir3,1 and !MacBookAir3,2 models. Most of the information in this article is derived from the [[http://ubuntuforums.org/showthread.php?t=1603365|Ubuntu Forums]]. = Installation = ||Installation works using the Apple Superdrive, additional steps may be required for other installation methods.|| Use the [[https://help.ubuntu.com/community/MactelSupportTeam/AppleIntelInstallation|Intel CPU-based Macintosh Generic Installation Instructions]]. But, when you boot the Ubuntu disc and see the purple screen with a keyboard picture at the bottom, press a button on the keyboard to bring up the menu. Select your language, then press F6 for other options, turn on "nomodeset", press Esc and select try ubuntu. Note: nomodeset works around a graphics problem which we'll see in a bit. . Trouble Shooting: If you get a GRUB screen when booting the 64 bit version, and it fails to boot from the disc, then hold down the Alt key when powering on, you should see a "Windows" and an "EFI boot" option for the disc, select the "Windows" option and you should get the familiar purple screen. In the installation, be sure to select "Install this third party software" (otherwise the wireless may not work). When you reboot the machine, and after the disc ejects, the system may fail to actually reboot, we'll fix this later. For now, just hold down the power button to switch it off and turn it back on. Trouble Shooting: After a reboot you may encounter a few seconds of the GRUB bootloader menu. If you don't do anything, chances are you may end up with a black screen and nothing happens. If so, shut down by pressing the power button. Reboot again, go to the GRUB menu again, but this time, press "e" on your keyboard to edit the boot options. You will see that the boot option has reverted back to "quiet splash". You will want to replace it with "nomodeset" again. And then Ubuntu will boot up properly with graphics (which are not yet optimized for your screen). Now if you can suffer the serious graphic problem for a couple of minutes and login, then setup an internet connection. Once you have internet access, go to System > Administration > Additional Drivers. You may need to reboot the machine before anything appears in the driver list. Select the NVIDIA driver and click install. Once it's installed, reboot the computer. You can stop squinting at the screen in pain now. = Post-Install = Now add the Mactell PPA to your system and install some packages. Open a terminal and run: {{{ sudo add-apt-repository ppa:mactel-support/ppa sudo apt-get update sudo apt-get install btusb-dkms applesmc-dkms hid-apple-dkms bcm5974-dkms xf86-input-multitouch snd-hda-dkms mbp-nvidia-bl-dkms -y }}} Now edit /etc/modules: {{{ sudo gedit /etc/modules }}} and add the line {{{ mbp-nvidia-bl }}} Now you need to edit the xorg.conf file: {{{ sudo gedit /etc/X11/xorg.conf }}} Find the '''Device Section''' for the Nvidia driver and add this line to the end of the section: {{{ Option "RegistryDwords" "EnableBrightnessControl=1" }}} The block should now look like this: {{{ Section "Device" Identifier "Default Device" Driver "nvidia" Option "NoLogo" "True" Option "RegistryDwords" "EnableBrightnessControl=1" EndSection }}} Also add the following to the end of the file: {{{ Section "InputClass" MatchIsTouchpad "true" Identifier "Multitouch Touchpad" Driver "multitouch" EndSection }}} Fix backlight problem after suspend: {{{ sudo cp /usr/lib/pm-utils/defaults /etc/pm/config.d/defaults sudo gedit /etc/pm/config.d/defaults }}} Change the lines: {{{ #HIBERNATE_RESUME_POST_VIDEO="no" # SUSPEND_MODULES="" # ADD_PARAMETERS="" # DROP_PARAMETERS="" }}} to: {{{ HIBERNATE_RESUME_POST_VIDEO="yes" SUSPEND_MODULES="mbp-nvidia-bl" ADD_PARAMETERS="--quirk-reset-brightness" DROP_PARAMETERS="--quirk-none" }}} Nearly there, we just need to change some boot parameters now: {{{ sudo gedit /etc/default/grub }}} Change the line: {{{ GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" }}} to: {{{ GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=pci acpi_backlight=vendor" }}} Now, finally run: {{{ sudo update-grub }}} Apple uses 6-bit LCDs which support only 262144 colours instead of 16 million. So we need to enable dithering at 6 bits per colour channel to smooth colour gradients. Assuming you use gdm (the default) as login manager, run: {{{ sudo gedit /etc/gdm/Init/Default }}} Add to the end of the file, but above the {{{exit 0}}} line: {{{ /usr/bin/nvidia-settings -a [gpu:0]/Dithering[DFP-2]=1 /usr/bin/nvidia-settings -a [gpu:0]/DitheringDepth[DFP-2]=1 }}} After rebooting, this should enable multitouch support for the trackpad, hotkeys, bluetooth, speakers, microphone and backlight, as well as fix the reboot problem and improve the screen display. If you can't hear anything, run {{{alsamixer}}}. Use the left/right keys to select "Front Speakers" and press the M key to enable it, and the up/down keys to adjust the volume. = Fan = {{{macfanctld}}} (MAC fan control daemon) uses {{{applesmc-dkms}}} to take the temperatures of sensors inside the computer and set the fan speed accordingly. Two of those sensors, {{{TCZ3}}} and {{{TGZ3}}}, falsely oscillate between 0 and 255 degrees C causing {{{macfanctld}}} to toggle the fan on and off. The following instructions describe how to instruct {{{macfanctld}}} to ignore the input from said sensors, allowing the fan to operate normally: 1. Ensure the {{{macfanctld}}} is stopped with {{{sudo /etc/init.d/macfanctld stop}}}. 1. Run {{{macfanctld -f}}} to obtain the list of sensors and their associated ID numbers. 1. Open {{{/etc/macfanctl.conf}}} and add the numbers for {{{TCZ3}}} and {{{TGZ3}}} sensors to the "exclude" list. (Mine were 8 and 14 respectively. Ex: {{{exclude: 8 14}}}. ''Note it's "exclude" and not "exclud'''ed'''".'') 1. Run {{{macfanctld -f | grep exclude}}} and confirm temp*_input are printed in the list. 1. Restart the fan control daemon with {{{sudo /etc/init.d/macfanctld start}}}. . Trouble Shooting: Not sure if you need to install the package "macfanctld" first from either Synaptics or doing "sudo apt-get install macfanctld" at the Terminal. = Sound = Headphones work out of the box. Speakers may or may not work after following post-install instructions. If not, at the terminal type: {{{ sudo gedit /etc/modprobe.d/alsa-base.conf }}} Insert this line at the end of the file: {{{options snd-hda-intel model=mba31}}}. The last item {{{model=mba31}}} assumes that you have a MacbookAir 3,1. Restart Ubuntu. Start up a terminal, run {{{alsamixer}}} and use arrow keys to select Front Speaker and press m, then all is good sound-wise. = Touchpad = Multitouch works after following post-install instructions. = Apple keys = Hotkeys work after following post-install instructions. You can swap the behaviour of the Fn key by running: {{{ sudo nano /etc/rc.local }}} Then adding this line to the file (before the exit line): {{{ echo 2 > /sys/module/hid_apple/parameters/fnmode }}} You can change the number to 0 = disabled, 1 = fkeyslast, 2 = fkeysfirst. ^http://blog.adamsbros.org/2009/06/14/linux-macbook-function-key-mode-fnmode/^ = F11 and F12 keys = F11 and F12 are used for mouse emulation. If you want them to function as regular F11 and F12 again you'll have to uninstall the 'mouseemu' package {{{ sudo apt-get uninstall mouseemu }}} http://ubuntuforums.org/showthread.php?t=967671 = Network = Out of the box support, using a proprietary driver. If the network is really slow you might be experiencing problems with the power management of the network interface as discussed in this thread: http://ubuntuforums.org/showthread.php?t=1603365&page=30 The quick solution is to turn off the power management: {{{ sudo iwconfig eth0 power off }}} If you want to make the change permanently: {{{ sudo gedit /etc/pm/power.d/wireless }}} Paste this: {{{ #!/bin/sh /sbin/iwconfig eth0 power off }}} Make this script executable: {{{ sudo chmod +x /etc/pm/power.d/wireless }}} = LCD Backlight = Backlight can be adjusted after following the post-install instructions. = Tips and Tricks = A collection of helpful tips for the Macbook Air. == Calibrate display == You can also calibrate the display. Run: {{{ sudo apt-get install xcalib sudo mkdir /etc/xcalib/ }}} Then if you used a dual-boot setup and still have OS X installed, run: {{{ sudo mkdir /media/OSX sudo mount -o ro /dev/sda2 /media/OSX sudo cp /media/OSX/Library/ColorSync/Profiles/Displays/Color\ LCD-00000610-0000-9CF3-0000-000004273CC0.icc /etc/xcalib/colorprofile.icc sudo umount /media/OSX }}} Once again if you use gdm as login manager, run: {{{ sudo gedit /etc/gdm/Init/Default }}} Then add this line with the other lines: {{{ /usr/bin/xcalib /etc/xcalib/colorprofile.icc }}} So, the end of the file should look like this now: {{{ /usr/bin/xcalib /etc/xcalib/colorprofile.icc /usr/bin/nvidia-settings -a [gpu:0]/Dithering[DFP-2]=1 /usr/bin/nvidia-settings -a [gpu:0]/DitheringDepth[DFP-2]=1 exit 0 }}} == Avoid long EFI wait before GRUB == If your Macbook spends 30 seconds with "white screen" before GRUB shows, try booting from your Mac OS X install disc, select language, then click Utilities->Terminal, and enter: {{{bless --device /dev/disk0s1 --setBoot --legacy}}} Assuming that the bootloader is on sda1, otherwise /dev/disk0s2 if it's on sda2, etc. ^https://wiki.archlinux.org/index.php/Macbook#Avoid_long_EFI_wait_before_GRUB^ == Missing keys == You may have noticed that some keys are missing from the keyboard. Most of these can be accessed with the Fn key: || FN+Backspace || Delete || || FN+Return || Insert || || FN+Up || Page Up || || FN+Down || Page Down || || FN+Left || Home || || FN+Right || End || No !PrintScr key? Go to System > Preferences > Keyboard Shortcuts, then find the "Take a Screenshot" entry and set it to another key. I set mine to the eject key (after disabling the eject shortcut), the eject key is hardly useful on the Air anyway (you can run 'eject' from the command line in the rare case you need it for the Superdrive). ---- CategoryMac CategoryInstallation