⚡️ ⚡️ Ошибка — E: Для пакета «xxxxxxxxxx» не найден кандидат на установку — Ubuntu 22.04 ⚡️ ⚡️

Суббота, 22 октября 2022, 8:28
Размещено в рубрике Лента новостей и имеет 0 комментариев.
В данной статье мы с Вами рассмотрим варианты решения проблемы с регулярной (постоянной) ошибкой установки пакетов в Ubuntu 22.04:
E: Для пакета «xxxxxxxxxx» не найден кандидат на установку
Данная ошибка в других, предыдущих релизах Ubuntu также иногда проявляется, но успешно решается в процессе работы и на сей счёт в Инете есть масса соответствующих статей.
В данном релизе 22.04 эта ошибка по факту на сей момент не разрешима и в недавно вышедшем, корректирующем релизе 22.04.1 эта ошибка разрабами Canonical до сих пор, увы, также не разрешена.
Все способы актуальные для предыдущих релизов не работают в 22.04, а посему мы, пусть и не очень удобными способами, но всё же постараемся решить эту проблему в данной статье...



Определённо, не могу сказать с уверенностью, что данная ошибка проявляется у всех пользователей.
У многих всё в порядке, но, судя по сообщениям на разных платформах, есть и те, у кого данная ошибка присутствует.
У меня она тоже есть...
С чем это связано сказать трудно...
Внятного ответа я не нашёл, но есть мнения например, что это может быть связано и с Интернет-провайдерами, и санкциями, но всё же более правдоподобная версия - это то, что с 22.04 Canonical перешёл с пакетного менеджера APT на полную интеграцию в системе по умолчанию на систему установки и управления программным обеспечением и пакетами SNAP, в виду чего с APT и появились эти проблемы с установкой пакетов традиционным способом.
Это можно легко обнаружить по тому, что традиционный Ubuntu Store (Магазин приложений) выпилен из системы (его можно установить вручную через тот же SNAP) и заменён на Snap Store.
Тот же браузер Firefox в системе установлен по умолчанию именно snap-пакетом...
А разрабы Canonical просто уже не уделяют должного вниманию к APT и, как говорится, забили болт на него.
Хотя, пока что, многие программы и утилиты из APT работают намного быстрее, чем из SNAP!

Как ни странно, но по моим наблюдениям данная ошибка проявляется не сразу после установки, а через 15-20 мин после первого запуска или после обновления системы, или добавления официальных репозиториев Canonical.
А до этого всё прекрасно работает.

Как правило, Пользователи после установки системы первым делом начинают в массе своей адаптировать и настраивать интерфейс системы под себя, т.е. занимаются тюнингом системы.

А когда наступает момент, когда Пользователь начинает процесс насыщения системы нужными программами и утилитами, тут и обнаруживается, что при попытке установки того или иного пакета, система выдаёт такую вот ошибку:
E: Для пакета «xxxxxxxxxx» не найден кандидат на установку
Тоже самое происходит и в графических программах установки пакетов (Synaptic, Gdebi).
И так происходит при каждой попытке установки того или иного пакета...

А если зайти на пакетное хранилище Canonical и, воспользовавшись поиском, попытаться найти нужный пакет, мы с удивлением обнаружим, что он есть в репозиториях и доступен для скачивания:
Как решить эту проблему?

Первое и на мой взгляд самое простое решение - это сразу после установки системы не заниматься её тюнингом, а, уложившись в эти 15-20 мин, сразу же начать установку всех нужных в дальнейшем для вашей работы в системе пакетов и программ, включая добавление сторонних репозиториев, например для php или Firefox.
Можно конечно по отдельности, но лучший вариант - это заранее подготовить текстовой файлик с уже прописанной общей командой установки всего необходимого одной командой (однострочником), например на флешке.

