=============
bloggerfs 0.3
=============

File system in user space using FUSE_ and `Google gdata client`_.

Install
=======

|bloggerfs| requires fuse-python_, gdata_ and zope.interface_. All
requirements should be installed automatically by pip_ or distribute_.

With pip::

    $ pip install bloggerfs

or with distribute::

    $ python setup.py install

Usage
=====

Simply::

    bloggerfs <mount point> [options]

and browse the directory tree. Mainly all files are read only and is not
possible to create new ones, but write support is coming up and, for the
moment, labels and comments can be added. Each *post* directory has two
special files: `add_label` and `add_comment`.

To add a comment just copy data to it::

    echo hello world > <mnt>/<blog id>/posts/<post id>/add_comment

and addign a label is easy as well::

    echo label 1 > <mnt>/<blog id>/posts/<post id>/add_label

more than one label can be added at time::

    echo label 1,label 2 > <mnt>/<blog id>/posts/<post id>/add_label

Comments can be removed, just remove the comment directory::

    rmdir <mnt>/<blog id>/posts/<post id>/comments/<comment id>/

and posts too::

    rmdir <mnt>/<blog id>/posts/<post id>/

Options
=======

-e, --email email       Google account email
-p, --password pwd      Google account password. If not given will be
                        asked
-b, --debug             Show debug infos
--syslog                Log messages to syslog
-l, --logfile file      Log messages to file. Default log messages to
                        stderr

File system structure
=====================

Enjoy the ascii art :)

::

    /
    +-<blog1id>
    +-<blog2id>
    ...
    o-<blogNid>
    | o-author
    | | o-0
    | | | o-email
    | | | | -text
    | | | o-name
    | | | | -text
    | | | o-uri
    | | | | -text
    | | o-...
    | o-category
    | | o-0
    | | | -scheme
    | | | -term
    | | o-1
    | | | -scheme
    | | | -term
    | | o-...
    | o-contributor
    | -etag
    | o-id
    | | -text
    | o-link
    | | o-0
    | | | -href
    | | | -rel
    | | | -type
    | | o-...
    | o-posts
    | | o-<postid>
    | | | | -add_comment
    | | | | -add_label
    | | | o-author
    | | | | o-0
    | | | | | o-email
    | | | | | | -text
    | | | | | o-name
    | | | | | | -text
    | | | | | o-uri
    | | | | | | -text
    | | | | o-...
    | | | o-category
    | | | | o-0
    | | | | | -scheme
    | | | | | -term
    | | | | o-1
    | | | | | -scheme
    | | | | | -term
    | | | | o-...
    | | | o-comments
    | | | | o-<commentId>
    | | | | | o-author
    | | | | | | o-0
    | | | | | | | o-email
    | | | | | | | | -text
    | | | | | | | o-name
    | | | | | | | | -text
    | | | | | | | o-uri
    | | | | | | | | -text
    | | | | | | o-...
    | | | | | o-category
    | | | | | | o-0
    | | | | | | | -scheme
    | | | | | | | -term
    | | | | | | o-1
    | | | | | | | -scheme
    | | | | | | | -term
    | | | | | | o-...
    | | | | | o-content
    | | | | | | -text
    | | | | | | -type
    | | | | | o-contributor
    | | | | | -etag
    | | | | | o-id
    | | | | | | -text
    | | | | | o-in_reply_to
    | | | | | | -href
    | | | | | | -ref
    | | | | | | -source
    | | | | | | -type
    | | | | | o-link
    | | | | | | o-0
    | | | | | | | -href
    | | | | | | | -rel
    | | | | | | | -type
    | | | | | | o-...
    | | | | | o-published
    | | | | | | -text
    | | | | | o-title
    | | | | | | -text
    | | | | | o-updated
    | | | | | | -text
    | | | | o-...
    | | | o-content
    | | | | -text
    | | | | -type
    | | | o-contributor
    | | | -etag
    | | | o-id
    | | | | -text
    | | | o-link
    | | | | o-0
    | | | | | -href
    | | | | | -rel
    | | | | | -type
    | | | | o-...
    | | | o-published
    | | | | -text
    | | | o-title
    | | | | -text
    | | | o-updated
    | | | | -text
    | | o-...
    | o-published
    | | -text
    | o-summary
    | | -text
    | | -type
    | o-title
    | | -text
    | o-updated
    | | -text


.. |bloggerfs| replace:: BloggerFS

.. _fuse-python: http://pypi.python.org/pypi/fuse-python
.. _gdata: http://pypi.python.org/pypi/gdata
.. _zope.interface: http://pypi.python.org/pypi/zope.interface
.. _FUSE: http://fuse.sourceforge.net/
.. _`Google gdata client`: http://code.google.com/p/gdata-python-client/
.. _`pip`: http://pypi.python.org/pypi/pip
.. _`distribute`: http://pypi.python.org/pypi/distribute

.. vim: set ft=rst tw=72 ff=dos:

