feat: add m4nix VM
Signed-off-by: Harald Hoyer <harald@hoyer.xyz>
This commit is contained in:
		
							parent
							
								
									9952dd74e3
								
							
						
					
					
						commit
						31a7f53d1b
					
				
					 5 changed files with 172 additions and 83 deletions
				
			
		
							
								
								
									
										61
									
								
								homes/aarch64-linux/harald@m4nix/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								homes/aarch64-linux/harald@m4nix/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,61 @@ | |||
| { lib, config, ... }: | ||||
| { | ||||
|   home.sessionPath = [ "$HOME/bin" ]; | ||||
| 
 | ||||
|   metacfg = { | ||||
|     user = { | ||||
|       enable = true; | ||||
|       name = config.snowfallorg.user.name; | ||||
|     }; | ||||
|     cli-apps = { | ||||
|       bash.enable = true; | ||||
|       fish.enable = true; | ||||
|       neovim.enable = true; | ||||
|       bat.enable = true; | ||||
|       starship.enable = true; | ||||
|       home-manager.enable = true; | ||||
|     }; | ||||
|     tools = { | ||||
|       git.enable = true; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   fonts.fontconfig.enable = true; | ||||
| 
 | ||||
|   dconf.settings = { | ||||
|     # ... | ||||
|     "org/gnome/shell" = { | ||||
|       disable-user-extensions = false; | ||||
| 
 | ||||
|       # `gnome-extensions list` for a list | ||||
|       enabled-extensions = [ | ||||
|         "Vitals@CoreCoding.com" | ||||
|         "appindicatorsupport@rgcjonas.gmail.com" | ||||
|         "dash-to-panel@jderose9.github.com" | ||||
|         "hibernate-status@dromi" | ||||
|         "autohide-battery@sitnik.ru" | ||||
|       ]; | ||||
| 
 | ||||
|       favorite-apps = [ | ||||
|         "org.gnome.Console.desktop" | ||||
|         "jetbrains-toolbox.desktop" | ||||
|         "org.mozilla.firefox.desktop" | ||||
|         "firefox.desktop" | ||||
|         "thunderbird.desktop" | ||||
|         "org.mozilla.Thunderbird.desktop" | ||||
|         "slack.desktop" | ||||
|         "keybase.desktop" | ||||
|         "spotify.desktop" | ||||
|         "org.gnome.Nautilus.desktop" | ||||
|         "virt-manager.desktop" | ||||
|       ]; | ||||
|     }; | ||||
|     "org/virt-manager/virt-manager/connections" = { | ||||
|       autoconnect = [ "qemu:///system" ]; | ||||
|       uris = [ "qemu:///system" ]; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   xdg.enable = true; | ||||
|   xdg.mime.enable = true; | ||||
| } | ||||
|  | @ -59,9 +59,6 @@ in | |||
|         sops | ||||
|         strace | ||||
|         tmux | ||||
|         tpm2-pkcs11 | ||||
|         tpm2-pkcs11.out | ||||
|         tpm2-tools | ||||
|        vim | ||||
|         virt-manager | ||||
|         wget | ||||
|  | @ -70,7 +67,11 @@ in | |||
|             -bios ${pkgs.OVMF.fd}/FV/OVMF.fd \ | ||||
|             "$@" | ||||
|         '') | ||||
|       ]; | ||||
|       ] ++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 ( with pkgs; [ | ||||
|         tpm2-pkcs11 | ||||
|         tpm2-pkcs11.out | ||||
|         tpm2-tools | ||||
|       ]); | ||||
|       shells = [ | ||||
|         pkgs.fish | ||||
|         pkgs.bash | ||||
|  | @ -78,10 +79,12 @@ in | |||
|     }; | ||||
| 
 | ||||
|     hardware = { | ||||
| 
 | ||||
|       cpu = { | ||||
|         amd.updateMicrocode = lib.mkDefault true; | ||||
|         intel.updateMicrocode = lib.mkDefault true; | ||||
|         amd.updateMicrocode = pkgs.stdenv.targetPlatform.isx86_64; | ||||
|         intel.updateMicrocode = pkgs.stdenv.targetPlatform.isx86_64; | ||||
|       }; | ||||
| 
 | ||||
|       enableRedistributableFirmware = lib.mkDefault true; | ||||
|       enableAllFirmware = true; | ||||
|     }; | ||||
|  |  | |||
|  | @ -65,7 +65,11 @@ in | |||
|     hardware.graphics = { | ||||
|       enable = true; | ||||
| 
 | ||||
|       extraPackages = with pkgs; [ | ||||
|       extraPackages = | ||||
|         [ ] | ||||
|         ++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 ( | ||||
|           with pkgs; | ||||
|           [ | ||||
|             vpl-gpu-rt | ||||
|             intel-compute-runtime | ||||
|             intel-media-driver # LIBVA_DRIVER_NAME=iHD | ||||
|  | @ -73,18 +77,24 @@ in | |||
|             libvdpau-va-gl | ||||
|             rocmPackages.clr.icd | ||||
|             amdvlk | ||||
|       ]; | ||||
|           ] | ||||
|         ); | ||||
|     }; | ||||
| 
 | ||||
|     systemd.tmpfiles.rules = | ||||
|       let | ||||
|         rocmEnv = pkgs.symlinkJoin { | ||||
|           name = "rocm-combined"; | ||||
|           paths = with pkgs.rocmPackages; [ | ||||
|           paths = | ||||
|             [ ] | ||||
|             ++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 ( | ||||
|               with pkgs.rocmPackages; | ||||
|               [ | ||||
|                 rocblas | ||||
|                 hipblas | ||||
|                 clr | ||||
|           ]; | ||||
|               ] | ||||
|             ); | ||||
|         }; | ||||
|       in | ||||
|       [ "L+    /opt/rocm   -    -    -     -    ${rocmEnv}" ]; | ||||
|  | @ -104,7 +114,9 @@ in | |||
|       enableBrowserSocket = true; | ||||
|     }; | ||||
| 
 | ||||
