Let's look beyond the message that gets displayed, and see how things work.
I'd be interested in how you would make sure (before installing any packages) that pkg_tarup was installed. We don't want to install that all the time, or with bootstrap; besides, pkgsrc on NetBSD doesn't require a bootstrap anyway. At the time that pkg_tarup is required, we're in the middle of an installation of a completely different package, and have raised privileges accordingly. It would be difficult to jump off into the pkgtools directory and install pkg_tarup at that time -- not impossible, just difficult.
So there are 2 choices to make at that time (when the replace target has been "invoked"):
1. ensure pkg_tarup exists, by installing pkg_tarup in the same way that digest is a required package, or
2. display a message about installing pkg_tarup so people can do it for themselves
Which is how pkg_tarup came to have a message displayed about it -- I'm the one who implemented it that way.
In the whole scheme of things, though, pkg_tarup is just a wrapper around pkg_create(1) anyway, setting up the environment to point to the correct files, and so I arguably could have gone the extra mile and just done the same with the shell script in the "replace" target of
bsd.pkg.mk; but that would have looked VERY crufty, and remember that we grew the "replace" target long before the Debian-like destdir implementation we have now; things looked different then.
So, sorry you think things suck, but I wouldn't do it any differently if I were to do it now.
Regards,
Alistair