Got one Varmilo 104 keyboard in hand recently, despite working well in Windows, when using Linux, the F1-F12 keys does not work at all.
I’ve never consider system compatibility when purchasing any keyboard, it’s just sounds ridiculous. In the end I found the culprit and it seems the Varmilo keyboard is using USB VID 05AC, which is Apple Inc.’s vendor ID. Therefore, Linux loads the driver for Apple keyboard and tries to handle the Fn key the Apple way, which obviously does not work correctly.
Create a file
options hid_apple fnmode=2 and save
sudo update-initramfs -u on Debian distros, or
sudo mkinitcpio -P for Arch distros
Switch the keyboard to Windows mode by press Fn + W for over 3 seconds (if it has the function)
Note the above solution will break a real Apple keyboard if you plug in one someday.
I will definetly not buy the Varmilo keyboard again, regardless how attractive they look. A manufacture that messes with the USB protocol is not trustworthy.