# aare_launcher [![Check and Lint](https://gitea.psi.ch/perl_d/aare_launcher/actions/workflows/check-and-lint.yaml/badge.svg)](https://gitea.psi.ch/perl_d/aare_launcher/actions?workflow=check-and-lint.yaml) [![Test and Coverage](https://gitea.psi.ch/perl_d/aare_launcher/actions/workflows/test-and-coverage.yaml/badge.svg)](https://gitea.psi.ch/perl_d/aare_launcher/actions?workflow=test-and-coverage.yaml) [![License: GPL-3.0](https://img.shields.io/badge/license-GPL--3.0-blue.svg)](LICENSE) CLI/TUI launcher for the AareDAQ server and GUI on MX beamline consoles at PSI. Installed as the `aarel` command. It detects the current beamline and launches the matching application, opens a TUI to pick one, or deploys a new checkout. ## Usage ``` aarel pick # open the TUI to choose what to launch aarel gui # launch the GUI for the detected beamline aarel server # launch the server for the detected beamline aarel deploy # clone the repos and install them into a new virtualenv ``` Each command has a single-letter alias (`p`, `g`, `s`, `d`). `--config ` selects a different config file; it defaults to `data/defaults.json`. ### Launching `gui` and `server` pick their config entry from the detected beamline. Use `--entry ` to launch a different one. ### Deploying `deploy ` clones [aaredaq] and [aarecommon] into `/`, then installs both editable into a fresh `uv` virtualenv at `/`. It requires `git` and `uv` on the `PATH`. | Flag | Effect | | --- | --- | | `--upgrade` | Update an existing deployment (`git pull` + reinstall) instead of refusing to overwrite it. | | `--force` | Deploy a production name from a machine on another beamline. | The production names `x06da`, `x06sa` and `x10sa` may only be deployed from their own beamline's machines. Any other name is a test or development deployment and can be deployed anywhere. This is a guard against mistakes, not a security boundary, and `--force` bypasses it. [aaredaq]: https://gitea.psi.ch/mx/aaredaq [aarecommon]: https://gitea.psi.ch/mx/aarecommon