Configuration Files for the Wolfram System

The Wolfram System stores preference settings and initialization data in two directories, $BaseDirectory and $UserBaseDirectory. Within each of these directories are several possible subdirectories with titles such as FrontEnd, Kernel, and Licensing.
Global settings that affect all users are stored in subdirectories of the directory $BaseDirectory. The default value of $BaseDirectory for different operating systems is shown in the following table. To redefine the location of global preference settings and initialization data, set the environment variable WOLFRAM_BASE.
C:\ProgramData\Wolfram
Windows
/Library/Wolfram
macOS
/usr/share/Wolfram
Linux
Location of the directory $BaseDirectory for different operating systems.
Settings that only affect a particular user are stored in subdirectories of the directory $UserBaseDirectory. The default value of $UserBaseDirectory for different operating systems is shown in the following table. To redefine the location of user preferences and initialization data, set the environment variable WOLFRAM_USERBASE.
C:\User\ username \AppData\Roaming\Wolfram
Windows
~/Library/Wolfram
macOS
~/.Wolfram
Linux
Location of the directory $UserBaseDirectory for different operating systems.
Settings in the directory $UserBaseDirectory override global settings defined in the directory $BaseDirectory.
In the pathnames that follow, replace the variables $BaseDirectory and $UserBaseDirectory with the appropriate directories for your system. To find their locations on your system, evaluate the command $BaseDirectory (or $UserBaseDirectory) in a Wolfram System notebook.
Kernel
The initialization files used by the kernel contain Wolfram Language commands that are evaluated at startup, such as function definitions, packages to load, and kernel option settings. These commands are also available to the Wolfram System front end.

$BaseDirectory /Kernel/ init.m

This file is used to initialize the kernel and therefore should store any kernel commands that are appropriate for all users running the kernel.

$UserBaseDirectory /Kernel/ init.m

This file stores user-specific commands used to initialize the kernel.

Kernel initialization files are not changed automatically. If they have not been manually edited, they will contain no commands.
Front End
Front end initialization files store preference settings such as the values of global options in the Option Inspector. These files are automatically updated by the Wolfram System when you change a setting in the front end. To make changes to this file, make your changes from within the Wolfram System rather than editing the file directly.

$BaseDirectory /FrontEnd/ init.m

This file stores systemwide defaults used by all Wolfram System front ends. The settings in this file affect all users. "Systemwide Defaults" explains how to implement changes to this global file.

$UserBaseDirectory /FrontEnd/ init.m

This file defines settings within the front end that are specific to each user.

Front end initialization files are modified automatically as user preferences are changed while using the front end.
Passwords
Passwords are stored in the mathpass file, described in further detail in "Registration and Passwords". In the following pathname, replace the variable $InstallationDirectory with the directory where you installed the Wolfram System. To find the value of $InstallationDirectory on your system, evaluate the command $InstallationDirectory in a Wolfram System notebook.

$BaseDirectory /Licensing/mathpass

This is the default location for the global password file.

$InstallationDirectory /Configuration/Licensing/mathpass

This is an alternative location for the global password file. Its use is no longer recommended in most situations.

$UserBaseDirectory /Licensing/mathpass

This is a location for a user-specific password file.