Package: zoterosync
ZoterosyncSyncs local zotero files to a remote storage using rclone. This is a work in progress.Software requirementspython 3piprclonevirtualenv: virtual environment is apropriated to install compatible dependenciesbashRecomended softwareLinux Distro: not tested on other platformsGoogle Drive: rclone is compatible with a lot of cloud storage, but we've tested only with 'drive' option.Install zoterosyncDownload the latest version with git:gitclonehttps://gitlab.com/marceloakira/zoterosyncCreate a virtual environment with python3 as default interpreter:virtualenv--python=python3zoterosyncInstall required python libraries inside virtual environment:cdzoterosyncsourcebin/activate
pipinstall-rrequirements.txtCreate configuration:# generates default configurationpythonzoterosync_cli.pyconfigSetup script:# create a directory for executable scriptsmkdir-P~/bin# add this path to PATH environment variableecho"~/bin">>~/.profile# setup scriptln-s$PWD/zoterosync.bash~/bin/zoterosync# close the current terminal and test commandzoterosyncConfigure a remote storage$ rclone config
Current remotes:

Name                 Type
====                 ====

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n
name> Quantum Computing
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
...
13 / Google Drive
   \ "drive"
...
Storage>13 
* See help for drive backend at: https://rclone.org/drive/ **

Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a string value. Press Enter for the default ("").
client_id>      <--- press Enter
OAuth Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret>     <--- press Enter
Scope that rclone should use when requesting access from drive.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
 1 / Full access all files, excluding Application Data Folder.
   \ "drive"
...
scope> 1 
ID of the root folder
Leave blank normally.

Fill in to access "Computers" folders (see docs), or for rclone to use
a non root folder as its starting point.

Enter a string value. Press Enter for the default ("").
root_folder_id>       <--- press Enter
Service Account Credentials JSON file path 
Leave blank normally.
Needed only if you want use SA instead of interactive login.

Leading `~` will be expanded in the file name as will environment variables such as `${RCLONE_CONFIG_DIR}`.

Enter a string value. Press Enter for the default ("").
service_account_file>  <--- Press Enter
Edit advanced config? (y/n)
y) Yes
n) No (default)
y/n>      <-- press Enter
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine
y) Yes (default)
n) No
y/n>     <-- press Enter
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth?state=WOqyzeguK5dtqpDkDnplOQ
Log in and authorize rclone for access
Waiting for code...      <-- configuration with browser
Log in and authorize rclone for access
Waiting for code...
Got code
Configure this as a team drive?
y) Yes
n) No (default)
y/n> y
Fetching team drive list...
Choose a number from below, or type in your own value
...
  3 / Quantum Computing
   \ "0ABtgQWBCM1GiUk9PVA"
...
[Quantum Computing]
type = drive
scope = drive
token = {xxx}
team_drive = 0AIZzmLgyr5CaUk9PVA
root_folder_id = 
--------------------
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> yList your groups and set a remote$zoterosynclistremotes
quantum-computing
$zoterosynclistgroups
QuantumComputing
$zoterosyncsetremote'Quantum Computing''quantum-computing'creatingremotepathquantum-computing:zotero-storage
remotepathcreatedList your groups in local storage and push$zoterosyncpush'Quantum Computing'...2020/12/2511:50:43INFO:Transferred:19.321M/19.321MBytes,100%,282.299kBytes/s,ETA0s
Transferred:34/34,100%
Elapsedtime:1m12.2sList your remotes and pull$zoterosynclistremotes
QuantumComputing
$zoterosyncpull'Quantum Computing'pullingchangedfilesfromremotetolocalstorage2020/12/2511:53:53INFO:Therewasnothingtotransfer2020/12/2511:53:53INFO:Transferred:0/0Bytes,-,0Bytes/s,ETA-
Checks:34/34,100%
Elapsedtime:3.5s
...That's it, enjoy zoterosync!