|     environment.systemPackages = with pkgs; [ | ||||
|     environment.systemPackages = | ||||
|       with pkgs; | ||||
|       [ | ||||
|         #pcsctools | ||||
|         bat | ||||
|         cardpeek | ||||
|  | @ -127,7 +139,6 @@ in | |||
|         gnomeExtensions.vitals | ||||
|         gnupg | ||||
|         go | ||||
|       jetbrains-toolbox | ||||
|         jq | ||||
|         kbfs | ||||
|         libu2f-host | ||||
|  | @ -141,8 +152,6 @@ in | |||
|         pstree | ||||
|         ripgrep | ||||
|         rustup | ||||
|       slack | ||||
|       spotify | ||||
|         statix | ||||
|         thunderbird | ||||
|         tmux | ||||
|  | @ -151,7 +160,15 @@ in | |||
|         yubikey-manager-qt | ||||
|         yubikey-personalization | ||||
|         zellij | ||||
|     ]; | ||||
|       ] | ||||
|       ++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 ( | ||||
|         with pkgs; | ||||
|         [ | ||||
|           slack | ||||
|           spotify | ||||
|           jetbrains-toolbox | ||||
|         ] | ||||
|       ); | ||||
| 
 | ||||
|     #----=[ Fonts ]=----# | ||||
|     fonts = { | ||||
|  |  | |||
|  | @ -13,7 +13,6 @@ with lib.metacfg; | |||
|     nix.enable = true; | ||||
|     podman.enable = true; | ||||
|     secureboot.enable = false; | ||||
|     homeprinter.enable = true; | ||||
|     tools = { | ||||
|       direnv.enable = true; | ||||
|       #git.enable = true; | ||||
|  |  | |||
|  | @ -1,7 +1,13 @@ | |||
| # 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, ... }: | ||||
| { | ||||
|   config, | ||||
|   lib, | ||||
|   pkgs, | ||||
|   modulesPath, | ||||
|   ... | ||||
| }: | ||||
| 
 | ||||
| { | ||||
|   imports = [ ]; | ||||
|  | @ -11,19 +17,22 @@ | |||
|   boot.kernelModules = [ ]; | ||||
|   boot.extraModulePackages = [ ]; | ||||
| 
 | ||||
|   fileSystems."/" = | ||||
|     { device = "/dev/disk/by-uuid/b340000f-2927-414d-9382-edd3120b8e80"; | ||||
|   fileSystems."/" = { | ||||
|     device = "/dev/disk/by-uuid/b340000f-2927-414d-9382-edd3120b8e80"; | ||||
|     fsType = "ext4"; | ||||
|   }; | ||||
| 
 | ||||
|   fileSystems."/boot" = | ||||
|     { device = "/dev/disk/by-uuid/16C0-5FB0"; | ||||
|   fileSystems."/boot" = { | ||||
|     device = "/dev/disk/by-uuid/16C0-5FB0"; | ||||
|     fsType = "vfat"; | ||||
|       options = [ "fmask=0077" "dmask=0077" ]; | ||||
|     options = [ | ||||
|       "fmask=0077" | ||||
|       "dmask=0077" | ||||
|     ]; | ||||
|   }; | ||||
| 
 | ||||
|   swapDevices = | ||||
|     [ { device = "/dev/disk/by-uuid/76cc3afa-b57e-4f25-95f4-7b15bf1fb796"; } | ||||
|   swapDevices = [ | ||||
|     { device = "/dev/disk/by-uuid/76cc3afa-b57e-4f25-95f4-7b15bf1fb796"; } | ||||
|   ]; | ||||
| 
 | ||||
|   # Enables DHCP on each ethernet and wireless interface. In case of scripted networking | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue