Snažíte se tisknout a skenovat over LAN, nebo lokálně přes USB?
Ta chyba při skenování: jakým způsobem se snažíte skenovat? Tu hlášku hodí nějaký software běžící v Ubuntu, na obrazovce toho ubuntu? Návrh: nakonfigurujte v tiskárně skenování do síťové složky (Samba/CIFS) a spusťte skenování z LCD panelu tiskárny. Výsledné PDF skončí na sambovém sharu.
Ohledně tiskových driverů: pravda je taková, že desktopový tisk v Linuxu zmáknutý nemám. Linux používám jako spooler jobů pro windowsí stanice. Nemám rád CUPS a "IPP" považuji za moderní PnP výstřelek. HPLIP je možná trochu bloatware a navíc proprietární. Pokud to všechno "prostě funguje", je to žůžo. Pokud to nefunguje... tak doporučuji zvážit následující přístup:
Tiskový subsystém je vrstevnatý. Zkuste rozlišovat desktopové API pro tisk z aplikací, tiskovou úlohu (soubor ve formátu který už vezme přímo tiskárna), a transport úlohy na tiskárnu.
Jedna věc je, vyškádlit aplikaci nebo desktopové printing API, aby z něj vypadla tisková úloha (vlastně soubor) v některém z univerzálních formátů, jako je PostScript nebo PCL5e. Na dnešní tiskárny se už asi dají posílat nastojato i PDFka.
Uprostřed CUPS nebo LPR nebo LPRng frontuje úlohy a předává je tiskárně.
Tiskárnu lze kontaktovat postaru přes paralelní i8255 LPT (/dev/lp0) nebo přes generickou class-based podporu USB LPT (/dev/usblp0 nebo /dev/usb/lp0) nebo stále ještě postaru protokolem LPR. Tyto všechny "back-endové transporty" zná už starý lpd nebo jeho mladší konzervativní brácha lprng. Zkuste pohledat formát souboru /etc/printcap :-) Historicky už několikrát mě CUPS a jeho následníci na**ali tak, že jsem se pokorně vrátil k lprng a jedu dál skrz ručně psaný /etc/printcap.
HPlpr|tisk1|HP LaserJet u nas doma LPR:lp=:rm=192.168.10.123:rp=DEFAULT:mx#0:sh:done_jobs=0:
HPusb|tisk2|HP LaserJet u nas doma USB:lp=/dev/usb/lp0:mx#0:sh:done_jobs=0:
Pokud máte vzorovou tiskovou úlohu (nějaký ten postscript nebo PCL), patrně ji lze prostě nakopírovat na port:
cp soubor.ps /dev/usb/lp0
...a mělo by něco vylézt na papír, pokud je tisková úloha v rozumném formátu.
Pokud máte zkonfigurovaný spooler (lpd, lprng, CUPS) tak by mělo zabrat odeslání skrz spooler - název fronty podáte parametrem -P, jinak se použije default (tuším záznam v printcapu, který má mezi aliasy zmíněno "lp").
lpr -P HPusb < soubor.ps
Zde bych zmínil pradávnou utilitku mpage , kterou lze využít ke konverzi ASCII cleartextu na PS job pro moderní tiskárnu. Její výstup lze přímo pajpnout do LPR:
mpage -1F -bA4 < /etc/protocols | lpr -P HPusb
Pokud toto vše funguje, hledal bych dále, kde v klikacích desktopových konfigurátorech přiřadit konkrétní spoolovací frontě ještě navíc PPD soubor (Postscript Printer Definition - vlastně svého druhu konfigurák/skript generického PS "driveru"). Očekával bych, že poté už by měly tisknout i desktopové aplikace.
Pro moderní tiskárny HP, které znají PostScript, by mělo zabrat poměrně jakékoli PPDčko, podle mého nejlépe nějaké generické. Asi by šlo vykuchat z HP universal printing PostScript driveru, ale existoval také kdysi Adobe generic postscript driver, a existuje také GhostScript s jeho přibaleným PPD. Generické PPD by mělo obsahovat běžná HP rozlišení (násobky 300 dpi), podporu barvy a duplexu.
Není mi jasné, k čemu vlastně u moderního Packarda potřebuju hplip. Pokud správně chápu, hplip se po instalaci stane jedním z dostupných transportů (vedle fyzického /dev/lp0, ipp, lpr apod.) Mám matné tušení, že hplip je nevyhnutelný v případě, že se snažíte rozjet nějaký ohavný GDI printer. Což není tento případ. Mohu-li doporučit: pokud nechodí proprietární bloatwarový blob, zkuste zaútočit na otevřená rozhraní - viz výše.
Možná nakonec bude cestou nejmenšího odporu nějaké to IPP nebo AirPrint... = další varianty transportu a asi i k nim navázané specifické vlastnosti (třeba konkrétní PDL). Matně si vybavuji, že některé nové low-end lasery používají jako PDL nějakou ořezanou variantu PDF, v zásadě "bitmapa opatřená PDF obálkou" :-) Ale ohledně konfigurace těchto moderností nemohu napovědět.