Skip to content
A fuse filesystem wrapper for Google Drive.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
COPYING Update license to gplv2 as per README Apr 26, 2012
Makefile.am Simplify autoconf May 15, 2012
README.md Last formatting fix Sep 9, 2012
autogen.sh initial autotools support Apr 25, 2012
configure.ac ^update configure.ac to build on REDHAT like Jun 17, 2016
curl_interface.c Support POST requests May 28, 2012
curl_interface.h Support POST requests May 28, 2012
functional_stack.c
functional_stack.h further work on #19, fix segfault, error checking in auth callback May 3, 2012
gd_cache.c update commentsin cache May 20, 2012
gd_cache.h add xml_get_md5sum() to .h May 19, 2012
gd_fuse_operations.c Add ci_callback_controller() May 14, 2012
gd_interface.c urlencode grant_type Jun 5, 2012
gd_interface.h create_oauth_header function May 18, 2012
stack.c lots of memory management improvements May 18, 2012
stack.h lots of memory management improvements May 18, 2012
str.c More #19 work May 28, 2012
str.h More #19 work May 28, 2012

README.md

fuse-google-drive is a fuse filesystem wrapper for Google Drive released under GPLv2

Currently in alpha stages. Do not trust this for anything important.

A detailed guide to get running on Ubuntu: http://jason-king.info/mount-your-google-drive-readonly-on-linux/

Status:

  • read() works, cache not freed until unmount, should detect file updates
  • directory listing works, no heirarchy
  • incorrect stat() info, filesize is correct, fails (as it should) on nonexistant files
  • redirecturi is now hardcoded -- you do not need the file
  • clientsecrets and client id should now be in $XDG_CONFIG_HOME/fuse-google-drive/

Discussion:

  • #fuse-google-drive on irc.freenode.net

Dependencies:

  • fuse
  • libcurl
  • json-c aka libjson
  • libxml2

Build Dependencies:

  • autotools
  • make

If you are on one of the systems that does not include development files with packages, then make sure you install the development packages for each of the dependencies.

Compilation:

$ ./autogen.sh
$ ./configure
$ make

Usage:

Right now you need to go to http://code.google.com/apis/console and create a new app and generate a client id and client secret for an install application. The clientid value and clientsecrets value should each go into:

$XDG_CONFIG_HOME/fuse-google-drive/clientid
$XDG_CONFIG_HOME/fuse-google-drive/clientsecrets

resepectively. You should chmod 700 $XDG_CONFIG_HOME/fuse-google-drive as well. If the folder does not exist at runtime, a helpful message is printed and the directory is created with the correct permissions if possible. Note: If $XDG_CONFIG_HOME is unset on your system, it defaults to ~/.config/.

$ mkdir mountpoint
$ ./fuse-google-drive mountpoint

Thanks to:

You can’t perform that action at this time.