Replace noveau with nvidia proprietary drivers
diff --git a/modules/nvidia.nix b/modules/nvidia.nix
new file mode 100644
index 0000000..f7aa1bd
--- /dev/null
+++ b/modules/nvidia.nix
@@ -0,0 +1,28 @@
+{ pkgs, ... }:
+let
+  prime-run = pkgs.writeScriptBin "prime-run" ''
+    export __NV_PRIME_RENDER_OFFLOAD=1
+    export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0
+    export __GLX_VENDOR_LIBRARY_NAME=nvidia
+    export __VK_LAYER_NV_optimus=NVIDIA_only
+    exec "$@"
+  '';
+in
+{
+  config = {
+    services.xserver.videoDrivers = [ "nvidia" ];
+    hardware = {
+      opengl.enable = true;
+      nvidia = {
+        modesetting.enable = true;
+        prime = {
+          offload.enable = true;
+          intelBusId = "PCI:0:2:0";
+          nvidiaBusId = "PCI:1:0:0";
+        };
+      };
+    };
+    internal.allowUnfree = [ "nvidia-x11" "nvidia-settings" "cudatoolkit" ];
+  };
+  home.home.packages = [ pkgs.nvtop prime-run ];
+}