Sou relativamente novo na construção de rpm e tenho tentado entender a sintaxe de "Provides" dentro de um arquivo spec sem sucesso. Tenho o seguinte trecho de arquivo spec para construir clamav rpm:
Summary: End-user tools for the Clam Antivirus scanner
Name: clamav
Version: 0.103.12
Release: 1%{?dist}
%package data
Summary: Virus signature data for the Clam Antivirus scanner
Requires: ns-clamav-filesystem = %{version}-%{release}
Provides: data(clamav) = full
Provides: clamav-db = %{version}-%{release}
Obsoletes: clamav-db < %{version}-%{release}
BuildArch: noarch
%package update
Summary: Auto-updater for the Clam Antivirus scanner data-files
Requires: ns-clamav-filesystem = %{version}-%{release}
Requires: ns-clamav-lib = %{version}-%{release}
Provides: data(clamav) = empty
Provides: clamav-data-empty = %{version}-%{release}
Obsoletes: clamav-data-empty < %{version}-%{release}
%package -n ns-clamd
Summary: The Clam AntiVirus Daemon
Requires: data(clamav)
Requires: ns-clamav-filesystem = %{version}-%{release}
Requires: ns-clamav-lib = %{version}-%{release}
Requires: coreutils
Requires(pre): shadow-utils
Estou ciente do que o "Provides:" indica aqui e também que os parênteses ao lado de provides indicam a instalação de um módulo (para aquele pacote). No meu caso, %package data
(clamav-data) quando instalado, ele também informará ao rpm/yum que provides clamav-db
e data(clamav)
.
É o data(clamav)
i don't understand. Como ele se relaciona com o prefixo de nome de pacote padrão de clamav-data
? Não deveria ser clamav(data)
?
Como posso pesquisar isso data(clamav
) em yum/rpm? Posso ver isso mencionado nas informações do rpm, mas quando eu instalo, como posso pesquisar como faço em outros pacotes? Por exemployum info <package>
# rpm -q --requires RPMS/x86_64/ns-clamd-0.103.12-1.el8.x86_64.rpm
/bin/sh
/bin/sh
/bin/sh
/bin/sh
coreutils
data(clamav)
# rpm -q RPMS/noarch/ns-clamav-data-0.103.12-1.el8.noarch.rpm --provides
clamav-db = 0.103.12-1.el8
config(ns-clamav-data) = 0.103.12-1.el8
data(clamav) = full
ns-clamav-data = 0.103.12-1.el8