OUR NETWORK:TiVoCommunity TechLore MyOpenRouter Dijit Community MediaSmart Home See all... About UsAdvertiseContact Us

 
Learn about scoring Forum's Raw Score: 122613.0
March 11, 2010 02:51 PM
Rating (0 votes)
  • 1
  • 2
  • 3
  • 4
  • 5
Rate This!

Member Avatar

miga03

Member
Joined: 03/11/2010

The first thing I though when I bought my pogoplug was 'Sweet - my very own Dropbox'.

While it is true that the device allowed me to access my files from anywhere, it was nothing new since I could easily do that using my OpenVPN setup and a simple SFTP mount in Gnome - since the device did not provide me with file synchronisation.

Slightly unhappy with my new shiny device, I said to my self in true spirit of Jeremy Clarkson: 'Dropbox - How hard can it be?'

Since I work with software all day long, I did not want to start a huge project that would take several weeks to finish. I do get feed up with bashing my head against the keyboard during business hours ;-)

After a few brainstorming sessions with myself, I decided on taking the painless approach. This solution would require me to develop the following.

- A client software with the following requirements:
 * Written in Python
 * Uses rsync as a backend
 * Uses inotify for event management
 * Uses GTK (I am a Gnome user)
 * A connection to the server, to receive change events on the server side
    
- A sever software with the following requirements
 * Written in Python
 * Uses Subversion as version control for the files
 * Uses inotify for event management
 * Organises client synchronisations to avoid unwanted file deletion etc.
    
I began with the client software as it would actually yield me something that worked. Even though I would only be able to upload to the server in an automatic manor.

After just about eight hours the prototype was finished. It is a crude version, which so far has not deleted anything that I did not want it to delete :-D

To try it out you will need the following things:

 * Python 2.4 or newer
 * pyinotify (sorry, only Linux support with this solution)
 * pygtk
 * rsync
 * SSH client

To start the software you will also need the following setup:

- Server Files:
 ~/.dropzone/root [directory]

- Client Files:
 ~/.dropzone/dropzone_icon.png
 ~/.dropzone/dropzone_icon_idle.png
 ~/.dropzone/dropzone_icon_sync.png
 ~/.dropzone/dropzone.py
 ~/.dropzone/config
 
The config file should contain the following:

# --------------------------------------------

[global]
server: myserver.com
user: username

[directory]
path: /absolute/path/to/Dropzone

# --------------------------------------------

As you can see there is no password as the software requires you to have password-less SSH access. If you do not know how to do this visit: http://www.debian-administration.org/articles/152 />
Yes and by the way, the myserver.com is not a pogoplug in my case, but it could be. Even though it would require you to have it accessable over the tubes.

Download Dropzone:
http://freesoftware.noda.se/ />
If you break something it is not my fault!

There are no comments.

Add Your Reply

(will not be displayed)

Email me when comments are added to this thread

 
 

Please log in or register to participate in this community!

Log In

Remember

Not a member? Sign up!

Did you forget your password?

You can also log in using OpenID.

close this window
close this window