Setting up a Canon i250 printer in Ubuntu is possible, but not automatic. Here's how to do it in less than five minutes.
First of all, the reason any of this is necessary is because Canon is rubbish. They don't support drivers (software needed for computers to talk to peripherals such as printers) for any operating systems other than Windows and Mac OS X. They don't allow me to just give you a copy of their unsupported Linux drivers. And they refuse to release specifications that would allow other programmers to make good-quality drivers for everyone.
I won't be buying another Canon printer in the foreseeable future.
Anyhow, I've packaged up a script to install the Canon i250 drivers in Ubuntu 8.10.
This script will ask for your password so that it can install the necessary software; unless you trust me enough to give me full control of your computer, you shouldn't run this script without reading it first.
If you do want to run the script, you'll have to make it executable. To do this in Ubuntu, right-click the script file (install-i250-drivers.sh), choose Properties, and on the Permissions tab, tick Allow executing file as program.
You can then double-click the script file to run the script. It'll take a couple of minutes to download, convert and install the drivers so I suggest running it in a terminal.
If you prefer not to download a script file, you can paste the following equivalent commands into a terminal (again, don't trust me):
gksudo "aptitude -y install libpng3 libtiff4 cupsys alien" cd /tmp wget http://download.canon.com.au/bj/i250linux/bjfilteri250-2.3-0.i386.rpm wget http://download.canon.com.au/bj/i250linux/bjfiltercups-2.3-0.i386.rpm gksudo "alien --scripts bjfilteri250-2.3-0.i386.rpm" gksudo "alien --scripts bjfiltercups-2.3-0.i386.rpm" gksudo "dpkg -i bjfiltercups_2.3-1_i386.deb bjfilteri250_2.3-1_i386.deb" gksudo "ln -s /usr/lib/libtiff.so.4 /usr/lib/libtiff.so.3" gksudo "ln -s /usr/lib/libpng.so.3 /usr/lib/libpng.so.2" gksudo "/etc/init.d/cups restart"
The script & code don't actually set the printer up. You will still have to do that in the normal way through System → Administration → Printing. When offered the option, tell the computer to use the PPD file at /usr/share/cups/model/canoni250.ppd.
It may or may not be necessary for the printer to be switched on while Ubuntu starts up, so if the test page fails to print, try restarting the computer with the printer on.
I created this script by mercilessly copying from Daniel Howard's blog post on installing the i250 drivers in Ubuntu 7.10—spot the difference. (Seriously, there is a crucial change.)