GCSF is a virtual filesystem that allows users to mount their Google Drive account locally and interact with it as a regular disk partition. You can find out more in this paper.
Update (April 2019): I am currently still using and maintaining this project but I have very little time to dedicate to it. As such, it might take a while before I get around to fixing known bugs / implementing feature requests / responding to open issues. Thank you for understanding and for expressing sustained interest in this project!
Requirements
GCSF requires the stable branch of the Rust programming language, which can be installed following the instructions on rustup.rs. If you already have Rust installed, make sure that it is updated to the latest version (≥1.26):
OSX
On Mac OSX, GCSF requires osxfuse and pkg-config:
; ; ;
Ubuntu
On Ubuntu, GCSF requires libfuse-dev, libssl-dev and pkg-config:
Arch Linux
An AUR package is maintained by axionl: gcsf-git.
Other linux distros
Make sure you have pkg-config and the fuse library installed. These are usually found in the package repositories of major distributions.
FreeBSD
Rust can be installed via the lang/rust port. You will need to install sysutils/fusefs-libs for the cairo install command to succeed.
Windows
Unfortunately, Windows is not supported at the time being. See issue #19.
Installation
After all requirements are met, GCSF can be installed using cargo:
This will generate the gcsf binary in $HOME/.cargo/bin. Make sure that this directory is in your PATH variable: export PATH=$PATH:$HOME/.cargo/bin
Alternatively, you can download a release binary for your platform.
Configuration
GCSF will attempt to create a configuration file in $XDG_CONFIG_HOME/gcsf/gcsf.toml, which is usually defined as $HOME/.config/gcsf/gcsf.toml. Credentials are stored in the same directory.
Usage
The first step is to log in to Drive and authorize the application. A name must be provided for the session:
You can also list all existing sessions:
And then mount one (or more) of them:
You can now find the contents of your Drive account in /mnt/gcsf:
Using Ranger:
Or Thunar:
Why GCSF?
GCSF stands for "Google Conduce Sistem de Fișiere" which translated from Romanian is "Google Drive Filesystem". However GDFS already exists so it remains GCSF.
Troubleshooting
Could not mount to $mountpoint: Operation not permitted (os error 1)
This error occurs when user_allow_other is not set in /etc/fuse.conf or the file has improper permissions. Fix by running (as root):
# echo 'user_allow_other' >> /etc/fuse.conf
# chmod 644 /etc/fuse.conf
# sudo chown root:root /etc/fuse.conf
Contributing
Contributions are welcome. Documentation available on docs.rs/gcsf. You can also help by reporting or fixing issues.