What is the usage of an empty RPM ?
Reindl Harald
h.reindl at thelounge.net
Tue Feb 4 18:02:15 UTC 2014
example of how to build meta packages
some obsoletes/provides are hacks to get rid of useless
dependencies or workarounds for UsrMove-bugs
the really relevant is "Requires:"
they do not need to privide files
they only ned to provide dependencies
[builduser at buildserver:~]$ cat /rpmbuild/SPECS/lounge-base.spec
Summary: metapackage for thelounge.net default packages
Name: lounge-base
Version: 19.0
Release: 1%{?dist}
BuildArch: noarch
Group: System Environment/Libraries
URL: http://www.thelounge.net/
License: GPL
Obsoletes: php-interbase
Obsoletes: php-pear
Obsoletes: php-pear-Auth-SASL
Obsoletes: php-pear-Mail-Mime
Obsoletes: php-pear-Mail-mimeDecode
Obsoletes: php-pear-Net-IDNA2
Obsoletes: php-pear-Net-SMTP
Obsoletes: php-pear-Net-Socket
Obsoletes: php-php-gettext
Obsoletes: php-snmp
Provides: %{_bindir}/pear
Provides: %{_bindir}/pecl
Provides: %{_bindir}/perl
Provides: php-pear
Provides: php-pear-Auth-SASL
Provides: php-pear-Mail-Mime
Provides: php-pear-Mail-mimeDecode
Provides: php-pear-Net-IDNA2
Provides: php-pear-Net-SMTP
Provides: php-pear-Net-Socket
Provides: php-php-gettext
Provides: %{_sbindir}/ldconfig
Obsoletes: mod_nss
Provides: mod_nss
Obsoletes: mod_fcgid
Provides: mod_fcgid
Requires: attr
Requires: authconfig
Requires: bash-completion
Requires: bzip2
Requires: checksec
Requires: chkrootkit
Requires: dash
Requires: diffutils
Requires: dstat
Requires: ethtool
Requires: file
Requires: grub2
Requires: haveged
Requires: hostname
Requires: htop
Requires: iftop
Requires: iptables-services
Requires: kbd
Requires: less
Requires: logwatch
Requires: lsscsi
Requires: lynis
Requires: mlocate
Requires: nano
Requires: net-tools
Requires: ntp
Requires: openssh-clients
Requires: openssh-server
Requires: pciutils
Requires: php-cli
Requires: php-mysqlnd
Requires: pigz
Requires: postfix
Requires: procmail
Requires: procps-ng
Requires: psmisc
Requires: pyliblzma
Requires: rkhunter
Requires: rootfiles
Requires: rpl
Requires: rsync
Requires: rsyslog
Requires: rsyslog-mysql
Requires: screen
Requires: symlinks
Requires: tar
Requires: unhide
Requires: vim-minimal
Requires: vnstat
Requires: xz
Requires: yum-plugin-protectbase
Requires: yum-plugin-tsflags
Requires: yum-utils
%description
metapackage for thelounge.net default packages
%files
%changelog
* Tue Mar 27 2012 Reindl Harald <h.reindl at thelounge.net>
- initial build
[builduser at buildserver:~]$
Am 04.02.2014 18:46, schrieb Kevin Wilson:
> Thanks to Adam and Daniel for the quick answer.
>
> I am not an expert about RPMs. I just wonder where are these
> dependencies defined for libvirt (and in general for other RPMs),
> since the libvirt RPM file itself is an empty file ?
>
> Regards,
> Kevin
>
>
> On Tue, Feb 4, 2014 at 7:37 PM, Adam Miller
> <maxamillion at fedoraproject.org> wrote:
>>
>>
>>
>> On Tue, Feb 4, 2014 at 11:30 AM, Kevin Wilson <wkevils at gmail.com> wrote:
>>>
>>> Hi,
>>> What is the usage of an empty RPM ? What it is for ?
>>> For example, on Fedora 20:
>>>
>>> rpm -qpl libvirt-1.1.3.3-2.fc20.x86_64.rpm
>>> shows:
>>> (contains no files)
>>
>>
>> It's effectively a meta-package that pulls in dependencies.
>>
>> # yum deplist libvirt
>> package: libvirt.x86_64 1.2.1-2.fc21
>> dependency: /bin/sh
>> provider: bash.x86_64 4.2.45-6.fc21
>> dependency: libvirt-client = 1.2.1-2.fc21
>> provider: libvirt-client.x86_64 1.2.1-2.fc21
>> provider: libvirt-client.i686 1.2.1-2.fc21
>> dependency: libvirt-daemon = 1.2.1-2.fc21
>> provider: libvirt-daemon.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-config-network = 1.2.1-2.fc21
>> provider: libvirt-daemon-config-network.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-config-nwfilter = 1.2.1-2.fc21
>> provider: libvirt-daemon-config-nwfilter.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-interface = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-interface.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-libxl = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-libxl.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-lxc = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-lxc.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-network = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-network.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-nodedev = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-nodedev.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-nwfilter = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-nwfilter.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-qemu = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-qemu.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-secret = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-secret.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-storage = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-storage.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-uml = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-uml.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-vbox = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-vbox.x86_64 1.2.1-2.fc21
>> dependency: libvirt-daemon-driver-xen = 1.2.1-2.fc21
>> provider: libvirt-daemon-driver-xen.x86_64 1.2.1-2.fc21
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 246 bytes
Desc: OpenPGP digital signature
URL: <http://lists.fedoraproject.org/pipermail/devel/attachments/20140204/c1b37b96/attachment.sig>
More information about the devel
mailing list