On Fri, Jul 24, 2015 at 05:21:07PM +1000, Dave Horsfall wrote: > FreeBSD 9.3-RELEASE-p20 (GENERIC) #0: Tue Jul 21 19:29:33 UTC 2015 > > Having completely scragged my ports area following various changes to > pkg/pkgng/etc, and being unable to "sysinstall" it from CD (not found for > some reason) or via FTP (not found on server etc), I found a pristine copy > of ports.txz and unpacked it (sigh, yet another compression scheme), after > renaming the old directory. > > Anyway, what do I do now? Assume that many ports have been installed, and > that the databases etc are probably a dog's breakfast, per the conflicts > that I have posted here earlier. If it helps, I have a list of those > ports that were installed, and hopefully the dependencies will be taken > care of automagically. > ....
Near the bottom of portmaster(8), there is a procedure entitled "Using portmaster to do a complete reinstallation of all your ports". I have used that procedure (with some variations) over the years -- e.g., migrating from 8.x -> 9.x, then 9.x to 10.x; more recently, I extracted bits of it to migrate from stable/10 i386 -> stable/10 amd64 [gory details at <http://www.catwhisker.org/~david/FreeBSD/convert_i386_amd64.html>]. Based on my experiences doing those, I *think* that using that procedure as a basis (and adapting in slightly) may serve you well. (Note that as of this writing, that procedure still refers to the old pkg_* tools. So instead of "pkg_delete -a" I used "pkg delete -fa".) One of the first things, though, would be to determine if you'r going to use pre-built packages (and if so, built by whom) or build the ports yourself. The procedure I used in the above-cited article -- once I finished bumping into issues caused by my ignorance (or other oddities) -- turned out to work quite well -- but I was only able to accomplish it because I had available hardware to perform the package-building (using poudriere) for me. portmaster itself is "merely" a shell script, so it has no dependencies on (other) ports; installing it on a pristine system will bring in pkg, but no others. Note, too: after generating the list of 'installed ports" (which may look incomplete: it doesn't actually list all of your inistalled ports, but rather, a subset that is necessary to get all of them installed), I finid it useful to trim the list further and re-order the list (so that more critical, smaller port -- such as sudo and tmux -- are built before more complicated ports cause problems). One of the things I typically do on non-development machines during this pass is remove ports from the list that are "obviously" only build dependencies -- autoconf*; automake*; nearly all devel/* ports -- as the installation of the ports I really use directly will bring the others in if they are actually needed. If at all possible, of course, make a good (tested!) backup before you do the "pkg delete -af". :-} Peace, david -- David H. Wolfskill da...@catwhisker.org Those who murder in the name of God or prophet are blasphemous cowards. See http://www.catwhisker.org/~david/publickey.gpg for my public key.
pgpGvjRCcGXnw.pgp
Description: PGP signature