00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 import os
00021 import commands
00022 import re
00023 import sys
00024 import smolt_config
00025
00026
00027 def read_lsb_release():
00028 if os.access('/usr/bin/lsb_release', os.X_OK):
00029 return commands.getstatusoutput('/usr/bin/lsb_release')[1].strip()
00030 return ''
00031
00032 initdefault_re = re.compile(r':(\d+):initdefault:')
00033
00034 def read_runlevel():
00035 defaultRunlevel = 'Unknown'
00036 try:
00037 inittab = file('/etc/inittab').read()
00038 match = initdefault_re.search(inittab)
00039 if match:
00040 defaultRunlevel = match.group(1)
00041 except IOError:
00042 try:
00043 defaultRunlevel = commands.getstatusoutput('/sbin/runlevel')[1].split()[1].strip()
00044 except:
00045 sys.stderr.write(_('Cannot Determine Runlevel'))
00046 return defaultRunlevel.strip()
00047
00048 def read_os():
00049 return smolt_config.get_config_attr("OS", "Calvin and Hobbes")
00050
00051 if __name__ == '__main__':
00052 dict = {
00053 'LSB release':read_lsb_release(),
00054 'Run level':read_runlevel(),
00055 'OS':read_os(),
00056 }
00057 for k, v in dict.items():
00058 print '%s: "%s"' % (k, v)