My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Links

Muddle is yet another build system. It specialises in taking a set of packages and welding them together into a firmware image for an embedded system.

The assembly of these packages is directed by an executable build description written in python.

Among other things, muddle supports:

  • Procedures for building the Linux kernel and cpio initrds from source.
  • The ability to run chown and chmod operations in a separate, privileged, build stage so as not to have to constantly ask you for your password. If you're building a cpio, we perform privileged operations whilst building the image so we don't need to sudo at all.
  • The ability to build multiple target variants simultaneously, sharing binaries and object files between them as necessary.
  • Multiple version control systems - currently, svn, bazaar and git, though adding another is no more than an hour's work.

Muddle is used internally at Kynesim, as well as by other people. If you have problems with it, or ideas on how it could be improved, please do raise an issue, or contact us directly.

Some slides for a talk rrw gave on muddle are available in the Downloads section.

The Kynesim blog also periodically has articles on using muddle.

Note: muddle assumes Python 2.6 or later. It does not work with Python 3 (raise an issue if this matters to you).


On Monday 29th August 2011, muddle was moved from subversion to git. If you're still accessing it via subversion, note that you are using a "frozen" version, which will not be developed further. The last subversion revision is revision 638. Also note that due to difficulties in converting our subversion repository to git, only trunk has been converted, and at that only since revision 78 (around when something strange seems to have happened, probably to do with trying to merge stuff in subversion).

The Documentation at ReadTheDocs link is to documentation hosted at Read the Docs, who are wonderful people. The documentation should get rebuilt on each push to the repository. HTML versions of the documentation are no longer being kept in the repository.


(and yes, Muddle is similar in scope to OpenEmbedded, which doesn't meet our local needs in a few ways).

Muddle is also licenced to kill and serve drinks after hours.

Powered by Google Project Hosting