This is a brief summary of the ways that the Canon iP4300 printer can be made to work with arch. As the printers are very similar, these techniques would very likely work with the iP4200 also.
The following packages will very likely be needed:
# pacman -S cups ghostscript gsfonts
For information about setting up cups, refer to CUPS, however all that is really needed for the iP4300 is to start the cups daemon with:
# /etc/rc.d/cups start
and to add cups to the daemons line in /etc/rc.conf
Methods of getting the printer working
There are basically three options:
Install needed packages
You will need the package rpmextract
# pacman -S rpmextract
Now create a directory somewhere (for the sake of this tutorial let this directory be ~/canon) and cd to it.
Download cnijfilter-ip4300-2.70-1.i386.rpm and cnijfilter-common-2.70-1.i386.rpm from ftp://download.canon.jp/pub/driver/bj/linux/ and put into the folder you created, or:
# wget ftp://download.canon.jp/pub/driver/bj/linux/cnijfilter-common-2.70-1.i386.rpm # wget ftp://download.canon.jp/pub/driver/bj/linux/cnijfilter-ip4300-2.70-1.i386.rpm
Now extract the rpms:
# rpmextract.sh cnijfilter-ip4300-2.70-1.i386.rpm # rpmextract.sh cnijfilter-common-2.70-1.i386.rpm
Now for the monotonous bit (there is probably a much quicker way to do this using scripts etc, but this way is simple and allows you to see what goes where)
Move the files
The command rpmextract.sh should have created a usr/ directory in the folder with the rpms. Copy every file in this directory's subfolders into the corresponding actual location. e.g. copy the files in ~/canon//usr/lib/ to /usr/lib/ Do this for all files in all subdirectories (however I as my language is english, I didn't bother copying the locale folder in ~/canon/usr/local/share and everything still seems to work fine.
Install the printer with CUPS
If cups is not already running, start it with
# /etc/rc.d/cups start
Now point your browser of choice at http://localhost:631 This should present the cups web interface. If not, ensure that cups is started (see above) and that your hosts are set-up correctly (or see the CUPS article).
- Click Add Printer
- Fill in the Name, Description and Location (not really very important)
- Choose the connection method for your printer, and fill in any details required for this.
- Now you will be prompted for a Make/Manufacturer - choose Provide a ppd file (click browse)
- Navigate to /usr/share/cups/model/ and choose canonip4300.ppd
The printer should now be installed. You could test it by pressing the Print Test Page button, or continue onto the next step to add support for higher resolutions. Bulk of information from http://www.erlandertervueren.com/ubuntu/ip4300_guide The installed PPD file doesn't allow you to select the printing quality. To fix this, back up your ppd file, then open it as root. Your ppd file will be found in /etc/cups/ppd and it's name depends upon what you called your printer. The commands below assume the printer was called Canon:
# su root # <text editor here> /etc/cups/ppd/Canon.ppd
Insert these lines in the file after the "Resolution" section:
*OpenUI *CNQuality/Quality: PickOne *DefaultCNQuality: 3 *CNQuality 2/High: "2" *CNQuality 3/Normal: "3" *CNQuality 4/Standard: "4" *CNQuality 5/Economy: "5" *CloseUI: *CNQuality
The following gives a greater choice of print resolution if added to the "Resolution" section, but it is currently not know if the Quality setting impinges upon this. Note that the ip4200 only offers 600dpi in black and white. (Maybe someone could verify some of this)
*Resolution 1200/1200 dpi: "<</HWResolution[1200 1200]>>setpagedevice" *Resolution 2400/2400 dpi: "<</HWResolution[2400 2400]>>setpagedevice" *Resolution 4800/4800 dpi: "<</HWResolution[4800 4800]>>setpagedevice"
...and that's about it!
Related Links/Additional Information
http://www.erlandertervueren.com/ubuntu/ip4300_guide/ - A guide for setting up the printer on ubuntu - may help if using gnome etc.