resolve TempDir paths before passing them to the flake bin
On MacOS /tmp is a symlink to /private/tmp. TempDir creates a dir and returns the path as /tmp. nix is unhappy with symlink dirs when calling nix flake metadata --json To fix this we canonicalize the path first, resolving any symlinks on the way. Fixes #190.
This commit is contained in:
parent
03f1a18a6f
commit
00fd486d49
1 changed files with 4 additions and 1 deletions
|
@ -51,7 +51,10 @@ impl Assets {
|
|||
// We explicitly specify `path:` instead of letting Nix resolve
|
||||
// automatically, which would involve checking parent directories
|
||||
// for a git repository.
|
||||
let uri = format!("path:{}", temp_dir.path().to_str().unwrap());
|
||||
let uri = format!(
|
||||
"path:{}",
|
||||
temp_dir.path().canonicalize().unwrap().to_str().unwrap()
|
||||
);
|
||||
let _ = lock_flake_quiet(&uri).await;
|
||||
let assets_flake = Flake::from_uri(uri).await?;
|
||||
assets_flake_uri = Some(assets_flake.locked_uri().to_owned());
|
||||
|
|
Loading…
Reference in a new issue