Bob Bernstein <poo...@ruptured-duck.com> writes: > I want to run RR on my system but prevent it from rebuilding; > > 1. www/ikiwiki > > and > > 2. Any perl package on which it depends. (There are many.)
I can completely understand why you want this, but it is unsound. There are in general other packages which depend on those packages, and they might even require the newer ones. Even if that problem doesn't happen, by not updating those packages you will get a state that does not correspond to any particular moment of the pkgsrc tree, and this state is more or less by definition not tested. > I know '-X ikiwiki' will see to #1 above, but I am at sea as to how to > enforce #2. If need be I could settle for a broader #2, that is "Any > package on which it depends." I think. I'll suggest options: 1) Enumerate all the perl packages that ikiwiki depend on ikiwiki, by writing a script (recursing). Construct a command line with -X and use it. When running pkg_rr like this, do not be surprised to see a failure "Can't install p5-Foo-1.3 because p5-Foo-1.2 is installed", when some other package "bar" depends on p5-Foo>=1.3 while ikiwiki is using 1.2. When that happens, pick option 3 instead, or add bar to -X and repeat. 2) Like 1, but add a feature to pkg_rr for a variable, perhaps "hold" or "never_rebuild" (I don't like either name), so that these packages are treated as if -X was passed on the command line. 3) Check out pkgsrc as of the date/branch you want ikiwiki. Do a bootstrap to a new prefix /usr/ikiwiki. Build ikiwiki, and use it there. 4) Explain why you don't want to update and fix that problem and update.