code: def save_install_defaults(args):
      
      install_config = _get_install_config()
      if install_config is None:
          return
      if utils.file_exists(install_config):
          with open(install_config) as in_handle:
              cur_config = yaml.safe_load(in_handle)
      else:
          cur_config = {}
      if args.tooldir:
          cur_config["tooldir"] = args.tooldir
      cur_config["isolate"] = args.isolate
      for attr in ["genomes", "aligners", "datatarget"]:
          if not cur_config.get(attr):
              cur_config[attr] = []
          for x in getattr(args, attr):
              if x not in cur_config[attr]:
                  cur_config[attr].append(x)
      # toolplus -- save non-filename inputs
      attr = "toolplus"
      if not cur_config.get(attr):
          cur_config[attr] = []
      for x in getattr(args, attr):
          if not x.fname:
              if x.name not in cur_config[attr]:
                  cur_config[attr].append(x.name)
      with open(install_config, "w") as out_handle:
          yaml.safe_dump(cur_config, out_handle, default_flow_style=False, allow_unicode=False)
docs: Save installation information to make future upgrades easier.