This worked for my X61:
Once your brightness keys work, you can set the brightness by writing to the procfs:
# echo 100 > /proc/acpi/video/VID1/LCD0/brightness
using a script and acpid events. However this may lead to a bug (screen flickers) described on the Debian mailing list []. This bug is related to the X server as it does not occur on the tty1. To fix it change your xrandr backlight control to native:
$ $xrandr --output LVDS --set BACKLIGHT_CONTROL native
% cat /etc/acpi/video_brightnessdown.sh #!/bin/sh xbacklight -dec 10%
% cat /etc/acpi/video_brightnessup.sh #!/bin/sh xbacklight -inc 10%
If you are using a 2.6.26 kernel, you are supposed to use the regular ACPI backlight control instead of thinkpad-acpi, on any Lenovo (Windows Vista-capable) ThinkPad.
Modify the kernel config by first disabling CONFIG_THINKPAD_ACPI_VIDEO and then enabling both CONFIG_VIDEO_OUTPUT_CONTROL and CONFIG_ACPI_VIDEO  While you are at it, be sure to read the well-written help sections for the kernel config settings :)
Ubuntu 8.10 Intrepid Ibex
The hardware keys work out of the box on a clean install of Ubuntu 8.10 Intrepid Ibex. No tweaking necessary.