HPLIP
HPLIP (HP Linux Imaging and Printing) — это набор драйверов, программного обеспечения и библиотек с открытым исходным кодом, предназначенный для обеспечения работы струйных, лазерных и многофункциональных устройств (МФУ) производства компании Hewlett-Packard (HP) в операционных системах на ядре Linux. Проект разрабатывается и поддерживается компанией HP в сотрудничестве с сообществом разработчиков свободного программного обеспечения и распространяется в основном под лицензией GNU General Public License (GPL) и рядом других лицензий.
История
Разработка HPLIP была начата компанией HP в 2005 году с целью устранения разрыва в поддержке собственного печатного оборудования под управлением Linux по сравнению с операционными системами Windows и macOS. До появления HPLIP пользователи Linux были вынуждены либо использовать устаревшие драйверы, либо полагаться на сторонние разработки, которые не обеспечивали полной функциональности, особенно для МФУ.
Первая стабильная версия, HPLIP 0.9.5, была выпущена в начале 2006 года. Она поддерживала ограниченное количество моделей, в основном струйные принтеры. В последующие годы проект активно развивался: добавлялась поддержка новых устройств, улучшалась интеграция с системами печати CUPS (Common Unix Printing System) и SANE (Scanner Access Now Easy), а также реализовывались функции управления сканированием, факсами и настройками устройств через графический интерфейс.
Ключевым этапом стало включение HPLIP в состав большинства дистрибутивов Linux (Ubuntu, Fedora, Debian, openSUSE и др.) в качестве стандартного пакета. Это позволило пользователям устанавливать драйверы HP непосредственно из репозиториев дистрибутива без ручной загрузки. В 2010-х годах проект столкнулся с критикой из-за закрытия исходного кода некоторых проприетарных компонентов (например, плагинов для некоторых моделей), а также из-за прекращения поддержки старых устройств. Однако HP продолжает выпускать обновления HPLIP, поддерживая актуальные модели принтеров и МФУ.
Функциональные возможности
HPLIP предоставляет полный набор инструментов для работы с устройствами HP в Linux. Его возможности можно разделить на несколько категорий:
Поддержка печати
HPLIP реализует драйверы для печати, совместимые с системой CUPS. Драйверы поддерживают:
- Стандартные форматы: PostScript (PS), Printer Command Language (PCL), Portable Document Format (PDF), HP Graphics Language (HP-GL/2).
- Различные режимы печати: черно-белая, цветная, двусторонняя (дуплекс), печать на конвертах, этикетках и нестандартных носителях.
- Настройки качества печати, разрешения, экономии тонера/чернил.
Поддержка сканирования
Для МФУ HPLIP включает драйверы сканера, работающие через интерфейс SANE (Scanner Access Now Easy). Это позволяет использовать устройства HP в любом SANE-совместимом приложении (например, xsane, simple-scan, GIMP). Поддерживаются:
- Планшетное сканирование.
- Сканирование через автоподатчик документов (ADF).
- Цветное и черно-белое сканирование.
- Различные разрешения и глубины цвета.
Поддержка факса
HPLIP предоставляет возможность отправки и приема факсов с МФУ HP, имеющих встроенный факс-модем. Функциональность включает:
- Отправка факсов через графический интерфейс (HP Fax Utility).
- Прием факсов в электронном виде (в формате PDF или TIFF).
- Использование адресной книги.
- Настройка параметров факса (скорость, разрешение, номер абонента).
Управление устройством
Проект включает ряд утилит для настройки и мониторинга устройств:
- HP Device Manager (
hp-toolbox): графический интерфейс, позволяющий управлять настройками принтера, проверять уровень чернил/тонера, очищать печатающие головки, просматривать журнал событий и выполнять другие операции. - HP Setup (
hp-setup): утилита для первоначальной настройки и обнаружения устройств в сети или через USB. - HP Send Fax (
hp-sendfax): консольная утилита для отправки факсов. - HP Scan (
hp-scan): консольная утилита для сканирования.
Архитектура и компоненты
HPLIP состоит из нескольких ключевых компонентов, работающих совместно:
- Библиотеки (libs): основные библиотеки, реализующие протоколы обмена с устройствами (например, HP PCL, HP PJL, HP LIDIL). Они обеспечивают низкоуровневый доступ к функциям принтера.
- Драйверы (drivers): модули, которые преобразуют задания печати из форматов CUPS в команды, понятные конкретной модели принтера. Включают как свободные (на основе GPL), так и проприетарные (закрытые) бинарные плагины для некоторых сложных устройств.
- Утилиты (utils): набор консольных и графических программ, перечисленных выше.
- Плагины (plugins): проприетарные компоненты, которые загружаются отдельно для поддержки некоторых моделей (например, для работы с защищенными протоколами или специфическими функциями). Плагины распространяются под лицензией, отличной от GPL, и требуют согласия пользователя с условиями использования.
- Интеграция с CUPS и SANE: HPLIP использует стандартные механизмы CUPS (драйверы, фильтры, backend) и SANE (драйверы) для интеграции в экосистему Linux.
Установка и настройка
Установка HPLIP в большинстве дистрибутивов Linux осуществляется через менеджер пакетов. Например, в Ubuntu и Debian команда sudo apt install hplip hplip-gui установит пакет и графические утилиты. В Fedora используется sudo dnf install hplip. После установки для настройки устройства обычно запускают hp-setup, который автоматически обнаруживает принтер по USB или в сети, загружает необходимые плагины (если требуется) и добавляет его в CUPS.
В случае, если устройство не поддерживается стандартным пакетом, можно загрузить последнюю версию HPLIP с официального сайта HP и запустить скрипт установки. Однако такой способ рекомендуется только для опытных пользователей, так как он может потребовать ручного разрешения зависимостей.
Поддерживаемые устройства
HPLIP поддерживает тысячи моделей принтеров, МФУ и сканеров HP, выпущенных с начала 2000-х годов. Список поддерживаемых устройств регулярно обновляется. Поддержка делится на три уровня:
- Полная поддержка: все функции (печать, сканирование, факс, управление) работают.
- Частичная поддержка: некоторые функции (например, сканирование или факс) могут быть недоступны.
- Базовая поддержка: только печать, без сканирования и факса.
Для некоторых старых моделей поддержка может быть прекращена, и они не будут работать с последними версиями HPLIP. В таких случаях пользователям рекомендуется использовать устаревшие версии драйверов или альтернативные решения (например, драйверы foo2zjs).
Критика и ограничения
Несмотря на широкую распространенность, HPLIP имеет ряд недостатков, которые отмечаются пользователями и сообществом:
- Проприетарные плагины: для многих моделей МФУ требуется загрузка закрытых бинарных плагинов, что нарушает принципы свободного программного обеспечения. Это также может вызывать проблемы с автоматической установкой в некоторых дистрибутивах.
- Прекращение поддержки старых устройств: HP регулярно исключает из списка поддерживаемых моделей старые принтеры, что вынуждает пользователей либо обновлять оборудование, либо искать альтернативные драйверы.
- Сложность настройки: хотя в большинстве дистрибутивов установка проста, в некоторых случаях (например, при использовании сетевых принтеров с нестандартными настройками) могут возникать сложности, требующие ручного редактирования конфигурационных файлов.
- Зависимость от версии дистрибутива: HPLIP может быть несовместим с новыми версиями ядра Linux или библиотек, что требует обновления пакета или ручной компиляции.
Альтернативы
Для устройств HP, не поддерживаемых HPLIP, или для пользователей, предпочитающих полностью свободное ПО, существуют альтернативные драйверы:
- foo2zjs: драйвер для некоторых струйных принтеров HP, основанный на обратном инжиниринге.
- hplip-light: облегченная версия HPLIP без проприетарных плагинов.
- CUPS-BRF: драйвер для некоторых лазерных принтеров.
- Gutenprint: набор драйверов для многих принтеров, включая некоторые модели HP.
Однако эти альтернативы часто не обеспечивают полной функциональности, особенно для МФУ.
Интересные факты
- HPLIP является одним из крупнейших проектов с открытым исходным кодом, поддерживаемых коммерческой компанией.
- Проект переведен на десятки языков, включая русский.
- Исходный код HPLIP доступен на GitHub, где сообщество может вносить исправления и улучшения.
- В 2020 году HP объявила о прекращении поддержки некоторых старых моделей, что вызвало волну критики в сообществе Linux.
Источники
- Официальная документация HPLIP (HP Linux Imaging and Printing User Guide)
- Репозиторий исходного кода HPLIP на GitHub
- Материалы сайта Linux Foundation (CUPS и SANE)
- Статьи на OpenNet и Linux.org.ru
- Обсуждения на форумах Ubuntu и Arch Linux
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →