On Thu, Jun 15, 2006 at 04:19:26PM -0700, Spruell, Darren-Perot wrote:
> From: [EMAIL PROTECTED] 
> > p.s. this question comes from the need to know the exact packages to  
> > download and burn to CD in order to get a reasonably usable desktop  
> > system running gnome, when said system has no connection to 
> > the interweb
> 
> See also: 'make print-build-depends' and 'make print-run-depends' from the
> desired port directory.
> 
> These are all covered in ports(7).

I faced the same problem quite some time ago (download snapshop with a
set of packages (including their dependencies).

The problem with all above methods is that you need a current ports
tree version besides the packages as well.

What I did is to extract the information in the packages (foo.tgz) and
download the result from ftp, until no dependencies are left (it takes
care not to download stuff twice).

Here is the part getting the parsable dependencies from a .tgz file
(yes this is as very dirty hack, but resonably fast and it works):

dd if=${pkg}.tgz bs=64k count=1 2>/dev/null | \
    zgrep -a '[EMAIL PROTECTED] ' | \
    awk 'BEGIN{ FS=":" } {print $3".tgz"}' | \
    sed 's/>.*\./\*\./'

For pkg = "kdebase-3.5.1p4" the output looks like this:
openldap-client-2.3.11p4.tgz
glib2-2.8.4.tgz
libusb-0.1.10ap1.tgz
cyrus-sasl-2.1.21p2.tgz
kdelibs-3.5.1p0.tgz
qt3-mt-3.5p4.tgz
qt3-mt-3.5p4.tgz

Regards,
ahb

Reply via email to