Before to start the installation of Canon LBP2900 please check if these packages are installed
1/3: cups-common
2/3: portreserve
3/3: cups
If all is installed then we go further with the installation :
1- Download the driver from here, or from :
http://downloads.unixmen.com/drivers/CANONLBP2900/CAPTDRV180.tar.gz
Important note : If you are using Ubuntu9.04 Jaunty Jackalope you have to use an earlier Driver the 1.60 or 1.30 the same for LinuMint7 Gloria the driver 1.80 not supported
Important note for Karmic Koala : I have tested this tutorial in Karmic Koala and is working like a sharme , you have to use the driver that i did rebuid you can Find it in this Link
For ubuntu9.10 Karmic koala (Driver has been rebuild by Zinovsky) : CAPTDRV160-unixmen.tar.gz
For other debian based and ubuntu9.04 jaunty:
Download from this Link : CAPTDRV160.tar.gz
2- Change to the folder where you download the driver and extract it, in my case :
cd /home/zinovsky/Desktop
Driver.tar.gz change Driver with the name and version of your driver in my case i downloaded CAPTDRV160.tar.gz
3- Extrat the driver to our desktop
tar xvf CAPTDRV180.tar.gz
Output -My example-
zinovsky@zinovskyhowtos ~/Desktop $ tar xvf CAPTDRV160.tar.gz
CAPTDRV160/
CAPTDRV160/doc/
CAPTDRV160/driver/
CAPTDRV160/src/
CAPTDRV160/doc/guide-capt-1.6xe.tar.gz
CAPTDRV160/doc/license-captdrv-1.60e.txt
CAPTDRV160/doc/readme-capt-1.6xe.pdf
CAPTDRV160/doc/readme-capt-1.6xe.txt
CAPTDRV160/driver/debian/
CAPTDRV160/driver/rpm/
CAPTDRV160/driver/debian/cndrvcups-capt_1.60-1_i386.deb
CAPTDRV160/driver/debian/cndrvcups-common_1.60-1_i386.deb
CAPTDRV160/driver/rpm/cndrvcups-common-1.60-1.i386.rpm
CAPTDRV160/driver/rpm/cndrvcups-capt-1.60-1.i386.rpm
CAPTDRV160/src/cndrvcups-common-1.60-1.tar.gz
CAPTDRV160/src/cndrvcups-capt-1.60-1.tar.gz
4- Change to the folder where you extract the drivers :
/Desktop/CAPTDRV160/driver/debian (Change 1.60 with your driver version)
ls
Output
cndrvcups-capt_1.60-1_i386.deb cndrvcups-common_1.60-1_i386.deb

5- Now install the debian package using the command :
sudo dpkg -i cndrvcups-common_1.60-1_i386.deb
and
sudo dpkg -i cndrvcups-capt_1.60-1_i386.deb
N.B if you got an error while trying to install the drivers,then use this command to correct the error
sudo apt-get -f install
Driver is installed .
6- Now we have to restart CUPS :
sudo /etc/init.d/cups restart
7-Now type tail /var/log/messages
sudo tail /var/log/messages
output -Myexample-
May 29 22:16:39 zinovskyhowtos kernel: [ 7188.983039] usblp0: removed
May 29 22:22:31 zinovskyhowtos kernel: [ 7541.254999] ipw2100: Fatal interrupt. Scheduling firmware restart.
May 29 22:25:49 zinovskyhowtos kernel: [ 7739.103317] ipw2100: Fatal interrupt. Scheduling firmware restart.
May 29 22:37:10 zinovskyhowtos -- MARK --
May 29 22:43:43 zinovskyhowtos sudo: pam_sm_authenticate: Called
May 29 22:43:43 zinovskyhowtos sudo: pam_sm_authenticate: username = [zinovsky]
May 29 22:43:43 zinovskyhowtos sudo: Warning: Using default salt value (undefined in ~/.ecryptfsrc)
May 29 22:44:21 zinovskyhowtos kernel: [ 8851.216062] usb 1-4: new high speed USB device using ehci_hcd and address 4
May 29 22:44:21 zinovskyhowtos kernel: [ 8851.401303] usb 1-4: configuration #1 chosen from 1 choice
May 29 22:44:21 zinovskyhowtos kernel: [ 8851.403427] usblp0: USB Bidirectional printer dev 4 if 0 alt 0 proto 2 vid 0x04A9 pid 0x2676
8- Now type :
/usr/sbin/lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E
N.B : If you are trying to install another LBP printer other than LBP2900 then use the command bellow and choose the CNCUPSLBPxxxxCAPTK.ppd
that correspond to your printer model and replace it in the the command above.
ls /usr/share/cups/model/ |grep CNCUPS
7-and then
/usr/sbin/ccpdadmin -p LBP2900 -o /dev/usb/lp0
N.B : If you are trying to install another LBP printer other than LBP2900 then change LBP2900 in the command above with your LBPxxxx printer
output :
CUPS_ConfigPath = /etc/cups/
LOG Path = None
UI Port = 59787
Entry Num : Spooler : Backend : FIFO path : Device Path : Status
----------------------------------------------------------------------------
[0] : LBP2900 : ccp : /var/ccpd/fifo0 : /dev/usb/lp0 : New!!
9- /etc/initd/ccpd start :
/etc/init.d/ccpd start
10- Now Set ccpd to start when you startup your computer:
For debian use :
sudo update-rc.d ccpd defaults 20
for other distributions i prefer this methode :
gedit /etc/rc.local
and add at the end :
/etc/init.d/ccpd start
save and close
10- Printer is ready to print :)
Status Monitor :
to monitor printing type :
captstatusui -P LBP2900
Important for Ubuntu9.04 jaunty jackalope :
If after following this tutorial you still can not print, and you got appear a second printer LBP29002 , then use this command :
1-If you got a second printer LBP29002 that appear as installed, use this command first :
lpadmin -x LBP29002 && sudo /etc/init.d/ccpd restart && sudo /etc/init.d/cups restart
If you can print so is ok, if not continue bellow
2- Remove this package :
sudo apt-get remove hal-cups-utils
3--Setup a launcher with a right click on your desktop and choose Create launcher :
then enter this command in the command place :
gksudo /etc/init.d/ccpd restart && /etc/init.d/cups restart

And everything will work perfectly. I already test it several times and is working.
N.B : Please don`t forget to report any issue in our forum for Canon Printers (Link to the Forum)
Thanks to everybody that helped to resolve issues with Jaunty or by reporting issues or by suggestions, special thank to Ricardo



Why not write instructions for human beings, after all you're talking about Ubuntu and Mint:
1. Download the .tar.gz
2. Right-click, choose "Extract here"
3. Go to the folder where files have been extracted and install by double clicking first "..common" and then "..capt" file
4. Restart
... not sure if it's possible to rewrite the rest commands, as I don't understand their meanings but you get the idea.