Fixes#358580.
Override any django-extensions patches.
Add distutils dependency for Python 3.12 and above.
Convert buildPythonApplication to use build-system and dependencies.
Fix a scoping error with yt-dlp.
Note: if neither python.pkgs.yt-dlp nor pkgs.yt-dlp are in archivebox's
dependencies, then there is a missing runtime dependency error.
If pkgs.yt-dlp is in dependencies instead of python.pkgs.yt-dlp, (as was
the case) there is a cryptic error about 'pdm.backend' not being available.
Fix this by just using `python.pkgs.yt-dlp` everywhere.
We are migrating packages that meet below requirements:
1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration
The tool is here: https://github.com/Aleksanaa/by-name-migrate.