Currently xcode nor flutter for darwin doesn't compile the Rust backend automatically thus one has to do it manually:
(cd ouisync; cargo build -p ouisync-ffi)
And then copy the libouisync_ffi.dylib
to where xcode can find it:
cp ouisync/target/debug/libouisync_ffi.dylib ouisync/bindings/dart/macos/
Further, xcode won't build flutter dependencies so this has to be done outside of xcode as well:
flutter build -d macos
After the above, one can either run and debug ouisync from xcode or from the command line as such:
flutter run
Sometimes the extension misbehaves and/or xcode won't start the newly compiled binary. If that happens it is sometimes useful to remove the extension from the system:
local path=`pluginkit -mvi org.equalitie.ouisync.OuisyncFileProvider | awk '{ printf("%s", $7) }'`
pluginkit -r $path