mirror of
				https://github.com/Jokiller230/puzzlevision.git
				synced 2025-10-31 05:40:05 +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, | ||||
| automatically maps home-manager configurations from the `homes` directory to their corresponding users. | ||||
| 
 | ||||
| Nonetheless, one should still consider this implementation experimental, | ||||
| once I start using this on my laptop, | ||||
| I'll aim for production grade stability. | ||||
| Since I am actively using this configuration on my main workstation, things are evolving quickly, | ||||
| leftover issues are actively being resolved and the list of modules is ever-growing. | ||||
| 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 | ||||
| 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" | ||||
| ``` | ||||
| 
 | ||||
| ## 👷 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 | ||||
| The main goals of this rewritten flake are: | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue