Initialization files for custom installers

From BOINC

The behavior of the BOINC client (the core client and manager) can be influenced by various files in the BOINC data directory. For example, these items can cause the client to attach to one or more projects or to an account manager,

You can include these items in custom installers to control the behavior of the resulting clients.

Files

Account files
Each one describes an attached project.
acct_mgr_url.xml
Contains the name and URL of an account manager.
acct_mgr_login.xml
Contains credentials (name/password) for the account manager identified in acct_mgr_url.xml.
client_brand.txt
Contains a client brand, e.g. "HTC Power to Give". Reported to and stored on servers.
project_init.xml
Specifies a project and optionally an account.

Semantics

When the manager connects to the client it runs through a series of checks to determine if an attach wizard needs to be launched, and if so which attach wizard should be launched.

If the client is not attached to any projects an attach wizard must be launched.

If an acct_mgr_url.xml file is specified but a acct_mgr_logon.xml file is missing, the attach to account manager wizard is launched and automatically advanced to the logon page. Once the credentials are specified the client attaches to the account manager.

If both the acct_mgr_url.xml and acct_mgr_logon.xml files exist the attach to account manager wizard is launched and the client is attached to the account manager.

If the project_init.xml file exists and the credentials exist within project_init.xml the client is attached to the specified project.

If the project_init.xml exists but no credentials exists the attach to project wizard is launched and advanced to the logon page.

If neither the acct_mgr_url.xml or project_init.xml files exist the attach to project wizard is launched from the beginning.

File formats

project_init.xml

<project_init>
    <url>PROJECT_URL</url>
    [ <name>PROJECT_NAME</name> ]
    [ <account_key>KEY</account_key> ]
    [ <team_name>TEAM_NAME</team_name> ]
</project_init>

Note: you should use the weak account keys to protect access to the account.

acct_mgr_url.xml

This file identifies the account manager. It is typically included in an installer package. Its format is:

<acct_mgr>
    <name>Name of BOINC account management system</name>
    <url>http://acctmgr.com/</url>
    [ <send_gui_rpc_info/> ]
    <signing_key>
1024
ae843acebd4c7250b0fa575d14971b17a56a386a6bb1733d98f4b00460c26159
c8b3217e6cdff938ec0454330c70553fbe3d1f0d0184d8c628db2e093121ee98
8ddbda6e8991879317afccab41f84e9de4903a656f4d3f3e4e7dbc0af9362a05
6ece5ff401a380f3a1d1254d477f7bc84fdcebcca6cb035e776452d3d6d21471
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000010001
.
    </signing_key>
</acct_mgr>

The URL is that of the account manager's web site.

Note: the easiest way to generate this file to attach to the project manager, and copy the resulting file in the BOINC data directory.

acct_mgr_login.xml

This file contains meta-account information. Its format is:

<acct_mgr_login>
   <login>name</login>
   <password_hash>xxx</password_hash>
</acct_mgr_login>

The easiest way to create this file is to attach a client to the project manager, and use the resulting file in the BOINC data directory.