[newbies] rpm и переустановка пакета на более свежую версию (alt1-alt2)

Paul Wolneykien manowar на altlinux.org
Сб Сен 28 13:45:08 MSK 2024


В Sun, 22 Sep 2024 18:01:11 +0300
Александр Лубягин <lubyagin на yandex.ru> пишет:

> Подскажите, можно ли обновить пакет до более свежей версии командой rpm -U ?
> Т.е., если установлен пакет name-version-alt1.rpm
> А надо обновить до name-version-alt2.rpm
> Возможно ли это сделать, указав такое поведение на уровне .spec?

  Такое поведение у rpm по умолчанию: -U обновит пакет, если
-version-altX указанного пакета > -version-altX установленного
в системе.

> Там есть ключи Obsoletes и Provides.
> Приведёт ли их указание к подобной автоматизации замены?
> Например, как здесь:
> specs/boyarsh-libmtp-sisyphus.spec
> Obsoletes: %name < %version-%release

  Данные теги используются, когда нужно добиться обновления
пакета name1 на name2, то есть, при переименовании пакетов.
Эта операция называется также замещением одного пакета другим.

> У меня в .spec не были указаны Provides и Obsoletes, и rpm ругнулся (мне непонятно, почему) так:
> # rpm -U python3-module-grimoirelab_toolkit-1.0.4-alt2.noarch.rpm 
> ошибка: Неудовлетворенные зависимости:
>   python3-module-grimoirelab_toolkit = 1.0.4-alt1 нужен для (установлен) python3-module-grimoirelab_toolkit-tests-1.0.4-alt1.noarch

  Если пакеты связаны друг с другом, то их не получится обновить
по-отдельности --- только оба сразу (в одной транзакции).


> Сейчас повторил ещё раз:
> # rpm -e python3-module-grimoirelab_toolkit-tests
> # rpm -e python3-module-grimoirelab_toolkit
> # rpm -i python3-module-grimoirelab_toolkit-1.0.4-alt1.noarch.rpm
> # rpm -i python3-module-grimoirelab_toolkit-tests-1.0.4-alt1.noarch.rpm
> # rpm -U python3-module-grimoirelab_toolkit-1.0.4-alt2.noarch.rpm 
> ошибка: Неудовлетворенные зависимости:
>     python3-module-grimoirelab_toolkit = 1.0.4-alt1 нужен для (установлен) python3-module-grimoirelab_toolkit-tests-1.0.4-alt1.noarch


Подробная информация о списке рассылки devel-newbies