Skip to content
Sly_tom_cat edited this page Aug 16, 2016 · 33 revisions

Welcome to the yandex-disk-indicator wiki!

Screenshot

Yandex.disk Indicator is python wrapper for yandex-disk CLI utility. It shows synchronization status in desktop panel (within indicators plugin) and inform about synchronization status changes via desktop notification (notifications can be switched off). Indicator menu shows the Yandex-disk status and properties (total, used and available space) and list of last synchronized files. Raw output from 'yandex-disk status' call can be reviewed by click on current status. In settings menu you can tune indicator behavior and setting of yandex-disk daemon.

Indicator also provides file-manager extensions for: Nautilus, Thunar, Nemo, Dolphin, Pantheon-files, Caja. The extensions allows to publish and unpublish files/catalogs from file-manager's context menu.

Initially it was developed partly based on code from grive-tools project created by Christiaan Diedericks (www.thefanclub.co.za). But now it is fully redesigned and rewritten within OOP model.

Yandex.disk Indicator supports all functionality of yandex-disk CLI utility.

It initially designed for Ubuntu Linux (with different DEs), but it was successfully installed on many other Linux distributions.

Last versions of Ubuntu deb packages available on LaunchPad PPA: https://launchpad.net/~slytomcat/+archive/ubuntu/ppa

Alternatively You can install Yandex-Disk Indicator manually from downloaded sources. Download last release or master branch, unzip it, and run build/install.sh script with root privileges. See details in FAQ.

Certainly you have to install yandex-disk CLI utility first.

DEB installation script will warn you if the CLI utility not installed before and it stop the Indicator installation. So, just go to Yandex support page and follow the instructions to install the CLI utility.

You can configure CLI utility in console or just run the Indicator and follow through the configuration (within GUI interface).

Interface languages supported: English, Russian, Greek, Bulgarian, Belorussian.

##Usage: yandex-disk-indicator.py [-l {10,20,30,40,50}] [-c path] [-r path] [-h] [-v]

Options:
  -l {10,20,30,40,50}, --log {10,20,30,40,50}
                    Sets the logging level: 
                     10 - to show all messages (DEBUG), 
                     20 - to show all messages except debugging messages (INFO),
                     30 - to show all messages except debugging and info messages (WARNING),
                     40 - to show only error and critical messages (ERROR),
                     50 - to show critical messages only (CRITICAL). 
                    Default: 30
  -c path, --config path
                    Path to configuration file of YandexDisk daemon.Daemon
                    This daemon will be added to daemons list if it is
                    not in the current configuration. Default: ''
  -r path, --remove path
                    Path to configuration file of daemon that should be
                    removed from daemos list. Default: ''

  -h, --help        Show this help message and exit
  -v, --version     Print version and exit

As you can see indicator can handle several demons (they are shown as separate icons in toolbar). --config key allows to add new daemon by specifying the daemon configuration file. You may configure the new daemon (with new user account, folder, config and id path) in console via yandex-disk setup command, or you can specify a new config file path to indicator and indicator suggests you to configure a new daemon via the GUI configuration utility.

##Developers notes:

This Git repository assumes that:

  • yandex-disk-indicator.py is copied to /usr/bin/yandex-disk-indicator and marked as executable (chmod a+x ...)
  • fm-actions/ and icons/ folders, ya-setup files are located in /usr/share/yd-tools
  • *.desktop files should be placed in /usr/share/applications folder
  • compiled language files (translations/*.mo) are located in the system depended folders (i.e. usr/share/locale/{LANG}/LC_MESSAGES/ in most Linux distributions)
  • ya-setup utility translations files (translations/ya-setup*.lang) are located in /usr/share/yd-tools/translation folder.

NOTE: All action above can be done via running of build/install.sh script

  • indicator settings are stored in ~/.config/yd-tools/yandex-disk-indicator.conf (file is automatically created on the first start).

build - everything that need to build the .deb package or source.changes file (only change key for signatures and PPA link). Additional tools are required: devscripts, debhelper and dput (if you want to upload package, for example, to launcpad PPA).

  • install.sh - script to install the indicator
  • prepare.sh - creates the package build/instalation image in build/yd-tools/
  • clean.sh - clean build directory
  • bild_deb.sh - creates DEB package
  • make_source.changes.sh - prepares sources for publication
  • publish_to_PPA.sh - prepares sources and publish it to my ppa

Note that if you want to use scripts then you have to change the key ID (to your own) in build_deb.sh and make_source.changes.sh scripts.

Support

Don't hesitate to create an issue in case of any problem or question about the Yandex.Disk Indicator.

The detailed procedure for problem reports is described in FAQ.