Lorax is a tool for building bootable/installable Fedora images. Its primary focus is Fedora installation images but it should be able to create other types of images too. Some design precepts: * It should be easy to make small changes to images. - Image configs should be extendable/inheritable - Configs should be self-contained and portable - everything in one dir - kickstart, templates, config files, image-specific data files (bootloader templates, keymaps, service files, etc). * Templates should be brief but expressive. - Don't make the user maintain huge lists of files/packages (do filename globbing and brace expansion, resolve package deps, etc.) - Provide commands that allow blacklists/exceptions (e.g.: removefrom PKG --allbut FILE FILE...) * The template language should make common actions easy and obvious. - Avoid 'runcmd' - add new builtins instead! - Corollary: It should be easy to extend the template runner * Image configs should allow custom commands/scripts - If you already have a bunch of kickstarts/Ruby/whatever for setting up images, you should be able to use that too * Lorax should be usable as a script or a (python) library