The Xprint printing system provides an example of how an /etc/profile.d type of mechanism could be useful. The Xprint specs (see http://www.x.org/X11_Xprint.htm#environment) indicate that client programs such as mozilla should use Xprint when environment variable XPSERVERLIST is set (this variable identifies the available Xprint servers). If the variable is not set, then mozilla only provides it's default, buggy, Postscript driver. The Xprint server itself does not require or use XPSERVERLIST, only client programs do, if they are to use Xprint rather than the standard printing drivers. If /etc/profile.d existed, then it would be simple for the Xprint packages (xprt-common) to provide a scriplet to define the variable, make Xprint available to all programs that can make use of it. Since the XPSERVERLIST mechanism for identifying Xprint servers is part of the Xprint design, it doesn't seem possible to "fix" the client programs such as mozilla to be able to use Xprint when the variable is not defined. Such a "fix" would necessarily be Debian-specific, or would require the Xprint specifications themselves to be changed (to have client programs check /var/run/Xprint_servers, perhaps?). Allowing xprt-common to add a file to /etc/profile.d would solve the problem simply, without having to ignore the Xprint spec or continually monitoring any future clients of Xprint to add Debian's "fix" to let them use Xprint without XPSERVERLIST. Admittedly, this particular example is not necessarily the most effective for justifying /etc/profile.d, since /etc/profile only applies to shells (logging on at the console), and is not invoked when logging on via xdm (or [gk]dm). Hence in the case of Xprint I need to use /etc/X11/Xsession.d instead to achieve the desired result for all X clients. Just a little more food for though :) Drew Parsons -- PGP public key available at http://people.debian.org/~dparsons/drewskey.txt Fingerprint: A110 EAE1 D7D2 8076 5FE0 EC0A B6CE 7041 6412 4E4A
Attachment:
pgpZbSsLiX9QT.pgp
Description: PGP signature