karabo


Namekarabo JSON
Version 3.0.0 PyPI version JSON
download
home_pageNone
SummaryThe Karabo SCADA system
upload_time2025-08-01 11:53:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseNone
keywords karabo scada async control system
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # Karabo SCADA Framework - Karabo
![Karabo Badge](https://img.shields.io/badge/Karabo-blue?style=social&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAABigAwAEAAAAAQAAABgAAAAAEQ8YrgAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KGV7hBwAAB4lJREFUSA1tVQlwU9cVPX%2FXZmuxZcuSjWyMwQaDsUvLWmo7bEOHLSnETckQBgITWpO2CSmTlqnatEyazNCWpmEZYEpCS7DLpA3FbVPWTAIJ2GZfHNsgL1iWZGuz9S19Sf%2F1fWfSYdpeaeZ96f13l3PPuY%2FZsuWA0CfdZlFWhsDR22pb28EUHrOT2yt2jcrJpWlVcqWUaFEqMcDprTXQm10RNtF%2FNdfQ%2BeLiN0bvPXZk%2FLHW4%2BH1NhvH%2FPeG9vvNG4PGHXd99p3Xji%2FfZn3j93ZrHkZVFhkIAKMDUkGVVSJsJg00%2B585v73i%2BT0vS6PDCYur56mV1YE6hqE7X5gWwFD5zafdtvKaCpImlUl5pJIjqFCM5pLcRMi41%2FV6anIR9W0ATz8cVDDQjsehen1Qfte3WdfElaIkPqSOESZgMFt6ddlZDxgl0clmZXfwjUdOt930DRUakTFF%2FX6M%2BANIyTLUTAZ9LEfez%2FmRUC%2BnhVyavMAQEOpbSbHwj4H9LAHd5VA0Q4LtiFA4IEoOnSA4THbH10IZgqlmmlUKnFU0ZJv0AqvqbHZic5dkFDlOg4wwylic%2B2Uwxey8F4FFL8GpE5EhBB1yAoiNAkYd5hZO5MrLdCqnN6YFSa%2BC40k6EmIu3HnI1q36Bs%2FHlNSVzjPnViS7vCn3E3Ml5%2FQqTjLbkFGSFAuCRckxxKNhhINBDA08wmg4jEpnAXKnToTRagMr6UEYhiWEsDq9Af23buLRgSO00GIms2JhiOd5od9sz8GN0wcYX0cvlr5qRv6kMqR1OgR6e8BxPLLyXLC4iuGunAllNEobTVvHsEiMxDD84C6sBQWw5ORgqNeLwJV2JGFSMd%2FNyWk1wDM879VlmSiyZaS8qhj%2F3H0YmDwFVfWVkD%2B9gs7rXrjnTYO1uAiumhqIhixEB%2FrRc%2FlT9LV7oUS8KJhZDZ%2FMAZ8HqZ8RTDQaSFDgkQIJsYIk9PCShBxE2Ps3OvHK7k349Y4VCN%2FroM79KJnsQs%2Blh7j%2Bp99AHh4Gy%2FNIRKPoPncMlmwB2TnFiJuy8NOty%2FDR1bew81db8SB%2BFVUuO1SWC%2FOEZfoLCp34BEXc6k215OUXnmVyzCY8tWoZdh9sxv6feFA%2Bax7utxKKzBey4UQBkjQXVjaDjuEUDr2yGasXzKTEiOE7y79OHnhfRbfNDYHjo2yByA2yBkMK65exP%2FvBc0SJjyIwOIgiuwVb1i4FapYg2toPkRaf0ZSlGQ2UR1Lo8N7Fih%2BuQVWxAx237%2BDa9Tuwm41YvmgB00ZFIzGIsjkWw7BKyDCsFhj0OlWWxzAYGEZz8wcoddjw7i82w4cgyqAgnc6M%2B%2BdYFn3K55Qo89CweB7I2Ag4UURl1XRkOAnJRBIOWiUYEmW%2FXzszSsXhAysgGhtRbTkWHD58AuXlZcjONmHJnBn49s5G3EE7skQeVAYQqTPAhKcbFqK6rAjuCS44CvIRDkUotQE5HmcHKa15UYyyFFciZFKPcOEmzXxIpWFRUuwET1mgqiosJj1qZ5QCdd9DfukkpKk%2BDDYb8jZvhSNLD53AYcAXxIWLn%2BHGjbuIyQly9szHTFlkCGlWiLJazVQovRp13953nPTSl1etXIre3gGEwxGwHAdWGxB5FjACLZuWQHUFSa8fz1Y7393thd8fRGGhA5%2B03sTfmvaj1JkHJZ2JjQeQVaZ3%2BdxKtPzlIHP67CUUuSdgWsUkdHY%2BBE%2FxNpuzKb3HQOh80pyDqHSuEiRSaToZeOTbbVi5vA7Fk0px7OSHNKQFyaRCURAj4wF4ke%2BP0D%2FMFJ9dLx4ll9pvw1lUiK%2FOqkJfIIQP%2FnERViFDhaMpmLKJBnFLPPZ7jqG55TyKSidCpYrfd%2BQ9nP%2FzvrTZOBWixQomkx6j8qNMXLvJSjuyUVb0fNh7LX300DlIFpYR9Abm5789ivfe8qBQpmp35cFI8U%2FEIuj61zlEHj3Ah6daESWjePfURfX4xfuZKdVzhOr1a%2BDIsb6zcIp5v9Z0eDwetrt4weZ4PL4r1NNTqFHurC%2BQxuG%2FU%2FBjQulXytHddg3T161BWX09Yo96cea1A8iblAcmMAp%2FuVuZv2Sh6HS5wMgjQ26XY9ubDU80a7413jEehqHswUFP68CxLlPWS4qiND43o9ouz6rBpUPvJLrbung6rHmGNlzDX1utJXYEuryqmOVQVjQ8qTMaKaOSoyfqqmq%2Bu2FRxTCwliOkibC0azRLoLGlRfLMcsrHNtS%2FJqrxqnhgcA8RhPi0b63W2adP4JP4OJGKyxqF6JdB%2BGGnwjmd6vzGdTo9q%2FrsJPHMH7Y3NGjOG%2Fe2SPQy1VRJxiHSAmhW6znPw%2B3lL2zcSG8UYP3bf52SFsQdY7K8yd%2FZhajPl6mor1Pl4SDpuXVLnDJ7NnKzjX%2BcnZ%2F%2F0vOr5vixtonzTAPn8axTtPP0jqCp%2FB9b29QkBu%2Fa1QueuvHhs%2BXk5ZpYOPpjJZV%2BkvISybE4DKoSKMrN3bbn2cUnx13s3St5QqEU7acG97hpAb58%2Ft%2BVbm450EqV9R89YcOJj%2BY37DvV%2BsLB90%2B1tHfatUNNTU3cXgrvl8609bFn7t8fxThrSai%2FQAAAAABJRU5ErkJggg%3D%3D)
![PyPI - Version](https://img.shields.io/pypi/v/karabo)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/karabo)
![PyPI - License](https://img.shields.io/pypi/l/karabo)
![PyPI - Wheel](https://img.shields.io/pypi/wheel/karabo)
![GitHub language count](https://img.shields.io/github/languages/count/European-XFEL/Karabo)
![GitHub top language](https://img.shields.io/github/languages/top/European-XFEL/Karabo)
![GitHub contributors](https://img.shields.io/github/contributors/European-XFEL/Karabo)
![GitHub commit activity](https://img.shields.io/github/commit-activity/m/European-XFEL/Karabo)
![GitHub Repo stars](https://img.shields.io/github/stars/European-XFEL/Karabo)

Karabo is the [European XFEL](www.xfel.eu)'s SCADA framework. It is a scientific control system
that supports plugin (device) development in C++ and Python.

You can find an overview of Karabo on [Wikipedia](https://en.wikipedia.org/wiki/Karabo_(software)),
and in [this publication](https://www.tandfonline.com/doi/pdf/10.1080/08940886.2023.2277650).

The Karabo source repository is on [GitHub](https://github.com/European-XFEL/Karabo) and
also contains our [Contributing Guidelines](https://github.com/European-XFEL/Karabo/blob/main/CONTRIBUTING.md).

Additional documentation is available on [ReadTheDocs](https://karabo.readthedocs.io/en/latest/)

# Installation

This package facilitates installation of the various Karabo subpackages.

## Standalone and Full

If you would like to try Karabo in a standalone fashion on a single machine
it's easiest to just run:

```bash
pip install karabo[full]
```

This will install a complete setup, including all essential service devices.
Note that this requires, compiled code to be installed. This will be done for 
wheels on supported architectures, and a source compilate will be attempted otherwise.
If that fails, we recommend you follow the instructions at https://github.com/European-XFEL/Karabo
which will result in a self-consistent environment, including a Python interpreter, with
similar functionality to a `karabo[full]` installation.

If you require the GUI, you will need to install it separately into a different Python
environment, as it does not require it's dependencies to align outside those of `karabo.native`:

```bash
pip install karabo.gui
```


After installation you should initialize the environment with either

```bash
karabo-activate --init-to PATH --standalone
```

for a standalone system, or 


```bash
karabo-activate --init-to PATH [--backbone] --broker-host amqp://{broker:port} --broker-topic {TOPIC}
```

for headless full installations. The `--backbone` option sets the core services up, and the `--broker-*`
parameters are used to configure the installation according to your AMQP broker setup.

## Additional options

- `karabo[karathon]` will install the Karathon Python API
- `karabo[cpp]` will install the Karabo C++ API
- `karabo[bound]` will install the Karabo Python bindings to C++
- `karabo[services]` will install service tools, allowing to manage installations with `karabo.daemontools`

Options can be combined, such as `karabo[karathon,services]`, which will result in a Karathon installation
with services tools installed.

To install the Karabo GUI, please use

```bash
pip install karabo.gui
```

## Starting a Karabo standalone system

If you wish to run Karabo standalone you can do this if you have `podman` or `docker` installed on the system.

First, run

```bash
karabo-activate --init-to $PATH --standalone
```

Then run 

```bash
podman-compose -f $PATH/var/containers/compose.yaml up
```

or (`docker-compose ...`). This will start containerized version of the services a full 
Karabo installation requires:

- A RabbitMQ broker (user: xfel, pw: karabo)
- An Influx database instance for logging (user: infadm, pw: admpwd)
- An ExistDB database as project database (user: admin, pw: change_me_please)
- A Grafana installation with the Influx database as a pre-provisioned source (user: admin, pw: admin)

Note that the Grafana provisioning assumes `karabo` as the broker topic in use. If you've
used `karabo-activate --broker-topic TOPIC` you'll need to edit the data source to refer to
a database of `TOPIC` from inside Grafana.

Finally, run

```bash
$PATH/activate
```

followed by 

```bash
karabo-start
```

# Device Development

These packages are not intended to facilitate development of devices for Karabo's C++ API. Please 
create a self-consistent development environment using the instructions at https://github.com/European-XFEL/Karabo.

Development of devices against these packages using the Bound and Karathon Python APIs should be trivially
possibly, as long as the device packages define the correct entrypoints.

For the Karathon API, a line similar to this one should exist in your `pyproject.toml`:

```toml
[project.entry-points."karabo.middlelayer_device"]
PropertyTestMDL = "karabo.middlelayer_devices.property_test:PropertyTestMDL"
```

For the Bound API, a line similar to this one should exist in your `pyproject.toml`.

```toml
[project.entry-points."karabo.bound_device"]
PropertyTest = "karabo.bound_devices.property_test:PropertyTest"
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "karabo",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": "\"S. Hauf\" <steffen.hauf@xfel.eu>, \"D. Goeries\" <dennis.goeries@xfel.eu>",
    "keywords": "Karabo, SCADA, async, control system",
    "author": null,
    "author_email": "European XFEL GmbH <opensource@xfel.eu>",
    "download_url": "https://files.pythonhosted.org/packages/26/75/cd5b8c2e2c6e6b9fa1a9ee8a27dcdac759670c564f38e05785b518a7bc54/karabo-3.0.0.tar.gz",
    "platform": null,
    "description": "# Karabo SCADA Framework - Karabo\n![Karabo Badge](https://img.shields.io/badge/Karabo-blue?style=social&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAABigAwAEAAAAAQAAABgAAAAAEQ8YrgAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KGV7hBwAAB4lJREFUSA1tVQlwU9cVPX%2FXZmuxZcuSjWyMwQaDsUvLWmo7bEOHLSnETckQBgITWpO2CSmTlqnatEyazNCWpmEZYEpCS7DLpA3FbVPWTAIJ2GZfHNsgL1iWZGuz9S19Sf%2F1fWfSYdpeaeZ96f13l3PPuY%2FZsuWA0CfdZlFWhsDR22pb28EUHrOT2yt2jcrJpWlVcqWUaFEqMcDprTXQm10RNtF%2FNdfQ%2BeLiN0bvPXZk%2FLHW4%2BH1NhvH%2FPeG9vvNG4PGHXd99p3Xji%2FfZn3j93ZrHkZVFhkIAKMDUkGVVSJsJg00%2B585v73i%2BT0vS6PDCYur56mV1YE6hqE7X5gWwFD5zafdtvKaCpImlUl5pJIjqFCM5pLcRMi41%2FV6anIR9W0ATz8cVDDQjsehen1Qfte3WdfElaIkPqSOESZgMFt6ddlZDxgl0clmZXfwjUdOt930DRUakTFF%2FX6M%2BANIyTLUTAZ9LEfez%2FmRUC%2BnhVyavMAQEOpbSbHwj4H9LAHd5VA0Q4LtiFA4IEoOnSA4THbH10IZgqlmmlUKnFU0ZJv0AqvqbHZic5dkFDlOg4wwylic%2B2Uwxey8F4FFL8GpE5EhBB1yAoiNAkYd5hZO5MrLdCqnN6YFSa%2BC40k6EmIu3HnI1q36Bs%2FHlNSVzjPnViS7vCn3E3Ml5%2FQqTjLbkFGSFAuCRckxxKNhhINBDA08wmg4jEpnAXKnToTRagMr6UEYhiWEsDq9Af23buLRgSO00GIms2JhiOd5od9sz8GN0wcYX0cvlr5qRv6kMqR1OgR6e8BxPLLyXLC4iuGunAllNEobTVvHsEiMxDD84C6sBQWw5ORgqNeLwJV2JGFSMd%2FNyWk1wDM879VlmSiyZaS8qhj%2F3H0YmDwFVfWVkD%2B9gs7rXrjnTYO1uAiumhqIhixEB%2FrRc%2FlT9LV7oUS8KJhZDZ%2FMAZ8HqZ8RTDQaSFDgkQIJsYIk9PCShBxE2Ps3OvHK7k349Y4VCN%2FroM79KJnsQs%2Blh7j%2Bp99AHh4Gy%2FNIRKPoPncMlmwB2TnFiJuy8NOty%2FDR1bew81db8SB%2BFVUuO1SWC%2FOEZfoLCp34BEXc6k215OUXnmVyzCY8tWoZdh9sxv6feFA%2Bax7utxKKzBey4UQBkjQXVjaDjuEUDr2yGasXzKTEiOE7y79OHnhfRbfNDYHjo2yByA2yBkMK65exP%2FvBc0SJjyIwOIgiuwVb1i4FapYg2toPkRaf0ZSlGQ2UR1Lo8N7Fih%2BuQVWxAx237%2BDa9Tuwm41YvmgB00ZFIzGIsjkWw7BKyDCsFhj0OlWWxzAYGEZz8wcoddjw7i82w4cgyqAgnc6M%2B%2BdYFn3K55Qo89CweB7I2Ag4UURl1XRkOAnJRBIOWiUYEmW%2FXzszSsXhAysgGhtRbTkWHD58AuXlZcjONmHJnBn49s5G3EE7skQeVAYQqTPAhKcbFqK6rAjuCS44CvIRDkUotQE5HmcHKa15UYyyFFciZFKPcOEmzXxIpWFRUuwET1mgqiosJj1qZ5QCdd9DfukkpKk%2BDDYb8jZvhSNLD53AYcAXxIWLn%2BHGjbuIyQly9szHTFlkCGlWiLJazVQovRp13953nPTSl1etXIre3gGEwxGwHAdWGxB5FjACLZuWQHUFSa8fz1Y7393thd8fRGGhA5%2B03sTfmvaj1JkHJZ2JjQeQVaZ3%2BdxKtPzlIHP67CUUuSdgWsUkdHY%2BBE%2FxNpuzKb3HQOh80pyDqHSuEiRSaToZeOTbbVi5vA7Fk0px7OSHNKQFyaRCURAj4wF4ke%2BP0D%2FMFJ9dLx4ll9pvw1lUiK%2FOqkJfIIQP%2FnERViFDhaMpmLKJBnFLPPZ7jqG55TyKSidCpYrfd%2BQ9nP%2FzvrTZOBWixQomkx6j8qNMXLvJSjuyUVb0fNh7LX300DlIFpYR9Abm5789ivfe8qBQpmp35cFI8U%2FEIuj61zlEHj3Ah6daESWjePfURfX4xfuZKdVzhOr1a%2BDIsb6zcIp5v9Z0eDwetrt4weZ4PL4r1NNTqFHurC%2BQxuG%2FU%2FBjQulXytHddg3T161BWX09Yo96cea1A8iblAcmMAp%2FuVuZv2Sh6HS5wMgjQ26XY9ubDU80a7413jEehqHswUFP68CxLlPWS4qiND43o9ouz6rBpUPvJLrbung6rHmGNlzDX1utJXYEuryqmOVQVjQ8qTMaKaOSoyfqqmq%2Bu2FRxTCwliOkibC0azRLoLGlRfLMcsrHNtS%2FJqrxqnhgcA8RhPi0b63W2adP4JP4OJGKyxqF6JdB%2BGGnwjmd6vzGdTo9q%2FrsJPHMH7Y3NGjOG%2Fe2SPQy1VRJxiHSAmhW6znPw%2B3lL2zcSG8UYP3bf52SFsQdY7K8yd%2FZhajPl6mor1Pl4SDpuXVLnDJ7NnKzjX%2BcnZ%2F%2F0vOr5vixtonzTAPn8axTtPP0jqCp%2FB9b29QkBu%2Fa1QueuvHhs%2BXk5ZpYOPpjJZV%2BkvISybE4DKoSKMrN3bbn2cUnx13s3St5QqEU7acG97hpAb58%2Ft%2BVbm450EqV9R89YcOJj%2BY37DvV%2BsLB90%2B1tHfatUNNTU3cXgrvl8609bFn7t8fxThrSai%2FQAAAAABJRU5ErkJggg%3D%3D)\n![PyPI - Version](https://img.shields.io/pypi/v/karabo)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/karabo)\n![PyPI - License](https://img.shields.io/pypi/l/karabo)\n![PyPI - Wheel](https://img.shields.io/pypi/wheel/karabo)\n![GitHub language count](https://img.shields.io/github/languages/count/European-XFEL/Karabo)\n![GitHub top language](https://img.shields.io/github/languages/top/European-XFEL/Karabo)\n![GitHub contributors](https://img.shields.io/github/contributors/European-XFEL/Karabo)\n![GitHub commit activity](https://img.shields.io/github/commit-activity/m/European-XFEL/Karabo)\n![GitHub Repo stars](https://img.shields.io/github/stars/European-XFEL/Karabo)\n\nKarabo is the [European XFEL](www.xfel.eu)'s SCADA framework. It is a scientific control system\nthat supports plugin (device) development in C++ and Python.\n\nYou can find an overview of Karabo on [Wikipedia](https://en.wikipedia.org/wiki/Karabo_(software)),\nand in [this publication](https://www.tandfonline.com/doi/pdf/10.1080/08940886.2023.2277650).\n\nThe Karabo source repository is on [GitHub](https://github.com/European-XFEL/Karabo) and\nalso contains our [Contributing Guidelines](https://github.com/European-XFEL/Karabo/blob/main/CONTRIBUTING.md).\n\nAdditional documentation is available on [ReadTheDocs](https://karabo.readthedocs.io/en/latest/)\n\n# Installation\n\nThis package facilitates installation of the various Karabo subpackages.\n\n## Standalone and Full\n\nIf you would like to try Karabo in a standalone fashion on a single machine\nit's easiest to just run:\n\n```bash\npip install karabo[full]\n```\n\nThis will install a complete setup, including all essential service devices.\nNote that this requires, compiled code to be installed. This will be done for \nwheels on supported architectures, and a source compilate will be attempted otherwise.\nIf that fails, we recommend you follow the instructions at https://github.com/European-XFEL/Karabo\nwhich will result in a self-consistent environment, including a Python interpreter, with\nsimilar functionality to a `karabo[full]` installation.\n\nIf you require the GUI, you will need to install it separately into a different Python\nenvironment, as it does not require it's dependencies to align outside those of `karabo.native`:\n\n```bash\npip install karabo.gui\n```\n\n\nAfter installation you should initialize the environment with either\n\n```bash\nkarabo-activate --init-to PATH --standalone\n```\n\nfor a standalone system, or \n\n\n```bash\nkarabo-activate --init-to PATH [--backbone] --broker-host amqp://{broker:port} --broker-topic {TOPIC}\n```\n\nfor headless full installations. The `--backbone` option sets the core services up, and the `--broker-*`\nparameters are used to configure the installation according to your AMQP broker setup.\n\n## Additional options\n\n- `karabo[karathon]` will install the Karathon Python API\n- `karabo[cpp]` will install the Karabo C++ API\n- `karabo[bound]` will install the Karabo Python bindings to C++\n- `karabo[services]` will install service tools, allowing to manage installations with `karabo.daemontools`\n\nOptions can be combined, such as `karabo[karathon,services]`, which will result in a Karathon installation\nwith services tools installed.\n\nTo install the Karabo GUI, please use\n\n```bash\npip install karabo.gui\n```\n\n## Starting a Karabo standalone system\n\nIf you wish to run Karabo standalone you can do this if you have `podman` or `docker` installed on the system.\n\nFirst, run\n\n```bash\nkarabo-activate --init-to $PATH --standalone\n```\n\nThen run \n\n```bash\npodman-compose -f $PATH/var/containers/compose.yaml up\n```\n\nor (`docker-compose ...`). This will start containerized version of the services a full \nKarabo installation requires:\n\n- A RabbitMQ broker (user: xfel, pw: karabo)\n- An Influx database instance for logging (user: infadm, pw: admpwd)\n- An ExistDB database as project database (user: admin, pw: change_me_please)\n- A Grafana installation with the Influx database as a pre-provisioned source (user: admin, pw: admin)\n\nNote that the Grafana provisioning assumes `karabo` as the broker topic in use. If you've\nused `karabo-activate --broker-topic TOPIC` you'll need to edit the data source to refer to\na database of `TOPIC` from inside Grafana.\n\nFinally, run\n\n```bash\n$PATH/activate\n```\n\nfollowed by \n\n```bash\nkarabo-start\n```\n\n# Device Development\n\nThese packages are not intended to facilitate development of devices for Karabo's C++ API. Please \ncreate a self-consistent development environment using the instructions at https://github.com/European-XFEL/Karabo.\n\nDevelopment of devices against these packages using the Bound and Karathon Python APIs should be trivially\npossibly, as long as the device packages define the correct entrypoints.\n\nFor the Karathon API, a line similar to this one should exist in your `pyproject.toml`:\n\n```toml\n[project.entry-points.\"karabo.middlelayer_device\"]\nPropertyTestMDL = \"karabo.middlelayer_devices.property_test:PropertyTestMDL\"\n```\n\nFor the Bound API, a line similar to this one should exist in your `pyproject.toml`.\n\n```toml\n[project.entry-points.\"karabo.bound_device\"]\nPropertyTest = \"karabo.bound_devices.property_test:PropertyTest\"\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "The Karabo SCADA system",
    "version": "3.0.0",
    "project_urls": {
        "Bug Reports": "https://github.com/European-XFEL/Karabo/issues",
        "Homepage": "https://github.com/European-XFEL/Karabo",
        "Source": "https://github.com/European-XFEL/Karabo"
    },
    "split_keywords": [
        "karabo",
        " scada",
        " async",
        " control system"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "417ca86f6a1d7afebf0077acb6f6c2ae79360ad061a9fdb12e6dc6481f7af44d",
                "md5": "d2d2883c32ff62bb6019984ea10cb203",
                "sha256": "e061950ceee0db1f2f27b4f7320dc57e6957c96b03d153a19f08099242dfe172"
            },
            "downloads": -1,
            "filename": "karabo-3.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d2d2883c32ff62bb6019984ea10cb203",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 11618,
            "upload_time": "2025-08-01T11:53:27",
            "upload_time_iso_8601": "2025-08-01T11:53:27.650117Z",
            "url": "https://files.pythonhosted.org/packages/41/7c/a86f6a1d7afebf0077acb6f6c2ae79360ad061a9fdb12e6dc6481f7af44d/karabo-3.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2675cd5b8c2e2c6e6b9fa1a9ee8a27dcdac759670c564f38e05785b518a7bc54",
                "md5": "7c2df6d15470cb7beb623463ee736416",
                "sha256": "1868cc7c3939b6a67cc3e0942d952545775382a15227af14192e3892c86a66e3"
            },
            "downloads": -1,
            "filename": "karabo-3.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "7c2df6d15470cb7beb623463ee736416",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 12298,
            "upload_time": "2025-08-01T11:53:28",
            "upload_time_iso_8601": "2025-08-01T11:53:28.951665Z",
            "url": "https://files.pythonhosted.org/packages/26/75/cd5b8c2e2c6e6b9fa1a9ee8a27dcdac759670c564f38e05785b518a7bc54/karabo-3.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-01 11:53:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "European-XFEL",
    "github_project": "Karabo",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": false,
    "lcname": "karabo"
}
        
Elapsed time: 1.22865s