28 lines
1.2 KiB
Python
28 lines
1.2 KiB
Python
"""
|
|
Ранние переменные окружения для полевых терминалов (киоск без лишних GUI-диалогов).
|
|
|
|
При WESP_KIOSK_HEADLESS=1 отключается интерактивный бэкенд Python keyring (иначе на Linux
|
|
с рабочем столом может всплыть «Разблокируйте связку ключей» / аналог при обращении к
|
|
Secret Service). Это не связано с пакетом cryptography — обычно виноваты keyring или Chromium.
|
|
|
|
Для браузера в режиме киоска дополнительно добавьте флаг запуска, например:
|
|
chromium --password-store=basic ...
|
|
чтобы не трогать системное хранилище паролей браузера.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import os
|
|
|
|
_TRUE = frozenset({"1", "true", "yes", "on"})
|
|
|
|
|
|
def kiosk_headless_requested() -> bool:
|
|
return os.environ.get("WESP_KIOSK_HEADLESS", "").strip().lower() in _TRUE
|
|
|
|
|
|
def apply_kiosk_headless_env() -> None:
|
|
if not kiosk_headless_requested():
|
|
return
|
|
os.environ.setdefault("PYTHON_KEYRING_BACKEND", "keyring.backends.fail.Keyring")
|