This repository sets us the default development environment for OSI projects. It serves as a way of making sure our development environments are reproducible, as well as providing a quick, one-line command for setting up a simulation development environment.
Generally, users will use the following work flow when using this project:
- Make sure the custom-nixpkgs repo is downloaded on your machine.
custom-nixpkgs
contains the nix build expression for thisdev-env
repo. - Make sure your home-manager or
configuration.nix
file contains acustom-nixpkgs
overlay, and include thedev-env
package in your installed packages. - Navigate to a new directory where you want to create a development environment
- Run
dev-env
in the terminal to create the flake.nix based development environment.
When packaged with the custom-nixpkgs
repo, dev-env
gives the user a one-line command to set up and activate a development environment in the current working directory. It does this by first copying the flake.nix file in this repo, into your current working directory. Then it creates a .envrc
file with the content “use flake”. Finally it runs direnv-allow
. This creates an easily reproducible development environment that is easily integrated with your favorite IDE.