docs: def read_xdg_config_home(name, extension):
      """
      Read from file found in XDG-specified configuration home directory,
      expanding to ``${HOME}/.config/name.extension`` by default. Depends on
      ``XDG_CONFIG_HOME`` or ``HOME`` environment variables.
  
      :param name: application or configuration set name
      :param extension: file extension to look for
      :return: a `.Configuration` instance, possibly `.NotConfigured`
      """
      # find optional value of ${XDG_CONFIG_HOME}
      config_home = environ.get('XDG_CONFIG_HOME')
      if not config_home:
          # XDG spec: "If $XDG_CONFIG_HOME is either not set or empty, a default equal to $HOME/.config should be used."
          # see https://specifications.freedesktop.org/basedir-spec/latest/ar01s03.html
          config_home = path.expanduser('~/.config')
  
      # expand to full path to configuration file in XDG config path
      return loadf(path.join(config_home, '{name}.{extension}'.format(name=name, extension=extension)),
                   default=NotConfigured)