1 # To build this derivation, run `nix-build -A nixpkgs-manual.pythonInterpreterTable`
12 NB: Package names that don't follow the regular expression:
13 - `python-cosmopolitan` is not part of `pkgs.pythonInterpreters`.
14 - `_prebuilt` interpreters are used for bootstrapping internally.
15 - `python3Minimal` contains python packages, left behind conservatively.
16 - `rustpython` lacks `pythonVersion` and `implementation`.
18 (lib.strings.match "(pypy|python)([[:digit:]]*)" name) != null;
27 interpreter = pkgs.${pname};
29 "${cuteName.${interpreter.implementation}} ${interpreter.pythonVersion}";
31 interpreters = lib.reverseList (
32 lib.naturalSort (lib.filter isPythonInterpreter (lib.attrNames pythonInterpreters))
40 isPythonInterpreter name && name != pname && interpreterName name == interpreterName pname
44 result = map (pname: {
46 aliases = aliases pname;
47 interpreter = interpreterName pname;
54 | ${package.pname} | ${lib.concatStringsSep ", " package.aliases or [ ]} | ${package.interpreter} |
57 lib.concatStringsSep "" (map line data);
60 writeText "python-interpreter-table.md" ''
61 | Package | Aliases | Interpeter |
62 |---------|---------|------------|