Підключення принтерів Canon

Як підключити МФУ MP160 в третій Grushi
Остання активність
Закрито
Ні

Повідомлення

Так немає, але в Убунті він нормально працював і не було ніяких проблем. Думаю, що такий дівайс не тільки в мене. Багато людей користуються принтерами Canon.

Цитата:
Якщо під нього немає драйвера, то ніяк. А на офіційному сайті його немає я там був. Тому вихід шукати відкритий.
поганенько шукали http://software.canon-europe.com/products/0010247.asp тиц)

Де знайти драйвери я давно знаю, колись встанолював на Mandrivу, скачував з azia.com. В Дебіані чи Мандріві встановити ці пакети дуже просто, а тут все занадто запутано, як для простого користувача. Мудрі голови не дають нормального пояснення. Прийдеться повертатись на Убунту. А я вже почав агітувати друзів ставити Грушу.

Так і роблю. Але качаю Ubunta 10.04 (распін). Наші львів'яни замутили. Подивлюсь як встановиться. Відгуки не погані. Бо в мене складається таке враження, що ніхто з розробників не зацікавлений допомогти встановити драйвер для Canonа.http://grusha.org.ua/phpbbforum/posting ... f=22&t=58#

Питання вирішено.
Драйвери для Кенонів доступні в репозитарії Груші.
Детальніше тут:
http://linux.grusha.org.ua/content/додано-пак-драйверів-для-принтерів-canon
Прошу відписатися по результатам. :write:

Пане vitovt, дуже вдячний за те, що підключено драйвери для Canon. Але все одно щось не те. Пробував підключити MP160 після того як встановив драйвера. Система розпочинає пошук принтера і через 2-3 секунди припиняє пошук. Пробував встановити шлях до принтера вручну, але результат нульовий.
Підключив іР1000. система розпізнала принтер, віднайшла необхідний драйвер, але попросила встановити програму "pstocanonbj". Такої програми в репозиторіях немає.
В чому причина?

Опишіть детально як ставили: якою програмою, що натискали, в який момент підключали принтер, чи був він увімкнений, який драйвер вибирали.
Додайте пару скріншотів, чи команд, які писали в консолі.
Опишіть яка програма сказала, що їй чогось не вистачає, після якої дії ?

Програми >Система >Друк. Додати >Принтер. Система знаходить принтер і просить вибрати модель модель. Вибираю ip1000 (ver. 2.70). Система знаходить драйвер Cnijfilter-2.70 англійську версію, погоджуюсь і тоді зявляється віконце, що для друку необхідно встановити програму pstocanonbj. Відкриваю консоль:
su
пароль
equo search pstocanonbj
відповідь : такої програми в репозиторіях немає.
Поновлюю базу репозиторіїв і набираю:
equo install pstocanonbj
результат той самий.

Цитата:
Питання вирішено.
Драйвери для Кенонів доступні в репозитарії Груші.
Детальніше тут:
http://linux.grusha.org.ua/content/додано-пак-драйверів-для-принтерів-canon
Прошу відписатися по результатам. :write:
Ось результат

Цитата:
Питання вирішено.
Драйвери для Кенонів доступні в репозитарії Груші.
Детальніше тут:
http://linux.grusha.org.ua/content/додано-пак-драйверів-для-принтерів-canon
Прошу відписатися по результатам. :write:
Ось результат
А хто вчив ставити програми не із під рута?

leonidу
Справді там не написано, але програми в
Лінуксі встановлюють з під root.
Тому в консолі наберіть
su
потім введіть пароль root
його не буде видно. І натисніть
enter. І поїхали....

Скоріше всього під час оновлення пропав KDE. В мене було таке при оновленні Firefoxa. Загрузився через Fluxbox і поновив KDE. Все стало на своє місце. Знаєте, Гном на багато простіший і коли користувався Убуною він не злетів ні одного разу. А тут таке вже було два рази.

Цікаво? Все таки хтось з користувачів зміг налаштувати Canon MP160 чи ні? Бо я вже втратив надію, на це. Переглянув так багато сторінок, але нічого путнього не знайшов.

А в чому власне проблема ? Вибираете в меню програм --> Параметри --> друк і ставите драйвери на принтер.
ВОни називаються Canon --- PIXMA MP160
шукати в списку Кенонів на букву "P" - Pixma.

Все повинно працювати. Опишіть детально процес що ви робите.

Постараюсь описати конкретно.
Залізо: АМД64 Х2, 2 гіги оперативки, мат плата MSI K9 Ultra.
А тепер по порядку: Пуск-Парамери-Друк. Програма не знаходить принтера. Тоді так:
Пуск-Параметри-Printing. Принтер знайдено. Вибираю модель, драйвер, ставлю розташування. Вибираю друк тестової сторінки, але нічого не відбувається. Але тепер коли відкриваю Пуск-Параметри-Друк, бачу свій принтер.
Відкриваю Властивості і бачу дивну назву. Додаю скріншоти.

Troubleshooting
If it doesn't work
Remember to reload the .ppd file into cups whenever you make changes, i.e. restart cups.
amd64
If it fails because of
/emul/linux/x86/usr/lib/libssl.so.0.9.7: undefined reference to `HMAC_CTX_set_flags'
downgrade app-emulation/emul-linux-x86-baselibs-2.5.5 to 2.5.4 with
echo "=app-emulation/emul-linux-x86-baselibs-2.5.5" >> /etc/portage/package.mask
emerge emul-linux-x86-baselibs
gcc 4.* and amd64
It's likely not to compile due to some linking problems like:
../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible ../../214/libs_bin/libcnbpcmcm214.so when searching for -lcnbpcmcm214
You can try Shan's binary packages from above.
Gentoo Forum
Feel free to visit the original Forum Thread and ask for support.
[edit]

Шукав по різних форумах яку-небудь інформацію, яка допомогла б мені встановити драйвер до мого лазерного принтера (Canon LBP 2900) на третю версію Груші, і надибав ось це — http://www.gentoo.ru/node/15417. Тут якраз обговорювалося, і було вирішено аналогічну проблема (встановлення дравера для Canon — MP160) для Gentoo Linux (Sabayon побудовано на основі Gentoo).

Не знаю чи допоможе це у вирішенні проблеми піднятої у цій темі, і чи актуальна ця проблема зараз. Тим більше, що обговорення на тому форумі було більше року назад , а драйвери принтерів Canon перестають друкувати, та/або потребують нової інструкції встановлення чи не після кожного оновлення системи CUPS, та зміни версії операційної системи Linux.

Щось не дуже розробники драйверів для принтерів Canon під Linux думають про зручність їх встановлення для простих користувачів :evil: .

Шановний пане Leonid, про це я вже писав. Прочитайте повідомлення за 23 серпня.
Але конкретної відповіді немає досі. Напевно цієї проблеми ніхто не вирішував.

Програми >Система >Друк. Додати >Принтер. Система знаходить принтер і просить вибрати модель модель. Вибираю ip1000 (ver. 2.70). Система знаходить драйвер Cnijfilter-2.70 англійську версію, погоджуюсь і тоді зявляється віконце, що для друку необхідно встановити програму pstocanonbj. Відкриваю консоль:
su
пароль
equo search pstocanonbj
відповідь : такої програми в репозиторіях немає.
Поновлюю базу репозиторіїв і набираю:
equo install pstocanonbj
результат той самий.

Як поновити базу репозитаріїв?
Баги
-коли робив прінтскрін, всі переміщені файли з правої сторони екрану перемістилися наліво.
-далеко не всі шрифти меню збільшилися до 13 і вердана

Вітаю!
У мене Canon Pixma IP1700.
Проблема із встановленням вирішена завдяки http://forum.sabayon.org/viewtopic.php?f=56&t=10310&p=63838&hilit=canon+500#p63838
Довелось підправити cnijfilter-2.70.ebuild, бо на ftp://download.canon.jp/pub/driver/bj/linux/ немає сирців cnijfilter-common-2.70-1.i386.src.rpm. Погугливши знайшов на ftp://ftp.linux.kiev.ua/pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj/linux.
emul-linux-x86-bjdeps не компілював, бо вже було встановлено.
Принтер працює чудово.
Дякую розробникам за пречудову систему GRUSHA 3.1! Перехід на Gentoo -це правильне рішення.

Щоб підтримати операційну систему Grusha Linux, бажано описувати свої досягнення більш детально. Наприклад детально (орієнтуючись на новачків) написати інструкцію для встановлення драйверу для якогось обладнання, чи виправлення якогось недоліку (особливо якщо для цього довелося добре поморочитися).

Вітаю, шановні добродії!
Я давно з лінуксами (ще з мандрейка), але я не програміст, тому знаючі люди мене поправлять.
З принтерами Canon так завжди було, що треба-було погратись із встановленням драйверів і не тільки, - я маю на увазі фільтри cnijfilter.
В системах з .rpm пакунками легше - просто треба було встановити необхідний підходящий пакет. На превеликий жаль на сайті виробника немає драйверів до мого IP1700, - тому встановлювався пакунок для IP2200.
Це є не тільки проблемою ГРУШІ, але й будь-якого іншого дистрибутиву лінукса. Тому нам, користувачам безплатного ПЗ, треба пробувати прилаштувати до нашого заліза те, що є в наявності, - ГУГЛ нам в допомогу. Це малий і далеко не повний список відповідностей фільтрів моделям принтерів Canon:

cnijfilter-2.60-r6 => ip2200, ip4200, ip6600d, ip7500, mp500

cnijfilter-2.70-r1 => mp160, mp510, mp600, ip90, ip1800, ip2500, ip3300, ip4300

cnijfilter-2.80 => mp140, mp210, ip3500, mp520, ip4500, mp610

cnijfilter-2.90 => ip100, ip2600

cnijfilter-3.00 => ip1900, ip3600, ip4600, mp190, mp240, mp540, mp630

cnijfilter-3.10 => mx320, mx330, mx860

cnijfilter-mp540-3.00 => mp540

Тепер по суті:

Встановлюємо пакет з драйверами до Canon-ів, як писалось раніше. А потім:

1. Запускаємо krusader з правами рута. Знаходимо файл /etc/make.conf і добавляємо після
## PORTAGE CONFIG ##
source /var/lib/layman/make.conf
PORTDIR_OVERLAY=/usr/local/portage
та зберігаємо файл.
2. Створюємо каталог /usr/local/portage/app-emulation/emul-linux-x86-bjdeps/.
3. Створюємо каталог /usr/local/portage/net-print/cnijfilter/.
4. Копіюємо файл emul-linux-x86-bjdeps-0.1-r1.ebuild в каталог, описаний в пункті 2 вище. Файл ви можете знайти на Gentoo Bugzilla Web page http://bugs.gentoo.org/show_bug.cgi?id=129352.
5. Запускаєте термінал і під рутом вводите ebuild /usr/local/portage/app-emulation/emul-linux-x86-bjdeps/emul-linux-x86-bjdeps-0.1-r1.ebuild manifest і натискаєте ENTER.
6. Копіюємо файл popt-1.7-missing-tests.patch з http://bugs.gentoo.org/show_bug.cgi?id=129352 в каталог /usr/local/portage/app-emulation/emul-linux-x86-bjdeps/files/.
7. Копіюємо файл popt-1.7-nls.patch з http://bugs.gentoo.org/show_bug.cgi?id=129352 в каталог /usr/local/portage/app-emulation/emul-linux-x86-bjdeps/files/.
8. Повторюємо пункт 5.
9. Копіюємо файл cnijfilter-2.70.ebuild в каталог, описаний в третьому пункті вище. Ви можете знайти цей файл на Gentoo Bugzilla Web page: http://bugs.gentoo.org/show_bug.cgi?id=177970
.
10. Заходимо в термінал і від рута набираємо:
ebuild /usr/local/portage/net-print/cnijfilter/cnijfilter-2.70.ebuild manifest. Тиснем ENTER.
11. Далі від рута в терміналі набираємо :

emerge -v emul-linux-x86-bjdeps
USE="mp510" emerge -v cnijfilter (там де mp510 вводимо модель свого принтера) і тиснемо ENTER.
12. Далі перезапускаємо CUPS, або ж перезагружаємо комп’ютер.
13. Заходимо в налаштування CUPS чере FIREFOX за адресою http://localhost:631/ чи через "система/администрирование/настройка печати", далі "Администрирование" та "Добавить принтер". Зкомпільований нами драйвер принтера (в нашому випадку Canon MP510) з’явиться в локальній базі драйверів CUPS. Вибираємо його та пробуємо друкувати тестову сторінку. Якщо вийшло - насолоджуємось роботою принтера.
Для інших моделей принтерів вам треба вибрати відповідний фільтр із списку відповідностей фільтрів моделям та відредагувати вказані вище команди, підставивши в них назву пакунка вашого фільтру.
Після введення команд в терміналі, в процесі компіляції можуть бути попередження, що якогось файла немає на сервері чи просто 404, - тоді шукаємо потрібний файл гуглом, редагуємо відповідний ebild-файл та пробуємо повторити знову emerge...

Цитата:
Чудово! Шкода що не можна з ІР-1000 (((
Почитайте тут:
http://forum.sabayon.org/viewtopic.php?f=57&t=4851 і ще:
http://chern.su/forum/thread50.html
Десь внизу сторінки - можливо допоможе.
А взагалі про встановлення Canon тут:
http://en.gentoo-wiki.com/wiki/Canon_Pixma_Series

Цитата:
Не зовсім розумію мету таких дій. Адже драйвери до багатьох Кенон там вже є - Вітовт мав поставити в цьому релізі.
Шановний leonid!
Мета одна - щоб запрацювало. Але такі реалії, що кенону по-барабану вільні нікси. Не хочете гратися - користуйтеся TurboPrint (платний), а не хочете платити - тоді тільки руцями. А я вдячний знаючим людям за те, що змогли в генту прикрутити *.src.rpm, - бо інакше було б ще важче заставити працювати принтер. А якщо хтось зможе покласти всі кенонівські драйвери в один пакет та ще й безкоштовно,- це буде щось...

Я дуже Вам вдячний romeolekу за переклад сторінки. Він просто відмінний. Але запустити МР160 все одно не вдалось.
Ось що вийшло:
GrushaLinux oleg # emerge -v emul-linux-x86-bjdeps

These are the packages that would be merged, in order:

Calculating dependencies... done!

!!! All ebuilds that could satisfy "emul-linux-x86-bjdeps" have been masked.
!!! One of the following masked packages is required to complete your request:
- app-emulation/emul-linux-x86-bjdeps-0.1-r1::user_defined (masked by: corruption)

For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.
Можливо я не туди скопіював "заплатки"? Я скопіював їх сюди в підкаталог files в каталазі /usr/local/portage/app-emulation/emul-linux-x86-bjdeps/.
Що я зробив не так?

Шановний Vkit_O!
Все правильно зроблено, але в х86 версії не потрібно встановлювати app-emulation/emul-linux-x86-bjdeps-0.1-r1. Цей пакунок ставиться тільки в 64-розрядну версію. Тому, декількома постами раніше я писав, що не компілював цей пакунок. В оригіналі це було так:
EDIT2: You don't need to install emul-linux-x86-bjdeps if you are using the x86 edition of SL, only if you are using the x86_64 edition.

А помилку із замаскованими пакунками, необхідними для компіляції, я вирішив emerge --sync && layman -S

Дякую за пораду. Але пакети поки що встановити не вдається. Ось що вийшло:
GrushaLinux oleg # ebuild /usr/local/portage/net-print/cnijfilter/cnijfilter-2.70.ebuild manifest
>>> Downloading 'ftp://ftp.linux.kiev.ua/pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj/linuxcnijfilter-common-2.70-1.src.rpm'
--2010-12-15 18:24:37-- ftp://ftp.linux.kiev.ua/pub/Linux/drive ... -1.src.rpm
=> `/usr/portage/distfiles/linuxcnijfilter-common-2.70-1.src.rpm'
Визначення імені ftp.linux.kiev.ua... 62.149.13.37
Connecting to ftp.linux.kiev.ua|62.149.13.37|:21... під'єднано.
Реєструємось як anonymous ... Реєстрація вдалась!
==> SYST ... зроблено. ==> PWD ... зроблено.
==> TYPE I ... зроблено. ==> CWD (1) /pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj ... зроблено.
==> SIZE linuxcnijfilter-common-2.70-1.src.rpm ... зроблено.
==> PASV ... зроблено. ==> RETR linuxcnijfilter-common-2.70-1.src.rpm ...
No such file `linuxcnijfilter-common-2.70-1.src.rpm'.

!!! Couldn't download 'linuxcnijfilter-common-2.70-1.src.rpm'. Aborting.
!!! Fetch failed for linuxcnijfilter-common-2.70-1.src.rpm, can't update Manifest

Що треба поновлювати?
GrushaLinux oleg # USE="mp160" emerge -v cnijfilter

* IMPORTANT: 4 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.


These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] app-arch/rpm2targz-9.0.0.4g 5 kB [0]
[ebuild N ] net-print/cnijfilter-2.70 USE="mp160 (-amd64) -ip1800 -ip2500 -ip3300 -ip4300 -ip90 -mp510 -mp600 -nocupsdetection -servicetools" 0 kB [1]

Total: 2 packages (2 new), Size of downloads: 5 kB
Portage tree and overlays:
[0] /usr/portage
[1] /usr/local/portage

!!! The following installed packages are masked:
- dev-java/sun-jre-bin-1.6.0.22::installed (masked by: dlj-1.1 license(s))
A copy of the 'dlj-1.1' license is located at '/usr/portage/licenses/dlj-1.1'.

- net-wireless/broadcom-sta-5.60.48.36-r1::installed (masked by: Broadcom license(s))
A copy of the 'Broadcom' license is located at '/usr/portage/licenses/Broadcom'.

- net-im/skype-2.1.0.81::installed (masked by: skype-eula license(s))
A copy of the 'skype-eula' license is located at '/usr/portage/licenses/skype-eula'.

- www-plugins/adobe-flash-10.2.161.23_pre20100927::installed (masked by: AdobeFlash-10.1 license(s))
A copy of the 'AdobeFlash-10.1' license is located at '/usr/portage/licenses/AdobeFlash-10.1'.

- dev-java/sun-jdk-1.6.0.21::installed (masked by: dlj-1.1 license(s))
- app-emulation/virtualbox-bin-3.2.10::installed (masked by: PUEL license(s))
A copy of the 'PUEL' license is located at '/usr/portage/licenses/PUEL'.

For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.



>>> Verifying ebuild manifests
!!! Manifest file not found: '/usr/local/portage/net-print/cnijfilter/Manifest'

* IMPORTANT: 4 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.
Питання масок я вирішував так як Ви рекомендували.

Шановний Vkit_O
У Вас помилка у назві пакунку:
>>> Downloading 'ftp://ftp.linux.kiev.ua/pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj/linuxcnijfilter-common-2.70-1.src.rpm'
--2010-12-15 18:24:37-- ftp://ftp.linux.kiev.ua/pub/Linux/drive ... -1.src.rpm
=> `/usr/portage/distfiles/linuxcnijfilter-common-2.70-1.src.rpm'
Визначення імені ftp.linux.kiev.ua... 62.149.13.37
Connecting to ftp.linux.kiev.ua|62.149.13.37|:21... під'єднано.
Реєструємось як anonymous ... Реєстрація вдалась!
==> SYST ... зроблено. ==> PWD ... зроблено.
==> TYPE I ... зроблено. ==> CWD (1) /pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj ... зроблено.
==> SIZE linuxcnijfilter-common-2.70-1.src.rpm ... зроблено.
==> PASV ... зроблено. ==> RETR linuxcnijfilter-common-2.70-1.src.rpm ...
No such file `linuxcnijfilter-common-2.70-1.src.rpm'.

!!! Couldn't download 'linuxcnijfilter-common-2.70-1.src.rpm'. Aborting.
!!! Fetch failed for linuxcnijfilter-common-2.70-1.src.rpm, can't update Manifest

В ebildi, в кінці адреси завантаження ftp://ftp.linux.kiev.ua/pub/Linux/drive ... r/bj/linux треба поставити / , щоб вийшло
ftp://ftp.linux.kiev.ua/pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj/linux/

Дякую за допомогу пане romeolek!
Але запустити принтер поки що не вдається. Компіляція пройшла нормально, драйвер встановився. Запустив програму, у вікні URI вставив >http://127.0.0.1:631/, вибрав виробника, модель. У вікні властивості адреса принтера визначилась так: usb://mp160 . Значить все зроблено правильно. Але тестова сторінка не надрукувалась.
Перевірив /var/log/cups/error_log
E [17/Dec/2010:17:11:24 +0200] Syntax error on line 16 of printers.conf.
E [17/Dec/2010:17:42:42 +0200] [CGI] Unable to scan "@LOCAL"!
E [17/Dec/2010:17:42:49 +0200] [cups-driverd] Bad driver information file "/usr/share/cups/model/samsung/cms/CLX-216x-600x600cms2"!
Звідки там взявся Samsung. Я так зрозумів, що треба правити якийсь файл конфігурації, але який,

Доброго вечора!
Все таки для запуску Кенона МП160 на платформі АМД64 необхідно встановлювати пакунок cnijfilter-2.70-r2. Але його не можна загрузити з офіційного сайту і тому manifest не проходить і просить загрузити цей пакунок вручну і помістити в /usr/portage/distfiles/. Потім поновити manifest, але команда не проходить. Шукаю відповіді.

Шановні співмешканці форуму та колеги по Груші! Після місячного тестдрайву типу "знущання над системою" дуже вражений її живучістю - такого не витримував жоден інший дистрибутив. Але просто для ознайомлення вирішив скачати і встановити знову начисто Грушу. Так от, шановні! Драйвери Canon Pixma IP1700 на чистовстановлену систему стали без проблем згідно http://linux.grusha.org.ua/ru/content/додано-пак-драйверів-для-принтерів-canon. Для мого принтера був вибраний IP1800. Дуже дякую розробникам.

Система добра, але неможливість надрукувати жодної сторінки примусила мене встановити Ubuntu 10.10. Система просто підхопила принтер. Процес втановлення драйвера зайняв не більше однієї хвилини. Так само з мобільним інтернетом від Київстар. Підключив за кілька секунд. Думаю розробникам варто над цим подумати.

Вітаю всіх в новому році!
Якось було автоматичне оновлення драйверів для Canon. Звично натиснув "оновити". Принтером не користувався деякий час. Аж сьогодні виникла потреба, а він не працює. При перевстановленні знову невирішені залежності від virtual/ghostscript.
Можливо, ситуація виникла тоді, коли після встановлення великих пакунків програм стало не вистачати місця на диску і я видалив ці пакунки через Sulfur. А для очистки локальної бази package були застосовані команди
equo update
equo cleanup
з http://wiki.sabayon.org/index.php?title=Ru:Entropy
Місця стало багато, але тепер virtual/ghostscript не знаходиться в залежностях.
Як повернути чи створити virtual/ghostscript?
Дякую розробникам! Хай щастить!

Деякі можливі варіанти вирішення проблеми:
1. завантаження з репозиторію (нового, перевстановити і т.п.) пакунку дров на принтери;
2. якщо вашого принтера у списку немає - заходимо на сторінку завантаження виробника і встановлюємо вручну (як? - написано у відповідній темі http://grusha.org.ua/phpbbforum/viewtopic.php?f=24&t=359&start=10);
3. у найгіршому випадку - качаємо дрова під віндовс, молимося Богу, і починаємо процес (шукайте в інеті FAQ, там детально усе описано, буде можливість - закину його на сайт).
Я так до свого сканера BearPaw 1200f робив. І в вінді 7 танці з бубном (йому, бач, ХР подавай, ну я і зробив ХР, шляхом небаченого насильства над сімкою, не через віртулку...) і тут не краще, хоча, набагато простіше. =)

Для "щасливих" власників принтерів Canon LBP (в мене LBP 2900). http://sourceforge.net/projects/foo2capt/files/
Розробник намагається створити нормальні драйвери для цих принтерів бо офіційні драйвери дуже погані і їхні розробники не дуже поспішають їх вдосконалити :twisted: .
У кого є такі принтери, та хто добре програмує, особливо в С++, може допомогти цьому проекту. Ось їхні напрацювання: http://sourceforge.net/projects/foo2capt/files/ .
Я думаю що дуже бажано щоб Груша підтримувала роботу з принтерами Canon LBP, тому що за моїми спостереженнями їх як бруду (наприклад в нашому університеті).

Кенон дуже вибагливі драйвери. Те, що в них лежить на офіційному сайті - неймовірно застаріло. В принципі є варіанти, як побігати з бубном і запустити це - але на жаль в розробників немає такого принтера в наявності, щоб можна було тестувати самому.

А з приводу віртуалки - так це можна і в лінуксі зробити. VirtualBox підтримує віртуалізацію USB - можна під’єднати принтер і розшарити по внутрішній мережі. Але це вже крайній варіант, як на мене.

Офіційні драйвери зроблені аби як. Особливо драйвери до принтерів Canon LBP. Цю погань якщо і встановиш під Linux, то через неї виникають інші проблеми. Тому дехто й намагається написати свої драйвери.

У розробників немає не тільки такого принтеру, а мабуть і часу на це. Але можливо серед учасників сайту знайдеться хтось, у кого буде і принтер і вміння програмувати і бажання його запустити під Linux.

Той драйвер, на який я дав посилання вже друкує (під грушею я правда не зміг його встановити бо багато чого не знаю), але друкує тільки одну сторінку і ще має деякі недопрацювання. Лодина яка його створила каже що у нього недостатньо часу на визначення ньюансів, роботи драйвера з принтером.

Знову танці з бубнами...
Перевстановив Грушу, драйвери Canon-ів стоять, а для мого принтера IP1700 нема.
Грався, грався та й зробив пакет чисто для своєї друкарки.
Не можна всі драйвери Canon компілювати в один пакунок, бо для різних моделей - різні фільтри.
Краще зробити окремо пакунки, щоб потім вибрати той що треба, а не загажувати систему хламом, який ніколи не згодиться.
Удачі всім!

дякую за підсказку. Коли все компілювалося в один пакет - хотілося, щоб все працювало "з коробки". Але самі знаєте, благі наміри куди ведуть...

Тому тепер будемо розділяти на окремі пакети.

p.s. Якщо викладете свій робочий ebuild - буду вдячний.

Ставив з-пів року тому Грушу знайомим. А в них HP, але не пам'ятаю марку. Чомусь для HP є нормальна програма, яка повністю проводить користувача в процесі установки драйвера. А для Canon на превеликий жаль немає такої.
ebuild-и я видер з пакету canon-drivers з Груша 3.1, до речі цього пакету в репозитарії чомусь немає.
Два ebuild-а з виправленою адресою для закачки сирців:
cnijfilter-2.60-r6.ebuild
Код:
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

# Changelog since last bugzilla upload
#
# fixed gtk+ dependency from =1.2 to =1.2*
#

inherit eutils rpm flag-o-matic multilib

DESCRIPTION="Canon InkJet Printer Driver for Linux (Pixus/Pixma-Series)."
HOMEPAGE="ftp://download.canon.jp/pub/driver/bj/linux/"
RESTRICT="nomirror confcache"

#SRC_URI="${HOMEPAGE}${PN}-common-${PV}-3.src.rpm"
SRC_URI="ftp://ftp.linux.kiev.ua/pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj/linux/cnijfilter-common-2.60-3.src.rpm"
LICENSE="UNKNOWN" # GPL-2 source and proprietary binaries

SLOT="4"
KEYWORDS="~x86 ~amd64"
IUSE="amd64
servicetools
nocupsdetection
ip2200
ip4200
ip6600d
ip7500
mp500
disablepstocanonij"
DEPEND="virtual/ghostscript
>=net-print/cups-1.1.14
!amd64? ( sys-libs/glibc
>=dev-libs/popt-1.6
>=media-libs/tiff-3.4
>=media-libs/libpng-1.0.9 )
amd64? ( >=app-emulation/emul-linux-x86-bjdeps-0.1
app-emulation/emul-linux-x86-compat
app-emulation/emul-linux-x86-baselibs )
servicetools? ( !amd64? ( >=gnome-base/libglade-0.6
>=dev-libs/libxml-1.8
=x11-libs/gtk+-1.2* )
amd64? ( >=app-emulation/emul-linux-x86-bjdeps-0.1
app-emulation/emul-linux-x86-gtklibs ) )"
# >=automake-1.6.3

# Arrays of supported Printers, there IDs and compatible models
_pruse=("ip2200" "ip4200" "ip6600d" "ip7500" "mp500")
_prname=(${_pruse[@]})
_prid=("256" "260" "265" "266" "273")
_prcomp=("ip1600/2200 mp150/170/450" "ip4200 mp500" "ip6600d/6600pd" "ip7500" "ip4200 mp500")
_max=$((${#_pruse[@]}-1)) # used for iterating through these arrays

###
# Standard Ebuild-functions
###

pkg_setup() {
if [ -z "$LINGUAS" ]; then # -z tests to see if the argument is empty
ewarn "You didn't specify 'LINGUAS' in your make.conf. Assuming"
ewarn "english localisation, i.e. 'LINGUAS=\"en\"'."
LINGUAS="en"
fi
if (use amd64 && use servicetools); then
eerror "You can't build this package with 'servicetools' on amd64,"
eerror "because you would need to compile '>=gnome-base/libglade-0.6'"
eerror "and '>=dev-libs/libxml-1.8' with 'export ABI=x86' first."
eerror "That's exactly what 'emul-linux-x86-bjdeps-0.1' does with"
eerror "'dev-libs/popt-1.6'. I encourage you to adapt this ebuild"
eerror "to build 32bit versions of 'libxml' and 'libglade' too!"
die "servicetools not yet available on amd64"
fi

use amd64 && export ABI=x86
use amd64 && append-flags -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib -L/usr/lib32

_prefix="/usr/local"
_bindir="/usr/local/bin"
_libdir="/usr/$(get_libdir)" # either lib or lib32
_cupsdir1="/usr/lib/cups"
_cupsdir2="/usr/libexec/cups"
_ppddir="/usr/share/cups/model"

einfo ""
einfo " USE-flags (description / probably compatible printers)"
einfo ""
einfo " amd64 (basic support for this architecture - currently without servicetools)"
einfo " servicetools (additional monitoring and maintenance software)"
einfo " nocupsdetection (this is only useful to create binary packages)"
_autochoose="true"
for i in `seq 0 ${_max}`; do
einfo " ${_pruse[$i]}\t${_prcomp[$i]}"
if (use ${_pruse[$i]}); then
_autochoose="false"
fi
done
einfo ""
if (${_autochoose}); then
ewarn "You didn't specify any driver model (set it's USE-flag)."
einfo ""
einfo "As example:\tbasic MP500 support without maintenance tools"
einfo "\t\t -> USE=\"mp500\""
einfo ""
einfo "Press Ctrl+C to abort"
echo
ebeep

n=15
while [[ $n -gt 0 ]]; do
echo -en " Waiting $n seconds...\r"
sleep 1
(( n-- ))
done
fi
}

src_unpack() {
rpm_src_unpack || die
mv ${PN}-common-${PV} ${P} || die # Correcting directory-structure
epatch ${FILESDIR}/cnijfilter-2.60-r1-pstocanonij-c.patch || die
if use "ip4200" || ${_autochoose}; then
epatch ${FILESDIR}/cnijfilter-2.60-r1-canonip4200-ppd.patch || die
fi
}

src_compile() {
cd libs || die
./autogen.sh --prefix=${_prefix} || die "Error: libs/autoconf.sh failed"
make || die "Couldn't make libs"

cd ../pstocanonij || die
./autogen.sh --prefix=/usr --enable-progpath=${_bindir} || die "Error: pstocanonij/autoconf.sh failed"
make || die "Couldn't make pstocanonij"

if use servicetools; then
cd ../cngpij || die
./autogen.sh --prefix=${_prefix} --enable-progpath=${_bindir} || die "Error: cngpij/autoconf.sh failed"
make || die "Couldn't make cngpij"

cd ../cngpijmon || die
./autogen.sh --prefix=${_prefix} || die "Error: cngpijmon/autoconf.sh failed"
make || die "Couldn't make cngpijmon"
fi

cd ..

for i in `seq 0 ${_max}`; do
if use ${_pruse[$i]} || ${_autochoose}; then
_pr=${_prname[$i]} _prid=${_prid[$i]}
src_compile_pr;
fi
done
}

src_install() {
mkdir -p ${D}${_bindir} || die
mkdir -p ${D}${_libdir}/cups/filter || die
mkdir -p ${D}${_ppddir} || die
mkdir -p ${D}${_libdir}/cnijlib || die

cd libs || die
make DESTDIR=${D} install || die "Couldn't make install libs"

if !use disablepstocanonij; then
cd ../pstocanonij || die
make DESTDIR=${D} install || die "Couldn't make install pstocanoncnij"
fi
if use servicetools; then
cd ../cngpij || die
make DESTDIR=${D} install || die "Couldn't make install cngpij"

cd ../cngpijmon || die
make DESTDIR=${D} install || die "Couldn't make install cngpijmon"
fi

cd ..

for i in `seq 0 ${_max}`; do
if use ${_pruse[$i]} || ${_autochoose}; then
_pr=${_prname[$i]} _prid=${_prid[$i]}
src_install_pr;
fi
done

# fix directory structure
if use nocupsdetection; then
mkdir -p ${D}${_cupsdir2}/filter || die
dosym ${_cupsdir1}/filter/pstocanonij ${_cupsdir2}/filter/pstocanonij
elif has_version ">=net-print/cups-1.2.0"; then
mkdir -p ${D}${_cupsdir2} || die
mv ${D}${_cupsdir1}/* ${D}${_cupsdir2} || die
fi
}

pkg_postinst() {
einfo ""
einfo "For installing a printer:"
einfo " * Restart CUPS: /etc/init.d/cupsd restart"
einfo " * Go to http://127.0.0.1:631/"
einfo " -> Printers -> Add Printer"
einfo ""
einfo "If you experience any problems, please visit:"
einfo " http://forums.gentoo.org/viewtopic-p-3217721.html"
einfo ""
}

###
# Custom Helper Functions
###

src_compile_pr()
{
mkdir ${_pr}
cp -a ${_prid} ${_pr} || die
cp -a cnijfilter ${_pr} || die
cp -a printui ${_pr} || die
cp -a stsmon ${_pr} || die

sleep 10
cd ${_pr}/cnijfilter || die
./autogen.sh --prefix=${_prefix} --program-suffix=${_pr} --enable-libpath=${_libdir}/cnijlib --enable-binpath=${_bindir} || die
make || die "Couldn't make ${_pr}/cnijfilter"

if use servicetools; then
cd ../printui || die
./autogen.sh --prefix=${_prefix} --program-suffix=${_pr} || die
make || die "Couldn't make ${_pr}/printui"

cd ../stsmon || die
./autogen.sh --prefix=${_prefix} --program-suffix=${_pr} --enable-progpath=${_bindir} || die
make || die "Couldn't make ${_pr}/stsmon"
fi

cd ../..
}

src_install_pr()
{
cd ${_pr}/cnijfilter || die
make DESTDIR=${D} install || die "Couldn't make install ${_pr}/cnijfilter"

if use servicetools; then
cd ../printui || die
make DESTDIR=${D} install || die "Couldn't make install ${_pr}/printui"

cd ../stsmon || die
make DESTDIR=${D} install || die "Couldn't make install ${_pr}/stsmon"
fi

cd ../..
cp -a ${_prid}/libs_bin/* ${D}${_libdir} || die
cp -a ${_prid}/database/* ${D}${_libdir}/cnijlib || die
cp -a ppd/canon${_pr}.ppd ${D}${_ppddir} || die
}

cnijfilter-2.70.ebuild
Код:
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

# Changelog since last bugzilla upload
#
# initial version
#

inherit eutils rpm flag-o-matic multilib

DESCRIPTION="Canon InkJet Printer Driver for Linux (Pixus/Pixma-Series)."
HOMEPAGE="ftp.linux.kiev.ua/pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj/linux/"
RESTRICT="nomirror confcache"

SRC_URI="${HOMEPAGE}${PN}-common-${PV}-1.src.rpm"
LICENSE="UNKNOWN" # GPL-2 source and proprietary binaries

SLOT="2"
KEYWORDS="~x86 ~amd64"
IUSE="amd64
servicetools
nocupsdetection
mp160
mp510
mp600
ip90
ip1800
ip2500
ip3300
ip4300"
DEPEND="virtual/ghostscript
>=net-print/cups-1.1.14
!amd64? ( sys-libs/glibc
>=dev-libs/popt-1.6
>=media-libs/tiff-3.4
>=media-libs/libpng-1.0.9 )
amd64? ( >=app-emulation/emul-linux-x86-bjdeps-0.1
app-emulation/emul-linux-x86-compat
app-emulation/emul-linux-x86-baselibs )
servicetools? ( !amd64? ( >=gnome-base/libglade-0.6
>=dev-libs/libxml-1.8
=x11-libs/gtk+-1.2* )
amd64? ( >=app-emulation/emul-linux-x86-bjdeps-0.1
app-emulation/emul-linux-x86-gtklibs ) )"
# >=automake-1.6.3

# Arrays of supported Printers, there IDs and compatible models
_pruse=("mp160" "ip3300" "mp510" "ip4300" "mp600" "ip2500" "ip1800" "ip90")
_prname=(${_pruse[@]})
_prid=("291" "292" "293" "294" "295" "311" "312" "253")
_prcomp=("mp160" "ip3300" "mp510" "ip4300" "mp600" "ip2500series" "ip1800series" "ip90")
_max=$((${#_pruse[@]}-1)) # used for iterating through these arrays

###
# Standard Ebuild-functions
###

pkg_setup() {
if [ -z "$LINGUAS" ]; then # -z tests to see if the argument is empty
ewarn "You didn't specify 'LINGUAS' in your make.conf. Assuming"
ewarn "english localisation, i.e. 'LINGUAS=\"en\"'."
LINGUAS="en"
fi
if (use amd64 && use servicetools); then
eerror "You can't build this package with 'servicetools' on amd64,"
eerror "because you would need to compile '>=gnome-base/libglade-0.6'"
eerror "and '>=dev-libs/libxml-1.8' with 'export ABI=x86' first."
eerror "That's exactly what 'emul-linux-x86-bjdeps-0.1' does with"
eerror "'dev-libs/popt-1.6'. I encourage you to adapt this ebuild"
eerror "to build 32bit versions of 'libxml' and 'libglade' too!"
die "servicetools not yet available on amd64"
fi

use amd64 && export ABI=x86
use amd64 && append-flags -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib -L/usr/lib32

_prefix="/usr/local"
_bindir="/usr/local/bin"
_libdir="/usr/$(get_libdir)" # either lib or lib32
_cupsdir1="/usr/lib/cups"
_cupsdir2="/usr/libexec/cups"
_ppddir="/usr/share/cups/model"

einfo ""
einfo " USE-flags (description / probably compatible printers)"
einfo ""
einfo " amd64 (basic support for this architecture - currently without servicetools)"
einfo " servicetools (additional monitoring and maintenance software)"
einfo " nocupsdetection (this is only useful to create binary packages)"
_autochoose="true"
for i in `seq 0 ${_max}`; do
einfo " ${_pruse[$i]}\t${_prcomp[$i]}"
if (use ${_pruse[$i]}); then
_autochoose="false"
fi
done
einfo ""
if (${_autochoose}); then
ewarn "You didn't specify any driver model (set it's USE-flag)."
einfo ""
einfo "As example:\tbasic MP160 support without maintenance tools"
einfo "\t\t -> USE=\"mp160\""
einfo ""
einfo "Press Ctrl+C to abort"
echo
ebeep

n=15
while [[ $n -gt 0 ]]; do
echo -en " Waiting $n seconds...\r"
sleep 1
(( n-- ))
done
fi
}

src_unpack() {
rpm_src_unpack || die
mv ${PN}-common-${PV} ${P} || die # Correcting directory-structure
}

src_compile() {
cd libs || die
./autogen.sh --prefix=${_prefix} || die "Error: libs/autoconf.sh failed"
make || die "Couldn't make libs"

cd ../pstocanonij || die
./autogen.sh --prefix=/usr --enable-progpath=${_bindir} || die "Error: pstocanonij/autoconf.sh failed"
make || die "Couldn't make pstocanonij"

if use servicetools; then
cd ../cngpij || die
./autogen.sh --prefix=${_prefix} --enable-progpath=${_bindir} || die "Error: cngpij/autoconf.sh failed"
make || die "Couldn't make cngpij"

cd ../cngpijmon || die
./autogen.sh --prefix=${_prefix} || die "Error: cngpijmon/autoconf.sh failed"
make || die "Couldn't make cngpijmon"
fi

cd ..

for i in `seq 0 ${_max}`; do
if use ${_pruse[$i]} || ${_autochoose}; then
_pr=${_prname[$i]} _prid=${_prid[$i]}
src_compile_pr;
fi
done
}

src_install() {
mkdir -p ${D}${_bindir} || die
mkdir -p ${D}${_libdir}/cups/filter || die
mkdir -p ${D}${_ppddir} || die
mkdir -p ${D}${_libdir}/cnijlib || die

cd libs || die
make DESTDIR=${D} install || die "Couldn't make install libs"

cd ../pstocanonij || die
make DESTDIR=${D} install || die "Couldn't make install pstocanoncnij"

if use servicetools; then
cd ../cngpij || die
make DESTDIR=${D} install || die "Couldn't make install cngpij"

cd ../cngpijmon || die
make DESTDIR=${D} install || die "Couldn't make install cngpijmon"
fi

cd ..

for i in `seq 0 ${_max}`; do
if use ${_pruse[$i]} || ${_autochoose}; then
_pr=${_prname[$i]} _prid=${_prid[$i]}
src_install_pr;
fi
done

# fix directory structure
if use nocupsdetection; then
mkdir -p ${D}${_cupsdir2}/filter || die
dosym ${_cupsdir1}/filter/pstocanonij ${_cupsdir2}/filter/pstocanonij
elif has_version ">=net-print/cups-1.2.0"; then
mkdir -p ${D}${_cupsdir2} || die
mv ${D}${_cupsdir1}/* ${D}${_cupsdir2} || die
fi
}

pkg_postinst() {
einfo ""
einfo "For installing a printer:"
einfo " * Restart CUPS: /etc/init.d/cupsd restart"
einfo " * Go to http://127.0.0.1:631/"
einfo " -> Printers -> Add Printer"
einfo ""
einfo "If you experience any problems, please visit:"
einfo " http://forums.gentoo.org/viewtopic-p-3217721.html"
einfo ""
}

###
# Custom Helper Functions
###

src_compile_pr()
{
mkdir ${_pr}
cp -a ${_prid} ${_pr} || die
cp -a cnijfilter ${_pr} || die
cp -a printui ${_pr} || die
# cp -a stsmon ${_pr} || die

sleep 10
cd ${_pr}/cnijfilter || die
./autogen.sh --prefix=${_prefix} --program-suffix=${_pr} --enable-libpath=${_libdir}/cnijlib --enable-binpath=${_bindir} || die
make || die "Couldn't make ${_pr}/cnijfilter"

if use servicetools; then
cd ../printui || die
./autogen.sh --prefix=${_prefix} --program-suffix=${_pr} || die
make || die "Couldn't make ${_pr}/printui"

# cd ../stsmon || die
# ./autogen.sh --prefix=${_prefix} --program-suffix=${_pr} --enable-progpath=${_bindir} || die
# make || die "Couldn't make ${_pr}/stsmon"
fi

cd ../..
}

src_install_pr()
{
cd ${_pr}/cnijfilter || die
make DESTDIR=${D} install || die "Couldn't make install ${_pr}/cnijfilter"

if use servicetools; then
cd ../printui || die
make DESTDIR=${D} install || die "Couldn't make install ${_pr}/printui"

# cd ../stsmon || die
# make DESTDIR=${D} install || die "Couldn't make install ${_pr}/stsmon"
fi

cd ../..
cp -a ${_prid}/libs_bin/* ${D}${_libdir} || die
cp -a ${_prid}/database/* ${D}${_libdir}/cnijlib || die
cp -a ppd/canon${_pr}.ppd ${D}${_ppddir} || die
}

Я поклав ці файли в /usr/local/portage/net-print/cnijfilter. Створив маніфест і встановив пакет cnijfilter.

Вельмишановний vitovt!
Я вже вказував раніше дуже корисне посилання http://en.gentoo-wiki.com/wiki/Canon_Pixma_Series, де чітко описано майже все, що стосується установки драйверів Canon, та й навіть є посилання на налаштування сканерів. От, якби було десь викласти переклад статті, то я думаю, що питань для користувачів стало б набагато меньше.
Що стосується мого принтера (ip1700), то для нього підходять як драйвери ip1800, так і ip2200, які знаходяться в різних cnijfilter.
А ще, виходячи з тієї статті, є різниця в x86 i amd64.
Але все це, можливо, зайве, бо в 3.1 моя друкарка працювала "з коробки".
Щось не так зкомпілювалося в останній версії Груші? На приклад: файл pstocanonij ніде в системі я не знайшов. Тому, можливо, треба перезібрати пакет.

Не бажаючи придумувати велосипед знайшов драйвери для canon в репозиторіях zugaina i calculate, але підключити їх до 64 бітного сабайону не зміг - layman свариться. Пробував е-білди - також не вийшло. За браком часу довелось поставити PCLinuxOS - принтер запрацював з коробки. Так само у інших дистрибутивів є додаткові репозиторії: pacman, AUR ... Але ті системи дуже багато в чому програють Груші (Sabayon).
Просто для інформації: https://aur.archlinux.org/packages/?O=0&C=0&SeB=nd&K=cnijfilter&outdated=&SB=n&SO=a&PP=50&do_Search=Go
Груша найкраща, найшвидша, найстабільніша, з найновішими пакетами програм, але з драйверами до canon-ів треба якось поправити ситуацію.
PS
От іще інформативна сторінка:
http://gpo.zugaina.org/net-print/cnijfilter

Давно вже не було нової Груші! От спробував чистий сабайон Х.
Не вдалось встановити драйвери для моєї друкарки та пробував інші з http://gpo.zugaina.org/net-print/cnijfilter.
cnijfilter-2.60..., cnijfilter-2.70... не встановлюються, - це при тому, що вище cnijfilter-3.0 аж до 3.5 встановлювались без помилок.
Знайшов до свого принтера ebuild з патчом libpng15.patch, але теж не встановлювався - помилка в патчі (не може пропатчити).
От вирішив знову поставити Грушу 3.4 з диска. Ще до оновлення системи спробував встановити окремо драйвери з http://git.grusha.org.ua/, але після встановлення cnijfilter-2.70-r2.ebuild з патчом не знайшовся файл фільтра pstocanonij в /usr/libexec/cups/filter. Тому встановив свій cnijfilter-2.70.ebuild з попередньої сторінки. Друкарка працює. Тепер оновлюю систему - чи буде вона працювати після оновлення?

Rolling-дистрибутиви потрібно часто оновлювати, або буде дуже багато клопоту!
Після двох діб оновлення плюнув на цю справу та й поставив сабайон Х.
Тепер читаю:
https://bugs.gentoo.org/show_bug.cgi?id=130645
Готовий оверлей для всіх canon:
https://github.com/tokiclover/bar-overlay/tree/master/net-print/cnijfilter
Ще не пробував

Як не старався, але з попереднього поста запустити нічого не вдалось. :?
Робочий e-build для мого ip1700 тут:
http://code.google.com/p/theebuilds/source/browse/trunk/net-print/cnijfilter/?r=308
Все завелось "с пол пинка" :) . Вибрав ip1800 драйвер.