Currently Fedora's openstack-nova package generates the following 2 packages, with the dependencies indented:
openstack-nova openstack-utils bridge-utils dnsmasq-utils libguestfs-mount >= 1.7.17 fuse # The fuse dependency should be added to libguestfs-mount libvirt >= 0.8.7 MySQL-python euca2ools openssl sudo Requires(pre): shadow-utils qemu-kvm
python-nova vconfig # configures and adjusts 802.1q VLAN parameters curl coreutils radvd # Router Advertisement daemon iptables iptables-ipv6 lvm2 scsi-target-utils iscsi-initiator-utils
libvirt-python
python-crypto python-paramiko
python-qpid python-kombu python-amqplib
python-daemon python-eventlet python-greenlet python-gflags python-iso8601 python-lockfile python-netaddr python-lxml PyXML python-anyjson python-boto python-cheetah python-ldap
python-memcached
python-sqlalchemy python-migrate
python-paste-deploy python-routes python-webob
python-glance python-novaclient
Now even though we don't auto enable any services on install, splitting out some sub packages would reduce dependencies on particular packages, saving disk space and identifying and distributing dependencies going forward. The current plan is to split into the following 10 subpackages:
openstack-nova (a new meta package for compat with old scripts) openstack-nova-compute openstack-nova-cert openstack-nova-scheduler openstack-nova-volume openstack-nova-api openstack-nova-network openstack-nova-objectstore openstack-nova-console
python-nova openssl sudo
MySQL-python
python-crypto python-paramiko
python-qpid python-kombu python-amqplib
python-daemon python-eventlet python-greenlet python-gflags python-iso8601 python-lockfile python-netaddr python-lxml PyXML python-anyjson python-boto python-cheetah python-ldap
python-memcached
python-sqlalchemy python-migrate
python-paste-deploy python-routes python-webob
python-glance python-novaclient
openstack-nova-compute python-nova curl iscsi-initiator-utils iptables iptables-v6 vconfig libguestfs-mount fuse qemu-kvm libvirt libvirt-python
openstack-nova-cert python-nova
openstack-nova-scheduler python-nova
openstack-nova-volume python-nova lvm2 scsi-target-utils
openstack-nova-api python-nova
openstack-nova-network python-nova vconfig radvd bridge-utils dnsmasq-utils
openstack-nova-objectstore python-nova
openstack-nova-console python-nova
I plan to implement this for the existing Essex packages in Fedora 17 and EPEL6 over the next while.
Note to get an idea of the distribution of the disk space at least I used `yum install --disablerepo=*updates pkg1 pkg2` in an F17 VM booted from a live iso. That gave an installed size of existing packages as:
python-nova = 134M openstack-nova = 117M
Splitting to 10 sub packages would give:
python-nova = 56M openstack-nova-compute = 166M openstack-nova-volume = 38M rest are minimal in size (but dep on python-nova)
cheers, Pádraig.