cups not working with 12xxw; filter output lost somewhere?

Bug #34971 reported by Saulius Menkevičius
This bug report is a duplicate of:  Bug #23461: gs-esp dies when it is called by cups. Edit Remove
8
Affects Status Importance Assigned to Milestone
foomatic-filters (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

OK, I cannot make it to print.
Using command line;
"cat test.ps | gs -q -dNOPAUSE -dPARANOIDSAFER -dBATCH -sDEVICE=pbmraw -dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=842 -r1200x600 -sOutputFile=- - | min12xxw -m 1200W -f a4 -r 1200x600 -p normal -t auto > /dev/usblp0"

prints perfectly.

My ppd file shows:
*FoomaticRIPCommandLine: "gs -q -dNOPAUSE -dPARANOIDSAFER -dBATCH -sDE&&
VICE=pbmraw%A%Z -sOutputFile=- - | min12xxw%B"

And cups error_log shows this:

D [14/Mar/2006:23:53:01 +0200] [Job 22]
D [14/Mar/2006:23:53:01 +0200] [Job 22] renderer PID kid4=6883
D [14/Mar/2006:23:53:01 +0200] [Job 22] renderer command: gs -q -dNOPAUSE -dPARANOIDSAFER -dBATCH -sDEVICE=pbmraw -dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=842 -r1200x600 -sOutputFile=- - | min12xxw -m 1200W -f a4 -r 1200x600 -p normal -t auto
D [14/Mar/2006:23:53:01 +0200] [Job 22] perl: warning: Setting locale failed.
D [14/Mar/2006:23:53:01 +0200] [Job 22] perl: warning: Please check that your locale settings:
D [14/Mar/2006:23:53:01 +0200] [Job 22] LANGUAGE = (unset),
D [14/Mar/2006:23:53:01 +0200] [Job 22] LC_ALL = (unset),
D [14/Mar/2006:23:53:01 +0200] [Job 22] LANG = "en"
D [14/Mar/2006:23:53:01 +0200] [Job 22] are supported and installed on your system.
D [14/Mar/2006:23:53:01 +0200] [Job 22] perl: warning: Falling back to the standard locale ("C").
D [14/Mar/2006:23:53:01 +0200] [Job 22] foomatic-gswrapper: gs '-dNOPAUSE' '-dPARANOIDSAFER' '-dBATCH' '-sDEVICE=pbmraw' '-dDEVICEWIDTHPOINTS=595' '-dDEVICEHEIGHTPOINTS=842' '-r1200x600' '-sOutputFile=/dev/fd/3' '/dev/fd/0' 3>&1 1>&2
D [14/Mar/2006:23:53:02 +0200] [Job 22] ESP Ghostscript 815.01 (2005-09-22)
D [14/Mar/2006:23:53:02 +0200] [Job 22] Copyright (C) 2004 artofcode LLC, Benicia, CA. All rights reserved.
D [14/Mar/2006:23:53:02 +0200] [Job 22] This software comes with NO WARRANTY: see the file PUBLIC for details.
D [14/Mar/2006:23:53:02 +0200] [Job 22]
D [14/Mar/2006:23:53:02 +0200] [Job 22] Closing renderer
D [14/Mar/2006:23:53:02 +0200] [Job 22] KID3 exited with status 0

So i think it has been redered ok, it's just the output hasnt been piped to /dev/usblp0. Or am I wrong somewhere?

Any hints on how to fix it?

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

You can debug foomatic-rip to find out if rendering worked ok.
Edit /etc/foomatic/filter.conf and set debug: 1.
After printing something check the file /tmp/foomatic-rip.log.

Changed in cupsys:
status: Unconfirmed → Needs Info
Revision history for this message
Saulius Menkevičius (saulius-menkevicius) wrote : foomatic-rip log dump

here it is, but i don't know how to interpret or whether if there is anything to interpret at all...

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

In you output I see -sOutputFile=/dev/fd/3. This file does not exist on my Dapper installation.
Could it have anything to do with this?
I don't have any idea what /dev/fd/3 is.

Revision history for this message
Saulius Menkevičius (saulius-menkevicius) wrote :

As I see it, it's UNIX file descriptor number, specific for each process. It changes depending on which process you are listing the /dev/fd directory on. For example:
root@highland:/dev/fd# ls -l
total 4
lrwx------ 1 root root 64 2006-03-21 22:22 0 -> /dev/pts/1
lrwx------ 1 root root 64 2006-03-21 22:22 1 -> /dev/pts/1
lrwx------ 1 root root 64 2006-03-21 22:22 2 -> /dev/pts/1
lrwx------ 1 root root 64 2006-03-21 22:22 255 -> /dev/pts/1
or
bob@highland:/dev/fd$ ls -l
total 4
lrwx------ 1 bob bob 64 2006-03-21 22:21 0 -> /dev/pts/1
lrwx------ 1 bob bob 64 2006-03-21 22:21 1 -> /dev/pts/1
lrwx------ 1 bob bob 64 2006-03-21 22:21 2 -> /dev/pts/1
lrwx------ 1 bob bob 64 2006-03-21 22:21 255 -> /dev/pts/1

This is because /dev is mounted as a "virtual" udev file system on ubuntu.

In this case it's probably used internally in some way to receive more than 2 streams (apart from stdout(1) and stderr(2)) from the 'gs' process.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Do you still have this problem with latest cupsys 1.2.1-0ubuntu2 update?
If so please attach: /var/log/cups/error_log and output of dmesg.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Can you try out what I have suggested here:

https://launchpad.net/distros/ubuntu/+source/cupsys/+bug/23461

Revision history for this message
Saulius Menkevičius (saulius-menkevicius) wrote :

Funny, it works :)
Thanks!

Revision history for this message
Saulius Menkevičius (saulius-menkevicius) wrote :

Can be closed now. Works on edgy without any hacks.

Changed in cupsys:
status: Needs Info → Fix Released
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

New foomatic-filters fixed it (see bug #23461).

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.