setup new system with amd-gpu
This commit is contained in:
		
							parent
							
								
									0aa9032372
								
							
						
					
					
						commit
						6ffddf65fb
					
				
					 3 changed files with 214 additions and 0 deletions
				
			
		
							
								
								
									
										97
									
								
								systems/x86_64-linux/tmp/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										97
									
								
								systems/x86_64-linux/tmp/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,97 @@ | |||
| { | ||||
|   inputs, | ||||
|   lib, | ||||
|   namespace, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: | ||||
| let | ||||
|   inherit (lib.${namespace}) enabled disabled; | ||||
| in | ||||
| { | ||||
|   imports = [ | ||||
|     ./hardware.nix | ||||
|     ./hyprland_config.nix | ||||
|   ]; | ||||
| 
 | ||||
|   environment.systemPackages = with pkgs; [ | ||||
|     path-of-building | ||||
|     teams-for-linux | ||||
|     obsidian | ||||
|     zed-editor | ||||
| 
 | ||||
|     # eve | ||||
|     bottles | ||||
|     pyfa | ||||
| 
 | ||||
|     # misc | ||||
|     diebahn | ||||
| 
 | ||||
|     nixpkgs-review | ||||
|   ]; | ||||
| 
 | ||||
|   environment.pathsToLink = [ "/libexec" ]; | ||||
| 
 | ||||
|   virtualisation.waydroid = enabled; | ||||
| 
 | ||||
|   programs.ssh.extraConfig = '' | ||||
|     AddressFamily inet | ||||
|   ''; | ||||
|   home-manager = { | ||||
|     backupFileExtension = ".bak"; | ||||
|   }; | ||||
| 
 | ||||
|   nix = { | ||||
|     distributedBuilds = true; | ||||
|     settings.builders-use-substitutes = true; | ||||
|     buildMachines = [ | ||||
|       { | ||||
|         hostName = "nixberry"; | ||||
|         sshUser = "remotebuild"; | ||||
|         sshKey = "/root/.ssh/remotebuild"; | ||||
|         systems = [ "aarch64-linux" ]; | ||||
|         protocol = "ssh-ng"; | ||||
| 
 | ||||
|         supportedFeatures = [ | ||||
|           "nixos-test" | ||||
|           "big-parallel" | ||||
|           "kvm" | ||||
|         ]; | ||||
|       } | ||||
|     ]; | ||||
|   }; | ||||
| 
 | ||||
|   ${namespace} = { | ||||
|     archetypes = { | ||||
|       gaming.enable = true; | ||||
|     }; | ||||
| 
 | ||||
|     apps = { | ||||
|       _1password = enabled; | ||||
|       obs-studio = enabled; | ||||
|       cli-apps.helix = enabled; | ||||
|       starsector = enabled; | ||||
|     }; | ||||
| 
 | ||||
|     desktop.hyprland = { | ||||
|       enable = true; | ||||
|     }; | ||||
| 
 | ||||
|     services = { | ||||
|       factorio-server = disabled; | ||||
|     }; | ||||
| 
 | ||||
|     tools.devenv = enabled; | ||||
| 
 | ||||
|     system = { | ||||
|       hardware = { | ||||
|         bluetooth = enabled; | ||||
|         # gpu.nvidia = enabled; | ||||
|       }; | ||||
|     }; | ||||
| 
 | ||||
|     security.gpg = enabled; | ||||
|   }; | ||||
| 
 | ||||
|   system.stateVersion = "23.11"; | ||||
| } | ||||
							
								
								
									
										69
									
								
								systems/x86_64-linux/tmp/hardware_.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								systems/x86_64-linux/tmp/hardware_.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,69 @@ | |||
| # 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, | ||||
|   modulesPath, | ||||
|   inputs, | ||||
|   ... | ||||
| }: | ||||
| let | ||||
|   inherit (inputs) nixos-hardware; | ||||
| in | ||||
| { | ||||
|   imports = with nixos-hardware.nixosModules; [ | ||||
|     (modulesPath + "/installer/scan/not-detected.nix") | ||||
|     common-cpu-amd | ||||
|     common-gpu-nvidia-nonprime | ||||
|     common-pc | ||||
|     common-pc-ssd | ||||
|   ]; | ||||
| 
 | ||||
|   boot = { | ||||
|     initrd.availableKernelModules = [ | ||||
|       "nvme" | ||||
|       "xhci_pci" | ||||
|       "ahci" | ||||
|       "usb_storage" | ||||
|       "usbhid" | ||||
|       "sd_mod" | ||||
|     ]; | ||||
|     initrd.kernelModules = [ ]; | ||||
|     kernelModules = [ | ||||
|       "kvm-amd" | ||||
|       "btusb" | ||||
|     ]; | ||||
|     extraModulePackages = [ ]; | ||||
|   }; | ||||
| 
 | ||||
|   fileSystems = { | ||||
|     "/" = { | ||||
|       device = "/dev/disk/by-uuid/444a9216-59d1-46e0-9643-0b716a42ba0b"; | ||||
|       fsType = "ext4"; | ||||
|     }; | ||||
| 
 | ||||
|     "/boot" = { | ||||
|       device = "/dev/disk/by-uuid/8310-585A"; | ||||
|       fsType = "vfat"; | ||||
|     }; | ||||
| 
 | ||||
|     "/storage" = { | ||||
|       device = "/dev/disk/by-uuid/c3c1dec1-7716-4c37-a3f2-bb60f9af84fd"; | ||||
|       fsType = "ext4"; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   swapDevices = [ ]; | ||||
| 
 | ||||
|   # 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`. | ||||
|   networking.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.enp40s0.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.enp42s0.useDHCP = lib.mkDefault true; | ||||
| 
 | ||||
|   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||
|   hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
| } | ||||
							
								
								
									
										48
									
								
								systems/x86_64-linux/tmp/hyprland_config.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								systems/x86_64-linux/tmp/hyprland_config.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,48 @@ | |||
| { | ||||
|   lib, | ||||
|   namespace, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: | ||||
| let | ||||
| in | ||||
| { | ||||
|   ${namespace}.desktop.hyprland.settings = { | ||||
|     monitor = [ | ||||
|       #Ultrawide | ||||
|       "DP-2,3440x1440@144, 0x0, 1" | ||||
|       #Vertical | ||||
|       "HDMI-A-1, 1920x1080@144, auto-right, 1, transform, 1" | ||||
|       # nividia kernel issues | ||||
|       "Unknown-1, disable" | ||||
|     ]; | ||||
| 
 | ||||
|     cursor = { | ||||
|       no_hardware_cursors = true; | ||||
|     }; | ||||
| 
 | ||||
|     exec-once = [ | ||||
|       "[workspace 7 silent] obsidian" | ||||
| 
 | ||||
|       "${lib.getExe pkgs.xorg.xrandr} --output DP-2 --primary" | ||||
|     ]; | ||||
| 
 | ||||
|     workspace = [ | ||||
|       "1, monitor:DP-2" | ||||
|       "2, monitor:DP-2" | ||||
|       "3, monitor:DP-2" | ||||
|       "4, monitor:DP-2" | ||||
|       "5, monitor:DP-2" | ||||
|       "6, monitor:DP-2" | ||||
|       "7, monitor:HDMI-A-1" | ||||
|       "8, monitor:HDMI-A-1" | ||||
|       "9, monitor:HDMI-A-1" | ||||
|     ]; | ||||
| 
 | ||||
|     windowrulev2 = [ | ||||
|       "workspace 8 silent, class:^(steam)$, title:^(Friends List)" | ||||
|       "workspace 8 silent, class:^(discord)$, title:^(Discord)" | ||||
|       "workspace 7 silent, class:^(com.obsproject.Studio)$" | ||||
|     ]; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue