[SOLVED] Работа с принтерами hp1010, hp1020, hp1018, hp1006p

Здравствуйте.

Первый раз столкнулся с настройкой принтеров на линуксе.
На данный момент есть принтеры hp1010, hp1020, hp1018, hpp1006. Подключен сейчас компьютеру hp1010.

поставил hplip-3.10.2.ebuild (т.к. когда ставил hplip 2ой версии из дерева портриджей, то в программе gnome-cups-manager при выборе принтера от производителя HP, не было hp1010)

так же ставил:

net-print/cups-1.3.11-r1  USE="X acl dbus jpeg kerberos pam perl php png python ssl tiff -avahi -gnutls -java -ldap -ppds -samba -slp -static -xinetd -zeroconf" LINGUAS="-de -en -es -et -fr -he -id -it -ja -pl -sv -zh_TW
sys-apps/hal-0.5.13-r2  USE="X consolekit crypt -acpi -apm -debug -dell -disk-partition -doc -laptop -policykit (-selinux)
net-print/foomatic-filters-3.0.20080507  USE="cups"
net-print/foo2zjs-20081129  USE="cups usb -foomaticdb" FOO2ZJS_DEVICES="hp1018 hp1020 hpp1006 -hp1000 -hp1005 -hp1215 -hp1500 -hp1600 -hp2600n -hpp1005 -hpp1007 -hpp1008 -hpp1505 -km2200 -km2300 -km2430 -km2480 -km2490 -km2530 -kmcpwl -lm500 -oki3200 -oki3300 -oki3400 -oki3530 -oki5100 -oki5200 -oki5500 -oki5600 -oki5800 -sa2160 -sa300 -sa315 -sa3160 -xp6110 -xp6115"
sys-apps/hotplug-20040923-r2

в ядре:
CONFIG_USB_PRINTER=y

