aboutsummaryrefslogtreecommitdiff
path: root/modules/nvidia/default.nix
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--modules/nvidia/default.nix56
1 files changed, 56 insertions, 0 deletions
diff --git a/modules/nvidia/default.nix b/modules/nvidia/default.nix
new file mode 100644
index 0000000..77678c1
--- /dev/null
+++ b/modules/nvidia/default.nix
@@ -0,0 +1,56 @@
+{ config, pkgs, lib, ... }:
+{
+ environment.systemPackages = with pkgs; [
+ linuxPackages.nvidia_x11
+ cudaPackages.cudnn
+ cudaPackages.cudatoolkit
+ ];
+
+ hardware = {
+ graphics = {
+ enable = lib.mkForce true;
+ };
+
+ nvidia = {
+ open = true;
+ prime = {
+ sync.enable = true;
+ intelBusId = "PCI:0:2:0";
+ nvidiaBusId = "PCI:2:0:0";
+ };
+ };
+ };
+
+ nix = {
+ settings = {
+ substituters = [
+ # "https://cache.nixos.org/" # set by default
+ "https://cache.nixos-cuda.org"
+ ];
+
+ trusted-public-keys = [
+ # "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" # set by default
+ "cache.nixos-cuda.org:74DUi4Ye579gUqzH4ziL9IyiJBlDpMRn9MBN8oNan9M="
+ ];
+ };
+ };
+
+ nixpkgs.config = {
+ allowUnfree = lib.mkForce true;
+ cudaSupport = true;
+ cudaForwardCompat = true;
+ };
+
+ services = {
+ ollama = {
+ acceleration = "cuda";
+ };
+
+ xserver = {
+ enable = true;
+ videoDrivers =[
+ "nvidia"
+ ];
+ };
+ };
+}
Directive (EU) 2019/790, Article 4(3); all rights regarding Text and Data Mining (TDM) are reserved.