First and foremost, I think we should set a standard for where ALL programs (packages) should go. (Exceptions being things like single file (not including libraries) ones like cp and the like) All libraries (and make symlinks to the other *common* dirs, etc, etc and etc.
Comments anyone?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
My standard practice is to put the stuff needed at boot time in /bin and /sbin, and other stuff in /usr/bin and /usr/sbin. Also, every WM gets its own directory under /opt.
Stuff should be put in /lib only if it is required by stuff in /bin and /sbin.
System config files is a gray area; I tend to favor putting most config files in /etc, but every file in /etc takes up space on the root fs.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Good comments kelledin. We definately need to come up with a fs layout
I am going to post a few tasks for this and the software packages. Going to have a couple of each, to get people to work in parallel.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2001-04-29
Maybe following some of the BSD guidelines would be a good idea for determining program locations. Overall, the *BSDs directory layout is well thought out. Here's some of the main points. For the complete run-down, check "http://www.freebsd.org/cgi/man.cgi?manpath=FreeBSD+4.3-RELEASE" and look up "hier."
- /bin and /sbin are for system-vital commands that are needed for both single-user mode (i.e. when /usr won't be mounted) and multi-user mode (includes fsck, mount, sh, mv, cp, ls, etc.)
- there is no /lib because the binaries in /bin and /sbin are statically linked.
- /usr contains pretty much everything that is for multi-user mode (programs, X11R6, shared libraries, docs, etc).
- specifically, /usr/local contains software outside of the base distribution (i.e. KDE, abiword, most WMs, etc.) In FreeBSD, this usually means any of the programs found in the ports collection.
- /etc is for all the config files of the base system (network interfaces, system bootup scripts, base system daemons like cron, etc). /usr/local/etc is for config files that are for programs outside of the base system (samba, squid, etc).
IMHO, the most important part is that, whatever the layout may be (even if it doesn't follow any of the BSD layout ideas), is that it is strictly set up so that there is no question about where to put a program. Not only will it make it easier for developers, but it will make it easier for the user to make sense of.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2001-06-08
Might I recommend we consider following Daniel Quinlan's proposed File System Standard (FSSTND). You can read more on it at
That's what I'm planning on so far. Since the FHS is actually a part of the LSB, that makes it easier.
Since there are a great many packages (*cough*lesstif*cough*hack*) that don't install in an FHS-compliant manner, that makes it harder. So far, though, I've been able to patch everything up to reasonable FHS compliance.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'd agree to follow the FHS.
As to the version, FHS 2.3 is *expected* to be completed
some time around April 2002, but I suppose FHS 2.2 will do nicely.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
First and foremost, I think we should set a standard for where ALL programs (packages) should go. (Exceptions being things like single file (not including libraries) ones like cp and the like) All libraries (and make symlinks to the other *common* dirs, etc, etc and etc.
Comments anyone?
My standard practice is to put the stuff needed at boot time in /bin and /sbin, and other stuff in /usr/bin and /usr/sbin. Also, every WM gets its own directory under /opt.
Stuff should be put in /lib only if it is required by stuff in /bin and /sbin.
System config files is a gray area; I tend to favor putting most config files in /etc, but every file in /etc takes up space on the root fs.
Good comments kelledin. We definately need to come up with a fs layout
I am going to post a few tasks for this and the software packages. Going to have a couple of each, to get people to work in parallel.
Maybe following some of the BSD guidelines would be a good idea for determining program locations. Overall, the *BSDs directory layout is well thought out. Here's some of the main points. For the complete run-down, check "http://www.freebsd.org/cgi/man.cgi?manpath=FreeBSD+4.3-RELEASE" and look up "hier."
- /bin and /sbin are for system-vital commands that are needed for both single-user mode (i.e. when /usr won't be mounted) and multi-user mode (includes fsck, mount, sh, mv, cp, ls, etc.)
- there is no /lib because the binaries in /bin and /sbin are statically linked.
- /usr contains pretty much everything that is for multi-user mode (programs, X11R6, shared libraries, docs, etc).
- specifically, /usr/local contains software outside of the base distribution (i.e. KDE, abiword, most WMs, etc.) In FreeBSD, this usually means any of the programs found in the ports collection.
- /etc is for all the config files of the base system (network interfaces, system bootup scripts, base system daemons like cron, etc). /usr/local/etc is for config files that are for programs outside of the base system (samba, squid, etc).
IMHO, the most important part is that, whatever the layout may be (even if it doesn't follow any of the BSD layout ideas), is that it is strictly set up so that there is no question about where to put a program. Not only will it make it easier for developers, but it will make it easier for the user to make sense of.
Might I recommend we consider following Daniel Quinlan's proposed File System Standard (FSSTND). You can read more on it at
http://www.pathname.com/fhs/1.2/fsstnd-toc.html
At sometime in the near future, most if not all current (and future) linux distributions will be adhering to this proposed standard.
Just a thought...
Gord
Actually, it would be preferable to follow the LSB.
Michael
That's what I'm planning on so far. Since the FHS is actually a part of the LSB, that makes it easier.
Since there are a great many packages (*cough*lesstif*cough*hack*) that don't install in an FHS-compliant manner, that makes it harder. So far, though, I've been able to patch everything up to reasonable FHS compliance.
I'd agree to follow the FHS.
As to the version, FHS 2.3 is *expected* to be completed
some time around April 2002, but I suppose FHS 2.2 will do nicely.