Index: trunk/packages/invirt-base/scripts/invirt-mako-render
===================================================================
--- trunk/packages/invirt-base/scripts/invirt-mako-render	(revision 2977)
+++ trunk/packages/invirt-base/scripts/invirt-mako-render	(revision 2977)
@@ -0,0 +1,40 @@
+#!/usr/bin/python
+# Modified from mako-render by gdb.
+# TODO: set the lookup path dynamically.
+
+def render(data):
+    from mako.template import Template
+    from mako.lookup import TemplateLookup
+
+    lookup = TemplateLookup(['.', '/etc/apache2/conf.invirt'])
+    return Template(data, lookup=lookup).render()
+
+def main(argv=None):
+    from os.path import isfile
+    from sys import stdin
+
+    if argv is None:
+        import sys
+        argv = sys.argv
+
+    from optparse import OptionParser
+
+    parser = OptionParser("usage: %prog [FILENAME]")
+
+    opts, args = parser.parse_args(argv[1:])
+    if len(args) not in (0, 1):
+        parser.error("wrong number of arguments") # Will exit
+
+    if (len(args) == 0) or (args[0] == "-"):
+        fo = stdin
+    else:
+        filename = args[0]
+        if not isfile(filename):
+            raise SystemExit("error: can't find %s" % filename)
+        fo = open(filename)
+
+    data = fo.read()
+    print render(data)
+
+if __name__ == "__main__":
+    main()
