Keyboard functions have major functionality on operating systems other than MacOSX. Soon when you install Ubuntu on your Macbook, you’ll notice different problems from default keyboard function keys behavior (which needs Fn key to be hold) to extremely slow touch-pad. Most of issues and their solutions are described on the Ubuntu Macbook wiki page. But recent kernels have had some modifications that parameters described over the net, do not cover how to fix the issue with newer kernels. The old way of fixing keyboard was to add an option to Human Interface Device (HID) module of kernel to switch function keys mode. For example you might add the following contents to /etc/modprobe.d/functions.conf :
options hid pb_fnmode=2
Replace hid with usbhid for kernels older than 2.6.20. But none of them worked for my Ubuntu 10.04 Lucid running a 2.6.32 kernel. In recent kernels, Apple HIDs have a separate kernel module named hid-apple and the parameter has been changed to fnmode. Knowing these changed I tried to change the parameter by providing fnmode parameter via modprobe just like before, but failed. So to fix keyboard issue I used /sys/ interface to change fnmode parameter of hid_apple module.
root@Seeb:/home/ali# echo 2 > /sys/module/hid_apple/parameters/fnmode
Put this in your startup script /etc/rc.local before exit command, so that the issue gets fixed automatically on each boot. If you don’t know how to edit the file using root priviledges, that’s easy ! Press Alt+F2 and type the following command in your Run dialog :
gksudo gedit /etc/rc.local
For you touch-pad speed issue, all you need to do is to install gsynaptics (qsynaptics for KDE guys) package, open Touchpad Preferences from System > Preferences > Touchpad, and increase the newly shown parameters “Min Speed” and “Max Speed”: