def baby_step(cls, is_test=False): """ baby step takes care of the installing scripts :param is_test: boolean :return: """ return_code = 0 error_message = "" language = Language() first_time = language.main_menu_v2() # since there is no last item print(first_time) try: while True: user_input = input("Your option:: ") if user_input == "14": # terminate the loop time.sleep(3) print(language.line_apprx + '\n' + language.line_apprx + '\n' + language.line_thats_wrap + '\n' + language.line_apprx + '\n' + language.line_apprx) sys.exit(0) # The END elif user_input == "13": # install all return_code = Utility.__do_it_all(is_test) if return_code != 0: Utility().terminate("System terminated!") else: time.sleep(3) print(language.line_apprx + '\n' + language.line_apprx + '\n' + language.line_thats_wrap + '\n' + language.line_apprx + '\n' + language.line_apprx) else: time.sleep(5) result = subprocess.Popen([ './bash_scripts/install_scripts.sh', str(is_test), user_input ]) result.communicate() return_code = result.returncode del result if return_code != 0: Utility().terminate("System terminated!") current_menu = language.main_menu_v2() print(current_menu) except subprocess.CalledProcessError as error: return_code = 255 error_message = str(error) except OSError as error: return_code = 255 error_message = str(error) except KeyboardInterrupt as error: return_code = 255 error_message = str(error) finally: if return_code != 0: Utility().terminate("System terminated! " + str(error_message))