code: def filter_package_list(package_list):
      
      remote_pkgs = []
      local_pkgs = []
  
      possible_remotes = filter(lambda i: not os.path.exists(i), package_list)
      juicer.utils.Log.log_debug("Considering %s possible remotes" % len(possible_remotes))
  
      for item in possible_remotes:
          remote_pkgs.extend(juicer.utils.Remotes.assemble_remotes(item))
      juicer.utils.Log.log_notice("Remote packages: %s" % str(remote_pkgs))
  
      possible_locals = filter(os.path.exists, package_list)
      possible_locals = filter(is_rpm, possible_locals)
      juicer.utils.Log.log_debug("Considering %s possible locals" % len(possible_locals))
  
      for item in possible_locals:
          for match in find_pattern(item):
              local_pkgs.append(match)
      juicer.utils.Log.log_notice("Local packages: %s" % str(local_pkgs))
  
      filtered_package_list = dedupe(remote_pkgs + local_pkgs)
      return filtered_package_list
docs: Filter a list of packages into local and remotes.