forked from jan-leila/nix-config
		
	reduced tech debt by moving things into hardware configs
This commit is contained in:
		
							parent
							
								
									88ab5420eb
								
							
						
					
					
						commit
						e338b8eac5
					
				
					 5 changed files with 58 additions and 97 deletions
				
			
		|  | @ -20,15 +20,7 @@ | |||
|   }; | ||||
|   users.ester.isFullUser = true; | ||||
|   users.eve.isFullUser = true; | ||||
| 
 | ||||
|   # Bootloader. | ||||
|   boot.loader.systemd-boot.enable = true; | ||||
|   boot.loader.efi.canTouchEfiVariables = true; | ||||
|    | ||||
|   boot.kernelModules = [ "sg" ]; | ||||
| 
 | ||||
|   networking.hostName = "twilight"; # Define your hostname. | ||||
| 
 | ||||
|   # enabled virtualisation for docker | ||||
|   # virtualisation.docker.enable = true; | ||||
| 
 | ||||
|  | @ -38,47 +30,6 @@ | |||
|   # Allow unfree packages | ||||
|   nixpkgs.config.allowUnfree = true; | ||||
| 
 | ||||
|   # Enable OpenGL | ||||
|   hardware.graphics.enable = true; | ||||
| 
 | ||||
|   # Load nvidia driver for Xorg and Wayland | ||||
|   services.xserver.videoDrivers = ["nvidia"]; | ||||
| 
 | ||||
|   # Use X instead of wayland for gaming reasons | ||||
|   services.xserver.displayManager.gdm.wayland = false; | ||||
|    | ||||
|   # install graphics drivers | ||||
|   hardware.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; | ||||
|   }; | ||||
| 
 | ||||
|   # This value determines the NixOS release from which the default | ||||
|   # settings for stateful data, like file locations and database versions | ||||
|   # on your system were taken. It‘s perfectly fine and recommended to leave | ||||
|  |  | |||
|  | @ -10,9 +10,54 @@ | |||
| 
 | ||||
|   boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ]; | ||||
|   boot.initrd.kernelModules = [ ]; | ||||
|   boot.kernelModules = [ "kvm-amd" ]; | ||||
|   boot.kernelModules = [ "kvm-amd" "sg" ]; | ||||
|   boot.extraModulePackages = [ ]; | ||||
| 
 | ||||
|   # Bootloader. | ||||
|   boot.loader.systemd-boot.enable = true; | ||||
|   boot.loader.efi.canTouchEfiVariables = true; | ||||
|    | ||||
|   # Enable OpenGL | ||||
|   hardware.graphics.enable = true; | ||||
| 
 | ||||
|   # Load nvidia driver for Xorg and Wayland | ||||
|   services.xserver.videoDrivers = ["nvidia"]; | ||||
| 
 | ||||
|   # Use X instead of wayland for gaming reasons | ||||
|   services.xserver.displayManager.gdm.wayland = false; | ||||
|    | ||||
|   # install graphics drivers | ||||
|   hardware.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"; | ||||
|       fsType = "ext4"; | ||||
|  | @ -54,6 +99,7 @@ | |||
|   networking.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.enp42s0.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.wlp5s0.useDHCP = lib.mkDefault true; | ||||
|   networking.hostName = "twilight"; # Define your hostname. | ||||
| 
 | ||||
|   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||
|   hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue