From ArchWiki
Revision as of 02:00, 23 December 2011 by Shapeshifter (talk | contribs) (Configure all special keys)
Jump to: navigation, search

work in progress 23rd DEC 2011


Boot the archlinux installer from the USB medium and log in as root.

Set up a wireless connection

Since you don't have any ethernet, you'll need to manually configure your network before starting the setup. Here, we assume that the wlan is not encrypted:

ip link set wlan0 up
iwconfig wlan0 essid "your_wlan_essid"
dhcpcd wlan0

If your wlan is encrypted, follow the instructions in the Beginner's Guide. If it's not encrypted but requires to login at a web portal, you can use elinks to enter your credentials.$

Partition the SSD

You'll also need to manually format the SSD before using the installer. Use GPT as described in the SSD Article. This ensures that your partitions are properly aligned. You need to install it first:

pacman -S gptfdisk

Type o to clear out the partition table and then create at least 3 partition (type ? or m for help). Your partition table should look something like this:

Number  Start (sector)    End (sector)  Size       Code  Name
  1            2048            6143   2.0 MiB     EF02  BIOS boot partition
  2            6144         2463743   1.2 GiB     8200  Linux swap
  3         2463744        19240959   8.0 GiB     8300  Linux filesystem
  4        19240960        61865950   20.3 GiB    8300  Linux filesystem

Type w to write the partition table Your partition table.

Run the installer

Progress through the installer as usual, but mind these things:

  • When configuring the hard drive, select to configure the mountpoints manually and choose the mountpoints accordingly. You can select ext2 for the BIOS boot partition. For the root and any other regular partitions ext4 is a good option.
  • You absolutely have to select wireless-tools from core to be installed in order to be able to connect to the wlan in your freshly installed system. You may also want to select netcfg.
  • When editing the config files, edit /etc/fstab and add the noatime,nodiratime,discard options to your ext4 partitions. Also remove network from the DAEMONS array in /etc/rc.conf.
  • Skip the bootloader installation, exit the installer and do not reboot!

Manually install the bootloader

Make the fresh installation network-capable and prepare for grub2:

cp /etc/resolv.conf /tmp/install/etc/resolv.conf
modprobe dm-mod

Chroot into your fresh installation:

mount -o bind /dev /mnt/dev
mount -t proc /proc /mnt/proc/
mount -t sysfs /sys /mnt/sys/
chroot /mnt bash

Install grub2

pacman -Syy
rm -rf /boot/grub
pacman -S grub2-bios
grub_bios-install --boot-directory=/boot --no-floppy --recheck --debug /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

Now you're ready to reboot!

Install the graphics drivers

After a reboot into your new system, install the drivers required for the poulsbo chipset. There are several drivers and they're all terrible. The probably best option at the time of writing is the pbs_gfx driver with fbdev. The performance (for playing videos for example) will nevertheless be terrible. Install it as follows: Add psb_gfx to MODULES in /etc/mkinitcpio.conf and rebuild the kernel initramfs:

mkinitcpio -p linux

Install the fbdev driver:


You should now be able to install and run X.

Install all your usual stuff

Install Xorg and whatever DE/WM you want to use. Launch X.

Configure CPU Scaling


Configure touch screen and optical mouse


Configure all special keys

Create a file /lib/udev/keymaps/umid-se containing:

0xEE battery           # Fn+Q
0xDF sleep             # Fn+W
0xD5 switchvideomode   # Fn+E
0xF0 record            # Fn+R
0xF6 camera            # Fn+T
0xF9 brightnessdown    # Fn+A
0xF8 brightnessup      # Fn+S
0xA0 mute              # Fn+D
0xAE volumedown        # Fn+F
0xB0 volumeup          # Fn+G
0xFC wlan              # Fn+J
Edit /lib/udev/rules.d/95-keymap.rules adding this after
Template error: are you trying to use the = sign? Visit Help:Template#Escape template-breaking characters for workarounds.
ENV{DMI_VENDOR}=="UMiDCorp", ATTR{[dmi/id]product_name}=="M-BOOK", RUN+="keymap $name umid-se"

The above vendor and product IDs can be found under /sys/class/dmi/id/. Reboot to apply the changes.

Configure suspend and hibernation