{ description = "A basic flake with a shell"; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; inputs.flake-utils.url = "github:numtide/flake-utils"; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; python = pkgs.python3; python-with-packages = python.withPackages (p: with p; [ python-lsp-server rope pyflakes mccabe pycodestyle autopep8 ]); in { devShell = pkgs.mkShell { nativeBuildInputs = [ pkgs.bashInteractive ]; buildInputs = with pkgs; [ python-with-packages nodePackages.pyright zip ]; shellHook = '' python -m venv .venv source .venv/bin/activate pip install --requirement requirements.txt ''; }; } ); }