Как бороться с «неустановимыми» зависимостями?

10

Я бежал sudo apt-get install -y unity-dictionary-lensи получил предупреждение о неудовлетворенных зависимостях:

unity-dictionary-lens: Зависит от: unity-singlet (> = 0.2.0), но его нельзя установить

Я нашел пакет здесь, но не смог установить его.

Эмре
источник

Ответы:

2

Он должен ссылаться на python-unity-singlet. Я могу исправить это довольно легко, но у него есть некоторые другие проблемы, сейчас он вообще не работает, даже если вы можете установить его. В будущем вы должны просто подать ошибку об этом. Вот соответствующая ошибка для этого:

https://bugs.launchpad.net/onehundredscopes/+bug/1030284

mfisch
источник
4

Скорее всего, вы не включили universeрепозиторий Ubuntu, так как unity-singletон находится там и недоступен в основном репозитории.

Проверьте настройки в «Источниках программного обеспечения» или измените их /etc/apt/sources.listсоответствующим образом, чтобы включить «юниверс».

gertvdijk
источник
Спасибо за предложение. Я проверил /etc/apt/sources.listи увидел, что многочисленные строки, заканчивающиеся на без universeкомментариев.
Эмре
Если юниверс включен, то могут быть другие причины, по которым apt решил пометить пакет как не подлежащий установке. Например, когда в вашей системе установлены конфликтующие пакеты, это мешает установке unity-singlet. Что выводится при установке пакета вручную из репозиториев, т. sudo apt-get install unity-singletЕ. (После первой очистки вашего текущего)?
gertvdijk
Я получаю Package 'unity-singlet' has no installation candidate. Я только что проверил Software Sources и вижу галочки на основном , юниверсе , ограниченном доступе и мультиверсе .
Эмре
1
Я упустил из виду очень важную разницу в моем ответе. Я нашел бинарный пакет python-unity-singletвместо unity-singlet. Кажется, ваш пакет unity-dictionary-lensпросто сломан и зависит от имени исходного пакета. Попробуйте сообщить об этой ошибке сопровождающему пакета.
gertvdijk
1

Как указал gertvdijk в своем ответе, контрольная информация unity-dictionary-lensдолжна была указывать на зависимость python-unity-siglet.

Делать это сработало для меня:

apt-get download unity-dictionary-lens  
mkdir unity-lens  
dpkg -e unity-dictionary-lens_0.2_all.deb unity-lens  
dpkg --extract unity-dictionary-lens_0.2_all.deb unity-lens  
dpkg-deb --build unity-lens  

sudo gdebi unity-lens.deb  
SRJ
источник