/mxcubecore

Backend used by MXCuBE

Primary LanguagePythonGNU Lesser General Public License v3.0LGPL-3.0

License: LGPL v3

Backend of MXCuBE

mxcubecore is the back-end level of MXCuBE Qt and MXCuBE Web allowing to access the beamline control system and instrumentation. It acts as a container of single python objects (called hardware objects).

Please read the contributing guidlines before submiting your code to the repository.

MXCuBE is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

MXCuBE is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with MXCuBE. If not, see https://www.gnu.org/licenses/.

Installation

Installation of the mxubecore module is commonly done as a depdency of either MXCuBE Web or MXCuBE Qt.

Standalone installation of the moudle can be done via poetry poetry install or for development purpouses (creating a symlink to the current folder) by using pip: pip install -e .. Don't forget the trailing "." (period).

mxcubecore depends on python-ldap that in turn depends on the openldap system library. It can be installed through conda by installing the openldap depdency: conda install openldap or on systems using apt-get: sudo apt-get install -y libldap2-dev libsasl2-dev slapd ldap-utils tox lcov valgrind. See python-ldap for more information.