mirror of
				https://github.com/Jokiller230/puzzlevision.git
				synced 2025-10-31 13:50:04 +00:00 
			
		
		
		
	👷 Add flake validation workflow and update README
This commit is contained in:
		
							parent
							
								
									b109eda2d0
								
							
						
					
					
						commit
						d6b0351bf7
					
				
					 3 changed files with 60 additions and 3 deletions
				
			
		
							
								
								
									
										2
									
								
								.github/CODEOWNERS
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								.github/CODEOWNERS
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,2 @@ | ||||||
|  | # Me, myself and I! | ||||||
|  | * @jokiller230 | ||||||
							
								
								
									
										30
									
								
								.github/workflows/validate.yaml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								.github/workflows/validate.yaml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,30 @@ | ||||||
|  | name: "Nix: validate flake" | ||||||
|  | 
 | ||||||
|  | on: | ||||||
|  |   workflow_dispatch: | ||||||
|  |   push: | ||||||
|  |     paths: | ||||||
|  |       - "**.nix" | ||||||
|  |       - "**.lock" | ||||||
|  |       - ".github/workflows/**.yml" | ||||||
|  | 
 | ||||||
|  | jobs: | ||||||
|  |   check-flake: | ||||||
|  |     name: Validate x86_64-linux | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  | 
 | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout | ||||||
|  |         uses: actions/checkout@v4 | ||||||
|  |         with: | ||||||
|  |           ref: ${{ github.ref_name }} | ||||||
|  |           persist-credentials: false | ||||||
|  | 
 | ||||||
|  |       - name: Install Nix | ||||||
|  |         uses: DeterminateSystems/nix-installer-action@main | ||||||
|  |         with: | ||||||
|  |           extra-conf: | | ||||||
|  |             experimental-features = flakes nix-command recursive-nix pipe-operator | ||||||
|  | 
 | ||||||
|  |       - name: Validate Flake | ||||||
|  |         run: nix flake check --option allow-import-from-derivation false | ||||||
							
								
								
									
										31
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										31
									
								
								README.md
									
										
									
									
									
								
							|  | @ -14,9 +14,13 @@ All the basic functionality of v2 should be working correctly, including: | ||||||
| - Creating users in your systems through ${self.namespace}.users, | - Creating users in your systems through ${self.namespace}.users, | ||||||
| automatically maps home-manager configurations from the `homes` directory to their corresponding users. | automatically maps home-manager configurations from the `homes` directory to their corresponding users. | ||||||
| 
 | 
 | ||||||
| Nonetheless, one should still consider this implementation experimental, | Since I am actively using this configuration on my main workstation, things are evolving quickly, | ||||||
| once I start using this on my laptop, | leftover issues are actively being resolved and the list of modules is ever-growing. | ||||||
| I'll aim for production grade stability. | Nonetheless, one should still consider this implementation experimental. | ||||||
|  | 
 | ||||||
|  | My next goal is to setup an attic binary cache, | ||||||
|  | with a build/release workflow that runs in regular intervals. | ||||||
|  | (similar to isabelroses's workflow setup) | ||||||
| 
 | 
 | ||||||
| ## 🚀 Deployment | ## 🚀 Deployment | ||||||
| To deploy a system run the following command in your terminal of choice. | To deploy a system run the following command in your terminal of choice. | ||||||
|  | @ -66,6 +70,27 @@ Lastly, when adding new systems, make sure to update any required secret files w | ||||||
| nix-shell -p sops --run "sops updatekeys secrets/example.yaml" | nix-shell -p sops --run "sops updatekeys secrets/example.yaml" | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
|  | ## 👷 CI/CD coverage | ||||||
|  | Currently, this repository houses 2 workflows, which are executed when pushing to the v2 branch. | ||||||
|  | 
 | ||||||
|  | #### ↪️ `Nix: check for unused code` | ||||||
|  | This workflow can be found in `.github/workflows/deadnix.yaml`, | ||||||
|  | and should be pretty self-explanatory. | ||||||
|  | 
 | ||||||
|  | Here's what it does: | ||||||
|  | 1. Checks out current branch | ||||||
|  | 2. Finds any unused variables/imports etc... | ||||||
|  | 3. Creates a new commit, instantly removing any unused code | ||||||
|  | 
 | ||||||
|  | #### ↪️ `Nix: validate flake` | ||||||
|  | This workflow can be found in `.github/workflows/validate.yaml`. | ||||||
|  | It simply validates a flake using `nix flake check`. | ||||||
|  | 
 | ||||||
|  | To be specific, it does the following: | ||||||
|  | 1. Checks out current branch | ||||||
|  | 2. Installs nix with some experimental features (flakes, nix-command, recursive-nix, pipe-operator) | ||||||
|  | 3. Runs `nix flake check` on the codebase | ||||||
|  | 
 | ||||||
| ## 📝 Goals and improvements | ## 📝 Goals and improvements | ||||||
| The main goals of this rewritten flake are: | The main goals of this rewritten flake are: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue