Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Apr 2001 17:22:26 -0500
From:      Andrew Hesford <ajh3@chmod.ath.cx>
To:        Mike Meyer <mwm@mired.org>
Cc:        questions@freebsd.org
Subject:   Re: OT: Ports & packages don't belong in /usr/local
Message-ID:  <20010425172226.A75534@cec.wustl.edu>
In-Reply-To: <15079.19123.571171.159852@guru.mired.org>; from mwm@mired.org on Wed, Apr 25, 2001 at 05:07:47PM -0500
References:  <64957189@toto.iv> <15079.19123.571171.159852@guru.mired.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Apr 25, 2001 at 05:07:47PM -0500, Mike Meyer wrote:
> Andrew Hesford <ajh3@chmod.ath.cx> types:
> > On Wed, Apr 25, 2001 at 05:35:40AM -0400, Albert D. Cahalan wrote:
> > > The system is what comes on your CD-ROM.
> > 
> > You are forgetting that this is the networked generation. Not everybody
> > even has an ISO available. Today, with broadband and the like, it's easy
> > to do an FTP install without ever touching a CD. Therefore you can't
> > apply any standard to third-party software; the CD test breaks down.
> 
> Actually, the network is a *crictical* part of the equation. For
> "CD-ROM", read "OS distribution", and for "comes on", read is "is
> automatically reproducible from":
> 
> 	The system is what is automatically reproducible from your OS
> 	distribution.
> 
> Packages and ports are clearly part of that.
> 
> Of course, the issue of "where it comes from" is a red herring. The
> real issue is system management. For instance, what do I have to do to
> restore it if the disk dies, or what do I go if there are problems?
> 
> For the base system, ports and packages the answer is "you can
> reinstall the stuff from the OS distribution." Things that have
> another source - whether you wrote them, ported an applications
> source, or got a port or package from somewhere else - need a
> different strategy. If you have to apply this alternate strategy to
> those things, you may well be wasting time and effort for no good
> reason.
> 
> Now, if some command breaks and you want to fix it, what do you do?
> If it is reproducible from the OS distribution, then you need to use
> whatever methods the OS has for getting support. On FreeBSD, the best
> method depends on what you're dealing with. Submitting a pr should
> work for everything, including ports and packages, even though it may
> not be optimal. If something wasn't created from the OS distribution,
> sending a PR probably isn't going to do me any good. Being able to
> determine that at a glance saves time and effort.
> 
> This distinction helps even if you're like me, and your first reaction
> when something breaks is to go look at the source. Systems sources are
> in a single, well-defined place, and the command usually points
> straight to them. Sources to ports and packages are similarly in a
> single well-defined place, or can be trivially made to appear in that
> place if you clean things up. On my system, sources to things that
> weren't built with the OS distribution are in a single, well-defined
> place. Being able to tell which of the three source trees I need to
> look in at a glance saves me time and effort.
> 
> Those aren't "who compiled it, where did the source come from, etc."
> issues, they are system management issues. Being able to segregate
> these two classes of things is important to some people. To others, it
> isn't - but they can merge them back with a single command.  If you
> can show me how I can keep things that aren't reproducible from the OS
> distribution in /usr/local - where they traditionally belong - while
> at the same time installing ports in /usr/local segregated with a
> single command, I'll concede the point.

You make good points. I think we're the only two guys on this thread
that make any sense. What we have here is simple matter of preference. I
think you will concede that packages do NOT belong in the /usr tree
along with the base system. This is not what /usr was intended for. If
anything, I'll bet you created a /usr/local/pkg or something similar to
segregate ports and packages?

People before were arguing that packages belong in /usr, the way linux
packaging systems dump everything in /usr. This is absolutely
ridiculous. Surely you conced that the ports are site-specific, albeit
easily rebuilt in the event of problems. Therefore, the belong somewhere
in the local tree.

The difference between you and me, then, is that I don't care to
separate the stuff I retrieved by hand and the stuff in the ports; you
do. This is exactly why UNIX is configurable: skillful administrators
have different beliefs and preferences about where things belong.
However, I think it is poor practice to dump everything in /usr. No
ports belong there. Like I said, if there *is* a port that belongs in
/usr, the committers should pull the port into the contrib tree and
elminate the port, like was done with OpenSSH.

-- 
Andrew Hesford
ajh3@chmod.ath.cx

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010425172226.A75534>