OBS hardware encoder is not available

I installed the obs using home manager:

  programs.obs-studio = {
    enable = true;
    plugins = with pkgs.obs-studio-plugins; [
      obs-backgroundremoval
    ];
  };

And tried to enable opengl and vaapi using this config:

hardware.opengl = {
    enable = true;
    extraPackages = with pkgs; [
      intel-media-driver # LIBVA_DRIVER_NAME=iHD
      intel-vaapi-driver # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
      vaapiVdpau
      libvdpau-va-gl
    ];
  };
  environment.sessionVariables.LIBVA_DRIVER_NAME = "iHD";

But OBS doesn’t show the hardware option in the video encoder config.

When I run obs --verbose, I see these logs related to the opengl:

info: Initializing OpenGL...
debug: Created EGLDisplay 0x121a0c0
info: Loading up OpenGL on adapter Intel Mesa Intel(R) HD Graphics 530 (SKL GT2)
info: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 23.1.9, shading language 4.60

debug: Loading module: obs-ffmpeg.so
error: os_dlopen(libnvidia-encode.so.1->libnvidia-encode.so.1): libnvidia-encode.so.1: cannot open shared object file: No such file or directory

debug: VAAPI: Initializing display in vaapi_device_h264_supported
debug: Libva: VA-API version 1.20.0
debug: Libva: Trying to open /run/opengl-driver/lib/dri/nouveau_drv_video.so
debug: Libva: Found init function __vaDriverInit_1_20
debug: Libva: va_openDriver() returns 0
debug: VAAPI: Display initialized
info: VAAPI: API version 1.20
debug: VAAPI: 'Mesa Gallium driver 23.1.9 for NV117' in use for device '/dev/dri/renderD128'
debug: VAAPI: Initializing display in vaapi_device_h264_supported
debug: Libva: VA-API version 1.20.0
debug: Libva: Trying to open /run/opengl-driver/lib/dri/iHD_drv_video.so
debug: Libva: Found init function __vaDriverInit_1_20
debug: Libva: va_openDriver() returns 0
debug: VAAPI: Display initialized
debug: VAAPI: 'Intel iHD driver for Intel(R) Gen Graphics - 23.3.5 ()' in use for device '/dev/dri/renderD129'
debug: '/dev/dri/renderD129' support encoding with VAProfileH264ConstrainedBaseline
debug: '/dev/dri/renderD129' support encoding with VAProfileH264Main
debug: '/dev/dri/renderD129' support encoding with VAProfileH264High
info: FFmpeg VAAPI H264 encoding supported
debug: VAAPI: Initializing display in vaapi_device_hevc_supported
debug: Libva: VA-API version 1.20.0
debug: Libva: Trying to open /run/opengl-driver/lib/dri/nouveau_drv_video.so
debug: Libva: Found init function __vaDriverInit_1_20
debug: Libva: va_openDriver() returns 0
debug: VAAPI: Display initialized
debug: VAAPI: 'Mesa Gallium driver 23.1.9 for NV117' in use for device '/dev/dri/renderD128'
debug: VAAPI: Initializing display in vaapi_device_hevc_supported
debug: Libva: VA-API version 1.20.0
debug: Libva: Trying to open /run/opengl-driver/lib/dri/iHD_drv_video.so
debug: Libva: Found init function __vaDriverInit_1_20
debug: Libva: va_openDriver() returns 0
debug: VAAPI: Display initialized
debug: VAAPI: 'Intel iHD driver for Intel(R) Gen Graphics - 23.3.5 ()' in use for device '/dev/dri/renderD129'
debug: '/dev/dri/renderD129' support encoding with VAProfileHEVCMain
debug: VAAPI: VAProfileHEVCMain10 is not supported by the device '/dev/dri/renderD129'
info: FFmpeg VAAPI HEVC encoding supported