RPI Zero: print & scan servers

I had to make old printer and scanner wirelessly available over local network. It can be done using wireless printer USB adapter but it’s not that cheap and still doesn’t support scanner

Obvious choose is using Raspberry PI with linux installed. Before I heard a lot about RPI Zero but could never believe that it costs just £5. Actually it is just £5 and +£2.5 delivery fee. Surprisingly there are no other options except of first class delivery!

Long story short, I put here main steps how to setup print and scan servers on small Raspberry PI Zero:

General configuration

Upgrade RPI software
To access most recent features and freshly created bugs make sure you use most recent version of RPI firmware. To do so run sudo apt-get dist-upgrade.

Static IP
Assign static IP for your raspberry. The easiest way is configure your router DHCP server. Just bind mac address to nice IP in your network, like 192.168.100.100, later in this post I

Reduce graphic memory fraction
If you aren’t going to use video how to

Read more

Установка Xerox phaser 3117 в gentoo

Нашёл в черновиках, 3 года спустя – вдруг кому пригодиться современные ubuntu сами находят драйвер, устанавливают его и все работает на ура

Извращенцам Любителям ретро версий линуксов, которые нужно собирать ручками посвящается:

Помимо не высокой стоимости принтера и нечипованному тонеру у него есть ещё один плюс – это отличная совместимость с линуксом, о чём говориться на OpenPrinting и на оффициальном сайте xerox

Надо отметить, что вместе с принтером на диске есть драйвера под линь :)
Запускается просто – под рутом выполнить скрипт в корне CD диска

# ./autorun

На этом месте начинаются проблеммы :) Или у вас гном(вернее гтк) столетней давности? :)

При запуске выдаёт:

/root/.setup5893: error while loading shared libraries:
 libgtk-1.2.so.0: cannot open shared object file: No such file or directory

Уже давным-давно не используется эта библиотека, ей на смену пришла 2.0. Это не важно, ибо всё равно принтер то надо настраивать, причём хочется с гуем, дабы ощутить полноценную поддержку от вендора :D.

Собираем gtk 1.2:

# emerge =gtk+-1.2*

соберётся 2 библиотеки в новый слот. Если ваш дистрибутив не генту – нужно поискать в пакетном менеджере эту библиотеку(например в ASP/RedHat: yum install libgtk-1.2.so.0)

Снова запускаем – появляется окошечко с мастером установки. Кстати, я предполагаю что у вас cups уже установлен(если нет то срочно: включить cups в USE флаги и emerge cups, после чего запускаем демон /etc/init.d/cupsd start). Выбераем expert install. Ни в коем случаем не ставим галку на установку этого древнего cups 1.1, можно изменить пути – по вкусу :).

Когда откроется окошко настройки жмём кнопку Add printer и если принтер уже подключён как в моём случае он сам определяет его. Если хочется можно поменять настройки.

Заходим на http://localhost:631/(web-интерфейс cups), ищем наш принтер и тыкаем кнопку пробная печать.
*барабанная дробь*
Ан нет! ещё рано! Не печатает :(. В заданиях написанно – Остановленно, попытка перезапуска ни к чему не приводят. Смотрим логи:

I [..] Started "/usr/libexec/cups/cgi-bin/jobs.cgi" (pid=2661)
E [..] [CGI] Saw EOF, expected '}'!
I [..] Started "/usr/libexec/cups/cgi-bin/jobs.cgi" (pid=2666)
E [..] Unable to execute /usr/libexec/cups/filter/ppmtospl2: No such file or directory
E [..] [Job 3] Unable to start filter "ppmtospl2" - No such file or directory.
E [..] [Job 3] Stopping job because the scheduler could not execute a filter.
I [..] Started "/usr/libexec/cups/cgi-bin/printers.cgi" (pid=2669)
E [..] [CGI] Saw EOF, expected '}'!
I [..] Saving job cache file "/var/cache/cups/job.cache"...

Что то много ругательств. Начнём с /usr/libexec/cups/filter/ppmtospl2. Посмотрим папку в которую установщик(не могу удержаться от слов как он выглядит!! лучше бы в текстовом режиме сделали – меньше зависимостей потянулиб). Смотрим папку которую вы указали для установки пакета, по дефолту было /usr/local/linuxprinter. Просмотря содержимое этой папки можно найти то самое – filter/ppmtospl2.

Делаем симлинки(сразу для всех файлов):

ln -s /usr/local/linuxprinter/filters/* /usr/libexec/cups/filter/

Не перегружая капсов, тем более системы :), пробуем перезапустить задние с пробной страницей