forked from jan-leila/nix-config
		
	moved hardware configuration software options to hardware.nix
This commit is contained in:
		
							parent
							
								
									834165443a
								
							
						
					
					
						commit
						2213d099d0
					
				
					 8 changed files with 85 additions and 62 deletions
				
			
		|  | @ -14,9 +14,6 @@ | |||
|   users = { | ||||
|     leyla = { | ||||
|       isFullUser = true; | ||||
|       hasPiperMouse = true; | ||||
|       hasOpenRGBHardware = true; | ||||
|       hasViaKeyboard = true; | ||||
|       hasGPU = true; | ||||
|     }; | ||||
|     ester.isFullUser = true; | ||||
|  |  | |||
|  | @ -4,9 +4,10 @@ | |||
| { config, lib, pkgs, modulesPath, ... }: | ||||
| 
 | ||||
| { | ||||
|   imports = | ||||
|     [ (modulesPath + "/installer/scan/not-detected.nix") | ||||
|     ]; | ||||
|   imports = [ | ||||
|     (modulesPath + "/installer/scan/not-detected.nix") | ||||
|     ../hardware-common.nix | ||||
|   ]; | ||||
| 
 | ||||
|   boot = { | ||||
|     initrd = { | ||||
|  | @ -31,43 +32,6 @@ | |||
|     displayManager.gdm.wayland = false; | ||||
|   }; | ||||
| 
 | ||||
|   hardware = { | ||||
|     # Enable OpenGL | ||||
|     graphics.enable = true; | ||||
|      | ||||
|     # install graphics drivers | ||||
|     nvidia = { | ||||
|       # Modesetting is required. | ||||
|       modesetting.enable = true; | ||||
| 
 | ||||
|       # Nvidia power management. Experimental, and can cause sleep/suspend to fail. | ||||
|       # Enable this if you have graphical corruption issues or application crashes after waking | ||||
|       # up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead  | ||||
|       # of just the bare essentials. | ||||
|       powerManagement.enable = false; | ||||
| 
 | ||||
|       # Fine-grained power management. Turns off GPU when not in use. | ||||
|       # Experimental and only works on modern Nvidia GPUs (Turing or newer). | ||||
|       powerManagement.finegrained = false; | ||||
| 
 | ||||
|       # Use the NVidia open source kernel module (not to be confused with the | ||||
|       # independent third-party "nouveau" open source driver). | ||||
|       # Support is limited to the Turing and later architectures. Full list of  | ||||
|       # supported GPUs is at:  | ||||
|       # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus  | ||||
|       # Only available from driver 515.43.04+ | ||||
|       # Currently alpha-quality/buggy, so false is currently the recommended setting. | ||||
|       open = false; | ||||
| 
 | ||||
|       # Enable the Nvidia settings menu, | ||||
|     # accessible via `nvidia-settings`. | ||||
|       nvidiaSettings = true; | ||||
| 
 | ||||
|       # Optionally, you may need to select the appropriate driver version for your specific GPU. | ||||
|       package = config.boot.kernelPackages.nvidiaPackages.production; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   fileSystems = { | ||||
|     "/" = | ||||
|       { device = "/dev/disk/by-uuid/8be49c65-2b57-48f1-b74d-244d26061adb"; | ||||
|  | @ -114,6 +78,48 @@ | |||
|   }; | ||||
| 
 | ||||
|   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||
|   hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
| 
 | ||||
|   hardware = { | ||||
|     piperMouse.enable = true; | ||||
|     viaKeyboard.enable = true; | ||||
|     openRGB.enable = true; | ||||
| 
 | ||||
|     # Enable OpenGL | ||||
|     graphics.enable = true; | ||||
|      | ||||
|     # install graphics drivers | ||||
|     nvidia = { | ||||
|       # Modesetting is required. | ||||
|       modesetting.enable = true; | ||||
| 
 | ||||
|       # Nvidia power management. Experimental, and can cause sleep/suspend to fail. | ||||
|       # Enable this if you have graphical corruption issues or application crashes after waking | ||||
|       # up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead  | ||||
|       # of just the bare essentials. | ||||
|       powerManagement.enable = false; | ||||
| 
 | ||||
|       # Fine-grained power management. Turns off GPU when not in use. | ||||
|       # Experimental and only works on modern Nvidia GPUs (Turing or newer). | ||||
|       powerManagement.finegrained = false; | ||||
| 
 | ||||
|       # Use the NVidia open source kernel module (not to be confused with the | ||||
|       # independent third-party "nouveau" open source driver). | ||||
|       # Support is limited to the Turing and later architectures. Full list of  | ||||
|       # supported GPUs is at:  | ||||
|       # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus  | ||||
|       # Only available from driver 515.43.04+ | ||||
|       # Currently alpha-quality/buggy, so false is currently the recommended setting. | ||||
|       open = false; | ||||
| 
 | ||||
|       # Enable the Nvidia settings menu, | ||||
|     # accessible via `nvidia-settings`. | ||||
|       nvidiaSettings = true; | ||||
| 
 | ||||
|       # Optionally, you may need to select the appropriate driver version for your specific GPU. | ||||
|       package = config.boot.kernelPackages.nvidiaPackages.production; | ||||
|     }; | ||||
| 
 | ||||
|     cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
|   }; | ||||
| } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue