diff --git a/hosts/acer.nix b/hosts/acer.nix index 15a6f1d..ab65b55 100644 --- a/hosts/acer.nix +++ b/hosts/acer.nix @@ -17,7 +17,7 @@ rec { # Kernel # boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; - boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_12; + boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_15; # Swap zramSwap = { @@ -96,11 +96,11 @@ rec { boot.extraModulePackages = [ # Super ugly hack, for some reason it's not included in pkgs.linuxKernel.packages.linux_6_12 # Despite being in overlays, something's not working - (pkgs.linuxPackages.acer-wmi-battery.override { + (pkgs.linuxPackages.acer-wmi-ext.override { kernel = boot.kernelPackages.kernel; }) ]; - boot.kernelModules = [ "acer-wmi-battery" ]; + boot.kernelModules = [ "acer-wmi-ext" ]; # This value determines the NixOS release from which the default diff --git a/overlays/pkgs.nix b/overlays/pkgs.nix index b3152b1..4104b41 100644 --- a/overlays/pkgs.nix +++ b/overlays/pkgs.nix @@ -12,6 +12,7 @@ self: super: # }); # }); linuxPackages = super.linuxPackages.extend (lpself: lpsuper: { + acer-wmi-ext = lpsuper.callPackage ../pkgs/acer-wmi-ext {}; acer-wmi-battery = lpsuper.callPackage ../pkgs/acer-wmi-battery {}; }); } \ No newline at end of file diff --git a/pkgs/acer-wmi-battery/default.nix b/pkgs/acer-wmi-battery/default.nix index 8252b40..7999f36 100644 --- a/pkgs/acer-wmi-battery/default.nix +++ b/pkgs/acer-wmi-battery/default.nix @@ -19,24 +19,26 @@ stdenv.mkDerivation { nativeBuildInputs = [ kernel.moduleBuildDependencies ]; - makeFlags = kernel.makeFlags ++ [ - "INSTALL_MOD_PATH=$(out)" + # Makefile provided in repo is useless, hardcoded paths, not using it + + setSourceRoot = '' + export sourceRoot=$(pwd)/source + ''; + + makeFlags = [ + "-C" + "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" + "M=$(sourceRoot)" ]; - # Makefile provided in repo is useless, hardcoded paths, overwriting it patchPhase = '' - cat > Makefile < Kbuild < Kbuild <