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.
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.
To run libsoylent the following packages must be present on your system:
- Telepathy, Mission Control, libempathy
The libsoylent API reference can be found online at:
It is also located in the source under the docs/references/libsoylent/html directory.
The examples listed here will give a good introduction to 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:
If you also want to build the libsoylent documentation add --enable-gtk-doc to the autogen.sh parameters.
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
Feature requests, questions and related discussion go to the Soylent mailinglist. You can join at:
If you found a bug please report it at:
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.
-  if you have never started Evolution before there will be no system-addressbook, so all addressbook-functions will fail [TODO; workaround: start Evolution once]
-  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]
-  adding people to any addressbook but the default addressbook kills E-D-S [TODO; no workaround atm]
-  addresses stored via libsoylent are not displayed in Evolution [TODO; workaround: use Evolution to store addresses]
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)
- mailinglists: Soylent, People-Project, Mayanna