Утром обновил #voidlinux на своём ПК — прилетел апдейт ядра и пакетов qt6-* до версии 6.7.2 (с 6.6.0), старые версии пакетов удалил их кэша, ведь "что может пойти не так!"
И после рестарта система повисла на приглашении ввода имени пользователя в TTY, по нажатию Ctrl+Alt+F1..9 терминалы не переключались.
Симптомы некорректно запустившегося SDDM — было такое пару раз, когда ещё настраивал систему и пытался глубже разобраться с этими вашими DE.
Не проблема, окей, загрузился с флешки, примонтировал рут, удалил симлинк /etc/runit/runsvdir/default/sddm
, рестарт. Щас сам плазму запущу, ну или хотя бы пойму причину.
Ручной запуск sddm давал такое же повисание, а плазма выходила с ошибкой libQt6<название-либы>.so.6: undefined symbol
Ну, хоть плазма выдаёт нормальные логи в отличие от сддма. Спасибо :)
Пришло время юзать Sway. Он-то не сломается никогда. Запустил, там открыл браузер и стал искать ишью в void-packages. Да, вон сверху, Qt applications crash after updates to qt6 #50953. Действительно, ни одно приложение на Qt6 не запускалось (Qt5 работал, что логично; к KeePass доступ я имел, ибо он ещё на пятой версии). Только позже я заметил, что терминал Konsole почему-то всё это время у меня прекрасно работал!
Тааак. То есть
1. разрабы Qt полностью сломали совместимость,
2. мейнтейнеры войда не удосужились протестировать пакеты и релизнули новую версию библиотек Qt в стабильные репозитории без обновления всего зависимого софта, из-за чего всё падало по undefined symbol.
Я напоминаю, войд позиционируется как стабильный, блин, дистрибутив.
Не тестинг-репо арча. Стабильный.
После попытки фикса CI-задача билда упала, в коммите 603a94c (плюс несколько коммитов до него для других пакетов) наконец-то исправили метаданные, началась компиляция.
Примерно к 15:30 по МСК наконец-то все основные пакеты сбилдились, я обновил систему и плазма с сддмом запустились.
К слову, текущее состояние CI и историю можно чекнуть здесь: https://build.voidlinux.org/waterfall
Блин, ощущение, что у них там билдсервер с 1 ядром и 2 гигами озу. Характеристики почему-то нигде не пишут, так что всё может быть :)
Надеюсь, что больше такого не повторится, стабильная репа не станет внезапно тестингом. Человеческий фактор, да, конечно… Но вот как можно было при тестировании упустить тот факт, что нихрена не работает?..