... of all genders. Everyone who is not a total chud is welcome to use these templates for their project.
These are the 大きいBOY group's nix development shell templates. The intent is to spend less time setting up development environments for new projects.
- Inits your git repo if not already.
- Automatic setup of Pre-Commit Hooks.
- Automatic, community derrived, sane defaults for your repo's
.gitignore. - Pre-defined .editorconfig file.
- You're mentally exsausted, and don't want to setup the tooling for yet another project.
- Maybe you don't have a good idea of what a development shell in
nixshould look like, and just want a starting point to hack on. - You are on a Apple, and you tired of dealing with
homebrew's bullshit, and want to use a real package manager for your projects for a change. - You think sync'd up consistant development environments are groovy, and you think your team might dig it, too.
- You have differing opinons on how a development shell should be setup, and organized. Totally get it.
- You don't agree with the default tooling, and you think it might be excessive. I have opinions, too.
- You think you could do better, and if that's the case, dude, make a PR and help everyone, hero!
Some things need to be installed, right? Right. Make sure:
gitis installednixis installed- nix flakes are enabled
direnvis setup (optional, but reccomended)
In a new project directory run one of the nix flake template command like so:
nix flake init -t github:Ookiiboy/templatesFeel free to edit the flake.nix file's attribute path outputs.devShells.<archtecture>.default's buildInputs array with your needed packages.
You may also look at outputs.devShells.<archtecture>.ignoreSettings.github.languages array and add the language(s) you're going to be working with. For more information see the ignoreBoy project's fairly sparse documentation.
nix flake init -t github:Ookiiboy/templates#bashnix flake init -t github:Ookiiboy/templates#babashkanix flake init -t github:Ookiiboy/templates#denonix flake init -t github:Ookiiboy/templates#pico8direnv should pick up that there is a .envrc file. To let it run:
direnv allowIf you dont' want to use direnv you could start the shell by using the nix command, not reccomended:
nix developOn first run (and any time you save the flake.nix file), and when the shell reloads, it will check for a git project, and then the development enviroment will link (or copy in the case of .gitignore) files automatically. These don't need to be commited, except for gitignore. Side note: Git won't actually let you make a link to a .gitignore. Apparently at some point it was allowed.
You should now be dropped into your environment. You can test this:
echo $ENV
# devHappy hacking, ookiiBoy.