1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, isPy3k
5, gipc
6, greenlet
7, httplib2
8, six
9, python-dateutil
10, fusepy
11, google-api-python-client
12}:
13
14buildPythonPackage rec {
15 version = "0.14.12";
16 pname = "gdrivefs";
17 disabled = isPy3k;
18
19 src = fetchFromGitHub {
20 owner = "dsoprea";
21 repo = "GDriveFS";
22 rev = version;
23 sha256 = "sha256-eDBy2rp3uitUrR9CG75x8mAio8+gaSckA/lEPAWO0Yo=";
24 };
25
26 buildInputs = [ gipc greenlet httplib2 six ];
27 propagatedBuildInputs = [ python-dateutil fusepy google-api-python-client ];
28
29 patchPhase = ''
30 substituteInPlace gdrivefs/resources/requirements.txt \
31 --replace "==" ">="
32 '';
33
34 meta = with lib; {
35 description = "Mount Google Drive as a local file system";
36 longDescription = ''
37 GDriveFS is a FUSE wrapper for Google Drive developed. Design goals:
38 - Thread for monitoring changes via "changes" functionality of API.
39 - Complete stat() implementation.
40 - Seamlessly work around duplicate-file allowances in Google Drive.
41 - Seamlessly manage file-type versatility in Google Drive
42 (Google Doc files do not have a particular format).
43 - Allow for the same file at multiple paths.
44 '';
45 homepage = "https://github.com/dsoprea/GDriveFS";
46 license = licenses.gpl2;
47 platforms = platforms.unix;
48 };
49
50}