Progress on Mosyne

Lois Desplat lois.desplat at
Fri Jun 22 01:15:04 BST 2007


It appears that this list is completely dead so in an effort to revive it a
little bit I'll talk on the progress of Mosyne.

Mosyne has been created so that your home directory and others can be put
under revision control with minimal to no hassle. By default, it uses Bazaar
as the backend version control system but in the final version, SVN will
also be available.

In the first few weeks, I was trying to figure out how it will work. I had
to put my own /home and /etc folders under version control and see what
problems would arise. During that time I found a discussion list where
people had put their entire /home folders under SVN. I had to answer
questions such as: How do you make sure the repository doesn't get too big?
What if a user wants to completely delete a file (Still do not have that
answered for BZR - By default files are not deleted from the repository but
what if you want to really get rid of it, how do you get it out of the
system?), how do you handle file movements?, how do you handle
sub-repositories (I have a dev folder with a lot of bzr and svn
repositories/branches... putting /home under revision control must not
affect them), what if there is already a Bazarr and Subversion repository
under /home?

Putting your /home folder under version control is a tricky business and it
requires the user to be really careful. I found that white-listing what can
be put under version control is often a better idea than black-listing. But
that is not really acceptable here since the user should have very minimal
amounts of configuration to do. So, by default movie, music, disc images
type files are not put into a version control. Then, you have to handle dot
files. This is what will require a lot of testing. For example firefox
generates CACHE files which need to be ignored by default but you still want
the version control to store your settings.

I am currently writing the Daemon and the Command Line Interface as well as
the GTK GUI (A little bit). The Daemon allows for the commits and everything
to be done automatically so that you do not have to worry about backing up
the files yourself. The CLI and GUI allows for the configuration of Mosyne
and for the user to perform certain maintenance tasks if they so desire.

Once that is done, I will make .deb packages and call for testing. During
testing, I will be looking at bugs of course but also how to handle all the
dot files and make sure that is squared away. Once that is done, it is
important to have nautilus integration to allow for easy access to all the
features directly. It would be really nice to have an interface much like
Leopard's Time Machine but that might not be possible.


-------------- next part --------------
An HTML attachment was scrubbed...

More information about the ubuntu-soc mailing list