anchor.diff:        nvidia-drivers_kernelspace
       ];
   
  -    boot.kernelModules = optionals nvidia-drivers_kernelspace.drm [
  -      "nvidia-drm"
  -    ] ++ optionals nvidia-drivers_kernelspace.kms [
  -      "nvidia-modeset"
  -    ] ++ optionals nvidia-drivers_kernelspace.uvm [
  -      "nvidia-uvm"
  +    boot.kernelModules = [
  +      "nvidia"
  +      "nvidia_drm"
  +      "nvidia_modeset"
  +      "nvidia_uvm"
       ];
   
  -    boot.kernelParams = optionals nvidia-drivers_kernelspace.kms [
  +    boot.initrd.availableKernelModules = [
  +      "nvidia"
  +      "nvidia_drm"
  +      "nvidia_modeset"
  +      "nvidia_uvm"
  +    ];
  +
  +    boot.kernelParams = [
         "nvidia-drm.modeset=1"
       ];
   
  
positive.code:   inherit (lib)
      elem
      mkIf
      optionals
      optionalString
      singleton;
  
    drivers = config.services.xserver.videoDrivers;
  
negative.code:     services.acpid.enable = true;
  
      # Create /dev/nvidia-uvm when the nvidia-uvm module is loaded.
      services.udev.extraRules = ''
        KERNEL=="nvidia", RUN+="${pkgs.stdenv.shell} -c 'mknod -m 666 /dev/nvidiactl c $(grep nvidia-frontend /proc/devices | cut -d \  -f 1) 255'"
        KERNEL=="nvidia_modeset", RUN+="${pkgs.stdenv.shell} -c 'mknod -m 666 /dev/nvidia-modeset c $(grep nvidia-frontend /proc/devices | cut -d \  -f 1) 254'"
        KERNEL=="card*", SUBSYSTEM=="drm", DRIVERS=="nvidia", RUN+="${pkgs.stdenv.shell} -c 'mknod -m 666 /dev/nvidia%n c $(grep nvidia-frontend /proc/devices | cut -d \  -f 1) %n'"
        KERNEL=="nvidia_uvm", RUN+="${pkgs.stdenv.shell} -c 'mknod -m 666 /dev/nvidia-uvm c $(grep nvidia-uvm /proc/devices | cut -d \  -f 1) 0'"
      '';
  
  