X-Git-Url: https://mudpy.org/gitweb?a=blobdiff_plain;f=bin%2Fmuff;fp=bin%2Fmuff;h=64aab9d0f90b6fff1fc600658efb2a56b3c09cac;hb=d49d19d943672b3cea1b2e43802f4b5eca6c81b5;hp=0000000000000000000000000000000000000000;hpb=75eb080edddbffd4e6e0208aeff751b072da8288;p=mudpy.git diff --git a/bin/muff b/bin/muff new file mode 100755 index 0000000..64aab9d --- /dev/null +++ b/bin/muff @@ -0,0 +1,59 @@ +#!/usr/bin/python +"""Skeletal executable for the MUFF Engine""" + +# Copyright (c) 2005 mudpy, Jeremy Stanley +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# - Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# - Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. + +import ConfigParser +import sys + +def get_main_loop(): + """Find and return the main loop function""" + + # figure out where to find our python modules + config_data = ConfigParser.SafeConfigParser() + config_dirs = [".", "./etc", "/usr/local/muff", "/usr/local/muff/etc", "/etc/muff", "/etc" ] + config_name = "muff.conf" + config_files = [] + for each_dir in config_dirs: + config_files.append(each_dir + "/" + config_name) + config_data.read(config_files) + modules = config_data.get("general", "modules") + + # add it to the load path + sys.path.append(modules) + + # import the main loop function + from muff.muffmain import main + return main + +# load the main loop +main = get_main_loop() + +# run the main loop +main() +