Date: Wed, 07 Apr 2010 17:13:13 +0800 From: Fbsd1 <fbsd1@a1poweruser.com> To: Polytropon <freebsd@edvax.de> Cc: FreeBSD Questions <freebsd-questions@freebsd.org> Subject: Re: usage of /usr/bin Message-ID: <4BBC4CA9.6090807@a1poweruser.com> In-Reply-To: <20100407093536.cab35b04.freebsd@edvax.de> References: <4BBC3343.8070703@a1poweruser.com> <20100407093536.cab35b04.freebsd@edvax.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Polytropon wrote: > On Wed, 07 Apr 2010 15:24:51 +0800, Fbsd1 <fbsd1@a1poweruser.com> wrote: >> Why are there RELEASE base files in /usr/bin. I thought /usr was to only >> contain binaries installed from ports or packages. > > No. The /usr/local subtree (LOCAL) is for local additions (ports > and packages), while things outside this structure usually belong > to the system itself; I'm excluding mounted filesystem and other > things here for a moment. > > /usr/ contains the majority of user utilities and applications > > bin/ common utilities, programming tools, and applica- > tions > > But: > > local/ local executables, libraries, etc. Also used as the > default destination for the FreeBSD ports framework. > Within local/, the general layout sketched out by > hier for /usr should be used. Exceptions are the > man directory (directly under local/ rather than > under local/share/), ports documentation (in > share/doc/<port>/), and /usr/local/etc (mimics > /etc). > > Because we are on FreeBSD, there's excellent documentation > that shows how and why the system tree has a well intended > layout. :-) > > The command > > % man hier > > will explain everything in detail. > > > > But that is not true. The postfix port populates /usr/bin. And I am sure postfix is not the only port to do this also. This intermingling of RELEASE binaries and port binaries in /usr/bin is a really big problem when trying to build jails. Any past ports which have been included into the base release should not be in /usr period. Saying system user utilizes are in /user/bin then why is fdisk or sysinstall not there also. That don't make sense. It time to modernize the directory layout keeping all RELEASE binaries out of /usr. I would think moving the /usr RELEASE binaries by the RELEASE development team is a far smaller task then reviewing all 21,500 ports for the bad ones that don't target /usr/local/bin and then correcting their make files. Before jails this problem was not a problem, But with the growing usage of jails this is becoming a major incentive to not use jails at all.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4BBC4CA9.6090807>