Bug 42087 - Не поддерживаются weak dependencies в spec-файлах
Summary: Не поддерживаются weak dependencies в spec-файлах
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: apt (show other bugs)
Version: unstable
Hardware: x86 Linux
: P5 normal
Assignee: Ivan Zakharyaschev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-03-09 22:57 MSK by makise-homura
Modified: 2023-06-29 12:07 MSK (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description makise-homura 2022-03-09 22:57:17 MSK
Для RPM-пакетов, например, в fedora, есть возможность задавать Recommends и Suggests:
https://docs.fedoraproject.org/en-US/packaging-guidelines/WeakDependencies/
Однако в hasher такое не поодержано, и при попытке сборки пакета, в spec которого это указано, выдаётся ошибка типа такой:

Running /usr/lib/rpm/posttrans-filetriggers
hsh-install: RPM database updated.
'/usr/bin/hsh-buildreq-filter' -> 'chroot/.host/hsh-buildreq-filter'
error: line 26: Unknown tag: Recommends: libgamemode0 >= 1.0
hsh-rebuild: pkg.tar: failed to fetch build dependencies.

При замене Recommends на Requires в spec-файле всё собирается и работает, зависимость (жёсткая) в REQUIRES пакета появляется.

Проблема возникла потому, что я сейчас пытаюсь собрать Taisei Project (см. http://git.altlinux.org/people/homura/packages/?p=taisei.git;a=summary), и у него как раз есть weak-зависимость от libgamemode0: он собирается вместе с ней, но спокойно работает без её наличия в системе, поскольку линкуется с ней не через ld-linux.so, а через dlopen(), и спокойно переносит её отсутствие, просто не сообщает демону gamemode (которого в системе, скорее всего, и так нет, раз libgamemode0 не стоит) о запущенной игре.
Comment 1 Dmitry V. Levin 2022-03-10 11:35:48 MSK
Непонятно, при чём тут hasher, видимо, надо на apt перевесить.
Comment 2 Anton Farygin 2022-03-10 12:45:30 MSK
Или на rpm. hasher тут действительно не при чём.