The setuptools-scm packages gained a setup hook, that sets it to the
derivation version automatically, so setting it to that manually has
become redundant.
This also affects downstream consumers of setuptools-scm, like hatch-vcs
or flit-scm.
We had neglected to nice `RC_INSTALL_ALL_EXTRAS`, which will take care
of installing the "extras" for us.
Now that they are in a standard directory, we don't need to smuggle in
the extra `-I` for Nix's tests either.
reuse actually can also be used as a python library:
https://github.com/fsfe/reuse-tool/blob/main/src/reuse/__init__.py#L11-L12
This change allows composing a python with `reuse` in `PYTHONPATH`:
```
$(nix-build -E "with import ./. {}; (python3.withPackages (ps: [ps.reuse]))")/bin/python
Python 3.11.5 (main, Aug 24 2023, 12:23:19) [GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import reuse
>>> reuse.__doc__
'reuse is a tool for compliance with the REUSE recommendations.\n\nAlthough the API is documented, it is **NOT** guaranteed stable between minor or\neven patch releases. The semantic versioning of this program pertains\nexclusively to the reuse CLI command. If you want to use reuse as a Python\nlibrary, you should pin reuse to an exact version.\n\nHaving given the above disclaimer, the API has been relatively stable\nnevertheless, and we (the maintainers) do make some efforts to not needlessly\nchange the public API.\n'
```
vs before:
```
❯ $(nix-build -E "with import ./. {}; (python3.withPackages (_: [ reuse]))")/bin/python
Python 3.11.5 (main, Aug 24 2023, 12:23:19) [GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import reuse
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'reuse'
```