1{lib, config, ...}:
2
3let kernel = config.boot.kernelPackages;
4in
5
6{
7
8 ###### interface
9
10 options = {
11
12 services.frandom.enable = lib.mkOption {
13 default = false;
14 type = lib.types.bool;
15 description = ''
16 enable the /dev/frandom device (a very fast random number generator)
17 '';
18 };
19
20 };
21
22
23 ###### implementation
24
25 config = lib.mkIf config.services.frandom.enable {
26 boot.kernelModules = [ "frandom" ];
27 boot.extraModulePackages = [ kernel.frandom ];
28 services.udev.packages = [ kernel.frandom ];
29 };
30
31}