diff options
Diffstat (limited to 'abs/core/LinHES-system/gen_is_xml.py')
-rwxr-xr-x | abs/core/LinHES-system/gen_is_xml.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/abs/core/LinHES-system/gen_is_xml.py b/abs/core/LinHES-system/gen_is_xml.py new file mode 100755 index 0000000..c7525a1 --- /dev/null +++ b/abs/core/LinHES-system/gen_is_xml.py @@ -0,0 +1,56 @@ +#! /usr/bin/python2 +#Helper program that generates gen_is.xml thats custom to linhes. +#Contents of gen_is.xml are read from /etc/gen_is_xml.d +#This script should be run everytime a is.xml entry is added or removed + + +import os, sys +import glob + +def read_snippets(dir_name): + xml_snippets="" + try: + os.chdir(dir_name) + except: + print " gen_is_xml: Couldn't change dir to %s" %dir_name + print " Exiting" + sys.exit(0) + file_list=glob.glob("*.conf") + for conf_file in file_list: + try: + print " gen_is_xml: reading in %s" %conf_file + f=open(conf_file,'r') + lines=f.readlines() + f.close() + except: + print " gen_is_xml: Couldn't open %s for reading" %conf_file + print " Exiting" + sys.exit(1) + for line in lines: + xml_snippets+=line + if len(file_list) == 0: + print " gen_is_xml: no conf files found" + xml_snippets="" + + return xml_snippets + + +def write_xml(xml,filename): + try: + f=open(filename, 'w') + except: + print " gen_is_xml: Couldn't open %s" %(filename) + print " Exiting" + sys.exit(2) + f.write(xml) + f.close() + +def main(): + filename="/usr/share/mythtv/gen_is.xml" + is_xml_dir="/etc/gen_is_xml.d/" + xml_snippets=read_snippets(is_xml_dir) + xml='''<mythmenu name="Internet Steams">\n\n%s\n</mythmenu>\n''' %xml_snippets + write_xml(xml,filename) + +if __name__ == "__main__": + main()
\ No newline at end of file |