Conversation
There was a problem hiding this comment.
Pull request overview
Updates the shared Spack environment view configuration to reduce the number of files exposed in the default /opt/local view by linking only environment root specs, aligning with the goal of minimizing unnecessary symlinks for downstream users (e.g., OSG).
Changes:
- Configure the
defaultSpack view tolink: roots(previously implicitly linking more than roots). - Keep
link_type: symlinkand existing exclude/select behavior unchanged.
|
The problem here is that ROOT now cannot find headers like |
| - stow | ||
| - strace | ||
| - valgrind | ||
| - vdt # ensure headers in view for ROOT |
There was a problem hiding this comment.
vdt is being added as an explicit root here to keep its headers present in the view for ROOT under link: roots, but other environments that also include root (e.g. cuda/, prod/, cvmfs/, jl/, tf/, ci_without_acts/) still don’t list vdt. If ROOT headers transitively include VDT headers, those envs will still have a broken /opt/local view for compilation. Consider adding vdt consistently wherever root is a root spec, or document why it’s only needed in xl/ci.
| @@ -47,4 +47,5 @@ spack: | |||
| - py-toml | |||
| - py-uproot | |||
| - py-vector | |||
There was a problem hiding this comment.
This environment now explicitly adds root as a view root, but unlike xl/ci it doesn’t also add vdt (which those envs add to keep ROOT’s headers usable under link: roots). If ROOT’s public headers include VDT headers, compilation against ROOT via the view will fail here. Either add vdt as a root here too, or add a brief note explaining why TF doesn’t require it.
| - py-vector | |
| - py-vector | |
| - vdt |
Added 'vdt' to ensure headers are included in the view for ROOT.
Added 'vdt' to ensure headers are included in the view for ROOT.
6c07c27 to
f1bc636
Compare
|
I've given up on making this work. It's a game of whack-a-mole to fix every new user-space issue that pops up. |
Briefly, what does this PR introduce?
We keep hearing about many files from OSG folks. We have a symlink for all packages, even if we don't actually need to expose some of this functionality beyond explicitly included packages. This restricts what is linked into the view to only the roots.
I think we've tried this before. I forget why it failed. We'll see...