Developer install ================= These instructions assume the use of Ubuntu 22.04. However, given that all code is run within Docker containers this system would be expected to run easily on other systems. Prerequisites ---------------- * Docker is required to be installed on your PC. Instructions to install Docker Engine on Ubuntu can be found at https://docs.docker.com/engine/install/ubuntu/ * An installation of Phoebus is recommended to observe the scans. Phoebus can be downloaded from https://controlssoftware.sns.ornl.gov/css_phoebus/ * If using VSCode installing the H5Web extension allows the easy viewing of the hdf output files from scans * To use EPAC Docker images from ghcr.io you need to ensure that you have an access token setup. This can be done by following the instructions `here `_ Setup ------------- Clone this repository using: :: $ git clone clone git@github.com:ulrikpedersen/tomoscan.git Build the top level bluesky environment Docker container by running :: $ docker build -t tomoscan . Navigate to the sim folder and build the docker files for the simulation and IOCs by running :: $ ./build.sh A .env file is used to supply information on the CLF docker containers used in the docker compose environment. Copy the example-dotenv file to create a local .env file as follows: :: $ cp example-dotenv .env It can be easier to make changes to the python script which launches bluesky :code:`src/ophyd_inter_setup.py` locally rather than in a Docker container during development. In that case use a python venv to install the dependencies of the python script as: .. code:: $ cd tomoscan $ python3 -m venv venv $ source venv/bin/activate $ pip install -e '.[dev]' It is also neccassary to configure the databroker correctly if running locally. This can be done by copying the mongo.yml file to :code:`~/.config/databroker` :: mkdir ~/.config/databroker cp mongo.yml ~/.config/databroker/