Your message dated Sat, 5 Aug 2017 14:39:49 +0100 with message-id <[email protected]> and subject line Re: Bug#825219: cupsfilter fails with filters which require DEVICE_URI has caused the Debian Bug report #825219, regarding hpps is unable to function without access to the output device to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 825219: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=825219 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: cups Version: 2.1.3-5+b1 Severity: normal Tags: upstream 401dne.ppd was obtained from printer-driver-postscript-hp and has the line *cupsFilter: "application/vnd.cups-postscript 0 hpps" in it. Using /usr/sbin/cupsfilter -p 401dne.ppd -m printer/foo -e > out.ps 2>log results in an empty out.ps and these lines in the log: : ERROR: Improper environment: Must be run by CUPS. ERROR: hpps (PID 3392) stopped with status 1 The hpps filter contains # CUPS provided environment try: device_uri = os.environ['DEVICE_URI'] printer_name = os.environ['PRINTER'] ppd_file = os.environ['PPD'] except KeyError: bug("Improper environment: Must be run by CUPS.") sys.exit(CUPS_FILTER_FAILED) so it seems to me that hpps expects DEVICE_URI, PRINTER and PPD environment variables. But cupsfilter does not provide DEVICE_URI. It would enhance the cupsfilter command if it was considered for inclusion. But I am not even sure that would be a complete fix as PPD=/home/brian/401dne.ppd DEVICE_URI="" PRINTER=cupsfilter /usr/lib/cups/filter/hpps 1 1 1 1 1 < in.ps > out.ps gets 12345X@PJL JOBNAME=hplip_1_1 @PJL SET USERNAME="1" @PJL SET JOBNAME="1" @PJL SET JOBATTR="JobAcct1=1" @PJL SET JOBATTR="JobAcct2=b'alpha6'" @PJL SET JOBATTR="JobAcct3=b'lan'" @PJL SET JOBATTR="JobAcct4=20160524054830" Traceback (most recent call last): File "/usr/lib/cups/filter/hpps", line 216, in <module> os.write(output_fd, to_bytes_utf8('@PJL SET JOBATTR=\"JobAcct5=%s\"\x0a' % opts['job-uuid'])) KeyError: 'job-uuid' and necessitates adding an option with PPD=/home/brian/401dne.ppd DEVICE_URI="" PRINTER=cupsfilter /usr/lib/cups/filter/hpps 1 1 1 1 'job-uuid=246' < in.ps > out.ps Regards, Brian.
--- End Message ---
--- Begin Message ---On Tue 24 May 2016 at 19:22:40 +0100, Brian Potkin wrote: > 401dne.ppd was obtained from printer-driver-postscript-hp and has > the line > > *cupsFilter: "application/vnd.cups-postscript 0 hpps" > > in it. Using > > /usr/sbin/cupsfilter -p 401dne.ppd -m printer/foo -e > out.ps 2>log > > results in an empty out.ps and these lines in the log: > > : ERROR: Improper environment: Must be run by CUPS. > ERROR: hpps (PID 3392) stopped with status 1 Fixed in HPLIP 3.17.7; probably by "1. 43180 – Re-implementation of “hpps” filter in C". Tested to work. -- Brian.
--- End Message ---
