updated readme with structure.
This commit is contained in:
		
							parent
							
								
									e56cd66d49
								
							
						
					
					
						commit
						a04727757b
					
				
					 1 changed files with 26 additions and 0 deletions
				
			
		
							
								
								
									
										26
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										26
									
								
								README.md
									
										
									
									
									
								
							| 
						 | 
					@ -1,3 +1,29 @@
 | 
				
			||||||
# nix-config
 | 
					# nix-config
 | 
				
			||||||
 | 
					
 | 
				
			||||||
My configs for both nixos and home manager only machines
 | 
					My configs for both nixos and home manager only machines
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## structure
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					.
 | 
				
			||||||
 | 
					├── flake.nix
 | 
				
			||||||
 | 
					├── configs
 | 
				
			||||||
 | 
					│   ├── home-manager
 | 
				
			||||||
 | 
					│   └── nixos
 | 
				
			||||||
 | 
					├── hosts
 | 
				
			||||||
 | 
					├── modules
 | 
				
			||||||
 | 
					│   ├── home-manager
 | 
				
			||||||
 | 
					│   └── hostopts.nix
 | 
				
			||||||
 | 
					├── roles
 | 
				
			||||||
 | 
					│   ├── home-manager
 | 
				
			||||||
 | 
					│   └── nixos
 | 
				
			||||||
 | 
					└── templates
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					* Configs set options and specify programs to be installed.
 | 
				
			||||||
 | 
					They do not specify their own options, and take effect as soon as they are imported.
 | 
				
			||||||
 | 
					Generally, a config will be specific to a single program, and possibly optional dependecies of the main program.
 | 
				
			||||||
 | 
					* Hosts define specific hosts. They are the entry point into the system.
 | 
				
			||||||
 | 
					Each host *must* import `configs/nixos/common.nix` in the top level and `configs/home-manager/common.nix` in the home-manager block.
 | 
				
			||||||
 | 
					Each host *must also* define the variables declared in `modules/hostopts.nix`.
 | 
				
			||||||
 | 
					* Modules are always imported by the respective common.nix. They each have an enable option, and only have effects if enabled.
 | 
				
			||||||
 | 
					* Roles are larger bundles of software and options. They define packages to be installed and may import configurations or enable modules.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue