Subject: Debian, Linux, the FSSTND, the FHS and BSD

From: Ian Jackson <[email-masked]>
Date: Fri, 9 Aug 96 22:46 BST

(Note: this message is crossposted between two mailing lists -
 you should probably follow up on only one.)

What used to be the FSSTND group has changed composition somewhat, and
now includes a number of people from the BSD world.  It set itself the
goal of producing a joint filesystem layout standard, named the FHS.

I argued against many of the changes that were proposed, on the
grounds such as the disruption that would be caused to the Linux
community by moving things or the fact as I saw it that the FSSTND's
arrangements were cleaner and that we should not compromise, moving
things to messier locations, because BSD had done it that way.

I lost this argument, chiefly through a combination of poor politics
on my part and the fact that there were more people who seemed willing
to make major sacrifices for compatibility with BSD.

The latest draft FHS, which they may well publish as it stands, makes
the following changes with which I have very strong disagreements:
 * The mail spool, /var/spool/mail, is moved to /var/mail.
 * /var/lib is renamed to /var/state (yes, all of it).
 * /var/lib/games is moved to /var/games.
 * A new directory /usr/libexec is created to hold command binaries
  used only internally by programs - these are to be moved from
  /usr/lib and in some cases /usr/sbin.  Oddly there is no
  corresponding /libexec directory.

The two good changes that I see are (and they are not minor):
 * /usr/share exists and is defined.
 * /opt exists and is defined.

I have spent an awful lot of time and energy on the FSSTND mailing
list, and I do not have any left with which to further persue this
matter there in the face of the very considerable amount of bad
feeling which exists.

It pains me greatly to say this, given my emotional investment in the
work of the FSSTND, but: if the FHS draft is promulgated as it stands
I shall not support its adoption by the Debian project.

It looks like we (Debian) are going to need /opt, and possibly
/usr/share.  We can take those parts if we need them.

I'm posting this message so that:

(a) The rest of the Debian Project can decide what they want to do.
    If the consensus is that they wish to follow the new standard then
    I shall be unhappy, of course.  I don't know what my reaction
    would be in terms, for example, of my authorship of dpkg and of
    the Debian Project policy manual.  Disillusionment, I suppose.

(b) The newly-renamed FHS group can reconsider - though I doubt that
    they will.  They'll see this as an attempt by me to blackmail
    them.

For the Debian people: the latest draft can be found on tsx-11.mit.edu
in /pub/linux/docs/linux-standards/private/fsstnd/.

Ian.

[1] When the original FSSTND was created I argued in favour of
/libexec and /usr/libexec, but lost that debate.  I'm less convinced
now than I was then, but my main reason for opposing it now is that it
is too late to change.

---

From: Daniel Quinlan <[email-masked]>
Date: Fri, 9 Aug 1996 16:20:30 -0700

Ian Jackson <[email-masked]> writes:

> What used to be the FSSTND group has changed composition somewhat,
> and now includes a number of people from the BSD world.  It set
> itself the goal of producing a joint filesystem layout standard,
> named the FHS.

Actually, the vast majority of people on the mailing list are Linux
people (about 95%).  The BSD people are lurking, partially because you
scared them off, and I have my doubts that a joint standard will ever
exist.  The BSD people have been helpful with /usr/share and
/usr/libexec, and I think it would be a shame to completely sever
relations, even if a 100% joint standard doesn't happen.

>  * The mail spool, /var/spool/mail, is moved to /var/mail.

This change is probably the most noticible, but places the FHS with
the majority of the modern Unix community.  Solaris, BSD, IRIX, etc.

Transition from /var/spool/mail to /var/mail is not difficult.  Change
a line in paths.h, add a symbolic link, and change any mail programs
that don't use paths.h (as they should).

>  * /var/lib is renamed to /var/state (yes, all of it).

Again, transition is easy.  Single applications can be modified, one
at a time.  A symbolic link can be used or you can go with two
separate directories (/var/lib and /var/state).

>  * /var/lib/games is moved to /var/games.

I recently proposed removing /var/games (/var/lib/games, whatever)
from the draft before release.  But, since you're working over
(flaming over) your backlog of mail without reading it all first, you
haven't seen my proposal yet.

Games, with the exception of the binary location (/usr/games) don't
need to be treated differently from other applications.  So I want to
remove this unnecessary complication.

>   corresponding /libexec directory.

I am not opposed to a /libexec directory.  It has been mentioned, but
nobody has proposed it.  The need is minimal.

Note that there is also no /share.  If /libexec was added, it might
also make sense to add /share.

