nixos: Create firmware output path without links.

Especially when `${kernel}/lib/firmware` is referenced, the store path for firmware could get quite large (>= 150 MB on `x86_64-linux`), and for example in VM tests this closure will end up being included in the initrd.

Instead of building up a link farm, we now just dereference/copy over all files into the firmware closure.

Fixes a regression introduced by PR #3505.