Change-Id: I26675ad0414209fdef723159576ef845f839e9a3 Reviewed-on: https://cl.snix.dev/c/snix/+/30227 Tested-by: besadii Reviewed-by: Florian Klink <flokli@flokli.de> Autosubmit: Johannes Kirschbauer <hsjobeki+github@gmail.com>
		
			
				
	
	
		
			59 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| Contribution Guidelines
 | |
| =======================
 | |
| 
 | |
| <!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-refresh-toc -->
 | |
| **Table of Contents**
 | |
| 
 | |
| - [Contribution Guidelines](#contribution-guidelines)
 | |
|   - [Before making a change](#before-making-a-change)
 | |
|   - [Builds \& tests](#builds--tests)
 | |
|   - [Submitting changes](#submitting-changes)
 | |
| 
 | |
| <!-- markdown-toc end -->
 | |
| 
 | |
| This is a loose set of "guidelines" for contributing to the depot. Please note
 | |
| that we will not accept any patches that don't follow these guidelines.
 | |
| 
 | |
| Also consider the [code of conduct](./CODE_OF_CONDUCT.md). No really,
 | |
| you should.
 | |
| 
 | |
| ## Before making a change
 | |
| 
 | |
| Before making a change, consider your motivation for making the change.
 | |
| Documentation updates, bug fixes and the like are *always* welcome.
 | |
| 
 | |
| When adding a feature you should consider whether it is only useful for your
 | |
| particular use-case or whether it is generally applicable for other users of the
 | |
| project.
 | |
| 
 | |
| When in doubt - just ask! You can reach out to us via mail at
 | |
| [depot@tvl.su](mailto:depot@tvl.su) or on IRC.
 | |
| 
 | |
| ## Builds & tests
 | |
| 
 | |
| All projects are built using [Nix][] to avoid "build pollution" via the user's
 | |
| environment.
 | |
| 
 | |
| If you have Nix installed and are contributing to a project tracked in this
 | |
| repository, you can usually build the project by calling `nix-build -A
 | |
| path.to.project`.
 | |
| 
 | |
| For example, to build a project located at `//tools/foo` you would call
 | |
| `nix-build -A tools.foo` from the repository root. `//tools/magrathea`
 | |
| (which is added to `PATH` automatically if you enable [direnv][])
 | |
| allows you to do the same via `mg build //tools/foo`
 | |
| regardless of what your working directory is.
 | |
| 
 | |
| If the project has tests, check that they still work before submitting your
 | |
| change.
 | |
| 
 | |
| ## Submitting changes
 | |
| 
 | |
| The code review & change submission process is described in the [code
 | |
| review][] documentation.
 | |
| 
 | |
| [magit]: https://magit.vc/
 | |
| [Nix]: https://nixos.org/nix/
 | |
| [code review]: ./REVIEWS.md
 | |
| [Importing projects into depot]: ./importing-projects.md
 | |
| [direnv]: https://direnv.net
 |