Description of problem: Please remove the explicit | Requires: nagios-plugins = %version-%release from most subpackages. Most checks are C programs which do not need the functionality of the 'nagios-plugins' package. Because this package adds huge dependencies (perl), it will bloat up NRPE or NCSA based sensor hosts. When removing the explicit Requires:, you will run into an unowned directories problem. This can be solved e.g. by a 'nagios-filesystem' package providing the filesystem structure. Version-Release number of selected component (if applicable): nagios-plugins-1.4.3-17.fc5
I'm debating what to do about this. Using the nagios-filesystem method seems like an ugly hack for an issue that will have an affect on only few people (those running a nagios plugin on a system that doesn' have perl)
An "affect ... only few people" statement is one of the stupiest arguments on this issue. Most plugins are small C programs which run perfectly without perl. Adding a bloaty perl dependency without a reason is a packaging bug. Separate -filesystem packages are a clean solution.
Why not split the perl modules into it's own subpackage and place it in the correct place for a perl module. This will be pulled automatically as a part of resolving the perl dependencies. It's a cleaner solutions IMHO.
This 'issue' is made up. There are only a tiny portion of people out there who are running machines without perl. Unless someone can provide me a compelling reason to do this without calling my arguments stupid this will go to WONTFIX quick.
I didn't mean to actually close this.
Because you are not able to see it as a problem from your standpoint, there is no reason to dismiss a better solution. nagios-plugins is already an massive amount of packages, and splitting it up into more logical parts don't hurt.
If by splitting it up you mean making more packages that only benefit few people while also making it more difficult to maintain then yeah, I don't see the problem. I'm not saying I won't do it but I need more input from people.
What if I explicitly told rpm that the base nagios-plugins script does not require perl? This way when packages get updated I don't have to check to see if check_breeze is still perl based or that check_dhcp is still a binary. Also, rpm does not auto resolve the individual plugins to require utils.pm for some reason.
I just looked in to this, the perl module utils.pm is not well structured at all, it should be named Nagios::Utils or something like that, and the perl programs should require this - this way this would be handled automatically. It seems like there are better modules on it's way for a future version. So my suggestion is to hold this change off until the new modules are included. Alternatively create a patch that cleans up the perl provides and requires, since it's kind of messy at the moment. Then again this is probably more of a upstream bug.
you could 1. move utils.pm into own subpackage (e.g. nagios-plugins-perl) 2. use a filter like | %global reqfilt sh -c "%{__perl_requires} | sed -e 's!perl(utils)!nagios-plugins-perl!'" | %define __perl_requires %{reqfilt}
Why do all readers of the Fedora Extras list need to get copies of this bug report? Removing from the Cc.
Used method from comment #10. Let me know if I've broken anything.