Deriving more `home.packages` from `home.packages`

[ or environment.systemPackages for NixOS – same module system, so same deal probably ]

I’d like to post-process the “installed” package set by adding wrappers for some packages. Those wrappers are hiPrio derivations, so that they shadow whatever they wrap in a profile. IFD is not a problem (it’s a private system/home config flake), the selection criteria for wrappable packages are clear, and I obviously take care to exclude wrappers from themselves being wrapped.

The reason for going with hiPrio wrappers instead of overrides is because I’d like to avoid needless local builds.

The naive approach of just declaratively adding wrapper derivations to home.packages doesn’t work because of infinite recursion.

(This is how the approach looks, more or less, to be clear why it might be, uhh, problematic: home.packages = wrap home.packages;)

What would be a less naive approach that has a chance of actually working, if any?