Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Nov 1996 08:36:53 -0600 (CST)
From:      Joe Greco <jgreco@brasil.moneng.mei.com>
To:        asami@FreeBSD.org (Satoshi Asami)
Cc:        jgreco@brasil.moneng.mei.com, luigi@labinfo.iet.unipi.it, mark@grondar.za, committers@FreeBSD.org, root@FreeBSD.org, postmaster@FreeBSD.org, hubs@FreeBSD.org
Subject:   Re: Too much cruft
Message-ID:  <199611201436.IAA07214@brasil.moneng.mei.com>
In-Reply-To: <199611201315.FAA02280@silvia.HIP.Berkeley.EDU> from "Satoshi Asami" at Nov 20, 96 05:15:24 am

next in thread | previous in thread | raw e-mail | index | archive | help
>  * > > I have noticed an _enormous_ amount of wasted space in the master
>  * > > site's distribution/ directory. It seems that as ports get upgraded,
>  * > > many out-of-date tarballs do not get nuked. I created this directory
>  * > > on my machine by doin a "make fetch" in /usr/ports, but internat's
>  * > > is a mirror of the dir on ftp.freebsd.org. This latter dir is nearly
>  * > > 200MB larger that mine!
> 
> Note that it is not only because of old distfiles.  For instance, how
> large is your pkfonts/ subdir?  You need to run "make fetch" multiple
> times in japanese/pkfonts and print/pkfonts with RESOLUTION set to
> various values to get what wcarchive has (89MB).

I don't want to have to run "make" anything.  I want to be able to
intelligently mirror FreeBSD releases.

Now here is my problem, explained in some detail, so that you can see
why I am suggesting what I am.

Disk space is not cheap.  CDROM space is, and I can burn CDROM's.

I want to be able to maintain - MINIMALLY - the entire set of releases in
production use here.  That would include 2.0.5R, 2.1.0R, 2.1.5R, and 2.2A
at this point in time.  I export an interface to my archive via FTP, both
for my own convenience and for the convenience of others.

(Often what I do is I add "ftp.freebsd.org 206.55.64.117" in a host's
/etc/hosts file to cause it to look on my local archive.  There may be
a more elegant way to do this...)

In any case..

Assuming that I want to take 2.0.5R and 2.1.0R and jam them on CD, all I
really need to do is (for 2.1.0R) grab "2.1.0-RELEASE", "packages-2.1",
"ports-2.1" (a symlink), "distfiles", and the XFree package for that
release.

However, distfiles has all this other irrelevant crap in it.  Worse,
distfiles has some distfiles that have been overwritten with newer
(2.1.6R, whatever) distfiles corresponding with ports in some later
version of FreeBSD, causing the older port to fail with a checksum
error.

So, I have shit.  :-(  My choices, as I see them:

1) Take a whole lot of disk space and mirror wcarchive verbatim.
	a) This is expensive, particularly considering the low access
	   rate for the 2.0.5R stuff.
	b) This does not resolve the name space collision problems in
	   'distfiles'
	c) I lose support for really old distributions (2.0.5R, 2.1.0R)
2) Manually break up distfiles myself into "distfiles-2.1", etc.
	a) LOTS of work.
	b) Breaks the ability to transparently use the "make" and auto
	   fetch paradigm.
3) Manually break up distfiles and use symlinks from "distfiles".
	a) LOTS of work.
	b) This does not resolve the name space collision problems in
	   'distfiles'
4) Scream in agony and dump the whole thing.
	a) Very easy.
	b) Fails to provide a mechanism with which to support production
	   systems.

Or I could ask if there is some very good reason that we do not versionize
distfiles, which would effectively solve the problem.

>  * Would it be possible to put distfiles in a per-version location?  i.e.
>  * distfiles that were shipped with ports-2.1 should go in distfiles-2.1,
>  * etc.
> 
> I thought about this before, but came to the conclusion that that
> would be too hard to maintain unless we are willing to waste even more
> space.  (I.e., "mv distfiles distfiles-2.2; mkdir distfiles" and then
> just update the new "distfiles" dir. :)

Me, in that situation, I might use links...  depends.  But maybe the disk
space is worth it.  I know in my case I would prefer to do it, because
CDROM's are cheap.

>  * This will help the namespace collision problems, also.
> 
> This is true.  I've always been bothered by the fact that when I put a
> new lynx tarball (for instance) up there, I might be breaking the
> build for 2.1.5R users.  But these ports are the vast minority, and I
> don't think it's worth the added administrative overhead.

Well I will simply say that I am not particularly happy with this as it
stands, because I do not have the ability to properly archive this stuff
in an easy-to-retrieve fashion.

... JG



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