items in LIBDIR (related to FHS patch)

James Ralston qralston+ml.inn-workers at andrew.cmu.edu
Tue Apr 24 19:22:36 UTC 2001


On Fri, 20 Apr 2001, Marco d'Itri wrote:

> > /usr/bin/
>
> I still think most files should go in /usr/lib/news/bin.

That directly violates the FHS, though.  FHS version 2.1, section 4.4:

    4.4 /usr/lib: Libraries for programming and packages

    /usr/lib includes object files, libraries, and internal binaries
    that are not intended to be executed directly by users or shell
    scripts.

The intent here is to prevent situations where either a regular user
or a system administator has to add directories of the form
"/usr/lib/foo/bin" to the PATH.  If you invoke it directly, it must be
in /usr/bin or /usr/sbin.

(See my next follow-up to Russ for more issues about PATHBIN.)

> > /var/lib/news/db/

> active, history etc have been put in /var/lib/news since che
> beginning.

> > /var/lib/news/tmp/

> This is badly broken. Files are renamed from tmp to incoming, so
> it's usually a subdirectory of incoming.

Nowhere in INSTALL is it documented that files are renamed from TMPDIR
to SPOOLDIR/incoming.  I just made a quick scan of inn-CURRENT, and I
didn't spot any obvious renames out of TMPDIR.  Is this actually still
the case?

Unless componenets of INN are going to assume that TMPDIR is on the
same filesystem as SPOOLDIR/incoming, I don't think TMPDIR should be
located there.  The vast majority of INN's uses of TMPDIR are not
related to news article per se, so TMPDIR properly belongs under
/var/lib/news somewhere.

I find this:

    /var/lib/news/db/
    /var/lib/news/tmp/

Preferable to this:

    /var/lib/news/{active,history}
    /var/lib/news/tmp/

...because TMPDIR and DBDIR aren't related to each other; the former
has no reason to be a subdirectory of the latter.

> > /var/run/news/

> At least on debian systems it's called /var/run/inn or
> /var/run/innd, but I have no opinion about it (it's not really
> important because no external program touches it).

Well, the FHS says that the individual pid files should be named
<program-name>.pid, but it doesn't say what the name of subdirectories
of /var/run should be.  Currently, most things in /var/run seemed to
have the name of programs, not service names, so I'll switch this to
/var/run/inn.

> The same argument applies to the documentation directory.

The FHS doesn't speak to /usr/[share/]doc at all, so it doesn't
matter.  I think /usr/doc/inn would be more intuitive, though, so I'll
go with that.

> > Marco, would renaming /usr/lib/news to /usr/lib/inn break anything
> > on Debian?  If the answer is yes, would you be willing to package
> > INN for

> I'm not sure, and I feel this would be a gratuitous change.  It's
> the same path used by slackware BTW.

It's the same for Red Hat, as well.

I still agree with bill davidsen that /usr/lib/inn would probably be a
better long-term choice than /usr/lib/news, but since the FHS doesn't
speak to the name selection, and most (?) Linux distributions are
currently using /usr/lib/news, I think this needs to stay as
/usr/lib/news by default.  An individual packager can easily override
this to /usr/lib/inn if he/she wishes.

-- 
James Ralston, Information Technology
Software Engineering Institute
Carnegie Mellon University, Pittsburgh, PA, USA



More information about the inn-workers mailing list