Центр программ Discover в KDE-подобных дистрибутивах Linux чаще всего перестаёт работать из-за повреждённого кэша PackageKit, неудачного обновления пакетов или отсутствия сетевого соединения с репозиториями. Типичные симптомы: окно Discover открывается и сразу закрывается, бесконечно крутится индикатор загрузки, список приложений пуст или при установке появляется ошибка «не удалось получить список обновлений».
Проблема почти всегда решаема без переустановки системы. Ниже разберём пошаговую диагностику: от простой проверки сети до пересоздания кэша пакетного менеджера. Все действия безопасны и обратимы, если выполнять их в указанном порядке.
Первичная диагностика: что именно сломалось
Прежде чем что-то чинить, определите характер сбоя. Discover — это лишь графическая оболочка над PackageKit, поэтому источник проблемы обычно лежит уровнем ниже. Запустите Discover из терминала и посмотрите на вывод ошибок:
plasma-discover
Терминал покажет сообщения, которые графический интерфейс скрывает. Обратите внимание на строки со словами error, failed, PackageKit — они укажут направление поиска.
- 🔍 Discover не открывается вообще — вероятно, повреждены файлы самого приложения или зависимостей.
- 🔄 Окно открывается, но список приложений пуст — проблема в кэше PackageKit или недоступности репозиториев.
- ⚡ Ошибка при установке конкретной программы — конфликт пакетов или нехватка места на диске.
- 🌐 Сообщение об отсутствии подключения — проверяйте сеть и DNS.
Проверка сети и репозиториев
Без доступа к серверам репозиториев Discover не сможет ни показать каталог, ни установить программы. Убедитесь, что интернет работает: откройте любой сайт в браузере или выполните ping -c 3 google.com. Если пакеты не уходят — разбирайтесь с сетью, а не с Discover.
Следующий шаг — проверить, отвечают ли сами репозитории. Для этого обновите списки пакетов через терминал. В дистрибутивах на базе Debian/Ubuntu (например, Kubuntu, KDE neon) используется команда:
sudo apt update
Если команда завершается с ошибками вида «Failed to fetch» или «404 Not Found», причина найдена: репозиторий недоступен, устарел или отключён. В этом случае Discover не виноват — он просто не получает данные. Проверьте источники в файле /etc/apt/sources.list и каталоге /etc/apt/sources.list.d/ — возможно, там остались записи от старого выпуска дистрибутива.
⚠️ Внимание: не редактируйте sources.list вслепую, копируя строки из случайных форумов. Неверный репозиторий от другой версии дистрибутива способен сломать систему зависимостей. Сверяйтесь с официальной документацией вашего дистрибутива.
Перезапуск PackageKit и очистка кэша
Самая частая причина «зависшего» Discover — зависший фоновый процесс PackageKit. Он мог заблокироваться после прерванного обновления. Перезапустите службу:
sudo systemctl restart packagekit.service
Если после перезапуска ничего не изменилось, очистите кэш PackageKit. Вам нужно удалить накопленные временные данные, которые могли повредиться:
sudo pkcon refresh force
Эта команда принудительно обновляет метаданные репозиториев. Дождитесь её завершения — прерывание может снова оставить кэш в битом состоянии. После этого закройте Discover полностью (проверьте, что процесс не остался в трее) и запустите заново.
☑️ Базовое восстановление Discover
Проверка целостности пакетов и зависимостей
Прерванное обновление системы — ещё один частый виновник. Если во время установки пакетов пропало питание или процесс был убит, в системе остаются «полунастроенные» пакеты, и PackageKit отказывается работать, пока ситуация не разрешится. Discover в этом случае может показывать пустой каталог или ошибку транзакции.
В Debian-подобных системах проверьте и исправьте зависимости так:
sudo apt --fix-broken install
sudo dpkg --configure -a
Первая команда пытается доустановить недостающие зависимости, вторая — завершает настройку пакетов, прерванных на середине. Выполняйте их именно в таком порядке. Если apt сообщает, что исправить нечего — значит, зависимости в порядке и причина elsewhere.
В дистрибутивах на RPM (Fedora KDE, openSUSE) логика та же, но инструменты другие: sudo dnf check покажет проблемы с зависимостями. Конкретные команды зависят от вашего дистрибутива — сверяйтесь с его документацией.
⚠️ Внимание: если apt --fix-broken install предлагает удалить десятки пакетов, включая системные компоненты KDE, — не соглашайтесь сразу. Отмените операцию (ответьте «n») и внимательно изучите список: массовое удаление plasma- или kde- пакетов может оставить вас без графического окружения.
Проблемы с Flatpak и Snap в Discover
Discover умеет работать не только с системными пакетами, но и с Flatpak и Snap — через соответствующие плагины. Если «магазин» не показывает часть приложений или выдаёт ошибки только для определённого формата, возможно, сломан именно бэкенд, а не сам Discover.
Проверьте, установлены ли плагины. Для Flatpak это обычно пакет вроде plasma-discover-backend-flatpak, для Snap — plasma-discover-backend-snap (точные имена зависят от дистрибутива). Если плагин отсутствует, соответствующий раздел в Discover просто не появится — и это не сбой, а отсутствующий компонент.
Для диагностики Flatpak выполните в терминале flatpak update — если команда выдаёт ошибки доступа к удалённым репозиториям (например, Flathub), проблема на стороне источника или сети, а Discover лишь транслирует её.
Как проверить, какие бэкенды Discover активны
Откройте Discover, перейдите в раздел настроек (обычно значок шестерёнки или пункт «Настройки» в меню). Там перечислены источники приложений: системные пакеты, Flatpak, Snap, Firmware. Если нужного источника нет в списке — соответствующий плагин не установлен. Установите его через терминал, затем перезапустите Discover.
Когда ничего не помогло: крайние меры
Если перечисленные шаги не восстановили работу, остаются более радикальные варианты. Первый — переустановка самого Discover. В Debian-подобных системах:
sudo apt install --reinstall plasma-discover
Второй вариант — временно обойтись без графического центра и управлять пакетами через терминал: apt, dnf или zypper полностью заменяют функциональность Discover. Это не решение сбоя, но рабочий способ устанавливать программы, пока разбираетесь с причиной.
Переустановка всей системы из-за неработающего Discover почти никогда не оправдана — сбой затрагивает лишь прослойку между пользователем и пакетным менеджером, а не ядро системы.
Таблица: симптомы и вероятные причины
| Симптом | Вероятная причина | Первое действие |
|---|---|---|
| Discover не запускается | Повреждены файлы приложения | Переустановить plasma-discover |
| Пустой список приложений | Битый кэш PackageKit | pkcon refresh force |
| Ошибка «Failed to fetch» | Недоступный репозиторий | Проверить sources.list |
| Ошибка при установке пакета | Сломанные зависимости | apt --fix-broken install |
| Нет приложений Flatpak | Не установлен плагин-бэкенд | Установить backend-пакет |
Частые вопросы
Почему Discover показывает «Нет подключения к сети», хотя интернет работает?
Такое бывает, когда PackageKit использует устаревший кэш состояния сети или DNS-запросы к репозиториям блокируются. Перезапустите службу packagekit и выполните sudo apt update — если терминал видит репозитории, а Discover нет, проблема именно в кэше PackageKit.
Можно ли удалить Discover полностью и пользоваться только терминалом?
Да, Discover не является обязательным компонентом. Управление пакетами через apt, dnf или zypper полностью его заменяет. Учтите только, что уведомления об обновлениях в системном трее KDE могут быть связаны с Discover — без него проверять обновления придётся вручную.
Discover зависает на «Получение обновлений» — это нормально?
При первом запуске после установки системы или долгого перерыва обновление метаданных может занимать заметное время, особенно при медленном соединении. Если процесс не завершается за 10–15 минут, завершите Discover и выполните sudo pkcon refresh force в терминале.
После обновления системы Discover исчез из меню. Что делать?
Возможно, пакет был удалён при разрешении конфликтов зависимостей во время обновления. Проверьте его наличие командой which plasma-discover и при отсутствии установите заново: sudo apt install plasma-discover.
Ошибка появляется только при установке одной конкретной программы — виноват Discover?
Скорее всего, нет. Если остальные приложения ставятся нормально, проблема в самом пакете: неразрешённые зависимости, конфликт версий или недоступность конкретного репозитория. Попробуйте установить эту программу через терминал — вывод apt покажет точную причину отказа.