Мастер сообщил «Графический дисплей не обнаружен», хотя окно хаба было открыто на рабочем столе владельца. Причина: хаб запускается через nohup и наследует окружение той оболочки, из которой его запустили. Запуск по SSH или службой оставляет процесс без DISPLAY. Наследование не единственный источник. Измерено на сервере владельца: loginctl show-user ochenstarik -p Display даёт c1, а show-session c1 — Type=x11, Display=:10, Active=yes. Спросить у системы честнее, чем сдаться. Теперь дисплей ищется сначала в окружении, затем у systemd, и найденное значение передаётся в окружение терминала — иначе окно не открылось бы даже при верном обнаружении. Отказ остаётся правомерным, только когда графического сеанса не знает и systemd; в сообщении перечисляется всё проверенное, включая сам loginctl. XAUTHORITY не выставляем: клиенты X11 по умолчанию берут ~/.Xauthority того же пользователя, а хаб работает под ним же. 674 passed, 2 skipped; ruff чисто; релизный гейт пройден. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
6 KiB
6 KiB