ArchLinux (current)
To get Suspend2 working on ArchLinux, you don't need to build or patch the kernel yourself. Arch provides an already patched kernel image in the extra repository.
Packages you need
You need the patched kernel and suspend2's hibernate-script. The latter one is available in community. You can either enable this repository in your /etc/pacman.conf file or fetch the script by hand.
Normally, with community enabled, you only have to issue:
pacman -S kernel26archck hibernate-script
Getting the alternate kernel image to run
Create an additional boot entry in your boot manager for the alternate kernel image and its corresponding initramfs file. See http://wiki.archlinux.org/index.php/Initramfs_and_ArchCK for further details (pacman will tell you this, too).
Setting up Suspend2
Before you boot the new kernel, also add the resume2= kernel parameter in your boot loader. If you use vesafb, please note, that it is replaced with VesaFB-TNG in the ArchCK kernel and therefor the vga= parameter is obsolete.
Here is an example of a typical boot entry in GRUB:
title Arch Linux CK root (hd0,2) kernel /vmlinuz26archck root=/dev/hda6 ro video=vesafb:ywrap,1024x768-32@85 resume2=swap:/dev/hda7 initrd /initramfs-2.6.15-archck.img
After the kernel is bootet, you can run hibernate to try out your first suspend :).
Additional tricks
On ArchLinux, it is very easy to get ACPI-Events trigger suspending for you. Issue:
pacman -S acpid /etc/rc.d/acpid start
After that, run acpi_listen and press your power key, or close your laptop lid, etc. It will show you the event occured. Use this information to alter your /etc/acpi/handler.sh. It could look like this:
[...]
button/power)
case "$2" in
PWRF) hibernate ;;
*) logger "ACPI action undefined: $2" ;;
esac
[...]