> [...]

Ian, here is the extent of your participation in the last year.

1. Get upset over some changes.
2. Flame all over because of those changes, a long period of time
   after the fact.
3. Offer no proposals, but be free with ultimatums.

I'm sorry to be so blunt, but the trend is clear.

I realize that there are many changes in the current draft, but it's
been 18 months since the last FSSTND was released.  It will probably
be another year after this release before the next.

In addition, to ease transition from FSSTND 1.2 to FHS, I am
implementing a FHS WWW site including a developers section with
migration information, how to deal with the GNU coding standards and
autoconf (it will be easier after FHS than with FSSTND, by the way),
etc.

Before members of the Debian community decide whether or not to
support the FHS in your internal discussion, I encourage you to read
the current draft of the FHS rather than Ian Jackson's summary.  I
would be very hesitant to release FHS if it meant losing a previous
supporter, whether it be Debian or another distribution.

Ian, please consider writing a proposal to revert some of the
long-past changes (perhaps one message per major proposal) that you
don't like.  It is always easier to be a positive proactive force than
a negative reactive one.

Regards, 

 Dan

-- 
Daniel Quinlan          Member of the League for Programming Freedom
[email-masked]

---

From: Michael Meskes <[email-masked]>
Date: Sun, 11 Aug 1996 18:47:06 +0200 (MET DST)

>  * /var/lib/games is moved to /var/games.

I don't like either of these and IMO we shouldn't change. At least not in
the near future.

>   corresponding /libexec directory.

Sounds like a good idea for me. Since you once lobbied for this dir, why
don't you like it now?

>  * /opt exists and is defined.

Sounds okay, too. 

Couldn't we make only the changes we like?

Michael

-- 
Michael Meskes                   |    _____ ________ __  ____
[email-masked] |   / ___// ____/ // / / __ \___  __________
[email-masked]                  |   \__ \/ /_  / // /_/ /_/ / _ \/ ___/ ___/
[email-masked]                |  ___/ / __/ /__  __/\__, /  __/ /  (__  )
Use Debian Linux!                | /____/_/      /_/  /____/\___/_/  /____/

---

From: Miquel van Smoorenburg <[email-masked]>
Date: Mon, 12 Aug 1996 12:56:44 +0200 (MET DST)

> I don't like either of these and IMO we shouldn't change. At least not in

We could ofcourse put in some symlinks (/var/state -> /var/lib, etc). Just
three of 'em and we'd be compliant :). One problem I see, one way or the other,
is how is dpkg going to deal with this? I understand it has some trouble
with files in symlinked directories or is that solved now?

BTW. I'd prefer going along with the FSSTND at the moment that other
distributions do it too. Can't we just wait and see what RedHat and others
do? Even better, can't we discuss this with them (hmm Eric Troan isn't
on this list is he :)).

Mike.
-- 
  Miquel van    | Cistron Internet Services   --    Alphen aan den Rijn.
  Smoorenburg,  | mailto:[email-masked]          http://www.cistron.nl/
[email-masked] | Tel: +31-172-419445 (Voice) 430979 (Fax) 442580 (Data)

---

From: Christian Linhart <[email-masked]>
Date: Mon, 12 Aug 1996 13:49:36 +0200 (MET DST)

Michael Meskes writes:
> I don't like either of these and IMO we shouldn't change.
That depends on what we consider more important: technical beauty or
compatibility with other systems. If the FHS is adopted by upstream
maintainers then being non-standard will create unnecessary
work for debian package maintainers. And this will probably
invite bugs, which is bad, too.

> At least not in the near future.
Yep. I think we should wait for the issue to settle down in the FHS-list
and act according to its development then.

Generally I think that in the long run being non-standard is
worse than being standard even if the standard isn't 100% perfect.

-Chris

---

From: Dan Stromberg <[email-masked]>
Date: Mon, 12 Aug 1996 09:08:25 -0700

>  * The mail spool, /var/spool/mail, is moved to /var/mail.

This is a positive thing.  Both SVR4 and BSD 4.4 put it here.  I think
any contemporary unix should.

>   corresponding /libexec directory.

I don't really care about these.  They're the sort of thing that dances
around from one unix to the next anyway.

>  * /opt exists and is defined.

These are nice.

> now than I was then, but my main reason for opposing it now is that it

Nah - we've always got to be careful about "it's too late now" syndrome.
To think otherwise, is to plot a path to obsolescence.  They oughta add
/libexec, tho.

Symlinks help, especially if you keep developers informed that usage Of
those symlinks is deprecated.