WiFi not working on Lenovo Legion Pro 7 16iax10h

Hi there, so I got a Lenovo Legion Pro 7 16iax10h yesterday, but NixOS is not able to detect my WiFi Adapter, even though it worked fine on Windows. I had to use USB tethering on my mobile to actually install NixOS. I tried using nixos-hardware and the rtw89 kernel module but neither of them worked. I’ve attached my flake.nix and configuration.nix along with the output from lscpi -k.

Please help, thanks!

# flake.nix
{
  description = "Grobo's NixOS Flake";

  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
    
    # home-manager = {
    #   url = "github:nix-community/home-manager";
    #   inputs.nixpkgs.follows = "nixpkgs";
    # };

    nixos-hardware.url = "github:NixOS/nixos-hardware/master";
  };

  outputs = { nixpkgs, nixos-hardware, ... } @ inputs: {

    nixosConfigurations.default = nixpkgs.lib.nixosSystem {
      specialArgs = { inherit inputs; };
      modules = [
        nixos-hardware.nixosModules.lenovo-legion-16iax10h
        ./configuration.nix
        # inputs.home-manager.nixosModules.default
      ];      
    };

  };
}
# configuration.nix
{ config, pkgs, lib, inputs, ... }:

{
  imports =
    [
      ./hardware-configuration.nix
    ];

  nix.settings.experimental-features = [ "nix-command" "flakes" ];

  boot.loader.systemd-boot.enable = false;
  boot.loader.grub = {
    enable = true;
    devices = [ "nodev" ];
    useOSProber = true;
    efiSupport = true;

    extraEntries = ''
      menuentry "Reboot" {
        reboot
      }
      menuentry "Poweroff" {
        halt
      }
    '';
  };
  boot.loader.efi.canTouchEfiVariables = true;
  boot.loader.efi.efiSysMountPoint = "/boot";

  boot.kernelPackages = pkgs.linuxPackages_latest;
  boot.kernelModules = [ "rtw89" ];

  networking.hostName = "grobo-nixos";
  networking.networkmanager.enable = true;

  time.timeZone = "Asia/Kolkata";

  i18n.defaultLocale = "en_IN";
  i18n.extraLocaleSettings = {
    LC_ADDRESS = "en_IN";
    LC_IDENTIFICATION = "en_IN";
    LC_MEASUREMENT = "en_IN";
    LC_MONETARY = "en_IN";
    LC_NAME = "en_IN";
    LC_NUMERIC = "en_IN";
    LC_PAPER = "en_IN";
    LC_TELEPHONE = "en_IN";
    LC_TIME = "en_IN";
  };

  services.xserver.enable = true;

  services.displayManager.sddm.enable = true;
  services.desktopManager.plasma6.enable = true;

  services.xserver.xkb = {
    layout = "us";
    variant = "";
  };

  services.printing.enable = true;

  services.pulseaudio.enable = false;
  security.rtkit.enable = true;
  services.pipewire = {
    enable = true;
    alsa.enable = true;
    alsa.support32Bit = true;
    pulse.enable = true;
  };

  users.users.grobo = {
    shell = pkgs.fish;
    isNormalUser = true;
    description = "GroboChan";
    extraGroups = [ "networkmanager" "wheel" ];
    packages = with pkgs; [
      kdePackages.kate
    ];
  };

  programs.firefox.enable = true;
  programs.fish.enable = true;

  nixpkgs.config.allowUnfree = true;

  environment.systemPackages = with pkgs; [
    vim
    wget
    git
    htop
  ];

  system.stateVersion = "25.11"; # DO NOT EDIT
}
# from lspci -k
00:00.0 Host bridge: Intel Corporation Arrow Lake-HX 8p+16e cores Host Bridge (rev 01)
	Subsystem: Lenovo Device 3d6c
00:01.0 PCI bridge: Intel Corporation Meteor Lake-H PCIe Root Port #12 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation Arrow Lake-S [Intel Graphics] (rev 06)
	Subsystem: Lenovo Device 800e
	Kernel driver in use: i915
	Kernel modules: i915, xe
00:04.0 Signal processing controller: Intel Corporation Device ad03 (rev 01)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: proc_thermal_pci
	Kernel modules: processor_thermal_device_pci
00:06.0 PCI bridge: Intel Corporation Arrow Lake-HX PCIe Root Port #13 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: pcieport
00:07.0 PCI bridge: Intel Corporation Meteor Lake-P Thunderbolt 4 PCI Express Root Port #0 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: pcieport
00:0a.0 Signal processing controller: Intel Corporation Arrow Lake-HX Crash Log & Telemetry (rev 01)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel_vsec
	Kernel modules: intel_vsec
