refactor(tvix/store): drop FUSE multithread workaround for Darwin
The underlying issue in macFUSE has been fixed in https://github.com/osxfuse/osxfuse/issues/974. Bump our `macfuse` in nixpkgs to a version containing the fix. This can be removed while our nixpkgs pin is bumped past https://github.com/NixOS/nixpkgs/pull/320197. Change-Id: Ia0e644fb13198e45018b0a218647ef211acf4df1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/11824 Tested-by: BuildkiteCI Reviewed-by: Brian Olsen <me@griff.name>
This commit is contained in:
parent
7e42b4f314
commit
4be250109c
3 changed files with 27 additions and 8 deletions
13
third_party/overlays/tvl.nix
vendored
13
third_party/overlays/tvl.nix
vendored
|
@ -120,4 +120,17 @@ depot.nix.readTree.drvTargets {
|
||||||
tpm2-pkcs11 = super.tpm2-pkcs11.overrideAttrs (old: {
|
tpm2-pkcs11 = super.tpm2-pkcs11.overrideAttrs (old: {
|
||||||
patches = (old.patches or [ ]) ++ [ ./patches/tpm2-pkcs11-190-dbupgrade.patch ];
|
patches = (old.patches or [ ]) ++ [ ./patches/tpm2-pkcs11-190-dbupgrade.patch ];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
# macFUSE bump containing fix for https://github.com/osxfuse/osxfuse/issues/974
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/320197
|
||||||
|
fuse =
|
||||||
|
if super.stdenv.isDarwin then
|
||||||
|
super.fuse.overrideAttrs
|
||||||
|
(old: rec {
|
||||||
|
version = "4.8.0";
|
||||||
|
src = super.fetchurl {
|
||||||
|
url = "https://github.com/osxfuse/osxfuse/releases/download/macfuse-${version}/macfuse-${version}.dmg";
|
||||||
|
hash = "sha256-ucTzO2qdN4QkowMVvC3+4pjEVjbwMsB0xFk+bvQxwtQ=";
|
||||||
|
};
|
||||||
|
}) else super.fuse;
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,19 @@
|
||||||
./nixpkgs/cbtemulator-uds.patch
|
./nixpkgs/cbtemulator-uds.patch
|
||||||
];
|
];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
# macFUSE bump containing fix for https://github.com/osxfuse/osxfuse/issues/974
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/320197
|
||||||
|
fuse =
|
||||||
|
if super.stdenv.isDarwin then
|
||||||
|
super.fuse.overrideAttrs
|
||||||
|
(old: rec {
|
||||||
|
version = "4.8.0";
|
||||||
|
src = super.fetchurl {
|
||||||
|
url = "https://github.com/osxfuse/osxfuse/releases/download/macfuse-${version}/macfuse-${version}.dmg";
|
||||||
|
hash = "sha256-ucTzO2qdN4QkowMVvC3+4pjEVjbwMsB0xFk+bvQxwtQ=";
|
||||||
|
};
|
||||||
|
}) else super.fuse;
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
})
|
})
|
||||||
|
|
|
@ -185,19 +185,12 @@ enum Commands {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(all(feature = "fuse", not(target_os = "macos")))]
|
#[cfg(feature = "fuse")]
|
||||||
fn default_threads() -> usize {
|
fn default_threads() -> usize {
|
||||||
std::thread::available_parallelism()
|
std::thread::available_parallelism()
|
||||||
.map(|threads| threads.into())
|
.map(|threads| threads.into())
|
||||||
.unwrap_or(4)
|
.unwrap_or(4)
|
||||||
}
|
}
|
||||||
// On MacFUSE only a single channel will receive ENODEV when the file system is
|
|
||||||
// unmounted and so all the other channels will block forever.
|
|
||||||
// See https://github.com/osxfuse/osxfuse/issues/974
|
|
||||||
#[cfg(all(feature = "fuse", target_os = "macos"))]
|
|
||||||
fn default_threads() -> usize {
|
|
||||||
1
|
|
||||||
}
|
|
||||||
|
|
||||||
#[instrument(fields(indicatif.pb_show=1), skip(cli))]
|
#[instrument(fields(indicatif.pb_show=1), skip(cli))]
|
||||||
async fn run_cli(cli: Cli) -> Result<(), Box<dyn std::error::Error>> {
|
async fn run_cli(cli: Cli) -> Result<(), Box<dyn std::error::Error>> {
|
||||||
|
|
Loading…
Reference in a new issue