но почему то в /dev/ не наблюдаю lp0 или тому подобных :(

# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

подскажите пож-та, что еще мог упустить я?
спасибо.

Решение и описалово в самом последнем посте в самом низу.

Такой файл должен

Такой файл должен быть:

/dev/usb/lp0

# lsusb
Bus 008 Device 008: ID 03f0:2b17 Hewlett-Packard

Могу предположить, что не собран модуль USB Printer.

Не грусти, товарищ! Всё хорошо, beautiful good!

:(

Спасибо за ответ,

Я тоже думал, что должно быть что-то подобное .. но не нашел..
У меня даже нету каталога /dev/usb/.

> Могу предположить, что не собран модуль USB Printer.
Конфигурации ядра:
Device Drivers - USB Support - <*> USB Printer Support
я правильно понял, что Вы подразумевали под не собран модуль USB Printer ?

Спасибо.

Пальцем в небо %)

У Вас случаем в файле /etc/modprobe.d/blacklist.conf
строчка "blacklist usblp" не раскомментирована?
Может быть лучше поддержку USB принтеров не в ядро вкомпиливать, а модулем?

Device Drivers - USB Support - <M> USB Printer Support

спасибо за попытку помочь !

s57 modprobe.d # cat /etc/modprobe.d/blacklist.conf | grep usblp
# hplip and cups 1.4+ use raw USB devices, so it requires usblp not be loaded
#blacklist usblp

пробую модулем собирать, отпишусь.

модулем не помогло

попроболал модулем загрузить, не помогло.

modprobe usblp

проверил в lsmod, появился usblp.

устройства никакого не появилось :(, в логах лишь одна строчка:
Mar 3 15:24:19 s57 kernel: usbcore: registered new interface driver usblp

может еще чего забыл в ядре включить ? может в udev блокируется чего нибудь ?

спасиб

...

нашел еще правила в udev.

s57 ~ # cat /etc/udev/rules.d/11-hplj10xx.rules
ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
   ATTRS{idProduct}=="0517", RUN+="/sbin/foo2zjs-loadfw 1000 $tempnode"
ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
   ATTRS{idProduct}=="1317", RUN+="/sbin/foo2zjs-loadfw 1005 $tempnode"
ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
   ATTRS{idProduct}=="4117", RUN+="/sbin/foo2zjs-loadfw 1018 $tempnode"
ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
   ATTRS{idProduct}=="2b17", RUN+="/sbin/foo2zjs-loadfw 1020 $tempnode"

тут не нашел 1010 модели, ее то и не было при инсталяции foo2zjs в устройствах перечисленных,.. хотя было упоминание ее в hplip.
может это еще на мысль какую наведет.
:*

Если решите проблему

Пожалуйста отпишитесь подробней про процесс установки,
очень интересует именно 1010 модель
буду очень признателен. Спасибо.

Gentoo - Symphony of Creations

Определитесь - либо foo2zjs,

Определитесь - либо foo2zjs, либо hplip. Второе настаивается через hp-setup. Если что-то правили руками, то ССЗБ...
hotplug не нужен.

спасибо!

я думал что это все (foo2zjs, hplip) взаимодействует между собой
Выбираю hplip, т.к. уверен что в нем есть поддержка hp1010.

я пробовал настраивать через gnome-cups-manager.

через hp-setup нужно указать мой девайс - принтер, а его нету в /dev/usb/ и в /dev/
:(
не могу понять почему...
может конфликтует foo2zjs и hplip ? хотя вроде бы не должны, т.к. вроде бы в /dev/ устройство должно появляется udev'ом :(..

:(

попробуйте удалить foo2zjs ,

попробуйте удалить foo2zjs , hotplug и перезагрузитесь.

Настраивайте через cups,

Настраивайте через cups, http://localhost:631 (?etc/init.d/cupsd start)
url у принтера выглядит примерно так так hp:/usb/Deskjet_D2600_series?serial=TH95Q242C805FP
в настройках выбирают не HP, а HPLIP
Утилита для конфигурирования принтера hp-check, смотрим hp-check --help
hp-setup для графического интерфейса

Ну и /etc/cups/printers.conf получается примерно следующего содержания:


Info My smal friend #
Location Office Printer
DeviceURI hp:/usb/Deskjet_D2600_series?serial=TH95Q242C805FP
State Idle
StateTime 1267310745
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer

буду честен, я не знаю, почему у меня все работает

а разве если нету устройства

а разве если нету устройства /dev/usb/lpN (N - номер пп), то можно чего то пытаться настраиывать. ?

не помогло :(... к сожалению

не помогло :(... к сожалению устройство lpN (где N - номер по-порядку) так и не появилось при загрузке в /dev/usb/ и в /dev.
причем директории /dev/usb/ у меня даже нету :(.

может я наоборот чего то лишнего в поддержке усб включил в ядре? или все же не включил?..
вот моя ветка Device Drivers - USB Support:

<*>   Support for Host-side USB
[ ]     USB verbose debug messages
[ ]     USB announce new devices
*** Miscellaneous USB options ***
[*]     USB device filesystem (DEPRECATED)
[*]     USB device class-devices (DEPRECATED)
[ ]     Dynamic USB minor allocation
[ ]     USB selective suspend/resume and wakeup
< >     USB Monitor
< >     Enable Wireless USB extensions (EXPERIMENTAL)
< >     Support WUSB Cable Based Association (CBA)
*** USB Host Controller Drivers ***
< >     Cypress C67x00 HCD support
< >     xHCI HCD (USB 3.0) support (EXPERIMENTAL)
<*>     EHCI HCD (USB 2.0) support
[ ]       Root Hub Transaction Translators
[ ]       Improved Transaction Translator scheduling (EXPERIMENTAL)
< >     OXU210HP HCD support
< >     ISP116X HCD support
< >     ISP 1760 HCD support
<*>     OHCI HCD support
[*]       OHCI support for Broadcom SSB OHCI core
<*>     UHCI HCD (most Intel and VIA) support
< >     SL811HS HCD support
< >     R8A66597 HCD support
< >     Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)
< >     Host Wire Adapter (HWA) driver (EXPERIMENTAL)
*** USB Device Class drivers ***
< >   USB Modem (CDC ACM) support
<*>   USB Printer support
< >   USB Wireless Device Management support
< >   USB Test and Measurement Class support
*** NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ***
*** also be needed; see USB_STORAGE Help for more info ***
<*>   USB Mass Storage support
[ ]     USB Mass Storage verbose debug
< >     Datafab Compact Flash Reader support
< >     Freecom USB/ATAPI Bridge support
< >     ISD-200 USB/ATA Bridge support
< >     USBAT/USBAT02-based storage support
< >     SanDisk SDDR-09 (and other SmartMedia, including DPCM) support
< >     SanDisk SDDR-55 SmartMedia support
< >     Lexar Jumpshot Compact Flash Reader
< >     Olympus MAUSB-10/Fuji DPC-R1 support
< >     Support OneTouch Button on Maxtor Hard Drives
< >     Support for Rio Karma music player
< >     SAT emulation on Cypress USB/ATA Bridge with ATACB
[ ]   The shared table of common (or usual) storage devices
*** USB Imaging devices ***
< >   USB Mustek MDC800 Digital Camera support
< >   Microtek X6USB scanner support
*** USB port drivers ***
< >   USS720 parport driver
< >   USB Serial Converter support  --->
*** USB Miscellaneous drivers ***
< >   EMI 6|2m USB Audio interface support
< >   EMI 2|6 USB Audio interface support
< >   ADU devices from Ontrak Control Systems
< >   USB 7-Segment LED Display
< >   USB Diamond Rio500 support
< >   USB Lego Infrared Tower support
< >   USB LCD driver support
< >   USB BlackBerry recharge support
< >   USB LED driver support
< >   Cypress CY7C63xxx USB driver support
< >   Cypress USB thermometer driver support
< >   Siemens ID USB Mouse Fingerprint sensor support
< >   Elan PCMCIA CardBus Adapter USB Client
< >   Apple Cinema Display support
< >   USB 2.0 SVGA dongle support (Net2280/SiS315)
< >   USB LD driver
< >   PlayStation 2 Trance Vibrator driver support
< >   IO Warrior driver support
< >   USB testing driver
< >   iSight firmware loading support
< >   USB VST driver
< >   USB Gadget Support  --->
*** OTG and related infrastructure ***
< >   NOP USB Transceiver Driver

[ ] USB announce new devices?

[*]     USB announce new devices
[*]     Dynamic USB minor allocation

- может быть так?

спасибо !

попробовал, до сих пор нету ни
директории /dev/usb/ ни /dev/usb/lp0 ни /dev/lp0
:(

вот что в логах: s57 log #

вот что в логах:

s57 log # cat messages | grep usb
Mar  4 15:39:42 s57 kernel: usbcore: registered new interface driver usbfs
Mar  4 15:39:42 s57 kernel: usbcore: registered new interface driver hub
Mar  4 15:39:42 s57 kernel: usbcore: registered new device driver usb
Mar  4 15:39:42 s57 kernel: usb usb1: configuration #1 chosen from 1 choice
Mar  4 15:39:42 s57 kernel: usbcore: registered new interface driver usb-storage
Mar  4 15:39:42 s57 kernel: usbcore: registered new interface driver usbhid
Mar  4 15:39:42 s57 kernel: usbhid: v2.6:USB HID core driver

/dev/usb/lp0

Как я понимаю, создание каталога/файла /dev/usb/lp0 - дело udev'a.
Так что надо рихтовать его правила.
А что Вам преданно рапортует "cat /proc/bus/usb/devices"?

...

s57 / # cat /proc/bus/usb/devices

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 8
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev= 2.06
S:  Manufacturer=Linux 2.6.31-gentoo-r6 ehci_hcd
S:  Product=EHCI Host Controller
S:  SerialNumber=0000:00:0b.1
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

- - -

Если я не ошибаюсь, то в последних версиях hplip, модуль usblp бы не нужен.

У меня появляется устройство

У меня появляется устройство /dev/usblp0
Дайте вывод lsusb относительно принтера, сделайте с параметром -v
hp-check что-нибудь говорит?
http://localhost:631 упоминания о hplip имеются?

буду честен, я не знаю, почему у меня все работает

спасибо, что пока еще со мной ...

lsusb - http://pastebin.org/101161
hp-check - http://pastebin.org/101162

> http://localhost:631 упоминания о hplip имеются?
да.. при добавлении принтера есть возможность выбрать из списка HP Printer (HPLIP)

- - -

Еще разок повторюсь. Для Cups-1.4 и последних версий HPLIP - usblp НЕ НУЖЕН.

Единственное, я не очень уверен - кто конкретно отвечает за нужность порт - hplip или cups. Если первый - то точно не нужен, а если cups - то версия 1.3 работает через usblp, а 1.4 через libusb.

Вот так выглядит ситуация без usblp: lpstat -s
устройство для Epson_R270: usb://EPSON/Stylus%20Photo%20R270?serial=W19PXXXXXXXXXXXXXX
устройство для HP_LaserJet_P2015: hp:/usb/HP_LaserJet_P2015_Series?serial=00XXXXXXXXXX

Создается отдельный порт "hp", который конфликтует с usblp.
Таким образом, надо: попробовать выгрузить usblp; убедиться, что в lsusb присутствует необходимый девайс; и запустить hp-setup.

хм.. у меня два принтера

хм.. у меня два принтера подключены, оба usb, один hp, второй epson через /dev/usblp0, никаких конфликтов нет, наверное что-то не так делаю.

буду честен, я не знаю, почему у меня все работает

- - -

Да не, все так. (-; Просто все зависит от версий cups'а и драйвера. И еще от того, как собран hplip.

$ equery -q u  hplip | grep +
+hpcups
+qt4
+snmp

Особо отмечу "hpcups" "new-hpcups" и "udev-acl".
Кстати "udev-acl", может подгружать необходимые firmware!

у меня cups

у меня cups 1.3

net-print/cups-1.3.11-r1  USE="X acl dbus jpeg kerberos pam perl php png python ssl tiff -avahi -gnutls -java -ldap -ppds -samba -slp -static -xinetd -zeroconf" LINGUAS="-de -en -es -et -fr -he -id -it -ja -pl -sv -zh_TW"
net-print/hplip-3.9.12-r1  USE="gtk hpcups hpijs -doc -fax -libnotify -minimal -new-hpcups -parport -policykit -qt4 -scanner -snmp -static-ppds -udev-acl"

может попробовать 1.4 поставить? и попробовать выгрузить usblp ?
а потом смотреть lsusb на наличие принтера ?

спасибо

- - -

Посмотрите внимательно на "udev-acl" - может для вашего принтера требуется подгрузка фирмваре.

:(

добавил, пересобрал hplip.

net-print/hplip-3.9.12-r1  USE="gtk hpcups hpijs qt4 udev-acl -doc -fax -libnotify -minimal -new-hpcups -parport -policykit -scanner -snmp -static-ppds" 

все равно в lsusb принтера не появляется :((((

s57 dev # lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

пробовать cups 1.4 ?

Да нету в hplip поддержки HP1010

с чего вы взяли?
на сайте не заявлено ...

Упс, извиняюсь есть с версии 0.9.5
перепутал с FOO2ZJS

Gentoo - Symphony of Creations

- - -

А... Так я видать что-то пропустил... Если не появляется в lsusb, то ни cups, ни hplip, ни usblp - тут не причем.
Вероятно у вас что-то не включено в ядре. Может эти принтера на usb-1 (или кабель) и требуется включить UHCI?

hplip

Пробуйте похожая ситуация, если принтер поддерживается hplip, на сколько я глянул, поддерживается. usb порты вообще работают? мышки-флэшки? /var/log/messages, dmesg, lsusb вообще молчат при подключении кабеля?

буду честен, я не знаю, почему у меня все работает

включил в ядре, не было:USB

включил в ядре, не было:
USB selective suspend/resume and wakeup
USB Monitor

порты рабочие, мышка, флэшка определяется..
:(

пересобираю, перегружусь.. посмотрю результат

не помогло, флэшку когда вставляю появляется в lsusb девайс..
поменял провод еще раз, ничего..

p.s.
lsmod
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

у меня ничего не подключено, так и должно быть ?

- - -

Нет. lsusb обязательно должен показать девайс. Смотрите, что в dmesg.
И у вас нет поддержки usb1.
Включен ли USB_HID и USB_DEVICEFS? Включите, зависимости от чипсета OHCI или UHCI (или оба включите - оно само выберется нужное).

уррррра !!! :)

после включения опции:

[*]       Root Hub Transaction Translators

появился в списке принтер, а так же поддержка usb1.1.

s57 ~ # lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 03f0:0c17 Hewlett-Packard LaserJet 1010
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Далее поставил принтер через cups, принтер заработал.
единственное что в тулзе от hplip (Приложения - Стандартные - HP Device Manager), где можно видеть статус принтера, делать настройки .. в ней показывает:
Device communication error (code:5012)

хотя сам принтер вроде бы печатает... Это может быть критично?.. конечно хотелось, чтобы все заработало корректно..

еще раз всем спасибо, за теперпение !!

все с этим принтером борьба

все с этим принтером борьба окончена..
огромнейшее спасибо всем, кто мне помогал..
кто вложил кусочек знаний..
примногом благодарен..
решение этой же проблемы нашел здесь - https://answers.launchpad.net/hplip/+question/49135

нужно было добавить моего пользователя в группу lp, usb.. и hp-toolbox (HP Device Manager) заработал коректно..

счас напишу последним постом, что я делал для установки принтера с самого начала..
может кому поможет в дальнейшем.

всем удачных выходных !

выше в сообщениях писал

выше в сообщениях писал настройки ветки ядра USB Devices, посмотрите пож-та выше..
не менял настроек пока..

UHCI включен вроде, кабель проверял, usb-1 не знаю где включать.. :(

Могу предложить только

Могу предложить только загрузиться с livecd и проверить вывод lsusb на порт - кабель - устройство. Потом будем ковырять дальше

буду честен, я не знаю, почему у меня все работает

загрузился, lsusb девайс

загрузился, lsusb
девайс появился в списке
пробую с опциями ядра дальше разбираться.

Установка и настройка

Установка и настройка принтера HP 1010.

Версия ядра - 2.6.31-gentoo-r6.

В ядре след. опции включал

Device Drivers - Character devices 
<*> Parallel printer support

Device Drivers - USB Support:
<*>   Support for Host-side USB
[ ]     USB verbose debug messages
[*]     USB announce new devices
*** Miscellaneous USB options ***
[*]     USB device filesystem (DEPRECATED)
[*]     USB device class-devices (DEPRECATED)
[*]     Dynamic USB minor allocation
[*]     USB selective suspend/resume and wakeup
<*>     USB Monitor
< >     Enable Wireless USB extensions (EXPERIMENTAL)
< >     Support WUSB Cable Based Association (CBA)
*** USB Host Controller Drivers ***
< >     Cypress C67x00 HCD support
<*>     xHCI HCD (USB 3.0) support (EXPERIMENTAL)
<*>     EHCI HCD (USB 2.0) support
[*]       Root Hub Transaction Translators
[*]       Improved Transaction Translator scheduling (EXPERIMENTAL)
< >     OXU210HP HCD support
< >     ISP116X HCD support
< >     ISP 1760 HCD support
<*>     OHCI HCD support
[*]       OHCI support for Broadcom SSB OHCI core
<*>     UHCI HCD (most Intel and VIA) support
< >     SL811HS HCD support
< >     R8A66597 HCD support
< >     Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)
< >     Host Wire Adapter (HWA) driver (EXPERIMENTAL)
*** USB Device Class drivers ***
< >   USB Modem (CDC ACM) support
<*>   USB Printer support
< >   USB Wireless Device Management support
< >   USB Test and Measurement Class support
*** NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ***
*** also be needed; see USB_STORAGE Help for more info ***
<*>   USB Mass Storage support
[ ]     USB Mass Storage verbose debug
< >     Datafab Compact Flash Reader support
< >     Freecom USB/ATAPI Bridge support
< >     ISD-200 USB/ATA Bridge support
< >     USBAT/USBAT02-based storage support
< >     SanDisk SDDR-09 (and other SmartMedia, including DPCM) support
< >     SanDisk SDDR-55 SmartMedia support
< >     Lexar Jumpshot Compact Flash Reader
< >     Olympus MAUSB-10/Fuji DPC-R1 support
< >     Support OneTouch Button on Maxtor Hard Drives
< >     Support for Rio Karma music player
< >     SAT emulation on Cypress USB/ATA Bridge with ATACB
[ ]   The shared table of common (or usual) storage devices
*** USB Imaging devices ***
< >   USB Mustek MDC800 Digital Camera support
< >   Microtek X6USB scanner support
*** USB port drivers ***
< >   USS720 parport driver
<*>   USB Serial Converter support  --->
*** USB Miscellaneous drivers ***
< >   EMI 6|2m USB Audio interface support
< >   EMI 2|6 USB Audio interface support
< >   ADU devices from Ontrak Control Systems
< >   USB 7-Segment LED Display
< >   USB Diamond Rio500 support
< >   USB Lego Infrared Tower support
< >   USB LCD driver support
< >   USB BlackBerry recharge support
< >   USB LED driver support
< >   Cypress CY7C63xxx USB driver support
< >   Cypress USB thermometer driver support
< >   Siemens ID USB Mouse Fingerprint sensor support
< >   Elan PCMCIA CardBus Adapter USB Client
< >   Apple Cinema Display support
< >   USB 2.0 SVGA dongle support (Net2280/SiS315)
< >   USB LD driver
< >   PlayStation 2 Trance Vibrator driver support
< >   IO Warrior driver support
< >   USB testing driver
< >   iSight firmware loading support
< >   USB VST driver
< >   USB Gadget Support  --->
*** OTG and related infrastructure ***
< >   NOP USB Transceiver Driver

Создаю ebuild hplip.

mkdir -p /usr/local/portage/net-print/hplip/
cd /usr/local/portage/net-print/hplip/

nano -w hplip-3.10.2.ebuild

добавляем в файл


# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-print/hplip/hplip-3.10.2.ebuild,v 1.1 2010/02/28 12:21:59 billie Exp $

EAPI=2

inherit fdo-mime linux-info python autotools

DESCRIPTION="HP Linux Imaging and Printing System. Includes printer, scanner, fax drivers and service tools."
HOMEPAGE="http://hplipopensource.com/hplip-web/index.html"
SRC_URI="mirror://sourceforge/hplip/${P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"

# zeroconf does not work properly with >=cups-1.4. thus support for it is also disabled in hplip.
IUSE="doc fax gtk +hpcups hpijs libnotify minimal -new-hpcups parport policykit qt4 scanner snmp static-ppds -udev-acl"

COMMON_DEPEND="
        media-libs/jpeg
        hpijs? ( >=net-print/foomatic-filters-3.0.20080507[cups] )
        udev-acl? ( >=sys-fs/udev-145[extras] )
        !minimal? (
                net-print/cups
                virtual/libusb:0
                >=dev-lang/python-2.4.4[threads,xml]
                scanner? ( >=media-gfx/sane-backends-1.0.19-r1 )
                fax? ( sys-apps/dbus )
                snmp? (
                        net-analyzer/net-snmp
                        dev-libs/openssl
                )
        )"

DEPEND="${COMMON_DEPEND}
        dev-util/pkgconfig"

RDEPEND="${COMMON_DEPEND}
        >=app-text/ghostscript-gpl-8.70
        dev-python/pygobject
        !static-ppds? ( || ( >=net-print/cups-1.4.0 net-print/cupsddk ) )
        !minimal? (
                kernel_linux? ( >=sys-fs/udev-114 )
                scanner? (
                        gtk? ( media-gfx/xsane )
                        !gtk? ( || ( media-gfx/sane-frontends dev-python/imaging ) )
                )
                fax? (
                        dev-python/reportlab
                        dev-python/dbus-python
                )
                qt4? (
                        dev-python/PyQt4[dbus,X]
                        libnotify? (
                                dev-python/notify-python
                        )
                        policykit? (
                                sys-auth/policykit
                        )
                )
        )"

CONFIG_CHECK="~PARPORT ~PPDEV"
ERROR_PARPORT="Please make sure parallel port support is enabled in your kernel (PARPORT and PPDEV)."

pkg_setup() {
        ! use qt4 && ewarn "You need USE=qt4 for the hplip GUI."

        use scanner && ! use gtk && ewarn "You need USE=gtk for the scanner GUI."

        if ! use hpcups && ! use hpijs ; then
                ewarn "Installing neither hpcups (USE=-hpcups) nor hpijs (USE=-hpijs) driver,"
                ewarn "which is probably not what you want."
                ewarn "You will almost certainly not be able to print."
                ewarn "Recommended USE flags: USE=\"hpcups -hpijs\")."
        fi

        if use minimal ; then
                ewarn "Installing driver portions only, make sure you know what you are doing."
                ewarn "Depending on the USE flags set for hpcups and/or hpijs the appropiate"
                ewarn "drivers are installed."
        else
                use parport && linux-info_pkg_setup
        fi
}

src_prepare() {
        # Do not install desktop files if there is no gui
        # Upstream bug: https://bugs.launchpad.net/hplip/+bug/452113
        epatch "${FILESDIR}"/${PN}-3.9.10-desktop.patch

        # Browser detection through xdg-open
        # Upstream bug: https://bugs.launchpad.net/hplip/+bug/482674
        epatch "${FILESDIR}"/${PN}-3.9.10-browser.patch

        # Use cups-config when checking for cupsddk
        # Upstream bug: https://bugs.launchpad.net/hplip/+bug/483136
        epatch "${FILESDIR}"/${PN}-3.9.12-cupsddk.patch

        # htmldocs are not installed under docdir/html so enable htmldir configure switch
        # Upstream bug: https://bugs.launchpad.net/hplip/+bug/483217
        epatch "${FILESDIR}"/${PN}-3.9.10-htmldir.patch

        # Increase systray check timeout for slower machines
        # Upstream bug: https://bugs.launchpad.net/hplip/+bug/335662
        epatch "${FILESDIR}"/${PN}-3.9.12-systray.patch

        # SYSFS deprecated but kept upstream for compatibility reasons
        # Upstream bug: https://bugs.launchpad.net/hplip/+bug/346390
        sed -i -e "s/SYSFS/ATTRS/g" -e "s/sysfs/attrs/g" data/rules/56-hpmud_support.rules \
                data/rules/55-hpmud.rules || die

        # Force recognition of Gentoo distro by hp-check
        sed -i \
                -e "s:file('/etc/issue', 'r').read():'Gentoo':" \
                installer/core_install.py || die

        # Use system foomatic-rip for hpijs driver instead of foomatic-rip-hplip
        # The hpcups driver does not use foomatic-rip
        local i
        for i in ppd/hpijs/*.ppd.gz
        do
                rm -f ${i}.temp
                gunzip -c ${i} | sed 's/foomatic-rip-hplip/foomatic-rip/g' | gzip > ${i}.temp || die
                mv ${i}.temp ${i}
        done

        eautoreconf
}

src_configure() {
        local gui_build myconf drv_build minimal_build

        if use qt4 ; then
                gui_build="--enable-gui-build --enable-qt4 --disable-qt3"
                if use policykit ; then
                        myconf="--enable-policykit"
                else
                        myconf="--disable-policykit"
                fi
        else
                gui_build="--disable-gui-build --disable-qt3 --disable-qt4"
        fi

        if use fax || use qt4 ; then
                myconf="${myconf} --enable-dbus-build"
        else
                myconf="${myconf} --disable-dbus-build"
        fi

        if use hpcups ; then
                drv_build="$(use_enable hpcups hpcups-install)"
                if use static-ppds ; then
                        drv_build="${drv_build} --enable-cups-ppd-install"
                        drv_build="${drv_build} --disable-cups-drv-install"
                else
                        drv_build="${drv_build} --enable-cups-drv-install"
                        drv_build="${drv_build} --disable-cups-ppd-install"
                fi
        else
                drv_build="--disable-hpcups-install --disable-cups-drv-install"
                drv_build="${drv_build} --disable-cups-ppd-install"
        fi

        if use hpijs ; then
                drv_build="${drv_build} $(use_enable hpijs hpijs-install)"
                if use static-ppds ; then
                        drv_build="${drv_build} --enable-foomatic-ppd-install"
                        drv_build="${drv_build} --disable-foomatic-drv-install"
                else
                        drv_build="${drv_build} --enable-foomatic-drv-install"
                        drv_build="${drv_build} --disable-foomatic-ppd-install"
                fi
        else
                drv_build="${drv_build} --disable-hpijs-install"
                drv_build="${drv_build} --disable-foomatic-drv-install"
                drv_build="${drv_build} --disable-foomatic-ppd-install"
        fi

        if use minimal ; then
                if use hpijs ; then
                        minimal_build="--enable-hpijs-only-build"
                else
                        minimal_build="--disable-hpijs-only-build"
                fi
                if use hpcups ; then
                        minimal_build="${minimal_build} --enable-hpcups-only-build"
                else
                        minimal_build="${minimal_build} --disable-hpcups-only-build"
                fi
        fi

        econf \
                --disable-dependency-tracking \
                --disable-cups11-build \
                --disable-lite-build \
                --disable-foomatic-rip-hplip-install \
                --disable-shadow-build \
                --with-cupsbackenddir=$(cups-config --serverbin)/backend \
                --with-cupsfilterdir=$(cups-config --serverbin)/filter \
                --with-htmldir=/usr/share/doc/${P}/html \
                ${gui_build} \
                ${myconf} \
                ${drv_build} \
                ${minimal_build} \
                $(use_enable new-hpcups new-hpcups) \
                $(use_enable doc doc-build) \
                $(use_enable fax fax-build) \
                $(use_enable parport pp-build) \
                $(use_enable scanner scan-build) \
                $(use_enable snmp network-build) \
                $(use_enable udev-acl udev-acl-rules)
}

src_install() {
        emake DESTDIR="${D}" install || die

        # Installed by sane-backends
        # Gentoo Bug: #201023
        rm -f "${D}"/etc/sane.d/dll.conf || die
}

pkg_postinst() {
        use !minimal && python_mod_optimize /usr/share/${PN}
        fdo-mime_desktop_database_update

        elog "You should run hp-setup as root if you are installing hplip for the first time,"
        elog "and may also need to run it if you are upgrading from an earlier version."
        elog
        elog "If your device is connected using USB, users will need to be in the lp group to"
        elog "access it."
        elog
        elog "This release doesn't use an init script anymore, so you should probably do a"
        elog "'rc-update del hplip' if you are updating from an old version."
        elog
        elog "Starting with versions of hplip >=3.9.8 mDNS is the default network search"
        elog "mechanism. To make use of it you need to activate the zeroconf flag on cups."
        elog "If you prefer the SLP method you have to choose this when configuring the"
        elog "device."
}

pkg_postrm() {
        use !minimal && python_mod_cleanup /usr/share/${PN}
        fdo-mime_desktop_database_update
}
ebuild hplip-3.10.2.ebuild digest

echo "net-print/hplip hpijs qt4 udev-acl snmp fax libnotify policykit" >> /etc/portage/package.use
echo "=net-print/hplip-3.10.2" >> /etc/portage/package.unmask
echo "net-print/foomatic-gui ~x86" >> /etc/portage/package.keywords
echo "net-print/hplip ~x86" >> /etc/portage/package.keywords

Инсталлирую пакеты:

emerge -av net-print/cups
emerge -av sys-apps/hal
emerge -av sys-apps/hplip
emerge -av net-print/foomatic-filters

Добавляю в автозагрузку:

rc-update add cups default
rc-update add hald default

Добавляю пользователю группы для работы с hp-toolbox.

usermod -aG usb,lp userforprinter

запускаем hp-toolbox и добавляем принтер… можем его расшарить и т.п.
вродь как то так

Спасибо,

что не забыли, опробуем ;)

Gentoo - Symphony of Creations

Спасибо, все настроилось и заработало...

Без особых проблем, если не считать вашу хитрую изюминку, которую вы внесли ;)

Gentoo - Symphony of Creations

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".