From 0b621321cd8ca2e36790ddff686eb6e8da41ec70 Mon Sep 17 00:00:00 2001 From: Herwig Hochleitner Date: Fri, 9 Feb 2018 23:07:06 +0100 Subject: [PATCH] boot.kernel.features: add nixos option for setting kernel features this allows setting the features attribute for pkgs/os-specific/linux/kernel/common-config.nix --- nixos/modules/system/boot/kernel.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/kernel.nix b/nixos/modules/system/boot/kernel.nix index d21908f8453..5eba2165435 100644 --- a/nixos/modules/system/boot/kernel.nix +++ b/nixos/modules/system/boot/kernel.nix @@ -5,7 +5,7 @@ with lib; let inherit (config.boot) kernelPatches; - + inherit (config.boot.kernel) features; inherit (config.boot.kernelPackages) kernel; kernelModulesConf = pkgs.writeText "nixos.conf" @@ -21,11 +21,21 @@ in options = { + boot.kernel.features = mkOption { + default = {}; + example = literalExample "{ debug = true; }"; + description = '' + This option allows to enable or disable certain kernel features. + grep features pkgs/os-specific/linux/kernel/common-config.nix + ''; + }; + boot.kernelPackages = mkOption { default = pkgs.linuxPackages; apply = kernelPackages: kernelPackages.extend (self: super: { kernel = super.kernel.override { kernelPatches = super.kernel.kernelPatches ++ kernelPatches; + features = lib.recursiveUpdate super.kernel.features features; }; }); # We don't want to evaluate all of linuxPackages for the manual