Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 205536 - net-print/cnijfilter-2.80 - Canon Pixma mp140, mp210, ip3500, mp520, ip4500, mp610
Summary: net-print/cnijfilter-2.80 - Canon Pixma mp140, mp210, ip3500, mp520, ip4500, ...
Status: RESOLVED DUPLICATE of bug 446530
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Default Assignee for New Packages
URL: http://software.canon-europe.com/soft...
Whiteboard: sunrise suggested
Keywords: EBUILD
Depends on:
Blocks: printer-drivers
  Show dependency tree
 
Reported: 2008-01-12 21:10 UTC by Victor Mataré
Modified: 2017-09-26 17:41 UTC (History)
15 users (show)

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


Attachments
net-print/cnijfilter/cnijfilter-2.80.ebuild (cnijfilter-2.80.ebuild,7.11 KB, text/plain)
2008-01-12 21:21 UTC, Victor Mataré
Details
updated URI and DEPEND (cnijfilter-2.80-r1.ebuild,6.94 KB, text/plain)
2010-04-14 00:55 UTC, Victor Mataré
Details
Proposed patch for jmpbuf build error (cnijfilter-2.80-fix-jmpbuf.patch,398 bytes, patch)
2011-12-16 08:31 UTC, Dan Merget
Details | Diff
ebuild file that uses the setjmp patch (cnijfilter-2.80-r1.ebuild,7.00 KB, text/plain)
2011-12-16 08:39 UTC, Dan Merget
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Victor Mataré 2008-01-12 21:10:27 UTC
net-print/cnijfilter/cnijfilter-2.80.ebuild
Comment 1 Victor Mataré 2008-01-12 21:21:40 UTC
Created attachment 140828 [details]
net-print/cnijfilter/cnijfilter-2.80.ebuild
Comment 2 Victor Mataré 2008-01-12 21:25:52 UTC
This is based on bug #177970
Supports the later Canon Pixma models (mp140, mp210, ip3500, mp520, ip4500 and mp610).
It works on my amd64 system with a Pixma iP3500, so no testing on servicetools has been done. I appreciate any feedback.
Comment 3 Victor Mataré 2008-01-12 23:10:29 UTC
well... theoretically, it's not a good idea to have portage interpret the ebuild's version number, because it should be possible to install any of these versions in parallel, as they all support different printers.
Comment 4 Colin Kiegel 2008-01-13 10:45:27 UTC
You're right in principle. One could slot the different 'versions' to be able to install them in parallel. However these ebuilds only bridge the time until opensource drivers are available.

