mirror of
				https://github.com/Jokiller230/puzzlevision.git
				synced 2025-10-31 05:40:05 +00:00 
			
		
		
		
	✨🚧 Implement basic easy-hosts configuration and flake structure
📝 Add credits and structure
			
			
This commit is contained in:
		
							parent
							
								
									4a6199eacb
								
							
						
					
					
						commit
						9dc26a0db6
					
				
					 10 changed files with 250 additions and 0 deletions
				
			
		
							
								
								
									
										30
									
								
								systems/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								systems/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,30 @@ | |||
| { | ||||
|   lib, | ||||
|   self, | ||||
|   inputs, | ||||
|   ... | ||||
| }: | ||||
| { | ||||
|   imports = [ inputs.easy-hosts.flakeModule ]; | ||||
| 
 | ||||
|   easyHosts = { | ||||
|     autoConstruct = true; | ||||
|     path = ../systems; | ||||
| 
 | ||||
|     shared.modules = [ | ||||
|       ../homes | ||||
|     ]; | ||||
| 
 | ||||
|     perClass = | ||||
|       class: | ||||
|       { | ||||
|         modules = [ | ||||
|           "${self}/modules/${class}" | ||||
| 
 | ||||
|           (lib.optionals (class == "nixos") [ | ||||
|             inputs.home-manager.nixosModules.home-manager | ||||
|           ]) | ||||
|         ]; | ||||
|       }; | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										27
									
								
								systems/x86_64-nixos/puzzlevision/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								systems/x86_64-nixos/puzzlevision/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | |||
| { | ||||
|   pkgs, | ||||
|   ... | ||||
| }: | ||||
| { | ||||
|   imports = [ | ||||
|     ./hardware.nix | ||||
|   ]; | ||||
| 
 | ||||
|   # Enable Plasma6 | ||||
|   services.xserver.enable = true; | ||||
|   services.displayManager.sddm.wayland.enable = true; | ||||
|   services.desktopManager.plasma6.enable = true; | ||||
| 
 | ||||
|   # Todo: pass a set of users to enable from within easy-hosts and automatically map the corresponding home-manager configurations | ||||
|   # Register "jo" as a user | ||||
|   users.users.jo.isNormalUser = true; | ||||
|   users.users.jo.extraGroups = [ "dialout" "docker" ]; | ||||
|   users.users.jo.initialPassword = "balls"; | ||||
|   users.users.jo.createHome = true; | ||||
| 
 | ||||
|   environment.systemPackages = with pkgs; [ | ||||
|     ghostty | ||||
|   ]; | ||||
| 
 | ||||
|   system.stateVersion = "25.05"; | ||||
| } | ||||
							
								
								
									
										52
									
								
								systems/x86_64-nixos/puzzlevision/hardware.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								systems/x86_64-nixos/puzzlevision/hardware.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,52 @@ | |||
| # 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 = [ "xhci_pci" "vmd" "nvme" "usbhid" "rtsx_pci_sdmmc" ]; | ||||
|   boot.initrd.kernelModules = [ ]; | ||||
|   boot.kernelModules = [ "kvm-intel" ]; | ||||
|   boot.extraModulePackages = [ ]; | ||||
| 
 | ||||
|   fileSystems."/" = | ||||
|     { device = "/dev/disk/by-uuid/864b1287-89fd-4cc0-98a5-40a3caf804c6"; | ||||
|       fsType = "btrfs"; | ||||
|       options = [ "subvol=@" ]; | ||||
|     }; | ||||
| 
 | ||||
|   boot.initrd.luks.devices."luks-5fd4fc76-d5c5-46c3-b952-1a7a7ff3a1fc".device = "/dev/disk/by-uuid/5fd4fc76-d5c5-46c3-b952-1a7a7ff3a1fc"; | ||||
| 
 | ||||
|   fileSystems."/boot" = | ||||
|     { device = "/dev/disk/by-uuid/2429-4141"; | ||||
|       fsType = "vfat"; | ||||
|       options = [ "fmask=0022" "dmask=0022" ]; | ||||
|     }; | ||||
| 
 | ||||
|   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.br-01571e4eda2f.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.br-20785fae249b.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.br-64a49a5722c1.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.br-71e5fc5962fc.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.br-7df9905783da.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.br-9b746f4e7e2f.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.br-e2f470a56dfe.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.docker0.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.enp0s13f0u4u4.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.veth4e96b46.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.veth96a5ccd.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.wlo1.useDHCP = lib.mkDefault true; | ||||
| 
 | ||||
|   nixpkgs.hostPlatform = lib.mkForce "x86_64-linux"; | ||||
|   hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue