From owner-freebsd-hackers Tue Jun 1 16:42:58 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from alcanet.com.au (border.alcanet.com.au [203.62.196.10]) by hub.freebsd.org (Postfix) with ESMTP id 9B41615885 for ; Tue, 1 Jun 1999 16:42:52 -0700 (PDT) (envelope-from jeremyp@gsmx07.alcatel.com.au) Received: by border.alcanet.com.au id <40402>; Wed, 2 Jun 1999 09:26:40 +1000 Date: Wed, 2 Jun 1999 09:42:27 +1000 From: Peter Jeremy Subject: Re: a two-level port system? To: hackers@FreeBSD.ORG Cc: darrylo@sr.hp.com Message-Id: <99Jun2.092640est.40402@border.alcanet.com.au> Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Darryl Okahata wrote: >Peter Jeremy wrote: >> How about storing each port as a single file in ar(5) format, which is >> unpacked into the directory structure when make'd? ar(5) is a text >> format, which means it can easily be managed by CVS, which includes >> a tool for manipulating its contents - ar(1). > > This isn't all that different from the existing *.tar.gz port >files. If you use those, you get all the advantages of your approach, >plus fewer disadvantages: I think you've misunderstood me. There are three distinct sets of files associated with a port: 1) The port-and-FreeBSD-specific config files which are stored under /usr/ports//. These files comprise a Makefile, various package files in pkg and various optional patches and scripts. 2) The original distribution file. This may be located anywhere on the internet (the location and name is in the port Makefile) and will be stored in /usr/ports/distfiles after download. These can be in any format, but .tar.gz is probably the most common. 3) Pre-built ports available as packaged from ftp.freebsd.org. I think these are all .tar.gz, but some might be bzip2 format. The discussions have all centered on 1) above. This is the area where there is the greatest wastage of resources (inodes and unused partial blocks). > - No need to CVS commit ar files. (BTW, CVS can also handle binary > files, so ASCII vs. binary is a non-issue.) The problem is that the diffs between 2 uuencoded .tar.gz files (which is how CVS would treat them) tend to contain the entire contents of both files. >> Disadvantages: - CVS files will bloat. - relatively difficult to examine the innards of the files for each port. Peter To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message