code: def read(self, filename):
          
          with tarfile.open(filename, "r:*") as arc:
              temp_dir = tempfile.mkdtemp()
              arc.extractall(path=temp_dir, members=_safemembers(arc))
              tribe_dir = glob.glob(temp_dir + os.sep + '*')[0]
              self._read_from_folder(dirname=tribe_dir)
          shutil.rmtree(temp_dir)
          return self
docs: Read a tribe of templates from a tar formatted file.
  
          :type filename: str
          :param filename: File to read templates from.
  
          .. rubric:: Example
  
          >>> tribe = Tribe(templates=[Template(name='c', st=read())])
          >>> tribe.write('test_tribe')
          Tribe of 1 templates
          >>> tribe_back = Tribe().read('test_tribe.tgz')
          >>> tribe_back == tribe
          True