NICOS is maintained in a Git repository hosted at the FRM II. You can clone this repository using
git clone git://trac.frm2.tum.de/home/repos/git/frm2/nicos/nicos-core.git
Alternatively you can get the current snapshot from
For development, we use SSH access via Gerrit:
git clone ssh://trac.frm2.tum.de:29418/frm2/nicos/nicos-core.git
Note that you have to log in once at the FRM II Gerrit instance and add a public key for SSH, since only public key authentication is enabled.
The bug tracker and project wiki are at
For development and testing purposes, NICOS components can be run directly from the source directory. For this, you have to build the C modules once using make inplace:
cd nicos-core
make inplace
Now you can start the individual components. A minimal setup that uses all the major components can be started using
bin/nicos-cache &
bin/nicos-poller &
bin/nicos-console
The console will load the test setups from custom/test/setups. The startup setup contains a few devices that show basic usage of the NICOS system. Call help() in the console to get a list of commands, and listdevices() to get a list of devices that can be manipulated. You can also call help(dev) to get help for an individual device.
For specific instruments, we will set up a set of setups and customizations for that instrument. When this is done, the installation process looks like this:
cd nicos-core
make
[sudo] make install INSTRUMENT=<instrument name>
The configuration will be installed as /opt/nicos/setups by default, but that is also configurable for each instrument.