[devel] Как узнать, что пакет установлен из репозитория?

Vitaly Lipatov lav на altlinux.ru
Пт Апр 28 03:39:46 MSK 2023


Dmitry V. Levin писал(а) 28.4.23 1:26:
> On Fri, Apr 28, 2023 at 01:15:09AM +0300, Vitaly Lipatov wrote:
>> Хотелось бы иметь способ узнать происхождение пакета: взят ли он из
>> репозитория (в том числе конкретного стабильного репозитория), а в
>> идеале бы ещё и знать, что пакет прошёл QA.
> 
> Непонятно, зачем хочется это знать, особенно если ...
Чтобы по-разному относиться к своим пакетам и к чужим.
Вот казалось бы, есть у нас в rpm-пакете поля
Packager
Vendor
Distribution

Но Packager в спеке выставляет кто как хочет.

Vendor зачастую ALT Linux Team (впрочем, и у любого, кто воспользовался 
hasher), но вот у пакета yandex-browser-stable в репозитории Vendor 
YANDEX LLC

Distribution будет ALT или ALT* у любого пакета, собранного с помощью 
rpmbuild в ALT.
просто потому что так записано в 
/usr/lib/rpm/platform/x86_64-linux/macros


>> Наверное, можно принять допущение, что при этом пакет имеет актуальную
>> версию (последнюю, соответствующую версии в репозитории) и установлен 
>> в
>> систему из подписанного репозитория.
> 
> ... особенно если нельзя принимать такие допущения.
Я имел в виду, что если удостовериться в том, что в систему установлен 
именно пакет из репозитория (имеющий ту же контрольную сумму, например, 
что и пакет в репозитории), то по подписи репозитория можно определить 
его поставщика. Раз уж почему-то мы не можем определить ничего по 
подписи пакета.

> Если есть репозиторий, то можно что-то сделать в духе скриптов из
> пакета apt-scripts.
Ну то есть сам пакет достаточно обезличен, и надежда только на выяснение 
через репозиторий.

-- 
С уважением,
Виталий Липатов,
ALT Linux Team


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