forked from jan-leila/nix-config
		
	restructured repo to support nix-darwin
This commit is contained in:
		
							parent
							
								
									3924a5aa8d
								
							
						
					
					
						commit
						0d0443a02a
					
				
					 47 changed files with 111 additions and 34 deletions
				
			
		
							
								
								
									
										125
									
								
								configurations/nixos/twilight/hardware-configuration.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										125
									
								
								configurations/nixos/twilight/hardware-configuration.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,125 @@ | |||
| # Do not modify this file!  It was generated by ‘nixos-generate-config’ | ||||
| # and may be overwritten by future invocations.  Please make changes | ||||
| # to /etc/nixos/configuration.nix instead. | ||||
| { | ||||
|   config, | ||||
|   lib, | ||||
|   pkgs, | ||||
|   modulesPath, | ||||
|   ... | ||||
| }: { | ||||
|   imports = [ | ||||
|     (modulesPath + "/installer/scan/not-detected.nix") | ||||
|   ]; | ||||
| 
 | ||||
|   boot = { | ||||
|     initrd = { | ||||
|       availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"]; | ||||
|       kernelModules = []; | ||||
|     }; | ||||
|     kernelModules = ["kvm-amd" "sg"]; | ||||
|     extraModulePackages = []; | ||||
| 
 | ||||
|     # Bootloader. | ||||
|     loader = { | ||||
|       systemd-boot.enable = true; | ||||
|       efi.canTouchEfiVariables = true; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   services.xserver = { | ||||
|     # Load nvidia driver for Xorg and Wayland | ||||
|     videoDrivers = ["nvidia"]; | ||||
| 
 | ||||
|     # Use X instead of wayland for gaming reasons | ||||
|     displayManager.gdm.wayland = false; | ||||
|   }; | ||||
| 
 | ||||
|   fileSystems = { | ||||
|     "/" = { | ||||
|       device = "/dev/disk/by-uuid/8be49c65-2b57-48f1-b74d-244d26061adb"; | ||||
|       fsType = "ext4"; | ||||
|     }; | ||||
| 
 | ||||
|     "/boot" = { | ||||
|       device = "/dev/disk/by-uuid/3006-3867"; | ||||
|       fsType = "vfat"; | ||||
|       options = ["fmask=0022" "dmask=0022"]; | ||||
|     }; | ||||
| 
 | ||||
|     "/mnt/leyla_home" = { | ||||
|       device = "server.arpa:/home/leyla"; | ||||
|       fsType = "nfs"; | ||||
|       options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||
|     }; | ||||
| 
 | ||||
|     "/mnt/share_home" = { | ||||
|       device = "server.arpa:/home/share"; | ||||
|       fsType = "nfs"; | ||||
|       options = ["x-systemd.automount" "user" "nofail" "soft" "x-systemd.idle-timeout=600" "fsc"]; | ||||
|     }; | ||||
| 
 | ||||
|     "/mnt/docker_home" = { | ||||
|       device = "server.arpa:/home/docker"; | ||||
|       fsType = "nfs"; | ||||
|       options = ["x-systemd.automount" "noauto" "x-systemd.idle-timeout=600"]; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   environment.systemPackages = with pkgs; [ | ||||
|     cachefilesd | ||||
|   ]; | ||||
| 
 | ||||
|   swapDevices = []; | ||||
| 
 | ||||
|   networking = { | ||||
|     networkmanager.enable = true; | ||||
|     # Enables DHCP on each ethernet and wireless interface. In case of scripted networking | ||||
|     # (the default) this is the recommended approach. When using systemd-networkd it's | ||||
|     # still possible to use this option, but it's recommended to use it in conjunction | ||||
|     # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. | ||||
|     useDHCP = lib.mkDefault true; | ||||
|     hostName = "twilight"; # Define your hostname. | ||||
|   }; | ||||
| 
 | ||||
|   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||
| 
 | ||||
|   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; | ||||
|     }; | ||||
| 
 | ||||
|     cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue