Understanding the options for VFS in the macOS Desktop Clients

Hello! I’ve been following the availability of VFS in the macOS Desktop for some time, and I’ve had it enabled as an experimental option. I now tried the new VFS desktop client, but it confused me on the VFS options, their pros and cons, and what the recommended way is today to work with VFS on macOS.

My questions, based on my observations below, are:

  1. Is it recommended to use the new File Provider over the prior experimental VFS support?
  2. In that case of using the File Provider, should I disable the experimental support to prevent having duplicate files on my system? With other words: is it expected that the File Provider location is the only way to access NC in Finder?
  3. Will NC eventually deprecate the experimental VFS support in favor of the File Provider support?

Update: I found answers and more discussion in this thread Virtual files for macOS · nextcloud/desktop · Discussion #6656 · GitHub

Any insights would be appreciated! I’m using a MBP 14 inch, 2021, with macOS Sonoma (14.6.1).

My observations on the current options

Please correct me if my understanding is wrong.

Option A: through the experimental flag

Once I learned that I could enable VFS through enabling experimental options in nextcloud.cfg (as documented) several months ago, I did.

To compare with what I’ll describe below, the behavior when I enabled this was:

  • my designated local Nextcloud folder shows checkmarks in Finder to reflect the NC sync state of files and folders, just like before VFS support.
  • I can right-click on files and folders in Finder, and see Nextcloud context menu options to control the VFS settings of that folder.

I generally liked this workflow!

Option B: the VFS Desktop Client

Today, I noticed in the downloads page that there was a new, alternative client called “macOS Virtual files 12+ (64 bit, universal)”. I assumed this meant that the VFS feature was not experimental anymore, and for some reason was separated into its own client. I wanted to install this new stable version.

However, as far as I understand now, this is a different client application.

When I installed it, I noticed a few things:

  • A new macOS cloud storage location was added to Finder, called “Nextcloud”. I assume this is a File Provider location, similar to iCloud’s Drive and NC’s integration with Files on iOS/iPadOS.
  • My local Nextcloud folder was still in the state that I left it, but it lost its green checkmarks and NC context menu options. I could, I think, still control it through the NC settings panel.
  • The VFS availability configuration of files & folders folders between these two views on my NC did not seem to sync. For example, if I had a file downloaded in my local folder like ~/Nextcloud/<folder>/<file.ext> , it was not shown as available offline in the File Provider location. When I downloaded it there, it got a path like /Users/thor/Library/CloudStorage/Nextcloud-thor@<host>/<folder>/<file.ext>.

All in all, with the new client, I seemed to have enabled two conflicting VFS implementations at the same time: NC’s own implementation in Finder, and an File Provider integration. I’ve now reverted to the original client.

What a mess! :pensive: I’m in the same chaos… ( Retina 5K, 27-inch, Late 2014 - 15.0 (24A335) - Nextcloud-3.14.2-macOS-vfs ) trying to sort things out, I removed everything (afraid of losing files in the cloud) and reinstalled only the “macOS Virtual files 12+ (64 bit, universal)” version, hoping I could finally use the Virtual Files feature in Google Drive mode (which is super handy).

But it turns out I realized that unless I changed the infamous nextcloud.cfg file again, setting showExperimentalOptions=true and switching isVfsEnabled=false to isVfsEnabled=true, it would sync the 4 terabytes onto my poor 256GB hard drive (how ridiculous!).

Everything seemed okay, but instead of having the little dotted and filled cloud icons I had before the cleanup, I now have the synced folder with the virtual files all with the “.nextcloud” extension (I wonder how convenient this type of syncing can be…) and a new location called Nextcloud that, when clicked, shows me an empty window with an endless loading screen and the message on the top bar saying “Nextcloud” hasn’t logged in… if I try to log in, a blank box appears and Finder crashes…

I’m really desperate… and I don’t get why we’re the only ones complaining about this situation… is it really that hard to use the same functionality as Google Drive (which works perfectly and even deletes the local file automatically after being open for a while!!!) …

come on, guys!!!

p.s. I just discovered while opening the nextcloud.cfg file that there’s another “hidden” option that popped up… 0\FoldersWithPlaceholders\1\virtualFilesMode=suffix should I maybe change it to 0\FoldersWithPlaceholders\1\virtualFilesMode=wincfapi (???) found it randomly online… I’m really sorry, but here I’m dealing with the files of my life, and losing them would lead me to bankrump… I’m sure you understand…

Hmm, I didn’t have this dramatic experience! I’ll edit my post with my macOS version for clarification.

( Retina 5K, 27-inch, Late 2014 - 15.0 (24A335) - Nextcloud-3.14.2-macOS-vfs )

The Nextcloud client downloads are annotated with “macOS 12+”. According to this guide, the 27" iMac Retina 5K Late 2014 / Mid 2015 you have (I think) officially only got macOS 11.x Big Sur as its last update.

In that case, your macOS version wouldn’t be supported by either of the modern NextCloud clients, and you’d even need to use the 10.10+ legacy client. Maybe that explains the crashing and weird behavior you experience?

The File Provider API seems to exist since macOS 10.15+, but it’s possible it got critical updates required by Nextcloud in macOS v12.

But it turns out I realized that unless I changed the infamous nextcloud.cfg file again, setting showExperimentalOptions=true and switching isVfsEnabled=false to isVfsEnabled=true, it would sync the 4 terabytes onto my poor 256GB hard drive (how ridiculous!).

I don’t think this happened for me. My config file has:

showExperimentalOptions=true
isVfsEnabled=false

I only changed the showExperimentalOptions value (as documented), and then flipped the switch in the settings UI.

I now have the synced folder with the virtual files all with the “.nextcloud” extension (I wonder how convenient this type of syncing can be…)

This sounds expected for the experimental options support (which I currently have enabled). I don’t have a screenshot handy, but this is not how the VFS client worked for me.