About two years ago I published the post on Ubuntu One Indicator, which at that time simply displayed the current synchronization state right from syncdaemon by listening to DBus signals. Then it started to grow, attempting to estimate the time needed for Ubuntu One to complete the operations.
Basically it looked like this:
Earlier this week I decided that I need to get some real-world experience with Vala and since I have found the python-based indicator to consume about 40Mb of residential memory I decided to rewrite the indicator completely.
A couple of days and bug reports later…
Well, not much different, added some menu entries, but let’s add the file.
Yes, finally, it calculates the current transfer rate and provides the ETA for the whole queue to be completed. It takes into account only Upload and Download processes. Since Ubuntu One has greately improved the metadata processing speed, metadata operations can be almost neglected.
However at the moment Downloads are not estimated properly since SyncDaemon does not provide size info on Downloads, bugreport pending.
The 1.0.0 version is available in ppa:rye/ubuntuone-extras, for precise the package was renamed to indicator-ubuntuone to be in line with other packages. Installing transitional ubuntuone-indicator package will install indicator-ubuntuone, so don’t be alarmed.
The project page was renamed to indicator-ubuntuone too, “one-indicator” was a weird name, really.
The new indicator installs an autostart file to /etc/xdg/autostart so it should now be launched automatically. Old per-user autostart file can be safely removed, by default it is at ~/.config/autostart/ubuntuone-indicator.desktop). For those who are interested, the compiled binary is located at /usr/lib/indicator-ubuntuone/indicator-ubuntuone.
This is a call for testing. The upcoming 1.0.2 version contains the estimation process described above and if you have some spare time please help me testing it.