From e09eea204910700fb9720cadf671991dbf39652b Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Mon, 23 Dec 2024 10:00:01 -0500 Subject: [PATCH] Switch to zen kernel optimized for znver4. --- nix/configuration/configuration.nix | 2 +- nix/configuration/hosts/odo/default.nix | 1 + .../hosts/odo/optimized_build.nix | 30 +++++++++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 nix/configuration/hosts/odo/optimized_build.nix diff --git a/nix/configuration/configuration.nix b/nix/configuration/configuration.nix index bd623fd..c8fe1c8 100644 --- a/nix/configuration/configuration.nix +++ b/nix/configuration/configuration.nix @@ -42,7 +42,7 @@ ]; nix.settings.trusted-users = [ "@wheel" ]; - boot.kernelPackages = pkgs.linuxPackages_6_11; + # boot.kernelPackages = pkgs.linuxPackages_6_11; hardware.enableRedistributableFirmware = true; services.getty = { diff --git a/nix/configuration/hosts/odo/default.nix b/nix/configuration/hosts/odo/default.nix index 79ef251..723a854 100644 --- a/nix/configuration/hosts/odo/default.nix +++ b/nix/configuration/hosts/odo/default.nix @@ -3,6 +3,7 @@ imports = [ ./hardware-configuration.nix ./disk-config.nix + ./optimized_build.nix ]; # Generate with `head -c4 /dev/urandom | od -A none -t x4` diff --git a/nix/configuration/hosts/odo/optimized_build.nix b/nix/configuration/hosts/odo/optimized_build.nix new file mode 100644 index 0000000..22c0ba3 --- /dev/null +++ b/nix/configuration/hosts/odo/optimized_build.nix @@ -0,0 +1,30 @@ +{ + config, + lib, + pkgs, + ... +}: +{ + imports = [ ]; + + nixpkgs.overlays = [ + ( + self: super: + let + optimizeWithFlags = + pkg: flags: + pkg.overrideAttrs (old: { + NIX_CFLAGS_COMPILE = [ (old.NIX_CFLAGS_COMPILE or "") ] ++ flags; + }); + in + { + linux_znver4 = optimizeWithFlags super.linux_zen [ + "-march=znver4" + "-mtune=znver4" + ]; + } + ) + ]; + + boot.kernelPackages = lib.mkIf (!config.me.buildingIso) (pkgs.linuxPackagesFor pkgs.linux_znver4); +}