the virtual fact is also broken on Arch Linux:
docker run -it archlinux
pacman -Sy puppet
puppet facts show is_virtual virtual
This will give us:
{
"is_virtual": true,
"virtual": "kvm"
}
Systemd detects it properly:
systemd-detect-virt
it returns:
docker