Looking for Realtek 8852BE driver

Hi all!

I need help to make the wifi work on a HP ProBook 455 G9, which ships a Realtek 8852BE network controller.

This task has been addressed at this post but with no success.

Also I’ve installed rtw88 and rtw89 packages using nix-shell and nix-env -iA

Please, give me some guidance.

  1. Does anybody know how to achieve this?

  2. Should an environment created after install a driver package with nix-shell allowed the system to use the wifi inmediatelly? Or would any additional steps be required to do so?

Update: I’ll leave my current configuration file here so anyone who has a minute may check for any mistake.

Thanks in advance!

I need help to make the wifi work on a HP ProBook 455 G9, which ships a Realtek 8852BE network controller.

This task has been addressed at this post but with no success.

Also I’ve installed rtw88 and rtw89 packages using nix-shell and nix-env -iA

  1. first of all, neither nix-shell nor nix-env are the correct tools for this.
  2. nix-env is never the correct solution for anything

You need something like this:

{
  boot = {
    # I have no idea if these are the correct extra modules for your specific controller,
    # but this is how you make them available
    extraModulePackages = with config.boot.kernelPackages; [ rtw88 rtw89 ];
  };
}

2 Should an environment created after install a driver package with nix-shell allowed the system to use the wifi inmediatelly?

No, because that is not what nix-shell is for.

Hi Peter!

Thanks for your response.

Unfortunely, it doesn’t work out.

rtw89 is the driver for the realtek 8852BE

This is the boot section at my current configuration.nix:

boot = {
    loader.systemd-boot.enable = true;
    loader.efi.canTouchEfiVariables = true;
    loader.efi.efiSysMountPoint = "/boot/efi";
    kernelPackages = pkgs.linuxPackages_5_15;
    extraModulePackages = with config.boot.kernelPackages; [ rtw89 ];
  };

And I’ve also added:

environment.systemPackages = with pkgs; [

        linuxPackages_5_15.rtw89
        // ..
];

In a humble try.

Unfortunely, it doesn’t work out.

  1. Are there any built-in modules that you may have to blacklist via boot.blacklistedKernelModules = [ "foo" ]; in order for the new module to take effect?
  2. Have you tried with the latest kernel instead of forcing 5.15?

It would also be helpful with some kernel logs.

environment.systemPackages = with pkgs; [ linuxPackages_5_15.rtw89 ];

this has no effect on what you are trying to achieve.

Looks like rtw89 is included since 5.16 and you’re using 5.15 for some reason.
Add boot.kernelPackages = pkgs.linuxPackages_6_1;, remove boot.extraModulePackages and do sudo nixos-rebuild boot && sudo reboot and it should work.

  1. According to the rtw89 package repo:

This branch was created from the version merged into the wireless-drivers-next repo, which is in the 5.16 kernel. IF YOU USE DRIVERS FROM THIS REPO FOR KERNELS 5.16+, YOU MUST BLACKLIST THE KERNEL VERSIONS!!! FAILING TO DO THIS WILL RESULT IN ALL MANNER OF STRANGE ERRORS.

  1. Yes, I have. I guess something else is required, maybe the blacklist step.

Thanks for the clarification on my useless humble try.

By the way the repo states to enable the kernel module, with:

sudo modprobe -v rtw_8852ae #This loads the module

but when Im going with:
sudo modprobe -v

and press TAB to check available options it outputs:

sudo modprobe -v
_modutils:102: no such file or directory: /lib/modules/6.0.15/modules.alias

and

sudo modprobe -v rtw_8852be
modprobe: FATAL: Module rtw_8852be not found in directory /run/booted-system/kernel-modules/lib/modules/6.0.15

Hi !

Thanks for you reply!
I have tried this but with no success.

I’m going to keep the kernel version at 6^

Please, check my response to peterhoeg’s second comment.

Couple of things:

  1. try with the latest kernel instead of 6.0. Assuming you’re on NixOS 23.05, you have 6.3 available
  2. is there any reason you cannot then try with the in-kernel driver rather than using the 3rd party option?
  3. with the latest kernel, you don’t need any specific config regd additional modules

I’m currently booted with kernel 6.3.7 and I see a module available named rtw89_8852be. I don’t have the hardware, so I cannot test it, but what does journalctl -k -f show you when you modprobe the module?

Hey !

Thanks Peter!
The first one did the job automatically.
I updated NixOS and so the kernel.

No need to enable the driver.
I only rebooted it and worked.

Thank you very much for the support !!