{ description = "A very basic flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; config = { allowUnfree = true; cudaSupport = true; }; }; in rec { devShell = pkgs.mkShell { buildInputs = with pkgs; [ cudaPackages.cudatoolkit (python3.withPackages(ps: with ps; [ ipython jupyter numpy pandas matplotlib torch scikit-learn timeout-decorator torchvision ])) ]; shellHook = "jupyter notebook --ip='100.64.0.8'"; }; } ); }