После Установки системы сразу же вставляете флешку в ваш компьютер/ноутбук, открываете на ней сей файлик, копируете данную команду (выделяете её Ctrl+A и копируете Ctrl+C или традиционно, зажав ЛКМ с любого конца команды, удерживая её выделяете всю команду и ПКМ на неё и в выпавшем контекстном меню ЛКМ на Копировать), открываете Терминал (Ctrl+Alt+T) и вставляете её в нём (ПКМ и в выпавшем контекстном меню нажав на Вставить) после чего жмёте на клаве на Enter, вводите свой пароль Пользователя и снова на Enter, на просьбу согласиться с установкой пакетов просто жмёте на Enter и ждёте завершения установки всего, что вы прописали в данной команде:
(список пакетов в команде ниже условный и вы его можете менять на своё усмотрение. В данном примере мой набор утилит и программ, вкл. пакеты зависимостей необходимые для дальнейшей безболезненной установки некоторых программ, например того же Viber .deb-пакетом)
sudo add-apt-repository ppa:ondrej/php; sudo add-apt-repository ppa:mozillateam/ppa; sleep 10; sudo apt install preload bashtop curl v4l2loopback-dkms dconf-editor gnome-system-tools gnome-tweaks firefox firefox-locale-ru pavucontrol ubuntu-restricted-extras exfat-fuse geany geany-plugins synaptic gdebi gparted vlc audacious extlinux gimp sqlite3 brasero alacarte deluge qbittorrent bleachbit unzip p7zip p7zip-rar rar unrar unace arj cabextract net-tools git mc htop gir1.2-geogodeglib-1.0 libosmgpsmap-1.0-1 gir1.2-osmgpsmap-1.0 ffmpeg libzbar-dev libzbar0 libffi-dev shutter supervisor apache2 mariadb-server-10.6 php libapache2-mod-php php-mysql php-cgi php-gd php-zip php-xml php-xmlrpc php-curl php-json php-mbstring php-cli tor obfs4proxy privoxy qemu-kvm libvirt-daemon-system virt-manager ovmf bridge-utils screenfetch zenity python3-tzlocal python3-lxml python3-requests-oauthlib python3-mutagen python3-pycryptodome python3-pyxattr python3-websockets rtmpdump ffmpeg-doc libdvdcss2 libportaudio2 sndiod python-mutagen-doc python-pyxattr-doc libfribidi-bin bidiv -y

Таким образом, всё установится в систему без проблем.

Ещё раз напомню, если вы начнёте это делать по истечении времени или после обновления системы, то результат будет именно таким - ошибка:
E: Для пакета «xxxxxxxxxx» не найден кандидат на установку
А если пытаться устанавливать программу из скачанного .deb-пакета, как в Терминале (Ctrl+Alt+T), так и в Графическом режиме (Synaptic, GDebi), то ещё и уведомления о неразрешимых зависимотсях для той или оной программы по этой же причине.


Другой способ, более сложный - это, как обычно, потюнинговать, а потом устанавливать пакеты, но уже вручную, т.к. уже будет выскакивать эта ошибка, выкачивая их .deb-пакеты c хранилища Canonical и устанавливать их в Терминале (Ctrl+Alt+T) или в Графическом режиме (Synaptic, GDebi).
При этом, при сообщениях о неудовлетворённых зависимостях, а такие, как правило будут, дополнительно выкачивать от-туда и их пакеты.

Выглядит это так на примере скачивания .deb-пакета видео-редактора pitivi и его установки...

Заходим в хранилище Canonical, в поле Поиск - Поиск по каталогам пакетов вписываем pitivi и жмём на Поиск:

В результате Поиска мы получим вывод, что такой пакет существует в репозиториях и доступен к скачиванию:
Точные совапдения
Пакет pitivi
jammy 22.04 LTS (это ссылка на страницу расшифровки деталей по этому пакету) - жмём на неё:

После перехода на страницу расшифровки деталей по этому пакету, листаем в её нижнуюю часть до раздела
Загрузка pitivi
и в таблице, в левом столбце Архитектура выбираем файл (это ссылка на него. Жмём на неё) нужной нам архитектуры (в данном случае amd64):

После чего попадаем на страницу загрузки данного пакета, где из списка серверов/зеркал хранилищь в разных странах, выбираем любой понравившийся или предпочтительный, нажав на его ссылку (здесь выбор пал на шведский сервер):

В результате нажатия, начнётся процесс загрузки и, чтобы посмотреть её статус, жмём в верхней панели нашего браузера (здесь Firefox) на стрелку вниз и в выпавшем меню видим предупреждение Показать больше информации и правее круглую кнопку, где просто жмём на неё:

