Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 302881 - Add cups driver for Canon (UFR II), e.g. for imageCLASS MF4320d/MF4350d/MF4370dn
Summary: Add cups driver for Canon (UFR II), e.g. for imageCLASS MF4320d/MF4350d/MF4370dn
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Printing (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Pacho Ramos
Depends on:
Blocks: printer-drivers
  Show dependency tree
Reported: 2010-01-30 15:00 UTC by aditsu
Modified: 2013-07-26 17:07 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---

Canon license (LICENSE-ufr2drv-2.70E.txt,28.74 KB, text/plain)
2013-06-29 08:19 UTC, Pacho Ramos
cndrvcups-common-lb-2.70.ebuild (cndrvcups-common-lb-2.70.ebuild,1.16 KB, text/plain)
2013-06-29 08:46 UTC, Pacho Ramos
cndrvcups-lb-2.70.ebuild (cndrvcups-lb-2.70.ebuild,1.24 KB, text/plain)
2013-06-29 08:46 UTC, Pacho Ramos

Note You need to log in before you can comment on or make changes to this bug.
Description aditsu 2010-01-30 15:00:03 UTC
I have a MF4370dn printer, and I couldn't find any driver for it in portage. Canon does provide a Linux driver, e.g. at and it seems that it's even GPL (not sure if all or part of it). I actually installed it (not without effort) and used it, but recently it stopped working, probably after a system update. I'd really appreciate if it could be added to portage.

About how it's not working now:
If I try to print something, the printer status in cups (http://localhost:631/printers/) changes to "src = libcanon_pdlwrapper.c, line = 973, err = -1¥n"
and also revdep-rebuild says "broken /usr/lib64/ (requires -lslim)" and then "!!! /usr/lib64/ not owned by any package is broken !!!"
I guess I'll have to go through the pain of reinstalling the driver and hope for the best..

Reproducible: Always

Steps to Reproduce:
Comment 1 aditsu 2010-02-13 21:44:21 UTC
An update: I reinstalled the driver (rpm) in the meantime; I'm still getting the "lslim" message from revdep-rebuild. I can print some documents now, but some pdfs won't print.
Comment 2 Thomas Kreuzer 2010-02-17 07:17:57 UTC
There seems to be an even newer version of UFR2.
The cndrvcups-ufr2 (rpm/deb) package is version 2.00-2, however, I couldn't find the source code for this version.
Anyhow, is there also the source code for the cndrvcups-common out there? I mean in a recent version?
That's needed as well, right?
Comment 3 Thomas Kreuzer 2010-02-17 07:47:47 UTC
I just found this:
The common files already exist in form of an ebuild (at least vor version 1.90-1)
Comment 4 aditsu 2011-03-10 13:48:13 UTC
The Linux driver is no longer available on the HK site but there seem to be 2 drivers on the SG site:
- UFR II -
- CAPT (found on the other bug report) -
I wonder what's the difference
Comment 5 aditsu 2011-03-10 13:54:13 UTC
Oh wait, the CAPT one may be for different models. I was only offered the UFR II for <subject>.
Comment 6 Andreas K. Hüttel archtester gentoo-dev 2012-01-15 16:24:13 UTC
Canon UFR II driver for cups... it's a binary blob :|
Comment 7 Andreas K. Hüttel archtester gentoo-dev 2012-05-26 18:18:24 UTC
Are you interested in maintaning this driver directly yourself in the new 
printer-drivers overlay [1]?

If yes, just send me via personal e-mail at the
following data, so we can give you git push access to the overlay:
* the user name that you'd like to have
* your public ssh key [2], so we can give you git push access to the overlay
* your e-mail address
* and your full name
If you have a gnupg key, you should sign that e-mail [3].

Just a few rules:
* Initially, the ebuilds should work for you, and not break
  anything else.
* You enter yourself as maintainer in metadata.xml (together with
  the printing herd), and are then automatically cc'ed in bug reports 
  on bugzilla.
* We will guide you towards improving the ebuilds over the next 
  months so they follow the rules and qa guidelines of the Gentoo 
  main portage tree. In particular this means also using a recent
  EAPI (3 or perferably 4), and fixing repoman warnings [4].
  Don't worry, we'll help you with that.
* I hope this is never going to happen, but... ebuilds that "work but 
  go against the guidelines" and do not see any improvement will be 
  removed again one year after initial addition.

There are many ways to get help.
* You can directly ask me by personal e-mail (my time is limited, 
  but I'll try), 
* you can ask on freenode, channel #gentoo-dev-help,
* you can read the documentation (ebuild howto [5], devmanual [6]), 
* ...

Comment 8 aditsu 2012-05-26 19:26:42 UTC
(In reply to comment #7)
> Are you interested in maintaning this driver directly yourself in the new 
> printer-drivers overlay [1]?

I am potentially interested, but have no idea how to go about it. Assuming I successfully get access to the overlay, I don't know what to do next.
I'll probably need assistance to the extent that somebody else will be practically doing all the work.

> Just a few rules:
> * Initially, the ebuilds should work for you

That's the most difficult part. I still don't have it working reliably, and revdep-rebuild always complains about lslim.

If you think these points are not "blockers", then I'll try to get the required info and email you.

P.S. There's a "cups-bjnp" in portage, I'm not sure if it works for my printer and how to test it
Comment 9 aditsu 2013-02-19 17:38:03 UTC
A little update:
I set up the printer on a new laptop, and for that I downloaded newer drivers from (Linux_UFRII_PrinterDriver_V250_us_EN.tar.gz)
It has 32 and 64-bit drivers (in RPM form), documents and source code.

I installed the RPMs using rpm -ivh --nodeps
I got an error that /usr/libexec/cups/filter/pstoufr2cpca was not found, so I symlinked it from /usr/lib64/cups/filter/pstoufr2cpca, then I was able to print a test page.
revdep-rebuild finds these problems:
 *   broken /usr/lib64/ (requires -lslim)
 *   broken /usr/lib64/ (requires /usr/lib/gcc/i386-redhat-linux/3.4.3/../../..//
 *   broken /usr/local/lib64/ (requires /usr/lib64/

I suspect I can fix the libxml2 errors by reinstalling libxml2 with USE=static-libs; still not sure what to do about lslim
Comment 10 aditsu 2013-02-19 18:11:59 UTC
USE=static-libs didn't fix it, but lafilefixer did.
As for -slim, I googled for libslim and ended up downloading and installing slimdata-2.6.4-4.fc18.x86_64.rpm and slimdata-devel-2.6.4-4.fc18.x86_64.rpm (Fedora packages). Now revdep-rebuild doesn't find any more problems :)
During my research, I also found this discussion: - it looks like somebody already worked on an ebuild.
Comment 11 Pacho Ramos gentoo-dev 2013-06-26 16:23:37 UTC
Updated version at:

I am trying to get that .exe file (that contains RPMs) :S
Comment 12 Pacho Ramos gentoo-dev 2013-06-29 08:19:45 UTC
Created attachment 352208 [details]
Canon license
Comment 13 Pacho Ramos gentoo-dev 2013-06-29 08:20:19 UTC
(In reply to Pacho Ramos from comment #12)
> Created attachment 352208 [details]
> Canon license

Licenses, can you take a look to Canon license to see if you are ok? (or we already have it with a different name...)

Comment 14 Pacho Ramos gentoo-dev 2013-06-29 08:46:12 UTC
Created attachment 352214 [details]
Comment 15 Pacho Ramos gentoo-dev 2013-06-29 08:46:29 UTC
Created attachment 352216 [details]
Comment 16 Pacho Ramos gentoo-dev 2013-06-29 11:59:00 UTC
Comment 17 aditsu 2013-07-26 16:26:13 UTC
Hi, I installed the new driver and it doesn't seem to work - the printer is not doing anything when I print but cups says the job is completed.
Comment 18 Pacho Ramos gentoo-dev 2013-07-26 17:07:28 UTC
Open a separate bug then

(that should also contain cups logs, /var/log/syslog and journalctl outputs)