[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#879115: hplip can't print jobs with unicode surrogate characters



Package: hplip
Version: 3.16.11+repack0-3
Severity: normal
Tags: upstream

Dear Maintainer,

   * What led up to the situation?

Tried to print PDF from evince

   * What exactly did you do (or not do) that was effective (or
     ineffective)?

Pressed the print button

   * What was the outcome of this action?

The print job "stopped"

   * What outcome did you expect instead?

Some printed paper.

Looking in the cups error_log I see:

D [19/Oct/2017:14:03:08 +0200] [Job 2204] File \"/usr/share/hplip/base/sixext.py\", line 109, in to_bytes_utf8
D [19/Oct/2017:14:03:08 +0200] [Job 2204] return s.encode(\"utf-8\")
D [19/Oct/2017:14:03:08 +0200] [Job 2204] UnicodeEncodeError: \'utf-8\' codec can\'t encode character \'\\udcc3\' in position 19: surrogates not allowed

This appears to be the launchpad bug:

https://bugs.launchpad.net/hplip/+bug/1498366

A simple, possibly incorrect, fix is:

--- /usr/share/hplip/base/sixext.py.orig	2017-05-04 18:35:44.000000000 +0200
+++ /usr/share/hplip/base/sixext.py	2017-10-19 17:40:51.946105373 +0200
@@ -106,7 +106,7 @@
 
 
     def to_bytes_utf8(s):
-        return s.encode("utf-8")
+        return s.encode("utf-8", errors="surrogateescape")
 
 
     def to_string_utf8(s):


-- Package-specific info:
Saving output in log file: /home/john/hp-check.log

HP Linux Imaging and Printing System (ver. 3.16.11)
Dependency/Version Check Utility ver. 15.1

Copyright (c) 2001-15 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Note: hp-check can be run in three modes:
1. Compile-time check mode (-c or --compile): Use this mode before compiling the HPLIP supplied tarball (.tar.gz or .run) to determine if the proper dependencies are installed
to successfully compile HPLIP.                                                                                                                                                 
2. Run-time check mode (-r or --run): Use this mode to determine if a distro supplied package (.deb, .rpm, etc) or an already built HPLIP supplied tarball has the proper      
dependencies installed to successfully run.                                                                                                                                    
3. Both compile- and run-time check mode (-b or --both) (Default): This mode will check both of the above cases (both compile- and run-time dependencies).                     

Check types:                                                                                                                                                                   
a. EXTERNALDEP - External Dependencies                                                                                                                                         
b. GENERALDEP - General Dependencies (required both at compile and run time)                                                                                                   
c. COMPILEDEP - Compile time Dependencies                                                                                                                                      
d. [All are run-time checks]                                                                                                                                                   
PYEXT SCANCONF QUEUES PERMISSION                                                                                                                                               

Status Types:
    OK
    MISSING       - Missing Dependency or Permission or Plug-in
    INCOMPAT      - Incompatible dependency-version or Plugin-version

warning: 2-9.1 version is not supported. Using 2-8.6 versions dependencies to verify and install...

---------------
| SYSTEM INFO |
---------------

 Kernel: 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u5 (2017-09-19) GNU/Linux
 Host: persic
 Proc: 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u5 (2017-09-19) GNU/Linux
 Distribution: 2 9.1
 Bitness: 64 bit


-----------------------
| HPLIP CONFIGURATION |
-----------------------

HPLIP-Version: HPLIP 3.16.11
HPLIP-Home: /usr/share/hplip
warning: HPLIP-Installation: Auto installation is not supported for 2 distro  9.1 version 

Current contents of '/etc/hp/hplip.conf' file:
# hplip.conf.  Generated from hplip.conf.in by configure.

[hplip]
version=3.16.11

[dirs]
home=/usr/share/hplip
run=/var/run
ppd=/usr/share/ppd/hplip/HP
ppdbase=/usr/share/ppd/hplip
doc=/usr/share/doc/hplip
html=/usr/share/doc/hplip-doc
icon=no
cupsbackend=/usr/lib/cups/backend
cupsfilter=/usr/lib/cups/filter
drv=/usr/share/cups/drv
bin=/usr/bin
apparmor=/etc/apparmor.d
# Following values are determined at configure time and cannot be changed.
[configure]
network-build=yes
libusb01-build=no
pp-build=yes
gui-build=yes
scanner-build=yes
fax-build=yes
dbus-build=yes
cups11-build=no
doc-build=yes
shadow-build=no
hpijs-install=yes
foomatic-drv-install=yes
foomatic-ppd-install=yes
foomatic-rip-hplip-install=no
hpcups-install=yes
cups-drv-install=yes
cups-ppd-install=no
internal-tag=3.16.11
restricted-build=no
ui-toolkit=qt5
qt3=no
qt4=no
qt5=yes
policy-kit=yes
lite-build=no
udev_sysfs_rules=no
hpcups-only-build=no
hpijs-only-build=no
apparmor_build=no


Current contents of '/var/lib/hp/hplip.state' file:
[plugin]
installed = 1
eula = 1
version = 3.16.11



Current contents of '~/.hplip/hplip.conf' file:
[last_used]
device_uri = hp:/net/HP_Color_LaserJet_MFP_M476dw?ip=192.168.6.18

[installation]
version = 3.16.11
date_time = 10/19/17 17:47:40


 <Package-name>        <Package-Desc>      <Required/Optional> <Min-Version> <Installed-Version> <Status>   <Comment>

------------------------
| General Dependencies |
------------------------

 libpthread           libpthread - POSIX threads library                           REQUIRED        -               b'2.24'         OK         -
 error: cups-devel    CUPS devel- Common Unix Printing System development files    REQUIRED        -               -               MISSING    'cups-devel needs to be installed'
 error: python3-pyqt4 PyQt 4- Qt interface for Python (for Qt version 4.x)         REQUIRED        4.0             -               MISSING    'python3-pyqt4 needs to be installed'
 error: sane-devel    SANE - Scanning library development files                    REQUIRED        -               -               MISSING    'sane-devel needs to be installed'
 error: python3-devel Python devel - Python development files                      REQUIRED        2.2             3.5.3           MISSING    'python3-devel needs to be installed'
 python3-xml          Python XML libraries                                         REQUIRED        -               2.2.0           OK         -
 python3-dbus         Python DBus - Python bindings for DBus                       REQUIRED        0.80.0          1.2.4           OK         -
 cups-ddk             CUPS DDK - CUPS driver development kit                       OPTIONAL        -               -               OK         -
 sane                 SANE - Scanning library                                      REQUIRED        -               -               OK         -
 error: libcrypto     libcrypto - OpenSSL cryptographic library                    REQUIRED        -               1.1.0           MISSING    'libcrypto needs to be installed'
 python3-pil          PIL - Python Imaging Library (required for commandline scanning with hp-scan) OPTIONAL        -               1.1.7           OK         -
 error: libjpeg       libjpeg - JPEG library                                       REQUIRED        -               -               MISSING    'libjpeg needs to be installed'
 python3-reportlab    Reportlab - PDF library for Python                           OPTIONAL        2.0             3.3.0           OK         -
 error: python3-notify2 Python libnotify - Python bindings for the libnotify Desktop notifications OPTIONAL        -               -               MISSING    'python3-notify2 needs to be installed'
 python3X             Python 2.2 or greater - Python programming language          REQUIRED        2.2             3.5.3           OK         -
 error: libusb        libusb - USB library                                         REQUIRED        -               1.0             MISSING    'libusb needs to be installed'
 error: libnetsnmp-devel libnetsnmp-devel - SNMP networking library development files REQUIRED        5.0.9           -               MISSING    'libnetsnmp-devel needs to be installed'
 error: python3-pyqt4-dbus PyQt 4 DBus - DBus Support for PyQt4                         OPTIONAL        4.0             -               MISSING    'python3-pyqt4-dbus needs to be installed'
 error: cups-image    CUPS image - CUPS image development files                    REQUIRED        -               -               MISSING    'cups-image needs to be installed'

-------------------------
| External Dependencies |
-------------------------

 error: avahi-utils   avahi-utils                                                  OPTIONAL        -               -               MISSING    'avahi-utils needs to be installed'
 network              network -wget                                                OPTIONAL        -               1.18            OK         -
 gs                   GhostScript - PostScript and PDF language interpreter and previewer REQUIRED        7.05            9.20            OK         -
 policykit            PolicyKit - Administrative policy framework                  OPTIONAL        -               0.105           OK         -
 error: dbus          DBus - Message bus system                                    REQUIRED        -               1.10.22         MISSING    'DBUS may not be installed or not running'
 error: xsane         xsane - Graphical scanner frontend for SANE                  OPTIONAL        0.9             -               MISSING    'xsane needs to be installed'
 scanimage            scanimage - Shell scanning program                           OPTIONAL        1.0             1.0.25          OK         -
 error: cups          CUPS - Common Unix Printing System                           REQUIRED        1.1             -               INCOMPAT   'CUPS may not be installed or not running'

--------------
| COMPILEDEP |
--------------

 gcc                  gcc - GNU Project C and C++ Compiler                         REQUIRED        -               6.3.0           OK         -
 make                 make - GNU make utility to maintain groups of programs       REQUIRED        3.0             4.1             OK         -
 error: libtool       libtool - Library building support services                  REQUIRED        -               -               MISSING    'libtool needs to be installed'

---------------------
| Python Extentions |
---------------------

 hpmudext             IO-Extension                                                 REQUIRED        -               3.16.11         OK         -
 cupsext              CUPS-Extension                                               REQUIRED        -               3.16.11         OK         -

----------------------
| Scan Configuration |
----------------------

 scanext              Scan-SANE-Extension                                          REQUIRED        -               3.16.11         OK         -
'/etc/sane.d/dll.d/hpaio' not found.
 hpaio                HPLIP-SANE-Backend                                           REQUIRED        -               3.16.11         OK         'hpaio found in /etc/sane.d/dll.conf'

------------------------------
| DISCOVERED SCANNER DEVICES |
------------------------------

device `hpaio:/net/HP_Color_LaserJet_MFP_M476dw?ip=canopic.CalvaEDI.COM' is a Hewlett-Packard HP_Color_LaserJet_MFP_M476dw all-in-one
device `hpaio:/net/HP_Color_LaserJet_MFP_M476dw?ip=runic.CalvaEDI.COM' is a Hewlett-Packard HP_Color_LaserJet_MFP_M476dw all-in-one


--------------------------
| DISCOVERED USB DEVICES |
--------------------------

No devices found.

---------------------------------
| INSTALLED CUPS PRINTER QUEUES |
---------------------------------


canopic
-------
Type: Unknown
Device URI: hp:/net/HP_Color_LaserJet_MFP_M476dw?ip=canopic.CalvaEDI.COM
PPD: /etc/cups/ppd/canopic.ppd
warning: Failed to read /etc/cups/ppd/canopic.ppd ppd file
PPD Description: 
Printer status: printer canopic is idle.  enabled since Thu Oct 19 17:41:39 2017
warning: Printer is not HPLIP installed. Printers must use the hp: or hpfax: CUPS backend for HP-Devices.

runic
-----
Type: Unknown
Device URI: hp:/net/HP_Color_LaserJet_MFP_M476dw?ip=runic.CalvaEDI.COM
PPD: /etc/cups/ppd/runic.ppd
warning: Failed to read /etc/cups/ppd/runic.ppd ppd file
PPD Description: 
Printer status: printer runic is idle.  enabled since Thu Oct 19 09:40:11 2017
warning: Printer is not HPLIP installed. Printers must use the hp: or hpfax: CUPS backend for HP-Devices.

teutonic
--------
Type: Unknown
Device URI: socket://192.168.6.17
PPD: /etc/cups/ppd/teutonic.ppd
warning: Failed to read /etc/cups/ppd/teutonic.ppd ppd file
PPD Description: 
Printer status: printer teutonic is idle.  enabled since Wed Sep 13 12:20:26 2017
warning: Printer is not HPLIP installed. Printers must use the hp: or hpfax: CUPS backend for HP-Devices.


--------------
| PERMISSION |
--------------


-----------
| SUMMARY |
-----------

Missing Required Dependencies
-----------------------------
error: 'libcups2-dev' package is missing/incompatible 
error: 'cups-bsd' package is missing/incompatible 
error: 'cups-client' package is missing/incompatible 
error: 'python3-pyqt4' package is missing/incompatible 
error: 'gtk2-engines-pixbuf' package is missing/incompatible 
error: 'libsane-dev' package is missing/incompatible 
error: 'python3-dev' package is missing/incompatible 
error: 'libssl-dev' package is missing/incompatible 
error: 'libjpeg62-turbo-dev' package is missing/incompatible 
error: 'libusb-1.0.0-dev' package is missing/incompatible 
error: 'libsnmp-dev' package is missing/incompatible 
error: 'snmp' package is missing/incompatible 
error: 'libcupsimage2' package is missing/incompatible 
error: 'libcupsimage2-dev' package is missing/incompatible 
error: 'libdbus-1-dev' package is missing/incompatible 
error: 'cups' package is missing or 'cups' service is not running.
error: 'libcups2' package is missing/incompatible 
error: 'libtool' package is missing/incompatible 
error: 'libtool-bin' package is missing/incompatible 

Missing Optional Dependencies
-----------------------------
error: 'python3-notify2' package is missing/incompatible 
error: 'python3-dbus.mainloop.qt' package is missing/incompatible 
error: 'avahi-utils' package is missing/incompatible 
error: 'xsane' package is missing/incompatible 

Total Errors: 16
Total Warnings: 3


Done.

-- System Information:
Debian Release: 9.1
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.9.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE=C.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages hplip depends on:
ii  adduser                3.115
ii  coreutils              8.26-3
ii  cups                   2.2.1-8
ii  hplip-data             3.16.11+repack0-3
ii  libc6                  2.24-11+deb9u1
ii  libcups2               2.2.1-8
ii  libdbus-1-3            1.10.22-0+deb9u1
ii  libhpmud0              3.16.11+repack0-3
ii  libsane                1.0.25-4.1
ii  libsane-hpaio          3.16.11+repack0-3
ii  libsnmp30              5.7.3+dfsg-1.7
ii  libusb-1.0-0           2:1.0.21-1
ii  lsb-base               9.20161125
ii  policykit-1            0.105-18
ii  printer-driver-hpcups  3.16.11+repack0-3
ii  python3                3.5.3-1
ii  python3-dbus           1.2.4-1+b1
ii  python3-gi             3.22.0-2
ii  python3-pexpect        4.2.1-1
ii  python3-pil            4.0.0-4
ii  python3-reportlab      3.3.0-2
ii  wget                   1.18-5

Versions of packages hplip recommends:
ii  avahi-daemon                  0.6.32-2
ii  printer-driver-postscript-hp  3.16.11+repack0-3
ii  sane-utils                    1.0.25-4.1

Versions of packages hplip suggests:
pn  hplip-doc              <none>
pn  hplip-gui              <none>
pn  python3-notify2        <none>
ii  system-config-printer  1.5.7-3

-- no debconf information


Reply to: