[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: lpr & CUPS system



On 2003.04.08 at 14:29:24 +0400, Иван Лох wrote:
> > нафига CUPS? я лично так и не понял чем она лучше
> 
> Если у Вас что-то не получилось поставить, то не значит, что это надо
> "давить"...

Вопрос по-моему ставился несколько не так. Вопрос ставился "а нафига
лично мне на моей конкретной машине менять работающую систему печати на
более другую и заново учиться ее настраивать" Так что давить никто
(здесь) не предлагал. Давить некоторое время назад предлагал я, и в
ru.linux. Причем агитировал не за lprng а за "старый добрый Berkley lpd,
настройки которого описаны во всех руководствах".

> Я, конечно, могу ошибаться, так как слез с lprng 3 (?) года назад, но:
> 
> 1) Он способен "из коробки" понимать *.ppd файлы и предоставлять
> _пользователю_ все опции/функции принтера (плотность, экономичную
> печать, "зеркало", duplex...)?

> 2) Он умеет предоставлять библиотечный интерфейс пользовательским
> программам? Нет, конечно, можно создать 33 виртуальных принтера, но

Библиотечный интерфейс это какой-то не unix-way. Unix way - интерфейсы
потоковые. У меня была идея (правда не собрался реализовать) сделать
взаимодействие пользователя с принтером следующим образом:
1. В качестве lpr подсовывается графическая приблуда (вернее, приблуда
со съемным графическим интерфейсом, который запускается только при
наличии DISPLAY) которая позволяет отредактировать параметры задания. В
соответствии с ppd-шкой. Эти параметры она пишет куда-нибудь в 
${HOME}/.lpsetup-${PRINTER}.

Скрипт, который работает input-фильтром читает этот файлик и делает все
необходимое. Благо имя юзера он знает.

Можно эти две веши - диалог и .lpsetup разнести. Если есть диалог,
то эта квази-lpr передает данные непосредсвенно демону печати. А если
нет - она читает этот файлик.

Решение отличается от предлагаемого cups тем что не требует модификации
программ для своей поддержки. 

> некоторым людям удобно выбирать плотность и разрешение прямо из диалога
> печати... Так делает scribus. А вот lpr ориентированный gimp предлагает
> показать ему *.ppd файл. Такая вот сетевая технология...

Предполагается что человек знает типы всех своих принтеров. Это
достаточно естественное предположение, так как от того что написано в
ppd зависят результаты печати. 

> 3) Его авторы уже осознали, что в одной комнате может стоять больше
> одного принтера и некоторые из них взаимозаменяемые? Миграция очередей,
Это есть в System V системе спулинга. Но до чего ж оно там криво... 
> остановка на профилактику и так далее? Или Вы рассылаете пользователям
> письма, на каком принтере и когда не надо печатать?

Зачем? Выставить PRINTER в /etc/environment или rp в /etc/printcap и
voila.

> 4) Нормальная аутентификация. Иногда удобно печатать на принтер в
> немного другой стране. Не надо объяснять людям, что такое Acrobat Reader...
> А уж из дома и подавно...



> 5) lprng уже не требует внешних примочек для делегирования форматов сторонним
> программам?

Что? А когда-то требовал? По-моему if в princap - самая что ни на есть
внутренняя примочка.

> CUPS это мощное сетевое решение. Работает из коробки на ура... Как его 
> можно _не суметь_ поставить я и вовсе не понимаю...

Очень просто. До недавнего времени он таскал с собой, например свой
растеризатор. Поэтому все проблемы со шрифтами приходилось решать
отдельно. Сейчас, говорят, он от этого отучился. Но вот умеет ли он не
пытаться пропустить задание через ghostscript - не знаю.

Во всяком случае у меня есть подозрение что посылать на один и тот принтер 
Postscript (выдав соответствующую PJL ENTER LANGUAGE), PCL и Unix text
(поменяв в нем концы строк и кодировку) научить его будет трудновато.

А вообще спасибо за развернутое описание преимуществ CUPS. Буду знать в
каких случаях на него будет иметь смысл посмотреть.



Reply to: