Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
closes #6144
This is a start on the implementation of
mountpoint
forMacOS
, it should be possible to usefuser
formacOS
, it usesmacfuse
(osxfuse
is the old name).fuser
clearly shows that it supportsmacOS
but it is untested (because you can find#[cfg(target_os = "macos")]
in its code and see: https://github.com/cberner/fuser?tab=readme-ov-file#macos-untested where it describes how to installmacfuse
)What I have done in this PR:
CI
to testmacOS platform
onlySession::new
)macfuse
,pkg-config --list-all
returnsfuse
in its list, so the reason is not thatfuser
can't find the library: you can see inbuild.rs
: https://github.com/cberner/fuser/blob/master/build.rs#L11 it searches forfuse
(it could befuse4x
according to https://github.com/fusepy/fusepy/blob/master/fuse.py#L90-L91 which is missing in thebuild.rs
)fuser
, the problem comes from an infinite loop when youmount
: Bug on Mac OS cberner/fuser#211 this is also how it appears on theCI
: the testtimeout
fuser
's version, becausefuse-rs
which was the old repository offuser
seemed to maintainMacOS
(see: https://github.com/zargony/fuse-rs?tab=readme-ov-file#macos) I have also found a crate which use an old version (which is not compatible with our version offuser
forlinux
): https://github.com/mgree/ffs/blob/main/Cargo.toml#L30Remote machine: (with
sw_vers
)ProductName: macOS
ProductVersion: 14.4.1
BuildVersion: 23E224
Note that the CI uses macos-12
I installed
macfuse
withbrew install --cask macfuse
When I run the example
hello.rs
offuser
, it throws the following error message:mount_macfuse: the file system is not available (1)
with:fuse_mount_compat25
I tried
/usr/bin/sudo /usr/bin/kmutil load -p /Library/Filesystems/macfuse.fs/Contents/Extensions/14/macfuse.kext
on the remote machine which throwError Domain=KMErrorDomain Code=27 "Extension with identifiers io.macfuse.filesystems.macfuse not approved to load. Please approve using System Preferences." UserInfo={NSLocalizedDescription=Extension with identifiers io.macfuse.filesystems.macfuse not approved to load. Please approve using System Preferences.}
I found Macfuse 4.6.0 not working macOS Sonoma 14.3.1 osxfuse/osxfuse#1000 which is a similar issue, but I don't know how to access gui interface from terminal :(
Utils: https://github.com/macfuse/macfuse/wiki/Getting-Started