On Sun, Apr 14, 2002 at 03:54:03PM -0700, Bart Schaefer wrote: | On Sun, 14 Apr 2002, Duncan Findlay wrote: | | > Configuration files should ALWAYS be under /etc/. Failure to do so is a | > violation of the FHS (Filesystem Hierarchy Standard). | | I'd love to agree with you, but what's /usr/local/etc for, then?
That's for configuration of software that is installed outside of the package management system. It's also only for the admin (root) to play with. | What about e.g. Apache with /usr/local/conf/? Wrong. Apache's config is in /etc/apache! (Well, some systems have a really good Policy and stick to it. I pity the rest of you.) Not only that, but nothing belongs to /usr/local unless I put it there manually. That's why it is called "local". | Configuration files for standard system software should always be | under /etc/. Yes. | The question is whether it should be possible to install SA as | something other than "standard system software." Right. I like the approach of $ ./configure --prefix=$HOME $ make $ make install (for systems on which I don't have admin status; I haven't tried installing SA on any of those) | > What's wrong with | > my $LOCAL_RULES_DIR = '$(PREFIX)/../etc/mail/spamassassin'; | | Many Perl installations have $Config{prefix} eq '/usr/local'. The above | would put local rules in /usr/etc/mail/spamassassin, which (from the | standpoint of someone trying to isolate SA installation into /usr/local) | is no better than forcing /etc/. | | And for a non-root user installing with "make PREFIX=$HOME", the chances | of $HOME/../etc being writable are no better. $(PREFIX) should normally be '' (or '/' if paths are properly normalized after expansion). The config goes in $(PREFIX)/etc/spamassassin, the standard rules go in $(PREFIX)/usr/share/spamassassin, the documentation goes in $(PREFIX)/usr/share/doc/spamassassin, the manpages in $(PREFIX)/usr/share/man/man[0-9], the executables should be in $(PREFIX)/usr/sbin or $(PREFIX)/usr/bin as appropriate, and finally the perl modules in belong in $(PREFIX)/usr/share/perl5. The last one could change depending on the perl version being used, but AFAIK only perl 5 is supported right now. There is a pattern here. Now, if I am root and am installing system software, $(PREFIX) is '' or '/', and the installation follows the FHS. If I am joe-user and I set $(PREFIX) to $HOME, then it follows the FHS just as if I was root, except that $HOME is the root of my filesystem. Everything, then, is nice and consistent and easy to follow. Say, Duncan, are you reading this? <grin> -D -- Pleasant words are a honeycomb, sweet to the soul and healing to the bones. Proverbs 16:24 _______________________________________________ Spamassassin-talk mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/spamassassin-talk