1.2. Semantics and Use

The Elego ComPact Configuration Resource Server is a daemon used to distribute configuration resources throughout a local network. It looks up named resources using specified resource paths in the filesystem, or - if none are found - consults its built-in resources.

Resource paths may be specified in the compactrsrcdrc configuration file like this:

  # This is a comment line
  pkgconf.cbcl        "{?HOME}/compact;/opt/compact"
  compactrc           "{?HOME}/compact;/opt/compact/defaultrc/{?USER}"
As you will have noted, elements of resource path lists are separated by semicolon rather than colon to accomodate for Windows filenames; they may also contain variables using the standard ComPact variable denotation conventions. Variables are substituted by values from an environment which may be passed from the client. By default the server environment is used.

Before the service can be started and used, the netobjd agent must be running on the same machine (or the -host|-agent service-host-addr option must be used). This agent is used to negotiate network service requests between clients and servers. Only one instance of this daemon can be running on any machine, and it is only needed on the server host.

The ComPact programs pkgm, pkgvm, poolm, prjm, and ComPactHTTPd can act as clients for the ComPact configuration resource service. The resource files listed below are bundled with the server, so that the default versions can be retrieved from memory. The resources of the ComPact GUI server ComPactHTTPd are currently not bundled with the resource server and must be installed in the file system if they are to be distributed by the service.

There are two ways to make the ComPact client programs contact and use the service. The easiest way is to set the environment variable COMPACTSERVER to the hostname or internet address of the computer running the compactrsrcd. The second way is to define the variable compactserver in the local ~/.compactrc file. If you are unsure what resources are actually used, specify the verbose option (-v) on the command line, and the client programs will output information about all located resources.