docs: def custom_popen(cmd):
      """Disconnect cmd from parent fds, read only from stdout.
      """
      # needed for py2exe
      creationflags = 0
      if sys.platform == 'win32':
          creationflags = 0x08000000   # CREATE_NO_WINDOW
  
      # run command
      try:
          p = Popen(cmd, bufsize=0, stdout=PIPE, stdin=PIPE, stderr=STDOUT,
                    creationflags=creationflags)
      except OSError as ex:
          if ex.errno == errno.ENOENT:
              raise RarCannotExec("Unrar not installed? (rarfile.UNRAR_TOOL=%r)" % UNRAR_TOOL)
          if ex.errno == errno.EACCES or ex.errno == errno.EPERM:
              raise RarCannotExec("Cannot execute unrar (rarfile.UNRAR_TOOL=%r)" % UNRAR_TOOL)
          raise
      return p