Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Jun 2005 11:51:03 -0400
From:      Randy Pratt <rpratt1950@earthlink.net>
To:        arek@wup-katowice.pl
Cc:        freebsd-questions@freebsd.org, fatcat1985@gmail.com
Subject:   Re: A question about dwnloading Ports
Message-ID:  <20050617115103.45f8bd5f.rpratt1950@earthlink.net>
In-Reply-To: <42B2D335.9070807@wup-katowice.pl>
References:  <3d92e23305061705272654300a@mail.gmail.com> <42B2D335.9070807@wup-katowice.pl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 17 Jun 2005 15:42:13 +0200
Arek Czereszewski <arek@wup-katowice.pl> wrote:

> U=C5=BCytkownik =E5=AD=90=E8=80=97 napisa=C5=82:
>=20
> > I am a new user to Freebsd. I do not have a high speed connection, so
> > I could not install softwares from ports directly. It takes me a lot
> > of time. I wonder how to download the whole ports, so that I could
> > download it in Net Cafe, and save it to my moible harddisk and then, I
> > could install softwares after I get home. It is of no use to download
> > the ports trees only. I need to download all the source codes the
> > first time, and I could use cvs system to update it.
> >=20
>=20
> If you want for example install mc
> # cd /usr/ports/misc/mc
> # make fetch-recursive
> =3D=3D=3D> Fetching all distfiles for mc-4.6.0_15 and dependencies
> ....
>=20
> And you have mc with  dependencies.
> All downloaded files you have in:
> /usr/ports/distfiles/
>=20

If the original poster is just looking for a list of sites that
have the distribution files he's interested in, then

	# cd /usr/ports/<category>/<port>
	# make fetch-recursive-list

would give a list of all sites that have the distribution files.

Its not a very user readable list and a small script might be
helpful:

find_dist_files.sh:
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3Dbegin-script=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
#!/bin/sh
#<title>Make a list of distfiles needed for a port</title>

tempfile=3D"/tmp/distfiles_list.txt"

make fetch-recursive-list > ${tempfile}

while read line; do
  for i in ${line}; do
    echo ${i} | grep "^http"
    echo ${i} | grep "^ftp"
  done
  echo
done < ${tempfile}

rm ${tempfile}
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3Dend-of-script=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Make the script excutable and in your path, cd to the port
directory you're interested in and run the script.  It'll
give a list of all distribution files needed for a port which
could be redirected to a file to take to some other location
for retrieval, for ex:

	cd /usr/ports/www/zope-simpleblog
	find_dist_files.sh > mylist.txt

I'm sure there's a multitude of ways to do this but it should give
you some ideas.

HTH,

Randy
=09

--=20



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