+ yum_options=""
+ Message( "\nChecking if yum supports --verbose" )
+ if os.system( "%s --help | grep -q verbose" % YUM_PATH ) == 0:
+ Message( "It does, using --verbose option" )
+ yum_options += " --verbose"
+ else:
+ Message( "Unsupported, not using --verbose option" )
+
+ # a configurable list of packages to try and update independently
+ # cautious..
+ try:
+ crucial_packages = []
+ for package in CRUCIAL_PACKAGES_BUILTIN: crucial_packages.append(package)
+ try: crucial_packages += file(CRUCIAL_PACKAGES_OPTIONAL_PATH1).read().split()
+ except: pass
+ try: crucial_packages += file(CRUCIAL_PACKAGES_OPTIONAL_PATH2).read().split()
+ except: pass
+ for package in crucial_packages:
+ # if package is not yet installed, like e.g. slice images,
+ # need to yum install, not yum update
+ if os.system("rpm -q %s > /dev/null"%package)==0:
+ Message( "\nUpdating crucial package %s" % package)
+ os.system( "%s %s -y update %s" %(YUM_PATH, yum_options, package))
+ else:
+ Message( "\Installing crucial package %s" % package)
+ os.system( "%s %s -y install %s" %(YUM_PATH, yum_options, package))
+ except:
+ pass
+