|Summary help replacing me|
|Running Arch on Mid-2012 hardware|
This guide outlines a more recent walkthrough to install and configure Arch on the more recent Macbook 9,x (Mid-2012) hardware alongside a pre-existing OSX operating system. This requires adequate free disk space, install media (such as a USB or CD), and a wired connection for the initial steps of the install procedure.
This article does not cover single-boot setups, although there are not too many steps required to convert this to a single-boot guide.
For general help on the install preocedure see the Beginners' Guide
- 1 Preparation
- 2 Installation
- 3 Post Installation
- 4 Bells & Whistles
If you want to access your OSX user directories from Linux, write down the UID and GID for the users.
Install Boot Manager
Optional. The easiest way to begin is by installing rEFInd on Mac OSX before moving on to Arch. This will place a boot menu on startup. The config will be in your OSX partition - if this is not what you want simply install it later in Arch. For more information consult UEFI.
Shrinking Macintosh HD
Boot Camp now requires a Windows installation disc before altering partitions, but it is possible to do this using Mac OSX's disk utility. Simply create a new partition, calculate the amount of free space required for all new partitions and shrink Macintosh HD to match this amount. Leave the new partition as free space.
Preparing Installation Media
Download Arch and burn it to a USB, CD or DVD, and boot into the Arch install.
Running the Arch Installation
The following differences will apply to MacBooks:
Sample partition layout
partition mountpoint size type label /dev/sda1 /boot/efi 200MiB vfat EFI /dev/sda2 - ? hfs+ Mac OS X /dev/sda3 - ? hfs+ Recovery /dev/sda4 - 100MiB hfs+ Boot Arch Linux from the Apple boot loader (optional) /dev/sda5 /boot 100MiB boot boot /dev/sda6 - ? swap swap (optional) /dev/sda7 / 10GiB ext4 root /dev/sda8 /home remaining ext4 home
Use GRUB2#UEFI_systems_2 for more information.
After setting up the base system, do the following in your chrooted environment:
# pacman -S grub-efi-x86_64 # mkdir -p /boot/efi # mount -t vfat /dev/sda1 /boot/efi # modprobe dm-mod # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck --debug # mkdir -p /boot/grub/locale # cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
If you wrote down your OSX uid's and gid's eariler, new users can be created by running:
# useradd -m -u [uid] -g [gid] -G [additional_groups] -s [login_shell] [username]
In order to be able to access a OSX user's directory, only id's need to match.
Macbooks 8,1 to 9,2 (and possibly newer) use BCM4331 for Wifi. Linux Kernel 3.3 has led to a loss of most of the functionality - however, as of March 2013 bleeding-edge patches are available that improve the situation significantly.
base-devel is required.
$ curl -O https://www.kernel.org/pub/linux/kernel/projects/backports/2013/03/28/compat-drivers-2013-03-28-5.tar.bz2 $ tar xjf compat-drivers-2013-03-28-5.tar.bz2 $ cd compat-drivers-2013-03-28-5 $ scripts/driver-select b43 $ make $ sudo make install
/etc/modules-load.d/b43.conf and simply write
b43 to load wireless at startup.
Install AUR and reboot. From here on in, wifi configuration should proceed normally - once it's working the wired connection may be disconnected.AUR from
Main Page: Xorg
xf86-video-intel and setup Xorg as you normally would.
The built-in keyboard and most usb input devices will work out-of-the-box, but
xf86-input-synaptics is needed in order to use the built-in touchpad.
Bells & Whistles
Emulating OSX Touchpad Gestures
With a little bit of work it's possible to tweak the multitouch options on the track.
synclient is included with the xf86-input-synaptics driver. It is useful for experimenting with settings as they take effect immediately and expire at the end of an X session. Many OSX options can be emulated without any additional software.
synclient -l to have a look at all the available options. Here are some OSX-like suggestions:
- By default synaptics is configured to use a double-tap drag gesture found on older touchpads - one may argue that this is not necessary on a clickpad.
synclient TapAndDragGesturewill turn this off.
- TapButtonX and ClickFingerX sets the mouse button triggered by tapping or clicking with X fingers. set
ClickFinger2=3to assign two-finger click to the right mouse button.
- Setting the bottom-right corner click to right mouse button can be done by subtracting about 500 from
BottomEdgeand plugging the new values into
RightButtonAreaTop. If the last two options are not visible, set
To make settings permanent, just modify
AUR is an application that can recognize additional gestures. To use this you'll need to replace the synaptics driver with AUR.
... <application name="All"> ... <gesture type="DRAG" fingers="3" direction="ALL"> <action type="DRAG_AND_DROP"></action> </gesture> ... </application> ...