И в открывшемся дополнительном информационном меню жмём на Разрешить загрузку:

После чего в этом же меню мы видим, что пакет загружен и если нажать на него, откроется по умолчанию Ubuntu Software для его установки, что не очень удобно в плане информатийности отображения процесса установки и наличия ошибок при её выполнении, на мой взгляд.
Поэтому, чтобы воочию видеть весь процесс и возможные ошибки в Графическом режиме, нам надо для открытия .deb-пакетов по умолчанию утилитой GDebi, изменить в настройках ассоциацию таких пакетов с ней и для этого мы справа, в этом же меню жмём на значок папки:

В открывшемся ФМ (Файловый менеджер Файлы) с этим сразу же выделенным .deb-пакетом жмём на него ПКМ и в выпавшем контекстном меню ЛКМ на Свойства:

В выпавшем дополнительном окне Свойств файла выбираем закладку Открыть с помощью и в её параметрах выделяем ЛКМ Программа установки пакетов GDebi и жмём ЛКМ на Установить по умолчанию и закрываем это окно нажав на крестик в верхней панели:

Теперь можно нажать ЛКМ на этот .deb-пакет и в результате запустится установка данного пакета в утилите GDebi, но с уведомлением об ошибке Неразрешённой зависимости от другого пакета:

Что делать?
Также, качать этот пакет из хранилища Canonical, как описано выше, название которого выделено также на скрине выше красным цветом, в красном квадрате и, если при его установке также выдаст ошибку, что и для него нужен тот или иной пакет неудовлетворённой зависимости, качать и его, и также устанавливать каждый по очереди, до достижения желаемого результата - финальной, успешной установки искомомого пакета.

Если вы били внимательны, то все зависимости (пакеты и ссылки на них) были перечислены на 3-м скрине, в начале страницы (раздел Другие пакеты, относящиеся к pitivi), но не факт, что все они необходимы для установки искомого пакета!
Поэтому, как выше описано, качаем только те пакеты, которые будут отмечены красным в установщике пакетов GDebi.

А можно сразу посмотреть, какие дополнительные пакеты зависимостей потребуются при установке искомого пакета в Терминале (Ctrl+Alt+T), выполнив после скачивания искомого пакета pitivi команду:
sudo dpkg -i Загрузки/pitivi_2021.05-2_amd64.deb

В результате выполнения которой мы получим, вот такой вывод Терминала (Ctrl+Alt+T), показывающий нам список дополнительных пакетов зависимостей (выделено в красном квадрате):

Кстати, если после попытки установки применить команду лечения проблем с зависимостями:
sudo apt install -f
то мы получим такой вывод, говорящий нам, что проблемы с зависимостями решены не будут с предложением удалить искомый пакет:


Остаётся только выкачать каждый пакет из списка по очереди, воспользовавшись поиском в хранилище Canonical (скопировать по очереди название каждого пакета из вывода Терминала (Ctrl+Alt+T) выше и вставить в Поиск) и установить каждый, как описано выше...

Как и говорил выше, этот способ не очень удобен, но он рабочий и, если у вас появилась эта ошибка
E: Для пакета «xxxxxxxxxx» не найден кандидат на установку
то у вас остаются только эти два способа решения проблемы установки пакетов в Ubuntu 22.04.
Другого на сей час не дано, увы!

Всем приятного и безошибочного пользования!


БОНУС!!!

Включить отображение значка Корзина на Рабочем столе:
(отключение параметра - меняете значение 'true' на 'false')
gsettings set org.gnome.shell.extensions.ding show-trash 'true'

Включить отображение значка Домашняя папка на Рабочем столе:
gsettings set org.gnome.shell.extensions.ding show-home 'true'

Включить отображение внешних дисков на Рабочем столе:
gsettings set org.gnome.shell.extensions.ding show-volumes 'true'

Результат:
(иконки можно перетаскивать в любое место на Рабочем столе)


P.S. Если у вас появились вопросы или мнения по данной статье, обсудить их можно на нашем форуме:

Ссылка на источник compizomania
22-10-2022.



Комментирование и пинг закрыты.