From 3c95718f639848df202c220fb2dded64761be625 Mon Sep 17 00:00:00 2001 From: Kopatz <7265381+Kropatz@users.noreply.github.com> Date: Mon, 7 Apr 2025 15:02:01 +0200 Subject: [PATCH] update kernel to 6.15-rc1 --- misc-unrelated/budak-image.nix | 46 +++++++++++++++++++++++++++++ modules/kernel-testing.nix | 54 +++++++++++++++++++++------------- 2 files changed, 80 insertions(+), 20 deletions(-) create mode 100644 misc-unrelated/budak-image.nix diff --git a/misc-unrelated/budak-image.nix b/misc-unrelated/budak-image.nix new file mode 100644 index 0000000..82d6c43 --- /dev/null +++ b/misc-unrelated/budak-image.nix @@ -0,0 +1,46 @@ +{ pkgs, modulesPath, config, lib, ... }: { + imports = [ + "${modulesPath}/installer/cd-dvd/installation-cd-graphical-gnome.nix" + ]; + + # use the latest Linux kernel + boot.kernelPackages = pkgs.linuxPackages_latest; + boot.initrd.kernelModules = [ "nvidia" ]; + boot.extraModulePackages = [ config.boot.kernelPackages.nvidia_x11 ]; + + users.users.root.initialHashedPassword = lib.mkForce "$y$j9T$PtiIvvs6UUq2PkyR9egC.0$/o9IIo66NmH8m/rW/DrhzZzY0IfA.FfYbxb6Pa.YPnD"; + users.users.nixos.initialHashedPassword = lib.mkForce "$y$j9T$PtiIvvs6UUq2PkyR9egC.0$/o9IIo66NmH8m/rW/DrhzZzY0IfA.FfYbxb6Pa.YPnD"; + + hardware.graphics = { + enable = true; + enable32Bit = true; + }; + boot.kernelParams = + [ "nvidia-drm.fbdev=1" ]; + services.xserver.videoDrivers = [ "nvidia" ]; + + hardware.nvidia = { + # Modesetting is required. + modesetting.enable = true; + # Open drivers with gsp stutters in VR - https://github.com/ValveSoftware/SteamVR-for-Linux/issues/631 + gsp.enable = false; + # Nvidia power management. Experimental, and can cause sleep/suspend to fail. + powerManagement.enable = false; + # Fine-grained power management. Turns off GPU when not in use. + # Experimental and only works on modern Nvidia GPUs (Turing or newer). + powerManagement.finegrained = false; + # Use the NVidia open source kernel module (not to be confused with the + # independent third-party "nouveau" open source driver). + # Support is limited to the Turing and later architectures. Full list of + # supported GPUs is at: + # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus + # Only available from driver 515.43.04+ + # GSP must be enabled for this to work. + open = false; + # Enable the Nvidia settings menu, + # accessible via `nvidia-settings`. + nvidiaSettings = true; + # Optionally, you may need to select the appropriate driver version for your specific GPU. + package = config.boot.kernelPackages.nvidiaPackages.stable; + }; +} diff --git a/modules/kernel-testing.nix b/modules/kernel-testing.nix index 62349b4..e2ebdf1 100644 --- a/modules/kernel-testing.nix +++ b/modules/kernel-testing.nix @@ -1,4 +1,4 @@ -{ pkgs, config, ... }: +{ pkgs, lib, config, ... }: let #amdgpu_module_pkg = # { pkgs, lib, fetchurl, kernel ? pkgs.linuxPackages_latest.kernel, ... }: @@ -46,7 +46,31 @@ let # amdgpu_module = pkgs.callPackage amdgpu_module_pkg { # kernel = config.boot.kernelPackages.kernel; # }; + amd_drm_next_pkg = { fetchurl, buildLinux, ... }@args: + buildLinux (args // rec { + version = "6.14.0-rc4"; + modDirVersion = version; + + src = fetchurl { + url = + "https://gitlab.freedesktop.org/agd5f/linux/-/archive/amd-drm-next-6.15-2025-03-21/linux-amd-drm-next-6.15-2025-03-21.tar.gz"; + hash = "sha256-sLS6uFo2KPbDdz8BhB1X10wQiiYdtT/Ny0Ii19F6feY="; + }; + kernelPatches = [ ]; + + extraMeta.branch = "6.14.0-rc4"; + } // (args.argsOverride or { })); + linux_amd_drm_next = pkgs.callPackage amd_drm_next_pkg { }; + + linux_6_15 = pkgs.buildLinux { + version = "6.15.0-rc1"; + extraMeta.branch = "6.15"; + src = pkgs.fetchzip { + url = "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/snapshot/linux-6.15-rc1.tar.gz"; + hash = "sha256-6TIBhh9ZuAcu0nHMeS1goGM43dU/OOOLtBNGaRAu404="; + }; + }; in { #boot.extraModulePackages = [ amdgpu_module ]; @@ -63,24 +87,14 @@ in # }; #}); - boot.kernelPackages = - let - amd_drm_next_pkg = { fetchurl, buildLinux, ... }@args: - - buildLinux (args // rec { - version = "6.14.0-rc4"; - modDirVersion = version; - - src = fetchurl { - url = - "https://gitlab.freedesktop.org/agd5f/linux/-/archive/amd-drm-next-6.15-2025-03-21/linux-amd-drm-next-6.15-2025-03-21.tar.gz"; - hash = "sha256-sLS6uFo2KPbDdz8BhB1X10wQiiYdtT/Ny0Ii19F6feY="; + nixpkgs.overlays = [ + (final: prev: { + linuxPackages_latest = pkgs.linuxPackagesFor linux_6_15; + }) + ]; + boot.kernelPackages = pkgs.recurseIntoAttrs (pkgs.linuxPackagesFor (linux_6_15.override { + structuredExtraConfig = with lib.kernel; { + SCHED_DEBUG = lib.mkForce unset; }; - kernelPatches = [ ]; - - extraMeta.branch = "6.14.0-rc4"; - } // (args.argsOverride or { })); - linux_amd_drm_next = pkgs.callPackage amd_drm_next_pkg { }; - in - pkgs.recurseIntoAttrs (pkgs.linuxPackagesFor linux_amd_drm_next); + })); }