chergert / ethos

A LGPL licensed plugin engine for GLib

This URL has Read+Write access

ethos /
name age message
file .gitignore Loading commit data...
file AUTHORS
file COPYING Sun May 03 14:26:24 -0700 2009 Initial commit. [chergert]
file ChangeLog Sun May 03 14:26:24 -0700 2009 Initial commit. [chergert]
file Makefile.am
file Makefile.decl Sun May 03 14:26:24 -0700 2009 Initial commit. [chergert]
file NEWS
file README
file TODO Wed Jun 17 12:50:27 -0700 2009 Bump version for 0.2.0. [chergert]
file acinclude.m4 Sat Jun 06 19:03:03 -0700 2009 Fix underquoted fun. [chergert]
file autogen.sh
directory bindings/
directory build/ Sun May 03 14:26:24 -0700 2009 Initial commit. [chergert]
file configure.ac
directory data/
directory doc/ Wed Jun 17 01:21:20 -0700 2009 Add some more documentation. [chergert]
file ethos-ui.pc.in Sun May 17 19:38:58 -0700 2009 Add pkg-config support for libethos-ui-1.0. [chergert]
file ethos.pc.in Sun May 03 14:26:24 -0700 2009 Initial commit. [chergert]
directory ethos/
directory examples/
directory m4/ Mon Jun 15 15:31:12 -0700 2009 Fix autogen.sh warnings. [chergert]
directory plugin-loaders/
directory tests/
file version.sh
README
---------------------------------------------------------------------------
                  Ethos - Generic Plugin Engine for GLib
---------------------------------------------------------------------------

                                             Last Updated: Wed, 17 Jun 2009

I.   Introduction
II.  Features
III. Installation
IV.  Authors
V.   Contributing

---------------------------------------------------------------------------
I.   Introduction
---------------------------------------------------------------------------

Ethos is a library that provides a consistent plugin interface for application
extenders to target.  The more applications that use ethos for plugins, the
faster the community can expand to provide new features to new projects.

The core ethos library, libethos-1.0, only links against libgobject so that it
is safe to use in GUI-less applications.  The GTK+ library, libethos-ui-1.0,
provides widgets that can be embedded within your application to manage
plugins during run-time.

----------------------------------------------------------------------------
II.  Features
----------------------------------------------------------------------------

Ethos is quickly gaining a strong set of useful features for application
developers.

    * Clean and simple API using GObject.
    * Plugin loaders for shared libraries (C/Vala), Python modules, or
      JavaScript.
    * Bindings for Python and Vala.
    * Bindings for JavaScript (using GObject Introspection).
    * Reusable GTK+ widgets for a consistent plugin management interface
      within the target application.
    * Documentation for nearly all public symbols.

----------------------------------------------------------------------------
III. Installation
----------------------------------------------------------------------------

Ethos can be installed in the typical free-software fashion.  From a release
tarball:

    ./configure --prefix=/usr --enable-gtk-doc
    make
    sudo make install

If you want python and vala support, make sure you have the following
packages installed.

    Debian/Ubuntu

        python-gtk2-dev python-gobject-dev valac libvala-dev

Alternatively, you may install the latest ethos releases from the DroneLabs
PPA for Ubuntu.

    deb http://ppa.launchpad.net/audidude/dronelabs/ubuntu jaunty main
    deb-src http://ppa.launchpad.net/audidude/dronelabs/ubuntu jaunty main

----------------------------------------------------------------------------
IV.  Authors
----------------------------------------------------------------------------

Ethos was written by Christian Hergert.  I would like to thank the giftwrap
developers for being early adopters and helping me flush out early bugs.

----------------------------------------------------------------------------
V.   Contributing
----------------------------------------------------------------------------

Ethos is currently maintained within a git repository.  Please clone the
repository to add features or fix bugs.  You can submit patches to Christian
at <chrisdronelabs.com> until a proper bug-tracking system is setup.

    git clone git://git.dronelabs.com/ethos

If you are interested in making your own Ubuntu packing for Ethos, you will
want to check out the "ppa" branch which contains everything you need.