{ description = "Python flake with native packages"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11"; nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, nixpkgs-unstable, flake-utils}: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; pkgs-unstable = import nixpkgs-unstable { inherit system; config.allowUnfree = true; }; python-packages = p: with p; [ biopython numpy dask numba ]; in { devShells.default = pkgs.mkShell { packages = (with pkgs; [ python311 (python-packages python311Packages) ]) ++ (with pkgs-unstable; [ nodejs memray # Editor of your choice # (jetbrains.plugins.addPlugins jetbrains.pycharm-professional [ "github-copilot" ]) # vscodium ]); }; }); }