[Fusioninventory-devel] FusionInventory sur EPEL-4

Remi Collet Remi at FamilleCollet.com
Sun Sep 12 17:45:11 UTC 2010


Le 12/09/2010 17:36, Guillaume Rousse a écrit :

> Some of these dependencies are incorrect:
> - perl-Nmap-Parser, perl-Net-NBName are actually optional for
> NetDiscovery (and useless for any other)

RPM doesn't care about "optional" deps.
And personally I don't think optional deps are a good thing.

> - I don't think anything really use perl-Params-Check (while it would be
> a good idea), perl-XML-Twig, perl-Module-Load,
> perl-Module-Load-Conditional, perl-Locale-Maketext-Lexicon and
> perl-Locale-Maketext-Simple. I couldn't find any reference to those
> modules in the current code.
> 

Here is the actual dependencies (computed on fedora-13) :

$ rpm -q --requires fusioninventory-agent | grep perl
perl(:MODULE_COMPAT_5.10.1)
perl(LWP)
perl(Net::IP)
perl(HTTP::Status)
perl(Net::SSLeay)
perl(Crypt::SSLeay)
perl(Proc::Daemon)
perl(Proc::PID::File)
perl(Archive::Extract)
perl(Net::CUPS)
perl(base)
perl(Carp)
perl(Config)
perl(constant)
perl(Cwd)
perl(Data::Dumper)
perl(Digest::MD5)
perl(Encode)
perl(English)
perl(Exporter)
perl(File::Glob)
perl(File::Path)
perl(File::Temp)
perl(FusionInventory::Agent::AccountInfo)
perl(FusionInventory::Agent::Config)
perl(FusionInventory::Agent::Network)
perl(FusionInventory::Agent::Storage)
perl(FusionInventory::Agent::Target)
perl(FusionInventory::Agent::Targets)
perl(FusionInventory::Agent::Task)
perl(FusionInventory::Agent::Task::Inventory)
perl(FusionInventory::Agent::Task::Inventory::OS::Linux::Storages)
perl(FusionInventory::Agent::Task::Inventory::OS::Win32)
perl(FusionInventory::Agent::XML::Query::Inventory)
perl(FusionInventory::Agent::XML::Query::Prolog)
perl(FusionInventory::Agent::XML::Query::SimpleMessage)
perl(FusionInventory::Agent::XML::Response::Prolog)
perl(FusionInventory::Logger)
perl(Getopt::Long)
perl(HTTP::Daemon)
perl(HTTP::Status)
perl(integer)
perl(Socket)
perl(Storable)
perl(strict)
perl(Sys::Hostname)
perl(Sys::Syslog)
perl(threads::shared)
perl(UNIVERSAL::require)
perl(URI)
perl(warnings)
perl(XML::Simple)
/usr/bin/perl

$ rpm -q --requires perl-FusionInventory-Agent-Task-NetDiscovery | grep perl
perl(:MODULE_COMPAT_5.10.1)
perl(FusionInventory::Agent) >= 2.0
perl(Parallel::ForkManager)
perl(Net::SNMP)
perl(Nmap::Parser)
perl(Net::NBName)
perl(Data::Dumper)
perl(Digest::MD5)
perl(FusionInventory::Agent::AccountInfo)
perl(FusionInventory::Agent::Config)
perl(FusionInventory::Agent::Network)
perl(FusionInventory::Agent::SNMP)
perl(FusionInventory::Agent::Storage)
perl(FusionInventory::Agent::Task::NetDiscovery::Dico)
perl(FusionInventory::Agent::Task::NetDiscovery::Manufacturer::HewlettPackard)

perl(FusionInventory::Agent::XML::Query::SimpleMessage)
perl(FusionInventory::Agent::XML::Response::Prolog)
perl(FusionInventory::Logger)
perl(Net::IP)
perl(strict)
perl(threads)
perl(threads::shared)
perl(warnings)
perl(XML::Simple)

$ rpm -q --requires perl-FusionInventory-Agent-Task-OcsDeploy | grep perl
perl(:MODULE_COMPAT_5.10.1)
perl(Archive::Extract)
perl(Carp)
perl(Cwd)
perl(Digest::MD5)
perl(File::Copy)
perl(File::Copy::Recursive)
perl(File::Copy::Recursive)
perl(File::Glob)
perl(File::Path)
perl(File::stat)
perl(FusionInventory::Agent) >= 2.0
perl(FusionInventory::Agent::Network)
perl(FusionInventory::Agent::Storage)
perl(FusionInventory::Agent::XML::Query::SimpleMessage)
perl(FusionInventory::Agent::XML::Response::Prolog)
perl(FusionInventory::Logger)
perl(Time::HiRes)
perl(XML::Simple)
perl(XML::Simple)
perl(strict)
perl(threads)
perl(warnings)

$ rpm -q --requires perl-FusionInventory-Agent-Task-SNMPQuery | grep perl
perl(:MODULE_COMPAT_5.10.1)
perl(FusionInventory::Agent) >= 2.0
perl(Parallel::ForkManager)
perl(Net::SNMP)
perl(Data::Dumper)
perl(Encode)
perl(ExtUtils::Installed)
perl(File::stat)
perl(FusionInventory::Agent::AccountInfo)
perl(FusionInventory::Agent::Config)
perl(FusionInventory::Agent::Network)
perl(FusionInventory::Agent::SNMP)
perl(FusionInventory::Agent::Storage)
perl(FusionInventory::Agent::Task::SNMPQuery::Cisco)
perl(FusionInventory::Agent::Task::SNMPQuery::Procurve)
perl(FusionInventory::Agent::Task::SNMPQuery::ThreeCom)
perl(FusionInventory::Agent::XML::Query::SimpleMessage)
perl(FusionInventory::Agent::XML::Response::Prolog)
perl(FusionInventory::Logger)
perl(strict)
perl(threads)
perl(threads::shared)
perl(warnings)
perl(XML::Simple)

> Are these dependencies automatically computed by rpm, or explicitely
> defined in the spec files ?

Most of this are auto-detected during rpmbuild
(by /usr/lib/rpm/perldeps.pl)
Some could not be detected and must be add manually in the spec

Others are simply dependencies of dependencies
P.e. :
$ rpm -q --requires perl-Archive-Extract
...
perl(IPC::Cmd)
perl(Locale::Maketext::Simple)
perl(Module::Load::Conditional)
perl(Params::Check)
...
$ rpm -q --requires perl-Module-Load-Conditional
...
perl(Module::Load)
...

So there is actually 10 packages missing in EPEL-4

There is also the Net::Cups package which is not available in EPEL-5,
nor in EPEL-4 (but EL-4 cups version 1.1.22 is too old to build it)

Remi.



More information about the Fusioninventory-devel mailing list