          logger.debug("Obtaining system information")
          self.root.config(cursor="watch")
          self.clear_console()
          print("Obtaining system information...")
          from lib.sysinfo import SysInfo
          info = SysInfo().full_info()
          self.clear_console()
          logger.debug("Obtained system information: %s", info)
          print(info)
          self.root.config(cursor="")
  
 
</s> remove         self.output.info("The tool provides tips for installation\n"
                         "and installs required python packages")
 </s> add         if not self.updater:
            self.output.info("The tool provides tips for installation\n"
                             "and installs required python packages") </s> remove         if not self.os_version[0] in ["Windows", "Linux", "Darwin"]:
 </s> add         if not self.updater and not self.os_version[0] in ["Windows", "Linux", "Darwin"]: </s> remove import locale
import os
import re
import sys
import ctypes

from subprocess import CalledProcessError, run, PIPE, Popen
 </s> add from setup import Environment, Install, Output </s> remove sysinfo = SysInfo()  # pylint: disable=invalid-name
 </s> add def get_sysinfo():
    """ Return sys info or error message if there is an error """
    try:
        retval = SysInfo().full_info()
    except Exception as err:  # pylint: disable=broad-except
        retval = "Exception occured trying to retrieve sysinfo: {}".format(err)
    return retval


sysinfo = get_sysinfo()  # pylint: disable=invalid-name </s> remove     def __init__(self):
 </s> add     def __init__(self, logger=None, updater=False):
        """ logger will override built in Output() function if passed in
            updater indicates that this is being run from update_deps.py
            so certain steps can be skipped/output limited """
        from lib.sysinfo import sysinfo
        info = sysinfo
          logger.debug("Obtaining system information")
          self.root.config(cursor="watch")
          self.clear_console()
          print("Obtaining system information...")
        from lib.sysinfo import sysinfo
        info = sysinfo
        from lib.sysinfo import sysinfo
        info = sysinfo
          self.clear_console()
          logger.debug("Obtained system information: %s", info)
          print(info)
          self.root.config(cursor="")
  
keep keep keep keep replace replace keep keep keep keep keep
 Fixups

Dependency Updater: Improve by pluging in to setup.py
setup.py: Bugfix handling of Conda aliases
GUI: Revert console background colour
sysinfo: Handle errors in obtaining information 
lib/gui/menu.py