SVN mime-types, ooo.o version control and tinymail

Subversion svn:mime-type property on files

This one-line UNIX command will echo command-lines that’ll fix the “svn:mime-type” property of files in a Subversion repository (perform it on a fresh untouched checkout, you might have to replace quotes as some browsers make mistakes or as perhaps WP converted it incorrectly; I don’t know):

find . -name ‘.svn’ -prune -o -type f -exec echo ‘svn propset svn:mime-type `gnomevfs-info {} | grep MIME | cut -d : -f 2 | cut -c 2-` {}’ \;

I don’t recommend doing this without the echo as perhaps not all your files should get a non-default mime-type in subversion. If you are brave, go for it. Don’t forget to svn commit once the find-script ran.

If the svn:mime-type property is correct, using the Subversion browser-mode will automatically display the file in the browser-window if the mime-type can be viewed by a browser or will ask for a viewer and download-box if the mime-type can’t be viewed. For example if you have an xhtml or a dia file or a odt in a subversion repository (the links should all suggest the correct mime-type to your browser).

Thanks to Tommi for pointing me to that problem, which triggered me into creating that one-line script. Perhaps this is another reason why gnome should some day switch to a modern source control system? (I, personally, definitely prefer subversion over CVS)

OpenOffice.org2 document version control?

Another question related to the odt file format: Does somebody know of a version control system for odt files? Are the brave OpenOffice.Org2 developers working on this?

Such a system would allow a team to work on the same file simultaneously, would show differences between versions, etcetera. So not just a document-version tracking system for binary files. I really want the differences, merging possibilities. Simple stuff. Given the fact that the odt format uses XML, should make it possible. You could create a merge-tool that is intelligent about not causing XML mistakes.

Right now, it’s unpractical to decompress the file, check it in. Check it out, compress the files, work on it, check it in. That doesn’t work as workflow. It just doesn’t. Perhaps a subversion client plugin or openoffice.org subversion integration to automate this?

Tinymail

After looking at it more carefully, I corrected some GObject standards in tinymail. For example the finalize, class_init and the iface_init methods of each type.