Created attachment 542778 [details] Ebuild Hi! Please find attached scangearmp2-3.50.ebuild and a patch so that it will compile on modern systems (and, additionally, won't crash on runtime). Scangear MP is a scanning tool supplied by Canon, for use with its multi-function printer/scanner combo units. Sadly these scanners don't work with SANE, so the easiest option is to use this utility. It supports scanning from the platen (flatbed) or from an automatic document feeder. This ebuild has no other dependencies that aren't already in the Portage tree. Marc van der Wal
Created attachment 542780 [details, diff] Patch that fixes a crash due to an uninitialized pointer
Created attachment 542798 [details, diff] Patch that fixes a crash due to an uninitialized pointer This version of the patch only makes the absolute necessary changes to the code in order to prevent it from crashing.
I think this package is very interesting for the main tree. Could you add to the longdescription, which printers are supported? LICENSE="Canon-IJ" Have to check, which RESTRICT= is required. Licenses Team can help. Is SRC_URI="http://gdlp01.c-wss.com/gds/3/0100009113/01/${MY_P}.tar.gz" reliable, or is it likely to change soon? HOMEPAGE="https://www.canon.com" Is there a more specific homepage?
========================== 1. GRANT OF LICENSE [..] You may modify the Software only for your own use and reverse engineer the same for debugging such modifications. ========================== Unfortunately Canon does not allow us to distribute their broken software with patches.
(In reply to Jonas Stein from comment #4) > ========================== > 1. GRANT OF LICENSE > [..] > You may modify the Software only for your own use and reverse engineer > the same for debugging such modifications. > ========================== > > Unfortunately Canon does not allow us to distribute their broken software > with patches. That's true, but we neither modify the software nor distribute a modified version. We would distribute a (trivial) patch along with it, to be applied on users' systems only for their own use. RESTRICT="bindist" will be needed, though. Disclaimer: IANAL, TINLA.
(In reply to Jonas Stein from comment #3) > I think this package is very interesting for the main tree. > Could you add to the longdescription, which printers are supported? By grepping the udev rules file that they install (which matches printers by their USB IDs), I get the following list: E3100 series E460 series E470 series E480 series G3000 series G4000 series MB2000 series MB2100 series MB2300 series MB2700 series MB5000 series MB5100 series MB5300 series MB5400 series MG2900 series MG3000 series MG3600 series MG5600 series MG5700 series MG6600 series MG6800 series MG6900 series MG7500 series MG7700 series MX490 series TR7500 series TR7530 series TR8500 series TR8530 series TR8580 series TS3100 series TS5000 series TS5100 series TS6000 series TS6100 series TS6130 series TS6180 series TS8000 series TS8100 series TS8130 series TS8180 series TS9000 series TS9100 series TS9180 series XK50 series XK70 series My Canon TR8550 printer is oddly enough missing from this list, even though I downloaded the software from the printer model’s support page. I haven’t tested it with USB but I can confirm that scanning through the network works like a charm. > Is SRC_URI="http://gdlp01.c-wss.com/gds/3/0100009113/01/${MY_P}.tar.gz" > reliable, or is it likely to change soon? It’s the same URL structure as for net-print/cnijfilter (which is the print driver for these units) and I haven’t experienced any problems with that package. Only the “0100009113” part might change between versions and there is no predictable way to “guess” that URL component. > HOMEPAGE="https://www.canon.com" > Is there a more specific homepage? Sadly, I don’t think there is. They don’t seem to offer the download from elsewhere than from their support page. To get to the software, you need to select your specific printer model and get to the driver download page. Also, there are multiple Canon support websites, one for each country.
(In reply to Ulrich Müller from comment #5) > (In reply to Jonas Stein from comment #4) > > ========================== > > 1. GRANT OF LICENSE > > [..] > > You may modify the Software only for your own use and reverse engineer > > the same for debugging such modifications. > > ========================== > > > > Unfortunately Canon does not allow us to distribute their broken software > > with patches. > > That's true, but we neither modify the software nor distribute a modified > version. We would distribute a (trivial) patch along with it, to be applied > on users' systems only for their own use. RESTRICT="bindist" will be needed, > though. > > Disclaimer: IANAL, TINLA. To be honest, I haven’t gotten in touch with Canon yet but I was considering to report the bug (and submit the patch) to them, hoping that eventually we won’t need to resort to patching it ourselves. Obviously I wish they had test-compiled their software with CFLAGS="-Wall" and without CFLAGS="-g". I see that net-print/cnijfilter, which is distributed under the same license terms, also has a patch, although it fixes the build system.
Hi. Is it likely that this ebuild will graduate to be a part of portage?
Created attachment 592028 [details] scangearmp2-3.60.ebuild scangearmp2-3.60.ebuild covers the following Canon devices: G3010 series Product_ID 0x183B G4010 series Product_ID 0x183D TS9100 series Product_ID 0x1820 TS8100 series Product_ID 0x1821 TS6100 series Product_ID 0x1822 TR8500 series Product_ID 0x1823 TR7500 series Product_ID 0x1824 TS5100 series Product_ID 0x1825 TS3100 series Product_ID 0x1827 E3100 series Product_ID 0x1828 TS9180 series Product_ID 0x183E TS8180 series Product_ID 0x183F TS6180 series Product_ID 0x1840 TR8580 series Product_ID 0x1841 TS8130 series Product_ID 0x1842 TS6130 series Product_ID 0x1843 TR8530 series Product_ID 0x1844 TR7530 series Product_ID 0x1845 XK50 series Product_ID 0x1846 XK70 series Product_ID 0x1847 TS9000 series Product_ID 0x179F TS8000 series Product_ID 0x1800 TS6000 series Product_ID 0x1801 TS5000 series Product_ID 0x1802 MG3000 series Product_ID 0x180B E470 series Product_ID 0x180C G4000 series Product_ID 0x181D MB2100 series Product_ID 0x1793 MB2700 series Product_ID 0x1792 MB5100 series Product_ID 0x1790 MB5400 series Product_ID 0x178F G3000 series Product_ID 0x1794 MG7700 series Product_ID 0x178B MG6900 series Product_ID 0x178C MG6800 series Product_ID 0x178D MG5700 series Product_ID 0x178E MG3600 series Product_ID 0x178A MX490 series Product_ID 0x1787 E480 series Product_ID 0x1789 MG7500 series Product_ID 0x177C MG6600 series Product_ID 0x177E MG5600 series Product_ID 0x177F MG2900 series Product_ID 0x1780 MB2000 series Product_ID 0x1778 MB2300 series Product_ID 0x1779 MB5000 series Product_ID 0x1776 MB5300 series Product_ID 0x1777 E460 series Product_ID 0x1788
Created attachment 592030 [details, diff] scangearmp2-3.60-1_fix_crash.patch Patch file used by scangearmp2-3.60.ebuild