LINUX.ORG.RU

debian, wireless-tools: Unsatisfied dependencies при обновлении

 


0

1
$ sudo apt upgrade
You might want to run 'apt --fix-broken install' to correct these.
Unsatisfied dependencies:
 wireless-tools : Depends: libiw30t64 (>= 30~pre1) but it is not installed
Error: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

пробуем совет

$ sudo apt --fix-broken install
Correcting dependencies... Done 
The following package was automatically installed and is no longer required:
  libiw30
Use 'sudo apt autoremove' to remove it.

Installing dependencies:
  libiw30t64

Summary:
  Upgrading: 0, Installing: 1, Removing: 0, Not Upgrading: 111
  11 not fully installed or removed.
  Download size: 0 B / 18.0 kB
  Space needed: 60.4 kB / 173 GB available

Continue? [Y/n] 
(Reading database… 130832 files and directories currently installed.)
Preparing to unpack …/libiw30t64_30~pre9-22_amd64.deb…
Unpacking libiw30t64:amd64 (30~pre9-22)…
dpkg: error processing archive /var/cache/apt/archives/libiw30t64_30~pre9-22_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/x86_64-linux-gnu/libiw.so.30', which is also in package libiw30:amd64 (30~pre9-16+b1)
Errors were encountered while processing:
 /var/cache/apt/archives/libiw30t64_30~pre9-22_amd64.deb
Error: Sub-process /usr/bin/dpkg returned an error code (1)

либа вроде как имеет нормальные права

$ ls -l /usr/lib/x86_64-linux-gnu/libiw.so.30
-rw-r--r-- 1 root root 35248 Jan  7  2024 /usr/lib/x86_64-linux-gnu/libiw.so.30

что не так и как починить ?

спасибо

★★

libiw30t64:amd64 (30~pre9-22) trying to overwrite … which is also in package libiw30:amd64

Пакет переименовали в репозитории или libiw30 поставлен руками? Удалить libiw30 можно?

Flotsky ★★★
()
Ответ на: комментарий от Flotsky

все пакеты ставились из репозитория

удаление штатными средствами не проходит

$ sudo apt purge libiw30
You might want to run 'apt --fix-broken install' to correct these.
Unsatisfied dependencies:
 wireless-tools : Depends: libiw30t64 (>= 30~pre1) but it is not going to be installed
Error: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
imb ★★
() автор топика
Ответ на: комментарий от anonymous
$ apt-cache policy
Package files:
 100 /var/lib/dpkg/status
     release a=now
 500 http://deb.debian.org/debian testing/non-free-firmware amd64 Packages
     release o=Debian,a=testing,n=forky,l=Debian,c=non-free-firmware,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian testing/non-free amd64 Packages
     release o=Debian,a=testing,n=forky,l=Debian,c=non-free,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian testing/contrib amd64 Packages
     release o=Debian,a=testing,n=forky,l=Debian,c=contrib,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian testing/main amd64 Packages
     release o=Debian,a=testing,n=forky,l=Debian,c=main,b=amd64
     origin deb.debian.org
Pinned packages:
imb ★★
() автор топика

для тестинга это обычная ситуация. никогда не слушай ламеров, советующих его установить, он для установки не предназначен. нужен свежий софт - ставь unstable или используй бэкпорты, не нужен - stable. testing - исключительно если ты мейнтейнер.

anonymous
()
Ответ на: комментарий от anonymous

ты не прав - вначале experimental затем unstable и только потом в testing попадает

anonymous
()
Ответ на: комментарий от anonymous

testing - исключительно если ты мейнтейнер

за достаточно длительное использование это первый раз переустанавливать/менять систему из за подобного - так себе идея

imb ★★
() автор топика
Ответ на: комментарий от imb

Нету в памяти точной инструкции, наверное это хорошее место чтобы сделать бэкап или хотябы сохранить пакеты в локальном виде перед действиями с ними.

Скорее всего логика действий будет что-то вроде

dpkg --remove --force-remove-reinstreq --ignore-depends=wireless-tools libiw30 скорее всего оно ругнётся и надо будет ему ещё каких ключиков добавить, тут только гуглить, можно начать отсюда

Далее или apt --fix-broken install сам притащит актуальное или ещё dpkg -i /var/cache/apt/archives/libiw30t64_30~pre9-22_amd64.deb.

Ну или ждать чуда…

Flotsky ★★★
()
Ответ на: комментарий от anonymous

Кстати вот заодно вопрос почти в тему.

Почему такое в Дебиане? Взять ту же шапку, разброд и шатание в равхиде, а как в тестинг переходит все становится более менее связано, даже специально выходят тестовые сборки.

