{ config, lib, pkgs, ... }: with lib; let kernelVersion = config.boot.kernelPackages.kernel.version; in { ###### interface options = { networking.enableB43Firmware = mkOption { default = false; type = types.bool; description = '' Turn on this option if you want firmware for the NICs supported by the b43 module. ''; }; }; ###### implementation config = mkIf config.networking.enableB43Firmware { assertions = singleton { assertion = lessThan 0 (builtins.compareVersions kernelVersion "3.2"); message = "b43 firmware for kernels older than 3.2 not packaged yet!"; }; hardware.firmware = [ pkgs.b43Firmware_5_1_138 ]; }; }