exobrain
exobrain copied to clipboard
Reduce dependency requirements
Exobrain has an incredible number of dependencies. While they all install cleanly on a fresh ubuntu box when following the install instructions, that still takes a very long time.
We'd like to reduce these somewhat. Some dependencies aren't actually used (eg, the WIP xmpp server, which brings in all of AnyEvent), and others shouldn't be used unless the user actually wants to use that component. (Why install the Facebook deps if the user isn't using a Facebook source/sink?)
So we should:
- Split Exobrain into components. Sinks, sources, and actions should be made into their own distributions, so users can only install what they need.
- Find and remove code that's no longer used in Exobrain.
Part of splitting Exobrain into components can be converting existing executable files into classes (#26). They can still be managed via Ubic, but they're much cleaner to handle, can provide their own meta-data to Exobrain (if we want that), are easier to test, and don't clutter up the user's bin directory.
We may also consider using Carton, Shipwright, PAR, or some other packaging system to provide a single "exobrain in a box" download.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.