We currently do not build mathplotlib with any backend. This can be very
confusing for users. They will try to use matplotlib and it will simply
display nothing (see #51337). We should ship at least one backend. `tk`
was chosen somewhat arbitrarily. The gtk backend is problematic (see
https://github.com/NixOS/nixpkgs/issues/50959#issuecomment-441327767)
so tkinter seems like a good choice.
There is already a backend provided on darwin so there is no reason to
include tk there.
The `buildPython*` function computes name from `pname` and `version`.
This change removes `name` attribute from all expressions in
`pkgs/development/python-modules`.
While at it, some other minor changes were made as well, such as
replacing `fetchurl` calls with `fetchPypi`.
Sets the `basedirlist` option in setup.cfg such that distutils does not search
for headers and libraries in `/usr`, and `/usr/local`.
Otherwise the build can fail on non-NixOS machines, see #15993.
In line with the Nixpkgs manual.
A mechanical change, done with this command:
find pkgs -name "*.nix" | \
while read f; do \
sed -e 's/description\s*=\s*"\([a-z]\)/description = "\u\1/' -i "$f"; \
done
I manually skipped some:
* Descriptions starting with an abbreviation, a user name or package name
* Frequently generated expressions (haskell-packages.nix)