[winswitch] Unable to print from the GTK2 client

Antoine Martin antoine at nagafix.co.uk
Wed Oct 19 17:15:35 BST 2016


On 19/10/16 22:27, Eric Grammatico wrote:
> Thank you Antoine for your quick answer.
> 
> I am running xpra-1.0-0.20161013r14149. XPRA server and Xapp are running on Centos 7.2 and XPRA client is running on Fedora. At this time of writing, no new beta available on Winswitch.org repository.
Ah, sorry, I thought the server was also on Fedora.

CentOS 7.x didn't get tested quite as much as Fedora but it should also
work out of the box. From your log, the print file does make it to the
client so the server side is probably doing its job as expected.

In any case, I've posted updated beta builds for both distros.

Cheers
Antoine


> 
> Here are the logs from the client with -d printing option:
> $> xpra attach -d printing --opengl=no --encoding=h264 --username=eric tcp:localhost:10000
> 2016-10-19 17:18:01,982 Xpra gtk2 client version 1.0-r14149 64-bit
> 2016-10-19 17:18:01,982  running on Linux Fedora 24 Twenty Four
> 2016-10-19 17:18:01,983 Warning: failed to import opencv:
> 2016-10-19 17:18:01,983  No module named cv2
> 2016-10-19 17:18:01,983  webcam forwarding is disabled
> 2016-10-19 17:18:02,161 GStreamer version 1.8.3 for Python 2.7.12 64-bit
> 2016-10-19 17:18:02,594  keyboard settings: rules=evdev, model=pc101, layout=fr
> 2016-10-19 17:18:02,596  desktop size is 1680x1050 with 1 screen:
> 2016-10-19 17:18:02,596   :0.0 (444x277 mm - DPI: 96x96) workarea: 1680x1016
> 2016-10-19 17:18:02,596     monitor 1 (474x296 mm - DPI: 90x90)
> 2016-10-19 17:18:03,133 Xpra X11 server version 1.0-r14149 64-bit
> 2016-10-19 17:18:03,133  running on Linux CentOS Linux 7.2.1511 Core
> 2016-10-19 17:18:03,134 parse_printing_capabilities() client printing support=True
> 2016-10-19 17:18:03,134 parse_printing_capabilities() server printing support=True
> 2016-10-19 17:18:03,134 enabled remote logging
> 2016-10-19 17:18:03,136 Attached to tcp:localhost:10000 (press Control-C to detach)
> 
> 2016-10-19 17:18:04,155 pycups settings: DEFAULT_CUPS_DBUS=1, CUPS_DBUS=1, POLLING_DELAY=60
> 2016-10-19 17:18:04,155 pycups settings: PRINTER_PREFIX=, ADD_LOCAL_PRINTERS=False
> 2016-10-19 17:18:04,155 pycups settings: FORWARDER_TMPDIR=/tmp
> 2016-10-19 17:18:04,156 pycups settings: SKIPPED_PRINTERS=['Cups-PDF']
> 2016-10-19 17:18:04,156 DEFAULT_CUPS_OPTIONS={'fit-to-page': 'True'}
> 2016-10-19 17:18:04,156 init_printing=<function init_printing at 0x7fc6d41eb0c8>
> 2016-10-19 17:18:04,157 init_printing(<bound method XpraClient.send_printers of gtk2.client>) printers_modified_callback=None
> 2016-10-19 17:18:04,157 init_dbus_listener() dbus_init=None
> 2016-10-19 17:18:04,158 system bus: <dbus._dbus.SystemBus (system) at 0x7fc6edd24dd0>
> 2016-10-19 17:18:04,160 system_bus.add_signal_receiver(..)=type='signal',path='/com/redhat/PrinterSpooler',interface='com.redhat.PrinterSpooler'
> 2016-10-19 17:18:04,161 pycups.get_all_printers()={u'Xerox_Phaser_3250': {'printer-is-shared': False, 'printer-info': u'Xerox Phaser 3250', 'printer-state-message': u'', 'printer-type': 10530836, 'printer-make-and-model': u'Xerox Phaser 3200MFP Foomatic/Postscript', 'printer-state-reasons': [u'none'], 'printer-uri-supported': u'ipp://localhost/printers/Xerox_Phaser_3250', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'usb://Xerox/Phaser%203250?serial=3969298510'}, u'HP_HP_LaserJet_1200': {'printer-is-shared': False, 'printer-info': u'HP HP LaserJet 1200', 'printer-state-message': u'', 'printer-type': 10522692, 'printer-make-and-model': u'HP LaserJet 1200 Postscript (recommended)', 'printer-state-reasons': [u'cups-ipp-conformance-failure-report', u'cups-ipp-missing-job-history'], 'printer-uri-supported': u'ipp://localhost/printers/HP_HP_LaserJet_1200', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'dnssd://Hewlett-Packard%20HP%20LaserJet%201200%20%40%20tadoussac._ipp._tcp.local/cups?uuid=5d554f88-c8e2-39ae-5864-b09c8b939476'}, u'Cups-PDF': {'printer-is-shared': True, 'printer-info': u'Cups-PDF', 'printer-state-message': u'', 'printer-type': 8450124, 'printer-make-and-model': u'Generic CUPS-PDF Printer', 'printer-state-reasons': [u'none'], 'printer-uri-supported': u'ipp://localhost/printers/Cups-PDF', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'cups-pdf:/'}}                                                         
> 2016-10-19 17:18:04,162 do_send_printers() found printers={u'Xerox_Phaser_3250': {'printer-is-shared': False, 'printer-info': u'Xerox Phaser 3250', 'printer-state-message': u'', 'printer-type': 10530836, 'printer-make-and-model': u'Xerox Phaser 3200MFP Foomatic/Postscript', 'printer-state-reasons': [u'none'], 'printer-uri-supported': u'ipp://localhost/printers/Xerox_Phaser_3250', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'usb://Xerox/Phaser%203250?serial=3969298510'}, u'HP_HP_LaserJet_1200': {'printer-is-shared': False, 'printer-info': u'HP HP LaserJet 1200', 'printer-state-message': u'', 'printer-type': 10522692, 'printer-make-and-model': u'HP LaserJet 1200 Postscript (recommended)', 'printer-state-reasons': [u'cups-ipp-conformance-failure-report', u'cups-ipp-missing-job-history'], 'printer-uri-supported': u'ipp://localhost/printers/HP_HP_LaserJet_1200', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'dnssd://Hewlett-Packard%20HP%20LaserJet%201200%20%40%20tadoussac._ipp._tcp.local/cups?uuid=5d554f88-c8e2-39ae-5864-b09c8b939476'}}                                 
> 2016-10-19 17:18:04,162 do_send_printers() device-uri(Xerox_Phaser_3250)=usb://Xerox/Phaser%203250?serial=3969298510
> 2016-10-19 17:18:04,163 get_mimetype()=['application/pdf', 'application/postscript']
> 2016-10-19 17:18:04,163 do_send_printers() device-uri(HP_HP_LaserJet_1200)=dnssd://Hewlett-Packard%20HP%20LaserJet%201200%20%40%20tadoussac._ipp._tcp.local/cups?uuid=5d554f88-c8e2-39ae-5864-b09c8b939476                                                                                                                                                                        
> 2016-10-19 17:18:04,164 get_mimetype()=['application/pdf', 'application/postscript']
> 2016-10-19 17:18:04,164 do_send_printers() new printers: ['Xerox_Phaser_3250', 'HP_HP_LaserJet_1200']
> 2016-10-19 17:18:04,164 do_send_printers() printers=['Xerox_Phaser_3250', 'HP_HP_LaserJet_1200']
> 2016-10-19 17:18:04,165 do_send_printers() exported printers=Xerox_Phaser_3250, HP_HP_LaserJet_1200
> 2016-10-19 17:18:04,165 init_printing() enabled=True
> 2016-10-19 17:18:54,903 receiving file: ['2063309e720547981b7a1bdb85b93ff4306c5c78', 'application/pdf', True, True, 6842, '6842 bytes', {'copies': '1', 'sha1': 'de8e3edbc97eb2746c0144f8534189655ccbeea4', 'options': {'job-uuid': 'urn:uuid:d7d956d5-dc01-3bf7-652e-53fe088f73bd', 'time-at-creation': '1476890334', 'job-originating-host-name': '172.19.0.3', 'PageSize': 'A4', 'time-at-processing': '1476890334'}, 'printer': 'Xerox_Phaser_3250', 'title': 'Untitled1'}]
> 2016-10-19 17:18:54,904 sha1 digest: de8e3edbc97eb2746c0144f8534189655ccbeea4 - expected: de8e3edbc97eb2746c0144f8534189655ccbeea4
> 2016-10-19 17:18:54,904 downloaded 6842 bytes to application/pdf file for printing:
> 2016-10-19 17:18:54,905  '/home/eric/Downloads/2063309e720547981b7a1bdb85b93ff4306c5c78-1.pdf'
> 2016-10-19 17:18:54,905  sending 'Untitled1' to printer 'Xerox_Phaser_3250'
> 2016-10-19 17:18:54,905 safe print options({'copies': '1', 'sha1': 'de8e3edbc97eb2746c0144f8534189655ccbeea4', 'options': {'job-uuid': 'urn:uuid:d7d956d5-dc01-3bf7-652e-53fe088f73bd', 'time-at-creation': '1476890334', 'job-originating-host-name': '172.19.0.3', 'PageSize': 'A4', 'time-at-processing': '1476890334'}, 'printer': 'Xerox_Phaser_3250', 'title': 'Untitled1'}) = {'PageSize': 'A4'}
> 2016-10-19 17:18:54,906 pycups.get_all_printers()={u'Xerox_Phaser_3250': {'printer-is-shared': False, 'printer-info': u'Xerox Phaser 3250', 'printer-state-message': u'', 'printer-type': 10530836, 'printer-make-and-model': u'Xerox Phaser 3200MFP Foomatic/Postscript', 'printer-state-reasons': [u'none'], 'printer-uri-supported': u'ipp://localhost/printers/Xerox_Phaser_3250', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'usb://Xerox/Phaser%203250?serial=3969298510'}, u'HP_HP_LaserJet_1200': {'printer-is-shared': False, 'printer-info': u'HP HP LaserJet 1200', 'printer-state-message': u'', 'printer-type': 10522692, 'printer-make-and-model': u'HP LaserJet 1200 Postscript (recommended)', 'printer-state-reasons': [u'cups-ipp-conformance-failure-report', u'cups-ipp-missing-job-history'], 'printer-uri-supported': u'ipp://localhost/printers/HP_HP_LaserJet_1200', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'dnssd://Hewlett-Packard%20HP%20LaserJet%201200%20%40%20tadoussac._ipp._tcp.local/cups?uuid=5d554f88-c8e2-39ae-5864-b09c8b939476'}, u'Cups-PDF': {'printer-is-shared': True, 'printer-info': u'Cups-PDF', 'printer-state-message': u'', 'printer-type': 8450124, 'printer-make-and-model': u'Generic CUPS-PDF Printer', 'printer-state-reasons': [u'none'], 'printer-uri-supported': u'ipp://localhost/printers/Cups-PDF', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'cups-pdf:/'}}
> 2016-10-19 17:18:54,908 pycups.get_all_printers()={u'Xerox_Phaser_3250': {'printer-is-shared': False, 'printer-info': u'Xerox Phaser 3250', 'printer-state-message': u'', 'printer-type': 10530836, 'printer-make-and-model': u'Xerox Phaser 3200MFP Foomatic/Postscript', 'printer-state-reasons': [u'none'], 'printer-uri-supported': u'ipp://localhost/printers/Xerox_Phaser_3250', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'usb://Xerox/Phaser%203250?serial=3969298510'}, u'HP_HP_LaserJet_1200': {'printer-is-shared': False, 'printer-info': u'HP HP LaserJet 1200', 'printer-state-message': u'', 'printer-type': 10522692, 'printer-make-and-model': u'HP LaserJet 1200 Postscript (recommended)', 'printer-state-reasons': [u'cups-ipp-conformance-failure-report', u'cups-ipp-missing-job-history'], 'printer-uri-supported': u'ipp://localhost/printers/HP_HP_LaserJet_1200', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'dnssd://Hewlett-Packard%20HP%20LaserJet%201200%20%40%20tadoussac._ipp._tcp.local/cups?uuid=5d554f88-c8e2-39ae-5864-b09c8b939476'}, u'Cups-PDF': {'printer-is-shared': True, 'printer-info': u'Cups-PDF', 'printer-state-message': u'', 'printer-type': 8450124, 'printer-make-and-model': u'Generic CUPS-PDF Printer', 'printer-state-reasons': [u'none'], 'printer-uri-supported': u'ipp://localhost/printers/Cups-PDF', 'printer-state': 3, 'printer-location': u'', 'device-uri': u'cups-pdf:/'}}
> 2016-10-19 17:18:54,910 pycups.print_files('Xerox_Phaser_3250', ['/home/eric/Downloads/2063309e720547981b7a1bdb85b93ff4306c5c78-1.pdf'], 'Untitled1', {'copies': '1', 'sha1': 'de8e3edbc97eb2746c0144f8534189655ccbeea4', 'options': {'job-uuid': 'urn:uuid:d7d956d5-dc01-3bf7-652e-53fe088f73bd', 'time-at-creation': '1476890334', 'job-originating-host-name': '172.19.0.3', 'PageSize': 'A4', 'time-at-processing': '1476890334'}, 'printer': 'Xerox_Phaser_3250', 'title': 'Untitled1'})
> 2016-10-19 17:18:54,914 Unhandled error while processing a 'send-file' packet from peer using <bound method XpraClient._process_send_file of gtk2.client>
> Traceback (most recent call last):
>   File "/usr/lib64/python2.7/site-packages/xpra/client/client_base.py", line 871, in process_packet
>     handler(packet)
>   File "/usr/lib64/python2.7/site-packages/xpra/net/file_transfer.py", line 278, in _process_send_file
>     self.do_process_downloaded_file(filename, mimetype, printit, openit, filesize, options)
>   File "/usr/lib64/python2.7/site-packages/xpra/net/file_transfer.py", line 284, in do_process_downloaded_file
>     self._print_file(filename, mimetype, options)
>   File "/usr/lib64/python2.7/site-packages/xpra/net/file_transfer.py", line 322, in _print_file
>     job = print_files(printer, [filename], title, options)
>   File "/usr/lib64/python2.7/site-packages/xpra/platform/pycups_printing.py", line 412, in print_files
>     printpid = conn.printFiles(printer, filenames, title, actual_options)
> TypeError: Keys and values must be strings
> 
> 
> 
> Thanks and regards,
> -
> _/) Eric Grammatico.
> 
> 
> 19 octobre 2016 17:13 "Antoine Martin via shifter-users" <shifter-users at lists.devloop.org.uk> a
> écrit:
>> On 19/10/16 21:38, Eric Grammatico via shifter-users wrote:
>>
>>> hi there,
>>>
>>> I tried to setup xpra with printing feature.
>>
>> In theory, everything should be setup out of the box on supported
>> distros like Fedora.
>>
>>> Unfortunately, I met an error with the GTK2 client. The xpra server is running with CUPS, and the
>>> xpra client and the xapp (libreoffice) are running on remote hosts.
>>>
>>> The printers are shared as awaited, and visible from xapp host. No error, no message from the Xapp
>>> when printing, but xpra server and xpra client raise errors in their respective logs.
>>>
>>> the error stack from xpra server:
>>> parsed printer options: {'sha1': 'c3576dac636aa5936be2265728db719be87b74c9', 'printer':
>>> 'Xerox_Phaser_3250', 'options': {'time-at-processing': '1476885259', 'time-at-creation':
>>> '1476885259', 'job-originating-host-name': '172.19.0.3', 'PageSize': 'A4', 'job-uuid':
>>> 'urn:uuid:8969ba04-18ed-3bf4-5b5f-6d4619a262de'}, 'copies': '1', 'title': 'Untitled1'}
>>> 'Untitled1' sent to X11ServerSource(1 : Protocol(tcp socket: 172.19.0.2:10000
>>
>> That's odd. Printing with Fedora got tested quite thoroughly for the
>> SELinux policy changes and I've never seen this problem before. Thanks
>> for reporting it.
>>
>> I have just committed some improvements and posted some new beta builds,
>> does that help?
>> If not, please include the client's output with "--debug printing".
>>
>> Cheers
>> Antoine
>> _______________________________________________
>> shifter-users mailing list
>> shifter-users at lists.devloop.org.uk
>> http://lists.devloop.org.uk/mailman/listinfo/shifter-users



More information about the shifter-users mailing list