Cómo empaquetar y ejecutar aplicaciones de XULRunner en Mac

Una de las características que en su tiempo le dió gran popularida a Firefox fue el hecho de poder modificar todas sus características mediante Add-ons o extensiones, permitiendo realizar ajustes estéticos, agregar más configuraciones, hasta incluir nuevas aplicaciones en el navegador. Todo gracias al fantástico trabajo de la gente de mozilla al diseñar el motor sobre el que construye sus aplicaciones, estoy hablando de XULRunner.

XULRunner es el motor que permite ejecutar aplicaciones escritas en XUL (XML User interface Language). Como su nombre lo indica, únicamente la interfaz es escrita en dicho lenguage y la lógica puede ser escrita en el lenguage de nuestra preferencia (los lenguages soportados oficialmente son C/C++ y javascript, pero en realidad puede manejarse con cualquier otro lenguaje) y su característica principal es que permite la inclusión de 'overlays' o en otras palabras, permite la 'superposición' de código para modificar una función o reemplazarla completamente; los overlays son la técnica sobre la que se construyen los addons de firefox exceptuando los que corren bajo jetpack (versión Firefox de los addons de Google Chrome).

Desarrollar interfaces en XUL resulta en extremo fácil, sin embargo la poca documentación que hay sobre el tema hace que conocer el lenguaje se vuelva una tarea algo tediosa.