libsoylent

libsoylent400.png

libsoylent provides a convinient way to manage people and information associated with them. Features are a system-wide addressbook, arbitrary people attributes, static (e.g. name) and dynamic (e.g. online-status) information, etc. This comes in the form of a clean object-orientated API.

State

v0.5.*: libsoylent is work-in-progress. Some minor features are missing, but the core-functionality is implemented. Focus now lies on testing and documentation.
Even if it's unlikely that libsoylent will cause any damage you are encouraged (as with any work-in-progress software) to backup your system (or at least your ~/.evolution directory) before using libsoylent.

Download

Dependencies

To run libsoylent the following packages must be present on your system:

  • Glib
  • Telepathy, Mission Control, libempathy
  • E-D-S

Documentation

The libsoylent API reference can be found online at:

http://kalterregen.de/libsoylent

It is also located in the source under the docs/references/libsoylent/html directory.

Examples

The examples listed here will give a good introduction to libsoylent.

Building libsoylent

libsoylent uses autotools for building. To build libsoylent (and Soylent) execute in the source directory:

./autogen.sh --enable-libsoylent=yes
make

If you want to install libsoylent (and Soylent) just do:

make install

If you also want to build the libsoylent documentation add --enable-gtk-doc to the autogen.sh parameters.

That's it!

Debugging

If you want to have detailed information about what's going on in libsoylent, define one or more of the following macros in sl-priv-util.h, depending on what you want to debug. Then rebuild libsoylent.

Note that this may produce a lot of output.

SL_ENABLE_DEBUG_ALL
SL_ENABLE_DEBUG_BOOK
SL_ENABLE_DEBUG_ENTITY
SL_ENABLE_DEBUG_ATTRIBUTE
SL_ENABLE_DEBUG_UTIL

Contact

Feature requests, questions and related discussion go to the Soylent mailinglist. You can join at:

http://lists.codethink.co.uk/cgi-bin/mailman/listinfo/soylent-devel

If you found a bug please report it at:

http://bugzilla.gnome.org/browse.cgi?product=soylent

Known Bugs

Note: because of bug 1 to 3, addressbook functionality has been disabled in v0.4.0, i.e. you can only use the default addressbook.

  • [1] if you have never started Evolution before there will be no system-addressbook, so all addressbook-functions will fail [TODO; workaround: start Evolution once]
  • [2] on deleting an addressbook E-D-S may tell you "EBookStatus returned 20" and deny to delete the addressbook [TODO; workaround: restart E-D-S and try to delete the addressbook again]
  • [3] adding people to any addressbook but the default addressbook kills E-D-S [TODO; no workaround atm]
  • [4] addresses stored via libsoylent are not displayed in Evolution [TODO; workaround: use Evolution to store addresses]

Logos

libsoylent100.png

libsoylent200.png

Release

TODO-list for a new release:

  • prepare release
    • update configure.ac (version)
    • update libsoylent-docs.sgml (version)
    • update NEWS
    • update README (state)
    • commit updates to trunk
  • create tarball
    • create new branch from latest stable version of Soylent (or latest stable version libsoylent, if Soylent didn't change)
    • merge with newest version of libsoylent
    • autogen.sh, make, make dist (make distcheck doesn't work because of gtk-doc)
    • untar tarball, rename directory to libsoylent-version and tar again
  • test tarball
    • configure, make
    • make install, make uninstall
    • run tests, examples
  • create new tag
  • in trunk: bump version-number
  • upload tarball
  • upload documentation
  • update wiki (state, download)
  • announce
    • mailinglists: Soylent, People-Project, Mayanna
    • blog

Projects/Soylent/libsoylent (last edited 2013-11-22 19:18:56 by WilliamJonMcCann)