Summary: | FR: add Canon CAPT support | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | Grigory Batalov <bga> | ||||||||
Component: | capt | Assignee: | Michael Shigorin <mike> | ||||||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||||||
Severity: | major | ||||||||||
Priority: | P2 | CC: | genix, inger, lav, mike, sr | ||||||||
Version: | unstable | ||||||||||
Hardware: | all | ||||||||||
OS: | Linux | ||||||||||
URL: | http://www.boichat.ch/nicolas/capt/ | ||||||||||
Bug Depends on: | |||||||||||
Bug Blocks: | 7079 | ||||||||||
Attachments: |
|
Description
Grigory Batalov
2005-06-20 00:50:28 MSD
Created attachment 948 [details]
CAPT support
Собственно, патчи.
Часто встречающиеся дешёвые лазерники Canon рискуют остаться без поддержки в дистрибутиве. Как бы собрать поддержку? Я сейчас не успеваю добраться до Сизифa. Если кто соберёт новые пакеты для системы печати (новый gs (заготовка лежит в deadalus),printer-filter как в MDK) вместе с соотв. поддержкой - буду очень рад ;)) Только скажите мне заранее кто будет собирать пакет. (In reply to comment #0) > Несчастным обладателям принтеров Canon LBP-810 и LBP-1120 было бы очень приятно иметь поддержку этих моделей в ближайшем дистрибутиве. > Список изменений в cups сейчас приложу. > Содержание: > Драйвер capt общается напрямую с принтером через USB по закрытому протоколу. Алгоритм работы был расшифрован Николасом Бойчатом путём анализа USB-трафика и реализован в виде блоков характерных команд. Таким образом, драйвер хоть и не является полной и надёжной заменой официальным драйверам, зато позволяет сносно печатать и распространяется под GPL. > В spec-файле поддержка CAPT сделана условной и включена по умолчанию (%def_enable). Если предлогаемые патчи покажутся недостаточно надёжными для такого ключевого сервиса, как сервер печати, включите их хотя бы в src.rpm в отключенном виде, чтобы желающие могли легко пакет пересобрать. > %def_enable в свою очередь добавляет к опциям сборки -DWITH_CAPT, задействуя пропатченные места в backend/usb.c. В результате чего при печати данные передаются не напрямую в принтер, а через канал (pipe) драйверу capt. > Сам драйвер и PPD-фильтр к принтеру LBP-810 (к LBP-1120, вероятно, он тоже подойдёт) оформлены в отдельный пакет cups-backend-capt. Хотя он и не является бэк-ендом в строгом смысле. Так что нежелающие его могут не ставить. > Кроме того, даже пропатченный бэк-енд usb будет печатать через capt только с опцией UseCAPT=true. Этого можно добиться командой lpr -o UseCAPT=true filename или sudo lpoptions -o UseCAPT printername. Во втором случае эта опция заносится в /etc/cups/lpoptions и применяется в дальнейшем. > Итого, от инсталлятора или настройщика принтера (alterator?) требуется установить пакет cups-backend-capt, использовать входящий в него фильтр Canon-LBP-810-capt.ppd и прописать опцию UseCAPT=true. Думаю, это осуществимо. настроил все как описано здесь, однако принтер (LBP-1120) все равно не печатает. как можно продиагностировать? (In reply to comment #3) > Я сейчас не успеваю добраться до Сизифa. Я собрал, но оно работает условно. Несколько менее условно, хотя тоже так себе, работает официальный драйвер. capt-0.1-alt1 уже в Sisyphus; спеки для текущего драйвера имени Canon (прилагаю. Created attachment 1458 [details]
Canon LBP Linux driver (common) spec
Created attachment 1459 [details]
Canon LBP Linux driver (CAPT) spec
PS: на мою просьбу просмотреть лицензию в legal@ никто не ответил, вопрос на info@canon.ru также остался без уточнения -- мне же лицензия кажется достаточно либеральной, чтобы в non-free кэноновский драйвер спокойно можно было поместить. Если кому ещё понадобится -- свистите. Кстати, кэноновские есть уже 1.30 и они заметно лучше. Ну и ладно, тогда закроем эту тему. Кстати, у знакомого заработал 1120. Заработал после очередного обновления, без лишних телодвижений. А как был настроен и что в `rpm -qa | grep capt`? вот что наскреб. какую еще информацию надо? [andrew@localhost ~]$ rpm -qa | grep capt capt-0.1-alt1 canon:/dev/lp0 model canon LBP-810 capt (In reply to comment #13) > [andrew@localhost ~]$ rpm -qa | grep capt > capt-0.1-alt1 Гм, странно, но повод не выкидывать. :) Вообще у capt никак с обработкой ошибок (например, бумага закончилась). Поэтому лучше взять себе официальный cndrvcups-capt-1.30-1.src.rpm (и cndrvcups-common), работает. Я было прокопал чуточку и попытался legal@ и их подёргать насчёт пары не окончательно понятных моментов в лицензии, но вообще-то вроде как эти драйверы можно в Sisyphus как non-free. Если тебе или ещё кому вдруг будет интересно, могу добросить заодно свои наработки, патчил там кой-чего -- вдруг ещё актуально. |