I think the most important point is, that there is a working solution. :)
Comment 5 Tim M. Aretz 2008-02-03 20:16:23 UTC
(In reply to comment #2)
> It works on my amd64 system with a Pixma iP3500, so no testing on servicetools
> has been done. I appreciate any feedback.

I can confirm that it works with x86 and ip4500. Only 600dpi though and I did not try any special paper yet, but the usual cups-test page looks good.
Thanks for this workaround! 

Comment 6 Sander Brabander 2008-03-29 21:51:54 UTC
Is there a way to increase the max dpi?
Comment 7 Mike 2008-07-06 08:13:32 UTC
Hi there, just tried this ebuild on my x86-64 system.  I have a Canon Pixma MP210 and it works just fine.
Comment 8 Matthew Schultz 2008-08-07 14:53:57 UTC
Why is this bug resolved?  It doesn't exist in portage so it should remain open.
Comment 9 Victor Mataré 2008-09-23 21:10:38 UTC
reopening this so it can be found by a standard search...
Comment 10 Peng Liu 2008-10-28 08:55:23 UTC
Hi, thank you very much for the ebuild, installed and works great. But I couldn't find a option to print Grey scale picture instead of RGB color one anywhere. My MP210 only have RGB in color model option to choose from. That is the contents of ColorModel in my /usr/share/cups/model/cannonmp210.ppd:

*OpenUI *ColorModel/Color Model: PickOne
*DefaultColorModel: rgb
*ColorModel rgb/RGB: "<</cupsColorOrder 0/cupsColorSpace 1/cupsCompression 0/cupsBitsPerColor 8>>setpagedevice"
*CloseUI: *ColorModel

I suppose that modify that it could do the trick, but don't know how.

Seems my problem same like this:
http://ubuntuforums.org/archive/index.php/t-900883.html
but strange thing is I can't find in either Adobe Reader8 or Evince howto print
a color pdf file in grey scale.

Comment 11 Peng Liu 2008-11-02 21:57:44 UTC
Tried to print in KPDF today, even set color mode to grayscale inside KPDF, it still print out a color one. So it seems to me something wrong with driver. Unless I change the source to print, there is no way that I can print a pdf document from this printer a grayscale output using this driver.
Comment 12 Marek Kozlowski 2008-12-30 16:37:23 UTC
The 2.90 is available (for example iP100): http://software.canon-europe.com/products/0010626.asp
Comment 13 Jeremy Olexa (darkside) (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2009-04-14 18:30:41 UTC
(this is an automated message based on filtering criteria that matched this bug)
'EBUILD' is in the KEYWORDS which should mean that there is a ebuild attached 
to this bug.
This bug is assigned to maintainer-wanted which means that it is not in the 
main tree.
Heuristics show that no Gentoo developer has commented on your ebuild.

Hello, The Gentoo Team would like to firstly thank you for your ebuild 
submission. We also apologize for not being able to accommodate you in a timely
manner. There are simply too many new packages.

Allow me to use this opportunity to introduce you to Gentoo Sunrise. The 
sunrise overlay[1] is a overlay for Gentoo which we allow trusted users to 
commit to and all users can have ebuilds reviewed by Gentoo devs for entry 
into the overlay. So, the sunrise team is suggesting that you look into this 
and submit your ebuild to the overlay where even *you* can commit to. =)

Because this is a mass message, we are also asking you to be patient with us. 
We anticipate a large number of requests in a short time. 

Thanks,
On behalf of the Gentoo Sunrise Team,
Jeremy.

[1]: http://www.gentoo.org/proj/en/sunrise/
[2]: http://overlays.gentoo.org/proj/sunrise/wiki/SunriseFaq
Comment 14 Dennis Schridde 2009-04-21 09:29:55 UTC
Duplicate of bug #130645 ?
Comment 15 Victor Mataré 2009-04-26 16:33:00 UTC
you do realize that those different versions all target different printer models? To integrate this properly and usably, we need to create an ebuild that automatically installs the correct version(s) of cnijfilter based on a printer selection by useflag.
Comment 16 Dennis Schridde 2009-04-26 16:50:26 UTC
I would not do it that complicated. Just provide the ebuild, and let the user figure out which version he needs. Preferably the ebuild would be slotable.
Another idea would be to name the package net-print/cnijfilter_2.80 and create a -0 version, so the meta net-print/cnijfilter package could depend on the specific versions.
Comment 17 Ron MacNeil 2010-02-14 20:47:38 UTC
Additional download URL (existing two aren't working for me):

http://gdlp01.c-wss.com/gds/1/0100000841/01/cnijfilter-common-2.80-1.tar.gz
Comment 18 Sebastian Dörner 2010-03-19 21:32:13 UTC
The servicetools use flag requires libxml, which has just been hardmasked:

# Samuli Suominen <ssuominen@gentoo.org> (18 Mar 2010)
# Orphaned and vulnerable library.  Use libxml2 instead.
#
# Bugs 281446 and 281444
#
# Masked for removal in 30 days
Comment 19 Victor Mataré 2010-04-14 00:55:17 UTC
Created attachment 227699 [details]
updated URI and DEPEND

ok, I've updated the ebuild to use the new download URL and to depend on ghostscript-gpl. I couldn't really test the servicetools with libxml2 since I don't have the printer here. But they seem to compile and some also start up. More testing appreciated.
Comment 20 Mike Gualtieri 2010-07-22 16:41:39 UTC
Do the USE flags in this ebuild change the outcome of the compilation?  Scanning through it, I didn't see how they changed the build process...
Comment 21 Victor Mataré 2010-07-23 13:58:08 UTC
(In reply to comment #20)
> Do the USE flags in this ebuild change the outcome of the compilation? 
> Scanning through it, I didn't see how they changed the build process...
> 
Yes. In src_compile():

for i in `seq 0 ${_max}`; do
	if use ${_pruse[$i]} || ${_autochoose}; then
		_pr=${_prname[$i]} _prid=${_prid[$i]}
		src_compile_pr;
	fi
done
Comment 22 Pacho Ramos gentoo-dev 2011-08-28 13:09:06 UTC
(In reply to comment #19)
> Created attachment 227699 [details]
> updated URI and DEPEND
> 
> ok, I've updated the ebuild to use the new download URL and to depend on
> ghostscript-gpl. I couldn't really test the servicetools with libxml2 since I
> don't have the printer here. But they seem to compile and some also start up.
> More testing appreciated.

Is 2.80 the latest version supporting your printers? If not, better try to bump ebuild to latest one.

More suggestions:
- Isn't your printed supported by opensource alternatives like gutenprint/sane-backends?

- Try to bump ebuild to EAPI=4. Looks at:
http://devmanual.gentoo.org/ebuild-writing/eapi/index.html

for that.

- License should be "GPL-2" and we would need to commit a "Canon" license to the tree per I can read in:
http://support-asia.canon-asia.com/contents/ASIA/EN/0100084101.html

- Update homepage to above one ;)

- Try to use a SLOT for it -> 2.80 , that way we try to allow parallel installation with other driver versions. Other option would be to have a different package for each version, probably this needs more discussion (how would be better to handle this, slotting or separate packages?)

- IUSE contents look to be wrong: most listed flags are not used in ebuild and, then, should be dropped from IUSE

- DEPEND mixes runtime deps with buildtime ones, split them please listing buildtime only deps only under DEPEND and remaning ones under RDEPEND.

- pkg_setup:

* Drop LINGUAS checking, it doesn't look to be needed
* servicetools looks to need gtk+1 and libxml, both are deprecated (libxml was removed), please recheck if that dependencies are ok (updated) and, if still needing that old stuff, simply remove its support always.
* Are you setting /usr/local as prefix? It's wrong, it should use /usr or /opt if it's a binary only application:
http://devmanual.gentoo.org/general-concepts/filesystem/index.html
* /usr/lib/cups should also use get_libdir instead of plain "lib"
* Drop "einfo" statements about USE flags, descriptions must go in metadata.xml files.
* Is "nocupsdetection" really need for Gentoo? Maybe it could be renamed to "bindist" :-/

- src_compile:
* Split commands to complaint src_configure and src_compile phases. Also think about src_prepare phase for other tasks.
* Change all "make" invocations to use "emake" instead

- src_install:
* Use "emake" instead of "make"

- pkg_postinst:
* Use "elog" instead of "einfo":
http://devmanual.gentoo.org/ebuild-writing/messages/index.html

- src_compile_pr:
* Drop sleep command if not really required


Thanks a lot for taking care
Comment 23 Dan Merget 2011-12-16 08:31:09 UTC
Created attachment 296003 [details, diff]
Proposed patch for jmpbuf build error
Comment 24 Dan Merget 2011-12-16 08:39:01 UTC
Created attachment 296005 [details]
ebuild file that uses the setjmp patch

The code no longer compiles due to a change in the libpng: as of libpng-1.5.0, the definition of png_struct moved to a separate .h file that is inaccessible to clients, so the code cannot access png_p->jmpbuf directly.  I get the following build error from emerge:

> bjfimage.c: In function 'png_image_init':
> bjfimage.c:1578:6: error: dereferencing pointer to incomplete type

The proposed cnijfilter-2.80-fix-jmpbuf.patch file that I just attached, along with the attached cnijfilter-2.80-r1.ebuild (which is identical to the 2010-04-14 ebuild except for two extra lines to call the patch), fixed the problem on my system.
Comment 25 Alessandro Di Federico 2012-03-12 07:58:46 UTC
I've used a similar patch and seems to work.

More info from an Arch guy:
http://paste.pocoo.org/show/549065/
Comment 26 Andreas K. Hüttel gentoo-dev 2012-05-26 18:53:00 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 dilfridge@gentoo.org 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]), 
* ...

[1] http://git.overlays.gentoo.org/gitweb/?p=proj/printer-drivers.git;a=summary
[2] http://www.gentoo.org/doc/en/articles/openssh-key-management-p1.xml
[3] http://www.gentoo.org/doc/en/gnupg-user.xml
[4] http://dev.gentoo.org/~zmedico/portage/doc/man/repoman.1.html
[5] http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml?part=2
[6] http://devmanual.gentoo.org/
Comment 27 Sergey Popov gentoo-dev Security 2012-12-09 08:26:01 UTC
*** Bug 130645 has been marked as a duplicate of this bug. ***
Comment 28 Sergey Popov gentoo-dev Security 2012-12-09 08:26:25 UTC
*** Bug 258244 has been marked as a duplicate of this bug. ***
Comment 29 Sergey Popov gentoo-dev Security 2012-12-09 08:26:40 UTC
*** Bug 446530 has been marked as a duplicate of this bug. ***
Comment 30 kisak42 2012-12-09 13:27:52 UTC
as mentioned in comment 15, those cnijfilter bug reports are for different versions of cnijfilter, which is neither forward or backward compatible with this one and are intended for different printers. Please unduplicate those three reports.
Comment 31 Julian Ospald 2012-12-09 13:38:22 UTC
seems it was irritating some people cause there are no slots for this package

I suggest you introduce slots for each of them and make them block each other in case there are file collisions.

This is sane for driver ebuilds, cause it indicates that we have different set of features/compatibility here and users will not just want the latest version.
Comment 32 Tomáš Chvátal (RETIRED) gentoo-dev 2012-12-21 11:02:12 UTC

*** This bug has been marked as a duplicate of bug 446530 ***
Comment 33 gentoo 2017-09-26 17:41:48 UTC
If you are still interested in the 2.80 version, please request again the package for your printer series as explained in https://wiki.gentoo.org/wiki/Canon_Pixma_Printer. This way to sort between "no more needed" / "still needed" ones, and to avoid wasting time on obsolete / unused series.