Opened 18 years ago

Closed 18 years ago

#1658 closed defect (wontfix)

Chapter 6 - "Creating Directories" needs updating

Reported by: gerard@… Owned by: lfs-book@…
Priority: lowest Milestone: Future
Component: Book Version: SVN
Severity: trivial Keywords:
Cc:

Description (last modified by Jeremy Huntwork)

The list is not complete when compared to the diretories installed after building LFS. For instance, Randy reported a few man page directories missing.

Change History (13)

comment:1 by gerard@…, 18 years ago

When dealing with this, we should discuss if we still need this section.

Every proper package makes sure the destination directory exists before copying files into it. We may not have to create those dirs anymore.

Upside: you only end up with directories on a system that are actually used. No empty dirs.

Downside: it would break FHS recommendations to a point. Maybe other downsides that I haven't thought of yet.

To be honest, is there any benefit having a number of empty directories on a system anyways? If that dir is ever needed, a proper package will create it.

Anyways, food for thought to fuel a future discussion.

comment:2 by Jeremy Huntwork, 18 years ago

(In reply to comment #1)

To be honest, is there any benefit having a number of empty directories on a system anyways? If that dir is ever needed, a proper package will create it.

Anyways, food for thought to fuel a future discussion.

1) Which of them does the FHS *require* to be existing?

2) We should run a test without creating any directories and see whether all required directories are made and what patches are necessary to make all packages conform

comment:3 by gerard@…, 18 years ago

Which ones do the FHS require? I don't know the FHS by heart anymore. It highly suggests (FHS doesn't require, it's just a guideline of good sense that you can follow or not) the standard dirs like /bin /sbin /usr /usr/bin /usr/sbin and the meanins of those dirs, along with basic programs that should be in /bin vs /usr/bin. Stuff like that.

But if the FHS suggests a directory like /opt and it's just an empty dir on somebody's system, and will be forever empty, why create it in the first place? Seems a waste of a perfectly good inode. And it looks cluttered.

Yes, we should run said test regardless and report issues to upstream.

comment:4 by Jeremy Huntwork, 18 years ago

(In reply to comment #3)

Which ones do the FHS require? I don't know the FHS by heart anymore. It highly suggests (FHS doesn't require, it's just a guideline of good sense that you can follow or not)

By 'require' I meant, what does it require to be considered FHS compliant. Obviously you could rename all your dirs to the names of Muppet characters if you so desired.

comment:5 by steve.crosby@…, 18 years ago

at a minimum we need to create these dirs (due to us linking some binaries in /tools and the creation of passwd, group and login control files).

bin usr/bin usr/lib etc var/log var/run

comment:6 by Jeremy Huntwork, 18 years ago

(In reply to comment #5)

at a minimum we need to create these dirs (due to us linking some binaries in /tools and the creation of passwd, group and login control files).

bin usr/bin usr/lib etc var/log var/run

And don't forget /dev. That directory needs to be in place to create the nodes as we do later on and which many packages require in order to build.

comment:7 by steve.crosby@…, 18 years ago

and also /root and /tmp ;(

note also that we do some symlinking to reduce redundancy (particularly in man and info page locations)

All in all, we are going to have to create *some* directories as a result of the above - we might as well determine what are needed above that and create those as well (for documentation purposes) - and perhaps a note about "others" that the FHS recommends? (as we do (did?) for usr/games)

comment:8 by steve.crosby@…, 18 years ago

add /usr/include to the list for libc headers

comment:9 by obrakmann@…, 18 years ago

and at least /proc, /sys, /var/tmp and /var/mail for the final system. Probably /var/cache, /var/log, /var/lib etc. as well.

I suggest marking this as WONTFIX, I don't really see the benefit. Has anyone come up with a text that explains just why only those few, specific directories should be created, whereas the other half of the filesystem structure should be put in place automagically during the build process?

comment:10 by obrakmann@…, 18 years ago

(In reply to comment #9)

I suggest marking this as WONTFIX, I don't really see the benefit.

Ah, bollocks. Of course I support the original motivation for the bug report. I meant I don't see the benefit of the suggestion made in comment #1.

comment:11 by archaic@…, 18 years ago

(In reply to comment #9)

I suggest marking this as WONTFIX, I don't really see the benefit.

And it seems to add extra overhead, though I do understand Randy's impetus for raising the question, I don't know if going minimal will really help. If minimal is decided, add /home, then, as I doubt any package will create it. ;)

comment:12 by Jeremy Huntwork, 18 years ago

Description: modified (diff)
Milestone: Future
Severity: normaltrivial

comment:13 by Matthew Burgess, 18 years ago

Resolution: wontfix
Status: newclosed

I'm marking this as WONTFIX, simply because the explanation at the bottom of the page states pretty clearly that we create those directories specfied by the FHS. The fact that some packages we install might create non-standard directories (or rather, in the case of man-pages, directories that haven't been standardised yet) is beyond the scope of that particular section, IMO. See ticket #1656 for a related bug that may yet change which directories get created.

Note: See TracTickets for help on using tickets.