home..

TCP over Google Drive?

There is a filesystem in user namespace (FUSE) for Google Drive called google-drive-ocamlfuse. Lets see if I can get it working. First, lets setup OAUTH 2.0 on my Google account. Make sure to download the json file when you setup OAUTH and put it in a safe place.

Had to compile Zarith from source. Make sure /usr/lib/ocaml/zarith/libzarith.a exists due to some LTO(Link time optimization?) stuff. Didn’t run into any issues here.

  1. git clone https://github.com/ocaml/Zarith.git
  2. make && make install

Run opam install google-drive-ocamlfuse, then add export PATH=$PATH:$HOME/.opam/default/bin to .bashrc.

Run google-drive-ocamlfuse -id <id from file> -secret <secret from file>, it opened a browser prompt for me to signin. Upon signing in I got a 403 access denied. Hmmm lets investigate further. I had to go to Google Auth Platform/Audience and add my email address under Test users. Anyway problem solved.

mkdir ~/googledirectory, then google-drive-ocamlfuse ~/googledirectory. BOOM I have access to my google drive. Wow im impressed, very easy.

File "src/netstring/netdate.ml", line 308, characters 2-13:
Error: Unbound module Stream
make: *** [Makefile:4: build] Error 1

Im getting this error when building gapi-ocaml from source. Figured it out. Uninstall libcamlp-streams-ocaml using apt if installed. This version conflicts with the local version.

Unfortunately after trying to create 2 FIFOs on both sides and disabling cache, it doesn’t seem to work. Might or might not look further into this.

To unmount the FUSE fs: fusermount -u <path>

© 2025 Wayne Zeng   •  Theme  Moonwalk