# Functions
BindFlags creates all the flags binding between the cobra Command and the instance of viper.
DataDir returns the full path to the data directory.
DownloadsDir returns the full path to the download cache directory.
FindConfigFileInArgsFallbackOnEnv returns the config file path using the argument '--config-file' (if specified), if empty looks for the ARDUINO_CONFIG_FILE env, or looking in the current working dir.
GetDefaultBuiltinLibrariesDir returns the full path to the default builtin libraries dir.
HardwareDirectories returns all paths that may contains hardware packages.
IDEBuiltinLibrariesDir returns the IDE-bundled libraries path.
Init initialize defaults and read the configuration file.
LibrariesDir returns the full path to the user directory containing custom libraries.
NetworkProxy returns the proxy configuration (mainly used by HTTP clients).
PackagesDir returns the full path to the packages folder.
ProfilesCacheDir returns the full path to the profiles cache directory (it contains all the platforms and libraries used to compile a sketch using profiles).
SetDefaults sets the default values for certain keys.
UserAgent returns the user agent (mainly used by HTTP clients).
# Variables
Settings is a global instance of viper holding configurations for the CLI and the gRPC consumers.