#102116 magicfilter fails silently if aux program is not present

Package:
magicfilter
Source:
magicfilter
Description:
automatic printer filter
Submitter:
Date:
2005-07-18 03:13:23 UTC
Severity:
important
#102116#5
Date:
2001-06-24 21:37:06 UTC
From:
To:
If a filter in a magicfilter config file is not present, magicfilter
silently fails.

This has bitten me when trying to print a pure text on a DJ 670
without the suggested package djtools installed.  The configuration
file in /etc/magicfilter/dj690c-filter has

default			filter 	/usr/bin/djscript -q

as the last line.  Because /usr/bin/djscript was not there, lpr silently
ate all my print jobs.

#102116#10
Date:
2002-05-03 15:19:57 UTC
From:
To:
brian@debian.org (Brian Mays) writes:

Your suggestion meets the letter of Debian policy.  However, it does
not prevent a mysterious failure due to an uninstalled package.  I say
"mysterious" because there are no error messages suggesting the cause
or remedy.  This certainly violates the Debian philosophy.  Apparently
others agree (see #102116 and #101010).

I think the dependency levels are too blunt an instrument in this
case.  I would rather not install djtools, any more than you want to
install enscript.  (Though I would rather have an extra 188k package
installed than have to contend with the mysterious failure.)  I'd like
to see two other measures:

 - When a filter is missing, magicfilter should exit with an error (#62411)
 - Magicfilter should log run time errors in syslog (see #135616).
This is probably the best we can do for filters like dvips.
 - Test for dependencies *at configuration time*. I see there's a
note in magicfilterconfig to check the "recommends" packages.  I don't
think that's enough.  I think magicfilterconfig should note which
printers are configured, check whether the default filters for those
printers are installed, and warn if not.

	     - Jim Van Zandt

#102116#15
Date:
2002-05-03 18:51:47 UTC
From:
To:
Jim Van Zandt makes some valid and insightful points.

He wrote:

True.  But if magicfilter recommends enscript, then the enscript package
should be installed.  That is, any *good* package management tool will
install all recommended packages by default, since this dependency level
is reserved for packages that should be installed in all but unusual
circumstances.  If the user chooses to disregard a recommendation, then
any failure that results is his own fault.  Caveat actor.

The real problem addressed by these bug reports is the "mysterious
failure" that results.  Jim Van Zandt suggests:

Definitely a good idea.

This would improve things greatly.

Probably a good idea and shouldn't be difficult to implement.  The
script could check for the presence of the necessary binary files.

- Brian