There are two ways to configure the programs.
We'll discuss these two possiblities now.
To put this to use, you need to supply several variables (and their values, of course) and store these items into the file ~/.wcginitrc.
For wcgformat there is no special variable to configure.
However …
This is a good moment to create the file ~/.wcginitrc and to limit access to it as it may contain vulnerable information:
$ touch ~/.wcginitrc && chmod 600 ~/.wcginitrc
For wcglog there are two special variables to configure:
| Variable-name | Default value | Explanation |
|---|---|---|
| SEARCHDIRS | .BOINC BOINC WCG wcg www tmp | This variable indicates the subdirectories to search when trying to locate the logfile |
| SEARCHNAMS | wcgresults results WCG wcg | This variable indicates the prefixes of the filename to search when trying to locate the logfile |
The final location and name of the logfile is constructed by wcglog from one of the words in each individual value of $SEARCHDIRS and $SEARCHNAMS, so $SEARCHDIRS/$SEARCHNAMS may yield "tmp/wcg" in the end, as an example. The words in each individual value, like e.g. "WCG" and "wcg", are separated by spaces only.
Note: Since wcglog doesn't know the exact location of the logfile, therefore there are two ways to specify the location of the logfile; one way is to specify its path/name on the commandline, the other way is through the configuration, using the variables SEARCHDIRS and SEARCHNAMS. In the latter case, wcglog will add the string ".log" to the end of the name of the logfile.
For wcgmembercmp there are two special variables to configure:
| Variable-name | Default value | Explanation |
|---|---|---|
| USERNAME | (none) | This variable indicates the name of your account with which you're crunching |
| TEAMNAME | (none) | This variable indicates the name of the team in which you're participating |
For wcgresults there are at least two special variables to configure:
| Variable-name | Default value | Explanation |
|---|---|---|
| MEMBER | (none) | This variable is used to specify the name of your account with which you're crunching |
| VERIFY | (none) | This variable is used to specify your verificationcode |
For wcgstats there are at least two special variables to configure, in addition you can also add variables for your device(s):
| Variable-name | Default value | Explanation |
|---|---|---|
| MAILADDR | (none) | This variable is used to specify your e-mailaddress |
| PASSWORD | (none) | This variable is used to specify the password of your account |
| DEVICE_ID[1] | (none) | This variable indicates the numerical ID of your first device |
| DEVICENAME[1] | (none) | This variable indicates the name of your first device |
| DEVICES | 0 | This variable indicates the number of devices that you have configured |
Note: Once you have configured the variables MAILADDR and PASSWORD successfully, you'll be able to generate a list of your devices, like so as an example:
$ wcgstats -ZZZ
DEVICES=0; let n=0; # Start counting the number of devices.
let n++; DEVICE_ID[$n]=1234567; DEVICENAME[$n]="desktop"
let n++; DEVICE_ID[$n]=2345678; DEVICENAME[$n]="laptop"
let n++; DEVICE_ID[$n]=3456789; DEVICENAME[$n]="smartphone"
DEVICES=$n # The total number of devices.
This will also give you the opportunity to add the output to your configuration file:
$ wcgstats -ZZZ >> ~/.wcginitrc
Final note: the special variable-names are in capitals only.
In the end, the contents of your file ~/.wcginitrc may look something like this:
SEARCHDIRS="BOINC data logdir misc"
SEARCHNAMS="WCG wcg results"
USERNAME=my_username
TEAMNAME=my_teamname
MEMBER=my_username
VERIFY=c0de1234567890987654321ed0c
MAILADDR=my_address@example.com
PASSWORD=Impossible2Guess
DEVICES=0; let n=0; # Start counting the number of devices.
let n++; DEVICE_ID[$n]=1234567; DEVICENAME[$n]="desktop"
let n++; DEVICE_ID[$n]=2345678; DEVICENAME[$n]="laptop"
let n++; DEVICE_ID[$n]=3456789; DEVICENAME[$n]="smartphone"
DEVICES=$n # The total number of devices.
In this case you will have to edit each individual program that you want to put to good use.
There is a section designated by the word "CONFIGURE" surrounded by hashtags in each program where you can edit the values of the variables.
It might also be a good idea to limit access to the individual programs as they may contain vulnerable information, e.g. like so:
$ for s in format log membercmp results stats; do f=~/bin/wcg$s; [ -f $f ] && chmod 700 $f; done
After configuring each individual program there is no need to configure it again when you download a newer version of the program: each executable program that needs configuring has an option -U to update the old version of the program to the new version.