5 votes

rc.d belongs in libexec, not etc

Tags: linux, unix, bsd, init

4 comments

  1. [3]
    whbboyd
    Link
    Seems reasonable enough. So, who's going to implement it? ;) More seriously, this is one aspect of a broader, more interesting discussion: what should go where in the Unix filesystem? The FHS has...

    Seems reasonable enough. So, who's going to implement it? ;)

    More seriously, this is one aspect of a broader, more interesting discussion: what should go where in the Unix filesystem? The FHS has fairly specific opinions on the matter, but they're (obviously) widely disregarded. Bigger recent changes (I'm thinking specifically of merged /usr here) have been contentious, and aren't reflected by the very slowly-moving FHS. So: what should go where? Who should decide that? Who should check or enforce that things are in the right place? Does it matter if Linux and BSD diverge? (Well, I hope not, because they already have, considerably.)

    2 votes
    1. knocklessmonster
      Link Parent
      I would like to announce my new project: rc.BSD, which intends to follow FreeBSD -CURRENT, and relocate rc.d He makes a good point, but there is, as you mentioned, the issue of implementation. I...

      I would like to announce my new project: rc.BSD, which intends to follow FreeBSD -CURRENT, and relocate rc.d

      He makes a good point, but there is, as you mentioned, the issue of implementation. I would think somebody would implement it in a more forward-thinking fork rather than do a fork just for it.

      As far as future divergence, that happened when your package manager started dropping packages directly under /usr, whereas the typical BSD convention is still /usr/local. In a way, all packages are just recompiled ports, but I'm getting way off topic here. On the other hand, it's a kludge that has existed for a long time and is still easy to work around, probably easier than tweaking the filesystem and re-educating all of your users.

    2. lionirdeadman
      Link Parent
      Arguably, no big program lives in UNIX-isms and even core programs over time have diverged. I think it should be disregarded. Distributions should decide this. The differences between each of them...

      what should go where in the Unix filesystem?

      Arguably, no big program lives in UNIX-isms and even core programs over time have diverged. I think it should be disregarded.

      what should go where? Who should decide that?

      Distributions should decide this. The differences between each of them is already high in terms of ABI and API compatibility, I think FS structure in the system handled by the package manager doesn't really matter all that much. However, user files should respect XDG conventions as to still leave the average user with a certain idea of where his files are and to let userspace handle them appropriately for what they are.

      Does it matter if Linux and BSD diverge?

      I don't think so, the ecosystems are already quite different, they should try to excel at what they do best and trying to reconcile them is not going to have much benefits if really any so it's a sacrifice I would make as to allow for greater flexibility and faster development.

  2. dblohm7
    Link
    Some history of the Unix directory structure makes it clear how much of it is irrelevant in the 21st Century, but alas, compatibility.

    Some history of the Unix directory structure makes it clear how much of it is irrelevant in the 21st Century, but alas, compatibility.

    1 vote