= Preferences override file =
By default, [GlobalPrefs global preferences] and host venue are maintained on a project server, edited via a web interface, and downloaded from the server.
Some people may want to edit preferences locally, modify preferences on a single host, or hardwire the host venue. To accommodate these requirements, BOINC lets you create a 'preferences override file'. This file is read by the core client after it reads the preferences from the server, and it overrides those preferences.
The preferences override file is named `global_prefs_override.xml`. Its structure as follows:
{{{
#!xml
%d
%f
%f
%f
%f
%f
%f
%f
%d
%f
%f
%f
%f
%f
%f
%f
%f
%f
%f
%f
%f
%d
%.02f
%.02f
%.02f
%.02f
}}}
{{{
#!comment Where did [ venue ] come from? I've removed it since it's badly formed XML and I can't find it in the source.
Look in cs_prefs.c where it says:
// Read global preferences into the global_prefs structure.
// 1) read the override file to get venue in case it's there
// 2) read global_prefs.xml
// 3) read the override file again
//
// This is called:
// - on startup
// - on completion of a scheduler or AMS RPC, if they sent prefs
// - in response to read_global_prefs_override GUI RPC
It's the choice of venue that is done there. As you can set GPOs for different venues.
}}}
NOTE: the above is updated for BOINC 5.10+; see [source:trunk/boinc/lib/prefs.C lib/prefs.C] and [source:trunk/boinc/lib/prefs.h lib/prefs.h] for more information.
If you write a program for editing preferences locally, you'll want to be able to tell a running core client to reread the preferences override file. You can do this using the [GuiRpc#function-read_global_prefs_override read_global_prefs_override()] GUI RPC, or run [BoincCmd boinc_cmd] with the `--read_global_prefs_override` option.