Also, is there an indication/warning whether the package is prebuilt before you install?
Also, is there an indication/warning whether the package is prebuilt before you install?
Prebuilt binaries don't have to go in a fixed prefix -- we'll relocate RPATHs, shebangs, strings in text files, and (as long as you build in a longer path than you install to -- see `padded_length` at https://spack.readthedocs.io/en/latest/config_yaml.html) strings in binaries.
There is not currently a way to see before you install if an install will be from binary or from source, but that is something we are working on.
Is there at least a way to block source builds if the app is not in the binary cache to avoid any surprises (basically have manual override/confirmation instead of automatic fallbacks to source builds)?
All the public ones are built with very long padding; if you make your own you're currently on your own.
> Is there at least a way to block source builds if the app is not in the binary cache to avoid any surprises (basically have manual override/confirmation instead of automatic fallbacks to source builds)?
Yep:
spack install --cache-only ...