GSettingsKeyfileBackend constructor

GSettingsKeyfileBackend({
  1. File? file,
})

Create a new GSettings backend that reads/writes from file. If file is not provided, $XDG_CONFIG_HOME/glib-2.0-settings/keyfile is used.

Implementation

GSettingsKeyfileBackend({File? file}) {
  if (file == null) {
    var configHome = Platform.environment['XDG_CONFIG_HOME'];
    if (configHome == null) {
      var home = Platform.environment['HOME'];
      configHome = home != null ? '$home/.config' : null;
    }
    configHome ??= '~/.config';
    file = File('$configHome/glib-2.0/settings/keyfile');
  }

  _keyfile = file;
  _settingsDirectory = _keyfile.parent;
  _init();
}