Skip to content

Conversation

@vvolkl
Copy link
Collaborator

@vvolkl vvolkl commented Apr 3, 2024

While macfuse is no longer an option, there is now a nice alternative with fuse-t. This PR adds experimental support (I've successfully tested it with the nightly build, but there is no released cvmfs version with fuse-t support yet). @YBelikov may be able to add it in the context of a GSoC project.

'Synthetic firmlinks' are used to create /cvmfs , since the root file system is now read-only on macos.

One todo: need to check if we actually need the homebrew action or it can be moved somewhere else.

While macfuse is no longer an option, there is now a nice alternative with fuse-t.
This PR adds experimental support (I've successfully tested it with the nightly build, but there is no released cvmfs version
with fuse-t support yet).

'Synthetic firmlinks' are used to create /cvmfs , since the root file system is now read-only on macos.

One todo: need to check if we actually need the homebrew action or it can be moved somewhere else.
@vvolkl vvolkl requested a review from wdconinc April 3, 2024 11:22
Copy link
Collaborator

@wdconinc wdconinc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool! Great to see macos support come back :)

setup-cvmfs.sh Outdated
Comment on lines 51 to 52
brew tap macos-fuse-t/homebrew-cask
brew install fuse-t
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How long do these steps take, and can they be cached like we do with apt archives above?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's 20 seconds for setup-homebrew and 20 seconds for these steps to install fuse-t. Seems like homebrew is not as easy to cache, at least I didn't find a simple recipe. So not sure if possible.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

homebrew has this: https://docs.brew.sh/Tips-N'-Tricks
and specifically "Pre-download a file for a formula" section might be interesting for us as it mentions caching, but I need to investigate a little bit

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alternatively, it may also be faster to just directly install the .pkg for fuse-t : https://github.com/macos-fuse-t/fuse-t/?tab=readme-ov-file#other-details

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is indeed faster (10s). I updated the setup accordingly.

Copy link

@YBelikov YBelikov Apr 4, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also this might be interesting in the future: https://github.com/macos-fuse-t/fuse-t/wiki#experimental-fuse-t-framework
Maybe it could be possible to get rid of downloading and installing the separate package at some point

Copy link
Collaborator

@wdconinc wdconinc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me. Do you want to make more changes or are you ok with merging this? I assume you have merge privileges here :-)

@vvolkl vvolkl merged commit cec5c94 into main Apr 5, 2024
@vvolkl vvolkl deleted the macos-experimental branch April 5, 2024 09:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants