Skip to content

nexdatas/nxsmacrogui

Repository files navigation

Welcome to nxstaurusgui's documentation!

Authors: Jan Kotanski

NXS MacroGUI is taurus gui Configuration for Component Selector

NeXus Taurus GUI

Installation

Install the dependencies:

Sardana, PyTango, sphinx, Taurus, NXSRecSelector, Selector

From sources

Download the latest version of NeXuS Configuration Server from

Extract the sources and run

$ python3 setup.py install

Debian packages

Debian Bookworm, Bullseye, Buster and Ubuntu Oracular, Lunar, Jammy packages can be found in the HDRI repository.

To install the debian packages, add the PGP repository key

$ sudo su
$ wget -q -O - http://repos.pni-hdri.de/debian_repo.pub.gpg | apt-key add -

and then download the corresponding source list

$ cd /etc/apt/sources.list.d
$ wget http://repos.pni-hdri.de/bookworm-pni-hdri.list

Finally,

$ apt-get update
$ apt-get install python3-nxsrecselector nxselector nxstaurusgui

To instal other NexDaTaS packages

$ apt-get install python-nxswriter nxsconfigtool nxstools python-nxsconfigserver nxsconfigserver-db

and

$ apt-get install python3-sardana-nxsrecorder

for NeXus recorder.

From pip

To install it from pip you need also to install pyqt5, e.g.

$ python3 -m venv myvenv
$ . myvenv/bin/activate

$ pip install pyqt5

$ pip install sardana-nxsrecorder

Moreover it is also good to install

$ pip install pytango
$ pip install sardana
$ pip install nxswriter
$ pip install nxsrecselector
$ pip install nxsconfigserver
$ pip install nxstools
$ pip install pymysqldb

Setting environment

Setting Saradna

If sardana is not yet set up run

$ Pool
  • enter a new instance name
  • create the new instance

Then wait a while until Pool is started and in a new terminal run

$ MacroServer
  • enter a new instance name
  • create the new instance
  • connect pool

Next, run Astor and change start-up levels: for Pool to 2, for MacroServer to 3 and restart servers.

Alternatively, terminate Pool and MacroServer in the terminals and run

$ nxsetup start Pool -l2

wait until Pool is started and run

$ nxsetup start MacroServer -l3

Additionally, one can create dummy devices by running sar_demo in

$ spock

Setting NeXus Servers

To set up NeXus Servers run

$ nxsetup set

or

$ nxsetup set NXSDataWriter
$ nxsetup set NXSConfigServer
$ nxsetup set NXSRecSelector

for specific servers.

If the RecoderPath property of MacroServer is not set one can do it by

$ nxsetup add-recorder-path  /usr/lib/python3/dist-packages/sardananxsrecorder

where the path should point the sardananxsrecorder package.