fix(tvix/glue/import): builtins.storeDir fixes

This didn't support store paths with a subpath joined to them, while
Nix does.

Use state.path_exists, which does. This also means we can drop the
`store_path_exists` helper, which was only used here.

Change-Id: I918ccb270f64acbdc41cb4d2a9c3c5871ce15002
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12618
Tested-by: BuildkiteCI
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Reviewed-by: Jörg Thalheim <joerg@thalheim.io>
Autosubmit: flokli <flokli@flokli.de>
This commit is contained in:
Florian Klink 2024-10-14 15:57:34 +03:00 committed by clbot
parent 330145fa1f
commit e6b39135bc
3 changed files with 23 additions and 39 deletions

View file

@ -69,8 +69,8 @@ pub enum ImportError {
#[error("hash mismatch at ingestion of '{0}', expected: '{1}', got: '{2}'")]
HashMismatch(String, NixHash, NixHash),
#[error("path '{}' is not in the Nix store", .0.display())]
PathNotInStore(PathBuf),
#[error("path '{}' is not absolute or invalid", .0.display())]
PathNotAbsoluteOrInvalid(PathBuf),
}
impl From<ImportError> for tvix_eval::ErrorKind {