This should have the same effect `system.extraDependencies` has in
nixpkgs: adds paths to the runtime closure without installing them
anywhere.
This is useful for preventing garbage collection of packages that are
expensive to rebuild. For example:
- nixpkgs itself suggests using this for `factorio.src`, which requires
a token to fetch.
- we can use it to address #6157: avoid needlessly rebuilding
completions for packages that do not have any.
The implementation mirrors nixpkgs: add a file containing the store
paths we want to keep around to the home-manager-generation derivation.