From 4df8da55307dc7d6d3a69a1236014141ac21204f Mon Sep 17 00:00:00 2001 From: Username404-59 Date: Wed, 1 Jul 2026 06:24:25 +0200 Subject: [PATCH] Patch kernel with infinity-scheduler instead of using scx_flow / BORE --- modules/kernel.nix | 15 ++++++++++++--- tamal/lock.json | 1 + tamal/manifest.kdl | 9 +++++++++ 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/modules/kernel.nix b/modules/kernel.nix index ebf9554..57721ad 100644 --- a/modules/kernel.nix +++ b/modules/kernel.nix @@ -1,4 +1,4 @@ -{ config, pkgs, isLaptop, ... }: +{ config, pkgs, lib, isLaptop, nixtamal, ... }: { boot.kernelParams = [ @@ -41,7 +41,7 @@ pkgs.linuxKernel.packagesFor( pkgs.cachyosKernels.linux-cachyos-latest.override { bbr3 = true; - cpusched = "bore"; + cpusched = "eevdf"; # / "bore" lto = if isLaptop then "thin" else "full"; processorOpt = if isLaptop then "zen4" else "x86_64-v3"; tickrate = if isLaptop then "idle" else "full"; @@ -49,8 +49,17 @@ ) ); + boot.kernelPatches = [ + { + name = "infinity-scheduler"; + patch = "${nixtamal.infinity-scheduler}/patches/stable/linux-${ + lib.versions.majorMinor config.boot.kernelPackages.kernel.version + }-infinity/0001-infinity-scheduler.patch"; + } + ]; + services.scx = { # https://wiki.cachyos.org/configuration/sched-ext/#general-recommendations - enable = true; + enable = false; # Reenable if not using the infinity scheduler patch scheduler = "scx_flow"; extraArgs = [ /* TODO for next scx version after 1.1.1: "--no-webui" */ ]; }; diff --git a/tamal/lock.json b/tamal/lock.json index bf3d372..d5c4e75 100644 --- a/tamal/lock.json +++ b/tamal/lock.json @@ -8,6 +8,7 @@ ,"flake-compat":{"sn":"flake-compat-src","kd":[1,{"ft":0,"ur":"https://github.com/NixOS/flake-compat/archive/5edf11c44bc78a0d334f6334cdaf7d60d732daab.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-MmtcMfj5QuWGiFGGOdUMcaS0MSNzyV8dNCcsrPQq+Gk="},"fv":"5edf11c44bc78a0d334f6334cdaf7d60d732daab","ps":[]} ,"home-manager":{"sn":"home-manager-src","kd":[1,{"ft":0,"ur":"https://github.com/nix-community/home-manager/archive/2a37d71bbe69e1522ddabf03a4cea0374958bdbe.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-ujsxMPdJD8MQKBIoz/xECRd4O7hDSj2dSWPPVFnaYhA="},"fv":"2a37d71bbe69e1522ddabf03a4cea0374958bdbe","ps":[]} ,"hypr-darkwindow":{"sn":"hypr-darkwindow-src","kd":[1,{"ft":0,"ur":"https://github.com/micha4w/Hypr-DarkWindow/archive/refs/tags/v0.55.4.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-prh51kFbHKZT0ZmWDlv3s/Mg+Mg/mYAIo3FxZ+UsVbo="},"fv":"5dcd175c540e9eef91550c97ed0798c6e0fdc31b90af9643e05cb5ba66c64f6a","ps":[]} +,"infinity-scheduler":{"sn":"infinity-scheduler-src","kd":[1,{"ft":0,"ur":"https://github.com/galpt/infinity-scheduler/archive/a959644b179deab7e137e36c1252917e4290f035.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-ioyfHaA3CRDU1pY7FARrjIuDT1BKZ2p3XAplk4vYnP8="},"fv":"a959644b179deab7e137e36c1252917e4290f035","ps":[]} ,"lact-patch":{"sn":"lact-patch-src","kd":[0,{"ft":0,"ur":"https://patch-diff.githubusercontent.com/raw/ilya-zlobintsev/LACT/pull/1080.patch","ms":[]}],"ha":{"al":2,"vl":"blake3-x+HU/32454H6ZHu2i3AkdPECt9Jj4vW0Ac2jTzjpUvk="},"fv":"W/735aa2b881ef2024d0d6fcb4d2d48dd4","ps":[]} ,"low_latency_layer-git":{"sn":"low_latency_layer-git-src","kd":[1,{"ft":0,"ur":"https://github.com/Korthos-Software/low_latency_layer/archive/3138b14ebd059cd540444771dd184fbf7ead2a12.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-eaek3w60syOHOmRNdCDBTQ+MZw4O9fDGbpirlyuUnoQ="},"fv":"3138b14ebd059cd540444771dd184fbf7ead2a12","ps":[]} ,"lsfg-vk-git":{"sn":"lsfg-vk-git-src","kd":[1,{"ft":0,"ur":"https://github.com/PancakeTAS/lsfg-vk/archive/8b0da2661c6f3473a7fccc8ba643880050e71642.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-dABuL3duPZ9m0X6DizXeGCngZdlfcDpDiiuxfeTnlOM="},"fv":"8b0da2661c6f3473a7fccc8ba643880050e71642","ps":[]} diff --git a/tamal/manifest.kdl b/tamal/manifest.kdl index 505d5fc..073b1d5 100644 --- a/tamal/manifest.kdl +++ b/tamal/manifest.kdl @@ -190,6 +190,15 @@ inputs { url "https://patch-diff.githubusercontent.com/raw/ilya-zlobintsev/LACT/pull/1080.patch" } } + infinity-scheduler { + archive { + url "https://github.com/galpt/infinity-scheduler/archive/{{fresh_value}}.tar.gz" + } + fresh-cmd { + $ git ls-remote --branches "https://github.com/galpt/infinity-scheduler.git" --refs "refs/heads/v3" + | cut -f1 + } + } // Others catppuccin-godot {