about summary refs log tree commit diff
path: root/pkgs/os-specific/linux/kernel/common-config.nix
diff options
context:
space:
mode:
authorRyan Lahfa <masterancpp@gmail.com>2024-01-13 16:51:00 +0100
committerGitHub <noreply@github.com>2024-01-13 16:51:00 +0100
commit32ccbe0927fc910f8fa3541f27f1aeb0effd8fbd (patch)
tree804a6f394683fdfbb60986618ee41e79dc2f1e52 /pkgs/os-specific/linux/kernel/common-config.nix
parent243e5f6f58048a2f99d1311166c608ebaf46479f (diff)
parentec2016dda402ded1261d2af0e29d02506b191eab (diff)
Merge pull request #272029 from blitz/rust-for-linux
In-kernel Rust on Linux (Optional) (2nd Attempt)
Diffstat (limited to 'pkgs/os-specific/linux/kernel/common-config.nix')
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix10
1 files changed, 10 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 2aacb88dc87e0..c8ac88c11528b 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -381,6 +381,16 @@ let
       DRM_VC4_HDMI_CEC = yes;
     };
 
+    # Enables Rust support in the Linux kernel. This is currently not enabled by default, because it occasionally requires
+    # patching the Linux kernel for the specific Rust toolchain in nixpkgs. These patches usually take a bit
+    # of time to appear and this would hold up Linux kernel and Rust toolchain updates.
+    #
+    # Once Rust in the kernel has more users, we can reconsider enabling it by default.
+    rust = optionalAttrs ((features.rust or false) && versionAtLeast version "6.7") {
+      RUST = yes;
+      GCC_PLUGINS = no;
+    };
+
     sound = {
       SND_DYNAMIC_MINORS  = yes;
       SND_AC97_POWER_SAVE = yes; # AC97 Power-Saving Mode