{ description = "Python development env with venv + Jupyter"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; in { devShells.default = pkgs.mkShell { packages = with pkgs; [ python312 python312Packages.virtualenv python312Packages.pip python312Packages.jupyterlab python312Packages.ipykernel ]; shellHook = '' echo "🐍 Python: $(python3 --version)" if [ ! -d .venv ]; then python3 -m venv .venv . .venv/bin/activate pip install --upgrade pip wheel else . .venv/bin/activate fi python -m ipykernel install --user --name "nix-env" --display-name "Python (nix)" ''; }; }); }