Date: Sat, 20 May 2006 13:31:53 -0800 From: Beech Rintoul <beech@alaskaparadise.com> To: freebsd-questions@freebsd.org Cc: Eric Schuele <e.schuele@computer.org> Subject: Re: Managing a [local] package repository.... Message-ID: <200605201332.05804.beech@alaskaparadise.com> In-Reply-To: <446F8282.9060807@computer.org> References: <446F8282.9060807@computer.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2037083.aDVZ48N0R6 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Saturday 20 May 2006 12:56, Eric Schuele wrote: > Hello, > > I'm wondering how others manage a local store of packages... or even if > anyone does this sort of thing. Let me explain... > > Some short time back I decided to start stockpiling packages of all the > ports I have installed on my machine. I was/am doing this because I > intend on doing a fresh install to 6.1-RELEASE when I have the time. > But, although I do prefer to compile the ports (as opposed to > downloading the packages) I do not wish to recompile them all *again*, > because it is a significant amount of time. I intend to just transfer > them to the new installation. So I wrote a small script (appended > below, comments welcome) to create packages of everything on my system. > I did that one time, and have since done "make install package clean" > to install new packages, and done "portupgrade -aprR" to upgrade those > presently installed. > > While this does seem to work well for me, it has left one problem I did > not foresee. As ports get upgraded, their new package is built and > placed in my package dir, but the *old* port's package is not removed. > So I now have quite a few packages in my package directory that are not > the most recent, and hence are just taking up space. > > Example (/usr/ports/packages/All): > ---- > ImageMagick-6.2.5.5_4.tbz > ORBit-0.5.17_3.tbz > ORBit2-2.14.0.tbz <--- > ORBit2-2.14.0_1.tbz <--- > OpenSP-1.5_7.tbz > aspell-0.60.4_3.tbz > at-spi-1.7.7.tbz <--- > at-spi-1.7.7_1.tbz <--- > aterm-1.0.0_1.tbz > atk-1.11.4.tbz <--- > atk-1.11.4_1.tbz <--- > autoconf-2.13.000227_5.tbz > autoconf-2.59_2.tbz > automake-1.4.6_2.tbz > automake-1.9.6.tbz > avahi-0.6.10.tbz <--- > avahi-0.6.10_1.tbz <--- > avahi-0.6.10_3.tbz <--- > avahi-0.6.9_5.tbz <--- > ----- > > So my question is: > Is there a way to automatically remove the old packages as existing > packages get upgraded? Or is there some more appropriate means for > generating packages (and keeping them up to date) that I could transfer > to a fresh install (or even another machine for that matter)? > > My mk_pkgs.sh. Comments are appreciated. > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > #!/bin/sh > > # This will create a binary package for all ports installed on a machine. > # It will place the packages in /usr/ports/packages/All > > db_pkg_dir=3D/var/db/pkg > > pkg_dir=3D/usr/ports/packages/All > mkdir -p $pkg_dir > > cd $db_pkg_dir > for dname in * > do > > if [ "$dname" !=3D "pkgdb.db" ] > then > > pkg_create -v -b $dname $pkg_dir/$dname.tbz > > fi > > done > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > Thanks for your help. Look at man portsclean. Beech =2D-=20 =2D------------------------------------------------------------------------= =2D------------- Beech Rintoul - Sys. Administrator - beech@alaskaparadise.com /"\ ASCII Ribbon Campaign | Alaska Paradise \ / - NO HTML/RTF in e-mail | 201 East 9Th Avenue Ste.310 X - NO Word docs in e-mail | Anchorage, AK 99501 / \ - Please visit Alaska Paradise - http://www.alaskaparadise.com =2D------------------------------------------------------------------------= =2D------------- --nextPart2037083.aDVZ48N0R6 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (FreeBSD) iD8DBQBEb4rVp5D0B1NlT4URAu6yAJwJNRZbADmLeNwrELba5/zEozeiJQCeORJV IqiaI1aT3B80j9Azns4seCc= =ynPz -----END PGP SIGNATURE----- --nextPart2037083.aDVZ48N0R6--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200605201332.05804.beech>