Comment 69 for bug 1061069

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

Yes, the foomatic-filters package is now discontinued and cups-filters takes its role now with the new included foomatic-rip filter.

The foomatic-filters package contains also beh but my feeling was all the time that no one uses it, especially it does not work with filters which have to run as root, as itself does not run as root. Perhaps it works if one would set beh's permissions to run as root, but then it also runs filters as root which should not run as root. Or one lets beh run as root, but check the filter which it calls and run it unprivileged if its permissions tell it should not run as root. Patches welcome.

It is also written in Perl, but nothing else in the printing stack is written in Perl. It should perhaps be rewritten in C or shell. Also here patches welcome.

Your pipe filter is a good idea, but I see a little missing feature. All CUPS filters/backends get the IPP attributes/options via the 5th command line argument. There is no way in pipe to make use of these, so that you can control the command line being called by pipe by supplying options to your print job.

Also no program which is not explicitly written for the use with pipe uses the PIPE_BACKEND_ARGV[0-6] environment variables, and if you write a program especially for being called with pipe you can directly write a CUPS backend.

Also programs called by pipe run as lp if pipe is installed world-executable and run as root if pipe is installed root-only-executable. So one installed pipe cannot serve both use cases on the same machine.