docs: def eat_config(self, conf_file):
          """conf_file a file opened for reading.
  
          Update the packs channel names and the conditions, accordingly.
  
          """
  
          # Read the file:
          cfg = ConfigParser.RawConfigParser()
          cfg.readfp(conf_file)
  
          # Update channel names:
          sec = 'channels'
          mess = 'missmatch of channel keys'
          assert(set(self.pack.D.keys()) == set([int(i) for i in cfg.options(sec)])), mess  # NOQA
          if not self.pack.chnames:
              self.pack.chnames = dict(self.pack.chnames_0)
          for i in cfg.options(sec):  # i is a string.
              self.pack.chnames[self.pack._key(int(i))] = cfg.get(sec, i)
  
          # Update conditions:
          sec = 'conditions'
  
          # conkeys = set(self.conditions.keys())
          # conops = set(cfg.options(sec))
  
          # This check should be superfluous:
          # --------------------------------------------------
          # for conkey in conkeys:
          #     if not any([conkey.startswith(c) for c in _COND_PREFIXES]):
          #         raise KeyError(conkey)
          # --------------------------------------------------
  
          # for con in conkeys - conops: # Removed conditions.
          # self.set_condition(con, None)
          conops = cfg.options(sec)
          self.reset()            # Scary
          for con in conops:
              self.set_condition(con, cfg.get(sec, con))