А в Дебиан как то все наоборот. Почему так? Народ привык что тестинг это уже почти готовый следующий релиз и старается его поставить, а тут такая засада.

anonymous
()
Ответ на: комментарий от Flotsky

это хорошее место чтобы сделать бэкап…

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

andytux ★★★★★
()

libiw30

Этот пакет в последний раз существовал ещё в Debian 12, а текущий stable — 13, а testing, как у вас, — 14.

Рассказывайте, как так получилось. Вы попробовали обновиться сразу с 12 до 14, минуя 13?

Rootlexx ★★★★★
()
Ответ на: комментарий от anonymous

для тестинга это обычная ситуация

Ничего подобного. В использовании testing есть свои нюансы, однако это не один из них. Пакеты, которые вот таким вот образом не обновляются, тут же получают RC-баг, который автоматически блокирует их миграцию в testing.

Rootlexx ★★★★★
()
Ответ на: комментарий от Rootlexx

Тут вот как то собирал деб пакет, погода апплет от МАТЕ, так у автора тоже был тестинг и там был засунут баговый апплет от предыдущего МАТЕ. Вернее это пакет был от предыдущей версии МАТЕ.

И это тоже был ТЕСТИНГ.

anonymous
()
Ответ на: комментарий от Rootlexx

В смысле? Засунуть в МАТЕ(к примеру)1.30 пакет от МАТЕ 1.29 и чтобы он там не работал а лишь бы было это что?

По мне это даже хуже чем невозможность обновиться.

anonymous
()
Ответ на: комментарий от anonymous

По мне это даже хуже чем невозможность обновиться.

Вы вот сейчас серьёзно сравнили поломку такой фундаментальной части ОС как менеджер пакетов с неработающим апплетом погоды в одном из и не самом популярном окружении рабочего стола?

Rootlexx ★★★★★
()
Ответ на: комментарий от Flotsky

Незачем там бекап делать, удаляешь лишнее с помощью dpkg --force-depends, ставишь с помощью apt то что нужно, всё полностью безопасно и нечего там бояться.

firkax ★★★★★
()

Судя по тому, что у тебя установлен пакет libiw30 версии 30~pre9-16+b1, который был собран в начале января 2024 года (https://buildd.debian.org/status/logs.php?pkg=wireless-tools&arch=amd64), и который ни в какой стабильный релиз не попал, ты пользуешься testing (или unstable) и решил обновить систему через два с половиной года? Ну или ты до сих пор не обращал внимания на то, что wireless-tools при обновлениях не желает обновляться, так как хочет установить libiw30t64 и удалить libiw30, что при операции apt upgrade запрещено и разрешено только при apt full-upgrade. Ну и вот через два с половиной года что-то все-таки сломалось.

В твоем случае проблема в том, что в текущей версии libiw30t64 (30~pre9-22) прописан конфликт с libiw30 (<< 30~pre9), а до этого было так: libiw30t64 (30~pre9-21) конфликтует с libiw30 (<< 30~pre9-21). Теперь apt считает, что libiw30t64 в репозитории не конфликтует с установленным у тебя libiw30, а на самом деле конфликтует (оба содержат библиотечный файл с одним и тем же именем). Я бы отправил багрепорт с просьбой вернуть старый конфликт, но в принципе обновление через релиз не поддерживается, так что его могут и не принять.

Наверное самое простое решение – временно заменить testing на stable в /etc/apt/sources.list и обновить только wireless-tools:

apt install wireless-tools libiw30t64

а после этого вернуть testing и жить на нем как раньше. Если попробовать удалить libiw30 и wireless-tools:

apt remove wireless-tools libiw30

то что вместе с ними удаляется? Если почти ничего, то можно и так: удалить их и установить уже из testing, не забыв потом доставить то, что удалилось вместе с ними.

TeopeTuK ★★★★★
()
Ответ на: комментарий от TeopeTuK

Посмотрел свежий changelog и нашел там такое: debian/control: Fix version-substvar-for-external-package lintian error by hardcoding version in Conflicts field.

Насколько я вижу, новый сопровождающий не разобрался, с чем там надо конфликт делать. Надо с libiw30 (<< 30~pre9-16.1~), а он оставил с libiw30 (<< 30~pre9). Время репортить баг?

TeopeTuK ★★★★★
()
Ответ на: комментарий от Rootlexx

Вы вот сейчас серьёзно сравнили поломку такой фундаментальной части ОС как менеджер пакетов с неработающим апплетом погоды в одном из и не самом популярном окружении рабочего стола?

Не понял. Какая еще поломка менеджера пакетов?

  1. Не обновляется, пакет не сделали, сидим ждем когда сделают.

  2. За место нормального пакета - приплывает баговый, который из ошибки стирает все. (к примеру)

И что хуже?

anonymous
()
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария