Все об Arch Linux

Arch Linux будет тем, что вы из него сделаете!

KDE Plasma крашится после обновления: что делать

Если после pacman -Syu оболочка KDE Plasma падает в цикле, панель пропадает, а сессия не восстанавливается, сначала перезапусти plasmashell. Не помогло, сбрось конфигурацию в ~/.config/plasma-org.kde.plasma.desktop-appletsrc. Затем проверь вход под новым пользователем, откати plasma-workspace из кеша pacman и почини KWallet. Ниже каждый шаг с реальными командами.

Почему Plasma ломается именно после обновления?

Пакет plasma-workspace тянет за собой plasma-desktop, kwin, библиотеки KDE Frameworks и Qt. Когда обновление поднимает мажорную версию Qt или фреймворков, бинарники и модули, собранные против старой версии, перестают стыковаться. Отсюда падения plasmashell, пропавшая панель и чёрный рабочий стол.

Вторая причина, частичное обновление. Если ты обновил только часть пакетов или поставил свежий пакет из AUR против новых библиотек, зависимости расходятся. Разбор этого сценария есть в материале про «частичное обновление и ignorepkg».

Третья причина, изменился формат конфигов. Файл appletsrc со старой схемой может валить оболочку при загрузке апплетов. Plasma читает его при старте сессии и падает на несовместимом виджете.

Типичный набор симптомов выглядит так:

  • plasmashell перезапускается по кругу, рабочий стол мигает.
  • Панель задач исчезает, остаются только обои.
  • Горячие клавиши и трей не работают.
  • При входе появляется окно с ошибкой и сессия падает обратно в SDDM.

Отдельный случай, переход с Plasma 5 на Plasma 6. Между ветками сменились Qt, фреймворки и часть конфигов. Старые виджеты и темы, написанные под пятый релиз, не запускаются в шестом, а оставшиеся в appletsrc записи тянут оболочку вниз при каждом входе. Поэтому после крупного обновления полезно сразу проверить, что в системе одна согласованная ветка Plasma, а не остатки обеих.

Как перезапустить plasmashell, если панель пропала?

Это первое действие, потому что оно не трогает настройки. Открой терминал сочетанием Ctrl+Alt+T или переключись на свободную консоль через Ctrl+Alt+F3 и войди под своим логином.

kquitapp5 plasmashell    # мягко гасим текущий процесс оболочки
killall plasmashell      # если не ответил, снимаем жёстко
kstart5 plasmashell      # запускаем заново в живой сессии

На Plasma 6 команда запуска называется просто plasmashell. Можно запустить с заменой уже висящего экземпляра:

plasmashell --replace &

Если после этого панель вернулась и крашей нет, дело в разовом сбое после обновления. Перезагрузись и проверь, держится ли сессия. Если оболочка снова падает, переходи к сбросу конфигурации.

Как сбросить конфигурацию Plasma, если перезапуск не помог?

Plasma хранит раскладку панели, плазмоиды и параметры оболочки в нескольких файлах. Битый или устаревший файл валит plasmashell на старте. Убери их в сторону, не удаляя, чтобы вернуть настройки при необходимости.

mv ~/.config/plasma-org.kde.plasma.desktop-appletsrc ~/.config/plasma-org.kde.plasma.desktop-appletsrc.bak
mv ~/.config/plasmashellrc ~/.config/plasmashellrc.bak
mv ~/.config/kwinrc ~/.config/kwinrc.bak

После перезапуска оболочки Plasma создаст файлы заново с заводскими настройками:

kstart5 plasmashell

Если хочешь сохранить отдельные виджеты, открой старый appletsrc в редакторе и перенеси нужные блоки [Containments] в новый файл вручную. Конфиг читаемый, но правь его только с закрытой оболочкой, иначе Plasma перезапишет файл своим состоянием.

Как войти в систему, если сессия не восстанавливается?

Самый быстрый способ понять, в чём дело, создать второго пользователя. Если под ним Plasma работает, проблема в твоих конфигах, а не в пакетах.

sudo useradd -m testplasma
sudo passwd testplasma

Войди новым пользователем через SDDM. Чистая сессия с дефолтными настройками покажет, живой ли сама оболочка.

Дальше переключи тип сессии. На экране входа SDDM выбери «Plasma (X11)» вместо Wayland или наоборот. Баг может сидеть в конкретном композиторе. Если X11 грузится, а Wayland падает, виноват kwin_wayland или драйвер видеокарты.

Из консоли без графики сессию можно поднять вручную:

startplasma-x11

Так ты увидишь ошибки прямо в терминале, без перезапуска менеджера входа. Если оболочка стартует и держится, а при обычном входе падает, значит ломается конкретный автозапуск или сохранённый сеанс. Проверь содержимое ~/.config/autostart и ~/.config/session, временно убери оттуда подозрительные записи. Часто виноват один скрипт, который тянет старую библиотеку. Убери его из автозапуска, и вход снова станет стабильным.

Стоит помнить: сброс профиля не равно сбросу настроек приложений. В KDE они лежат отдельно, в файлах вида ~/.config/<приложение>rc. Поэтому чистый вход под новым пользователем лечит оболочку, но не обязан повторять твои личные параметры. После проверки перенеси нужные конфиги обратно по одному.

Почему KWallet просит пароль и как его сбросить?

После обновления KDE часто меняет цепочку запуска кошелька. kwalletd5 и kwalletd6 используют разные хранилища, и старый кошелёк перестаёт открываться. Отсюда бесконечный запрос пароля или ошибка при входе, из-за которой сессия не догружается.

Проверь, какой демон запущен:

pgrep -a kwalletd

Если хранилище повреждено, его можно пересоздать. Сначала сделай резервную копию, потом удали каталог.

cp -r ~/.local/share/kwalletd ~/.local/share/kwalletd.bak
rm -rf ~/.local/share/kwalletd

После этого при следующем входе KWallet создаст новый кошелёк. Выбери вариант без пароля, если не хранишь там секреты на чужой машине. Так окно авторизации перестанет блокировать вход в Plasma. Управлять кошельками удобно через kwalletmanager5 или kwalletmanager.

Если окно пароля появляется, но не принимает верный ввод, проблема в правах на файлы. Проверь владельца каталога и поправь, если там оказался root:

ls -la ~/.local/share/kwalletd
sudo chown -R "$USER":"$USER" ~/.local/share/kwalletd

Ещё одна частая причина, зависший старый демон. Сними оба процесса и запусти нужный заново:

pkill kwalletd5
pkill kwalletd6

Приложения, которые хранят пароли в кошельке, попросят их заново. Это нормально после смены хранилища.

Что делать с глючными виджетами и версиями пакетов?

Виджеты из KDE Store, собранные под старую версию библиотек, часто валят оболочку после мажорного апгрейда. Убери подозрительные плазмоиды из appletsrc или сбрось конфиг целиком, как выше.

Если не помогло, верни рабочие версии пакетов из кеша. Старые пакеты лежат в /var/cache/pacman/pkg/.

ls /var/cache/pacman/pkg/ | grep plasma-workspace
pacman -Qi plasma-workspace | grep -i version

Откат делается установкой конкретного файла:

sudo pacman -U /var/cache/pacman/pkg/plasma-workspace-5.27.11-1-x86_64.pkg.tar.zst
sudo pacman -U /var/cache/pacman/pkg/plasma-desktop-5.27.11-1-x86_64.pkg.tar.zst

Подставь свою версию из вывода ls. Подробная методика откатов разобрана в статье «Сломалось после обновления: как откатиться» и в материале «Как откатить пакеты в Arch Linux». Если нужной версии нет в кеше, помогут зеркала архива, об этом в гайде «Установка конкретной версии из кеша».

Чтобы откат не сломал систему, заморозь версии через IgnorePkg в /etc/pacman.conf и не обновляй остальные пакеты вразнобой. Опасность частичного апгрейда подробно разобрана в ArchWiki, ссылка в конце.

Как разобраться с несовместимостью Qt и Python-биндингов?

Plasma 5 работает на Qt5, Plasma 6 переехал на Qt6. Проблемы начинаются, когда после обновления Qt остаются модули, собранные под прежнюю ветку. Симптомы самые разные: не открываются системные настройки, падают плазмоиды, виджеты с Python-логикой уходят в краш.

Проверь наличие сломанных зависимостей у ключевых бинарников:

ldd /usr/bin/plasmashell | grep "not found"
pacman -Q | grep -E "qt5|qt6|pyqt"

Если видишь пропавшие библиотеки, пересобери проблемные пакеты из AUR под новую версию Qt. Приёмы массовой пересборки есть в статье «Апгрейд AUR после крупных библиотек». Не смешивай pyqt5 и pyqt6 в одном пакете, это прямой путь к конфликту.

Иногда проще дождаться корректного обновления, чем чинить смесь версий вручную. Синхронизируй систему целиком:

sudo pacman -Syu

Как отключить глючный виджет прямо из конфигурации?

Когда сессия не поднимается и открыть настройки нельзя, правь appletsrc из консоли. Сначала закрой оболочку, иначе Plasma перезапишет файл при выходе.

killall plasmashell
grep -n "plugin=" ~/.config/plasma-org.kde.plasma.desktop-appletsrc

Найди секцию проблемного плазмоида по имени плагина и закомментируй строку с ним символом #. Затем запусти оболочку и проверь, держится ли рабочий стол:

kstart5 plasmashell

Если после удаления одной записи краши прекратились, виновник найден. Обнови виджет до версии под текущую Plasma или замени его на другой. Тот же приём работает с темами оформления: временно переключись на дефолтную Breeze, чтобы исключить битую тему из списка подозреваемых.

Как посмотреть логи и найти виновника?

Логи показывают, какой компонент падает и с какой ошибкой. Начни с журнала сессионного менеджера и самой оболочки.

journalctl -u sddm -b                          # история входа за текущую загрузку
journalctl --user -u plasma-plasmashell -b     # падения оболочки
coredumpctl list                               # свежие краши
coredumpctl info plasmashell                   # подробности последнего

Для сессий под управлением SDDM пригодятся отдельные файлы:

cat ~/.local/share/sddm/xorg-session.log
cat ~/.local/share/sddm/wayland-session.log

Ищи строки со словами error, segfault и undefined symbol. Символ undefined symbol почти всегда означает рассинхрон версий библиотек. Общий подход к таким разборам описан в статье «Методика решения проблем в Arch Linux».

Частые вопросы

Plasma падает в цикле после обновления, что делать первым?

Перезапусти оболочку командами kquitapp5 plasmashell, killall plasmashell и kstart5 plasmashell. Если цикл повторяется, сбрось plasma-org.kde.plasma.desktop-appletsrc. Это снимает проблему в большинстве случаев, потому что убирает битый конфиг и разовый сбой.

Сброс конфигурации Plasma удалит все мои настройки?

Только раскладку панели и плазмоиды. Файлы переименовываются в .bak, поэтому ты вернёшь их обратно в любой момент. Личные данные, документы и профили приложений не трогаются. После сброса Plasma соберёт рабочий стол заново.

Безопасен ли откат plasma-workspace?

На короткий срок да. Но откат одного пакета без остальных даёт частичное обновление, а оно ломает зависимости. Заморозь версии через IgnorePkg или откати весь набор Plasma сразу, а не отдельный компонент.

KWallet не пускает в сессию после смены версии, что делать?

Пересоздай кошелёк. Сохрани каталог ~/.local/share/kwalletd, удали его и настрой новый кошелёк без пароля. Старый файл с другой схемой мешает демону kwalletd6 открыться и блокирует вход.

Когда лучше начать с чистого профиля?

Если под новым пользователем Plasma работает, а под твоим нет. Тогда проблема в конфигах, а не в пакетах. Переноси настройки из резервных копий по одному файлу и следи, после какого вернётся краш.

Полезные ресурсы

  • KDE — ArchWiki: установка, настройка и типовые проблемы окружения.
  • Downgrading packages — ArchWiki: официальная методика отката пакетов из кеша и архива.

Заключение

Падение Plasma после обновления почти всегда лечится по порядку. Перезапусти plasmashell, сбрось конфиг в ~/.config, проверь вход под новым пользователем, почини KWallet и откати plasma-workspace из кеша. Логи через journalctl и coredumpctl укажут точного виновника. Чтобы не повторять историю, обновляй систему целиком, а версии сомнительных пакетов держи на IgnorePkg.



Не получилось? Поможем настроить

Задай вопрос в чате — отвечаем быстро, по делу и без воды.

Читайте также

Комментарии

Загрузка…

Откроется GitHub: создайте новый issue с вашим комментарием (кнопка «Submit new issue»). После отправки обновите эту страницу — комментарий появится ниже.

Telegram Max