pub fn cache_dir() -> PathBufExpand description
$XDG_CACHE_HOME/ferrox, else $HOME/.cache/ferrox, else a
temporary directory.
The last fallback keeps a host with neither variable set (a bare
service account, a container) from resolving profiles relative to
the process’s working directory; it matches ferrox-core’s
registry_dir. A profile written there does not survive a reboot,
which is the honest outcome when the machine has nowhere durable to
put one.