Fix grgsm_livemon Qt crash in headless Docker container

Set QT_QPA_PLATFORM=offscreen for both grgsm_livemon and
grgsm_scanner to prevent SIGABRT when no X11 display is available.
grgsm_livemon uses GNU Radio which loads Qt plugins — without a
display, Qt aborts with "could not connect to display".

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Smittix
2026-02-08 18:13:15 +00:00
parent 897cea5b54
commit f18ed26005
+4 -2
View File
@@ -263,7 +263,8 @@ def _start_monitoring_processes(arfcn: int, device_index: int) -> tuple[subproce
]
env = dict(os.environ,
OSMO_FSM_DUP_CHECK_DISABLED='1',
PYTHONUNBUFFERED='1')
PYTHONUNBUFFERED='1',
QT_QPA_PLATFORM='offscreen')
logger.info(f"Starting grgsm_livemon: {' '.join(grgsm_cmd)}")
grgsm_proc = subprocess.Popen(
grgsm_cmd,
@@ -1305,7 +1306,8 @@ def scanner_thread(cmd, device_index):
# abort on duplicate FSM registration (common with apt gr-gsm)
env = dict(os.environ,
OSMO_FSM_DUP_CHECK_DISABLED='1',
PYTHONUNBUFFERED='1')
PYTHONUNBUFFERED='1',
QT_QPA_PLATFORM='offscreen')
process = subprocess.Popen(
cmd,
stdout=subprocess.PIPE,