00:0b.0 Processing accelerators: Intel Corporation Arrow Lake NPU (rev 01)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel_vpu
	Kernel modules: intel_vpu
00:0d.0 USB controller: Intel Corporation Meteor Lake-P Thunderbolt 4 USB Controller (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
00:0d.2 USB controller: Intel Corporation Meteor Lake-P Thunderbolt 4 NHI #0 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: thunderbolt
	Kernel modules: thunderbolt
00:14.0 RAM memory: Intel Corporation Arrow Lake-HX Shared SRAM (SOC-S) (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel_pmc_ssram_telemetry
	Kernel modules: intel_pmc_ssram_telemetry
00:1f.0 ISA bridge: Intel Corporation Arrow Lake-HX Direct eSPI Controller (rev 10)
	Subsystem: Lenovo Device 3d6c
00:1f.5 Serial bus controller: Intel Corporation Arrow Lake-HX SPI (flash) Controller (rev 10)
	Subsystem: Lenovo Device 3d6c
01:00.0 Non-Volatile memory controller: SK hynix PVC10 NVMe Solid State Drive (DRAM-less)
	Subsystem: SK hynix PVC10 NVMe Solid State Drive (DRAM-less)
	Kernel driver in use: nvme
	Kernel modules: nvme
02:00.0 VGA compatible controller: NVIDIA Corporation GB205M [GeForce RTX 5070 Ti Mobile] (rev a1)
	Subsystem: Lenovo Device 800e
	Kernel driver in use: nvidia
	Kernel modules: nvidiafb, nouveau, nova_core, nvidia_drm, nvidia
02:00.1 Audio device: NVIDIA Corporation GB205 High Definition Audio Controller (rev a1)
	Subsystem: NVIDIA Corporation Device 0000
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
80:14.0 USB controller: Intel Corporation 800 Series PCH USB 3.1 xHCI HC (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
80:14.5 Non-VGA unclassified device: Intel Corporation Device 7f2f (rev 10)
	Subsystem: Lenovo Device 3d6c
80:15.0 Serial bus controller: Intel Corporation 800 Series PCH I2C Controller #0 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
80:15.1 Serial bus controller: Intel Corporation Device 7f4d (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
80:15.2 Serial bus controller: Intel Corporation Device 7f4e (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
80:16.0 Communication controller: Intel Corporation 800 Series PCH HECI #1 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: mei_me
	Kernel modules: mei_me
80:19.0 Serial bus controller: Intel Corporation 800 Series PCH I2C Controller #4 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
80:19.1 Serial bus controller: Intel Corporation 800 Series PCH I2C Controller #5 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
80:1c.0 PCI bridge: Intel Corporation 800 Series PCH PCIe Root Port #7 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: pcieport
80:1c.7 PCI bridge: Intel Corporation Device 7f3f (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: pcieport
80:1d.0 PCI bridge: Intel Corporation 800 Series PCH PCIe Root Port #13 (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: pcieport
80:1f.0 ISA bridge: Intel Corporation HM870 Chipset LPC/eSPI Controller (rev 10)
	Subsystem: Lenovo Device 3d6c
80:1f.3 Audio device: Intel Corporation 800 Series ACE (Audio Context Engine) (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_sof_pci_intel_mtl, snd_hda_intel
80:1f.4 SMBus: Intel Corporation 800 Series PCH SMBus Controller (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: i801_smbus
	Kernel modules: i2c_i801
80:1f.5 Serial bus controller: Intel Corporation 800 Series PCH SPI (flash) Controller (rev 10)
	Subsystem: Lenovo Device 3d6c
	Kernel driver in use: intel-spi
	Kernel modules: spi_intel_pci
81:00.0 Ethernet controller: Intel Corporation Ethernet Controller I226-V (rev 04)
	Subsystem: Lenovo Device 3801
	Kernel driver in use: igc
	Kernel modules: igc
82:00.0 Network controller: MEDIATEK Corp. MT7927 802.11be 320MHz 2x2 PCIe Wireless Network Adapter [Filogic 380]
	Subsystem: Lenovo Device e0e4
83:00.0 Non-Volatile memory controller: SK hynix PVC10 NVMe Solid State Drive (DRAM-less)
	Subsystem: SK hynix PVC10 NVMe Solid State Drive (DRAM-less)
	Kernel driver in use: nvme
	Kernel modules: nvme

Your adapter doesn’t have a Linux driver. Nothing you can do but buy a different one, ideally from a company that actually writes drivers for the OS you want to use.