Wine Documentation | ||
---|---|---|
<<< Previous | Wine Components | Next >>> |
Wine also generates and depends on a number of dynamic files, including user configuration files and registry files.
At the time of this writing, there was not a clear consensus of where these files should be located, and how they should be handled. This section attempts to explain the alternatives clearly.
Configuration File
This file is the user local Wine configuration file. At the time of this writing, if this file exists, then no other configuration file is loaded.
This is the global Wine configuration file. It is only used if the user running Wine has no local configuration file.
Some packagers feel that this file should not be supplied, and that only a wine.conf.default should be given here.
Other packagers feel that this file should be the predominant file used, and that users should only shift to a local configuration file if they need to. An argument has been made that the local configuration file should inherit the global configuration file. At this time, Wine does not do this; please refer to the WineHQ discussion archives for the debate concerning this.
This debate is addressed more completely below, in Packaging Strategies.
Registry Files
In order to replicate the Windows registry system, Wine stores registry entries in a series of files. For an excellent overview of this issue, read this Wine Weekly News feature.
The bottom line is that, at Wine server startup, Wine loads all registry entries into memory to create an in memory image of the registry. The order of files which Wine uses to load registry entries is extremely important, as it affects what registry entries are actually present. The order is roughly that .dat files from a Windows partion are loaded, then global registry settings from ETCDIR, and then finally local registry settings are loaded from WINECONFDIR . As each set are loaded, they can override the prior entries. Thus, the local registry files take precedence.
Then, at exit (or at periodic intervals), Wine will write either all registry entries (or, with the default setting) changed registry entries to files in the WINECONFDIR.
This file contains the users local copy of the HKEY_LOCAL_MACHINE registry hive. In general use, it will contain only changes made to the default registry values.
This file contains the users local copy of the HKEY_CURRENT_USER registry hive. In general use, it will contain only changes made to the default registry values.
This file contains the users local copy of the HKEY_USERS\.Default registry hive. In general use, it will contain only changes made to the default registry values.
This file is being deprecated. It is only read if there is no user.reg or wine.userreg, and it supplied the contents of HKEY_USERS.
This file contains the global values for HKEY_LOCAL_MACHINE. The values in this file can be overriden by the users local settings.
![]() | The location of this directory is hard coded within wine, generally to /etc. This will hopefully be fixed at some point in the future. |
This file contains the global values for HKEY_USERS. The values in this file can be overriden by the users local settings. This file is likely to be deprecated in favor of a global wine.userdef.reg that will only contain HKEY_USERS/.Default.
Other files in WINECONFDIR
This directory contains files used by Wine and the Wineserver to communicate. A packager may want to have a facility for the user to erase files in this directory, as a crash in the wineserver resulting in a bogus lock file can render wine unusable.
This file contains font metrics for the given X display. Generally, this cache is generated once at Wine start time.
<<< Previous | Home | Next >>> |
Wine Components | Up | Important Files from a Windows Partition |