# Dev Shells with Nix This repo contains a bunch of handy dev shells that can used on any system that has the nix package manager installed. ## Requirements - [Nix](https://github.com/nixos/nix) - [Direnv](https://direnv.net) + [nix-direnv](https://github.com/nix-community/nix-direnv) (optional) ## Available shells ### Go #### What's included? - `go` - [`gopls`](https://github.com/golang/tools/tree/master/gopls) #### Activate with Nix ```sh $ nix develop github:adtya/devshell#go ``` #### Activate with Direnv ```sh use flake github:adtya/devshell#go ``` ### Python #### What's included? - `python3` - [`pipenv`](https://github.com/pypa/pipenv) - [`pyright`](https://github.com/microsoft/pyright) - [`black`](https://github.com/microsoft/pyright) #### Activate with Nix ```sh $ nix develop github:adtya/devshell#python ``` #### Activate with Direnv ```sh use flake github:adtya/devshell#python layout pipenv # adding this will also activate pipenv shell ``` ### Haskell #### What's included? - [`ghc`](https://www.haskell.org/ghc/) - [`haskell-language-server`](https://github.com/haskell/haskell-language-server) - [`cabal`](https://www.haskell.org/cabal/) - [`stack`](https://docs.haskellstack.org/en/stable/) #### Activate with Nix ```sh $ nix develop github:adtya/devshell#haskell ``` #### Activate with Direnv ```sh use flake github:adtya/devshell#haskell ``` ### Rust #### What's included? - rustc - [rustfmt](https://github.com/rust-lang/rustfmt) - [rust-analyzer](https://rust-analyzer.github.io/) - [cargo](https://github.com/rust-lang/cargo) #### Activate with Nix ```sh $ nix develop github:adtya/devshell#rust ``` #### Activate with Direnv ```sh use flake github:adtya/devshell#rust ``` ### Node #### What's included? - [nodejs](https://nodejs.org) - [yarn](https://yarnpkg.com) #### Activate with Nix ```sh $ nix develop github:adtya/devshell#node ``` #### Activate with Direnv ```sh use flake github:adtya/devshell#node ``` ### Java #### What's included? - OpenJDK 20 - gradle 8 #### Activate with Nix ```sh $ nix develop github:adtya/devshell#java ``` #### Activate with Direnv ```sh use flake github:adtya/devshell#java ```