NixOS/nixpkgs — pull request #2169 by kirelagin (2014-04-08 13:47:25+00:00)
Title: Fix some USB keyboards not working in initrd shell

So, here is the story. Some USB keyboards have special HID drivers (e. g. my Logitech Wireless Illuminated Keyboard). If this special modules are enabled, generic HID driver will just ignore corresponding devices. See [this kernel patch](https://lkml.org/lkml/2012/2/13/117).
As a result, those keyboards won't work in the initrd debug shell, since now only the generic `usbhid` module is included.

This patch makes `nixos-generate-config` detect this hardware and include necessary modules in `boot.initrd.availableKernelModules`.

_P.S. All the magic constants are directly from the Kernel sources._