2020-11-13 19:00:31

HPLIP в Linux или настраиваем принтер HP в Ubuntu

Linux

377.jpg

Всем известно, что относительно свежие линуксы гораздо более дружелюбно относятся к принтерам, и даже без особых бубнов работают с ними. Но работают не всегда так, как хочется. В моем случае нужно было подружить Elementary OS 5.1 (Ubuntu 18.04) с принтером HP Color Laserjet MFP M377dw.


В принципе, все работало, как говорится, "из коробки", и печать простеньких текстовых документов не составляла проблем. Но вот попытка распечатать изображение во всю страницу превратилось в настоящее мучение. Во-первых время выхода страницы составляло почти 3 минуты, во вторых, если в очереди печати было более одной страницы, то ничего из принтера я так дождаться и не смог.

Спасением стало преобразование в PDF (благо gimp это умеет сам) и печать по одной страничке из LibreOffice Draw (другие не давали выхода из принтера). Но на печать нескольких документов ушло порядка часа пребывания возле принтера с ноутом в руках.

В результате было решено обновить драйвер принтера (hplip) чтоб улучшить ситуацию. И вот тут начинается интересное. Дальнейшее описание уже с поправкой на все совершенные ошибки.

Сначала скачиваем себе свежие драйвера с официального сайта. В моем случае это было hplip-3.20.9 против 3.17, что идут в репозиториях к ОС. Перемещаем скачанный инсталлятор в отдельную папку и запускаем по инструкции. Ну и первым же делом разбиваемся о то, что он не знает что Elementary OS это на самом деле Ubuntu. Ничего, в ручном режиме выбираем нужную ОС и утыкаемся в пароль от root, которого нет и не было. Ладно, запускаем через sudo и наплевав на предупреждение, что настоятельно рекомендуется запуск от обычного пользователя, заново проходим весь путь, который кончается списком необходимых зависимостей, которые он не может установить в автоматическом режиме. Пытаемся поставить их через apt-get, но обнаруживаем, что половины оно не может найти. Возвращаемся к началу, в процессе выбора ручной установки отказываемся от поддержки факса и сканера, чтоб сократить список зависимостей. Те что остались гуглим и ставим нагугленные имена пакетов через apt-get

Отлично, все поставили и снова проходим инсталлятор сначала, теперь упираемся в пустой список зависимостей! Тут нужно просто согласиться с тем, что нужно их установить и процесс продолжается. Далее идет процесс установки зависимостей для HP Scanning (да мы от них отказались но оно из все равно ставит), процесс состоит из автоматической последовательности установки нескольких пакетов через sudo apt-get и потом установка через питон. В моем случае при запуске инсталлятора через sudo процесс прошел, но далее рассыпался make без вменяемых пояснений. А в случае запуска от обычного пользователя, процесс установки уже установленных зависимостей зависал, ну или после получаса наблюдений за спиннером я решил пойти другим путем.

В папке, куда мы переместили инсталлятор, он создал себе папку с распакованными данными. Перейдя в которую и вооружившись фирменной инструкцией удалось нормально запустить configure, который по-человечески попросил зависимости и предложил --disable-scan-build, чтоб избавиться от части из них. Далее make, который тоже сходу не прошел, и почти человечески попросил libavahi-core-dev libavahi-glib-dev libdbus-1-dev, которые пришлось нагуглить по выводимым ошибкам. Ну и, наконец, случился долгожданный sudo make install.

Ура, все поучилось! В конце не забываем про шаг 7 из инструкции и убрать установленный пароль для root (sudo passwd -ld root). Перезагружаемся и добавляем принтер через фирменной приложение от HP.

Все эти муки были не просто так, выход отпечатка при печати картинки размером со страницу А4 из gimp сократился до 45 секунд, против бесконечности (или 3 минут через конвертацию в PDF) на старых драйверах.

ЗЫ не просто так на форумах пишут, что у HP одни из худших драйверов для линукс.