The difference between Python3x vs Python3xFull was discussed in some place along the time
To solve that topic on the one hand and on the other keep it in like the standard semantic of Python and the user community we should name the packages as what they are.
Like @vcunat proposed in 2016, it would be best to call
-
the minimal version of
python[38]
with a suffix likepython[38]-slim
(currently misleadingly calledpkgs.python38
) -
means that the python derivative most equivalent to the
original Python[38]
https://www.python.org/) should be referenced withpkgs.python38
(not a minimal variant)
in nixpkgs
pkgs= import (fetchTarball https://github.com/nixos/nixpkgs/archive/nixos-20.09.tar.gz) {}
pkgs.python38
(e.g. does not include tkinter)
vs:
pkgs.python38
(includes pkgs like “bluez” (“libX11”) “tcl” “tk” “xorgproto” to be an equivalent Python3.8)
Other examples for python semantic can be seen at docker
python:3.8
(includes the packages of Python3.8)
vs
python:3.8-slim
(e.g. does not include tkinter)
currently with the slim python version called as python38
the interpreter is lying to you
-> that is no foundation to build code on top (this is a huge obstacle if you what you use it e.g. in production)
The issue needs to be fixed to have the chance to spread out python development in nix/nixos.