Skip to main content

Documentation Index

Fetch the complete documentation index at: https://jacobpevans-docs-automation-surface.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Don’t put project deps in your system PATH. Don’t put system deps in your project flake.
nix-devenv is a library of dev shells. Every project repo in the portfolio pulls its flake.nix from here. One source of truth for what “the Terraform dev shell” or “the ML dev shell” contains.

What it does

  • Exports devShells.<stack> for terraform, ansible, kubernetes, python, ml, and more
  • Provides a mkshell template — nix flake init -t github:JacobPEvans/nix-devenv#mkshell
  • Pins toolchain versions so every project on the same shell gets the same terraform / kubectl / ansible
  • Activated per-project via direnv (.envrc is committed; .direnv/ is gitignored)

How it fits

ProvidesActivated by
Per-project flake.nix templates (Terraform, Ansible, K8s, Python, ML, docs, etc.)direnv (.envrc runs use flake) on cd into the project

Getting started

1

Scaffold a flake in your project

cd my-project && nix flake init -t github:JacobPEvans/nix-devenv#mkshell. Edit flake.nix to pick the shell you need.
2

Commit `.envrc`

Add use flake to .envrc. Commit it; direnv activates the shell whenever you cd in.
3

Pull a pre-built shell

Skip the local flake and nix develop github:JacobPEvans/nix-devenv?dir=shells/<lang> for one-off work.

nix-darwin

The system layer. Tools belong there if every shell needs them.

nix-home

The user layer. Tools belong there if every project needs them but the system doesn’t.

nix-ai

AI-specific dev shell module — composes with this repo’s templates.

Source on GitHub

Templates, shells, full README.