Thanks for the reply Jerome, responses inline: On Fri, 6 Dec 2024 13:09:10 -0500 =?UTF-8?B?SsOpcsO0bWUgQ2hhcmFvdWk=?= <jer...@riseup.net> wrote: > I'm not convinced that unavailable partitions and mount facts render > the facter package necessarily broken. The same could be said about > all the other Recommended packages, like dmidecode and virt-what, for > example, because facter works fine without them but it will report > more information if they're available. > > I'm curious to understand under what scenario the facter package is > being installed without its "Recommends:".
We have `APT::Install-Recommends "false"` set in our infrastructure, because our experience has been that `Recommends` at times brings in unwanted dependencies, e.g. openssh-client recommends: `xauth`, which then brings in X11 deps that we would rather not have installed. > As a reminder, section 7.1 of the Debian Policy states the following > with regards to Recommends: > > "This declares a strong, but not absolute, dependency. > > The Recommends field should list packages that would be found together > with this one in all but unusual installations." > > I think ruby-sys-filesystem, and the others, fit this description. I think that is true for those users of Facter who consider it a base framework where options can be added to gain more functionality. For users that are using Facter in conjunction with Puppet, as we do, I would assume they would expect Facter's behavior to match Facter's documentation, namely that all core facts are resolved. As a data point, Fedora's spec looks similar to Puppet's packaging: # Binaries that Facter can call for complete facts %ifarch %ix86 x86_64 ia64 Requires: dmidecode Requires: pciutils Requires: virt-what %endif Requires: net-tools # Soft dependency for the mountpoints fact Requires: rubygem(sys-filesystem) # dependency for facter/util/resolvers Requires: rubygem(base64) <https://github.com/major/fedora-rpm-specs/blob/ac9f5914529e69815a735414942b6b26e18412a2/specs/facter.spec#L27-L37>