{ 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 rec { packages = rec { # also works on 3.15 but there are no packages easily available for that. python = pkgs.python314.overrideAttrs ( finalAttrs: previousAttrs: { patches = previousAttrs.patches ++ [ ./0001-add-to-parser.patch ]; nativeBuildInputs = previousAttrs.nativeBuildInputs ++ [ pkgs.python3 ]; postConfigure = '' ${previousAttrs.postConfigure or ""} make regen-pegen make regen-token ''; } ); default = python; }; devShells.default = with pkgs; mkShell { buildInputs = [ ]; packages = [ packages.python ]; }; } ); }