Function key behaviour is set in: /sys/module/hid_apple/parameters/fnmode
The following are valid tokens:
0 = disabled : Disable the 'fn' key. Pressing 'fn'+'F8' will behave like you only press 'F8'
1 = fkeyslast : Function keys are used as last key. Pressing 'F8' key will act as a special key. Pressing 'fn'+'F8' will behave like a F8.
2 = fkeysfirst : Function keys are used as first key. Pressing 'F8' key will behave like a F8. Pressing 'fn'+'F8' will act as special key (play/pause).
You require 2 to use the function keys as desired. First try this from the command line (as root):
echo 2 > /sys/module/hid_apple/parameters/fnmode
If that works, you can make it stick by adding that line to /etc/rc.local (before the exit command).
I run Debian (single boot) on a MacBook Pro and the above solved this problem.