Rex::Hardware::VirtInfo assumes that it is being ran on Linux and does not properly use Rex::Inventory::Bios::get, which is the proper cross platform manner to the non kernel module info this module uses.
That said Rex::Inventory::Bios::get does not work as non-root so grabbing when it can via the relevent items under /sys on Linux works.
Describe the bug
Rex::Hardware::VirtInfo assumes that it is being ran on Linux and does not properly use Rex::Inventory::Bios::get, which is the proper cross platform manner to the non kernel module info this module uses.
That said
Rex::Inventory::Bios::get
does not work as non-root so grabbing when it can via the relevent items under /sys on Linux works.See https://github.com/RexOps/Rex/pull/1599/files for a fix for this.
Similarly $modules is fetched in a Linux specific manner. Should be
/sbin/kldstat
on FreeBSD.The module check for kvm should only work on Linux.
Expected behavior
Works in a cross platform manner via dmidecode via
Rex::Inventory::Bios::get
.How to reproduce it
Using on something other than Linux such as FreeBSD.
Code example
Additional context
No response
Rex version
1.14.2
Perl version
5.32.1
Operating system running rex
FreeBSD
Operating system managed by rex
FreeBSD and Linux
How rex was installed?
package manager