summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix4
-rw-r--r--pkgs/development/compilers/aspectj/default.nix4
-rw-r--r--pkgs/development/compilers/carp/default.nix4
-rw-r--r--pkgs/development/compilers/elm/default.nix5
-rwxr-xr-xpkgs/development/compilers/elm/packages/generate-node-packages.sh2
-rw-r--r--pkgs/development/compilers/elm/packages/node-packages.nix898
-rw-r--r--pkgs/development/compilers/fasm/bin.nix4
-rw-r--r--pkgs/development/compilers/fstar/default.nix4
-rw-r--r--pkgs/development/compilers/gleam/default.nix6
-rw-r--r--pkgs/development/compilers/go-jsonnet/default.nix6
-rw-r--r--pkgs/development/compilers/microscheme/default.nix2
-rw-r--r--pkgs/development/compilers/ocaml/ber-metaocaml.nix2
-rw-r--r--pkgs/development/compilers/rgbds/default.nix10
-rw-r--r--pkgs/development/compilers/rust/clippy.nix4
-rw-r--r--pkgs/development/compilers/zig/0.8.1.nix57
-rw-r--r--pkgs/development/compilers/zig/default.nix5
-rw-r--r--pkgs/development/coq-modules/semantics/default.nix3
-rw-r--r--pkgs/development/embedded/avrdude/default.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml1
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml2
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix4
-rw-r--r--pkgs/development/interpreters/clojure/babashka.nix4
-rw-r--r--pkgs/development/interpreters/guile/3.0.nix5
-rw-r--r--pkgs/development/interpreters/kona/default.nix4
-rw-r--r--pkgs/development/interpreters/spidermonkey/68.nix2
-rw-r--r--pkgs/development/interpreters/spidermonkey/78.nix2
-rw-r--r--pkgs/development/interpreters/spidermonkey/91.nix4
-rw-r--r--pkgs/development/libraries/CGAL/default.nix4
-rw-r--r--pkgs/development/libraries/apache-activemq/default.nix6
-rw-r--r--pkgs/development/libraries/apr-util/default.nix2
-rw-r--r--pkgs/development/libraries/apr/default.nix2
-rw-r--r--pkgs/development/libraries/armadillo/default.nix4
-rw-r--r--pkgs/development/libraries/audio/libsmf/default.nix11
-rw-r--r--pkgs/development/libraries/audio/lvtk/default.nix10
-rw-r--r--pkgs/development/libraries/aws-c-s3/default.nix4
-rw-r--r--pkgs/development/libraries/bctoolbox/default.nix4
-rw-r--r--pkgs/development/libraries/box2d/default.nix14
-rw-r--r--pkgs/development/libraries/bullet/default.nix4
-rw-r--r--pkgs/development/libraries/capstone/default.nix10
-rw-r--r--pkgs/development/libraries/cmrt/default.nix10
-rw-r--r--pkgs/development/libraries/codec2/default.nix6
-rw-r--r--pkgs/development/libraries/embree/default.nix4
-rw-r--r--pkgs/development/libraries/entt/default.nix5
-rw-r--r--pkgs/development/libraries/funambol/default.nix2
-rw-r--r--pkgs/development/libraries/glfw/3.x.nix4
-rw-r--r--pkgs/development/libraries/grantlee/5/default.nix11
-rw-r--r--pkgs/development/libraries/gsound/default.nix7
-rw-r--r--pkgs/development/libraries/gvm-libs/default.nix8
-rw-r--r--pkgs/development/libraries/imgui/default.nix4
-rw-r--r--pkgs/development/libraries/intel-gmmlib/default.nix4
-rw-r--r--pkgs/development/libraries/intel-media-driver/default.nix7
-rw-r--r--pkgs/development/libraries/java/commons/bcel/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/bsf/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/compress/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/fileupload/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/io/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/lang/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/logging/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/math/default.nix2
-rw-r--r--pkgs/development/libraries/jemalloc/common.nix59
-rw-r--r--pkgs/development/libraries/jemalloc/default.nix58
-rw-r--r--pkgs/development/libraries/jemalloc/jemalloc450.nix4
-rw-r--r--pkgs/development/libraries/jsoncpp/default.nix2
-rw-r--r--pkgs/development/libraries/libamqpcpp/default.nix4
-rw-r--r--pkgs/development/libraries/libb64/default.nix6
-rw-r--r--pkgs/development/libraries/libcaca/default.nix38
-rw-r--r--pkgs/development/libraries/libcacard/default.nix2
-rw-r--r--pkgs/development/libraries/libcello/default.nix4
-rw-r--r--pkgs/development/libraries/libcouchbase/default.nix4
-rw-r--r--pkgs/development/libraries/libfaketime/default.nix10
-rw-r--r--pkgs/development/libraries/libinotify-kqueue/default.nix12
-rw-r--r--pkgs/development/libraries/liblcf/default.nix7
-rw-r--r--pkgs/development/libraries/libmowgli/default.nix10
-rw-r--r--pkgs/development/libraries/libmx/default.nix10
-rw-r--r--pkgs/development/libraries/libplctag/default.nix4
-rw-r--r--pkgs/development/libraries/libsearpc/default.nix27
-rw-r--r--pkgs/development/libraries/libshout/default.nix2
-rw-r--r--pkgs/development/libraries/libvirt/5.9.0.nix141
-rw-r--r--pkgs/development/libraries/libwpe/default.nix4
-rw-r--r--pkgs/development/libraries/libx86emu/default.nix4
-rw-r--r--pkgs/development/libraries/libzim/default.nix48
-rw-r--r--pkgs/development/libraries/nco/default.nix4
-rw-r--r--pkgs/development/libraries/ndn-cxx/default.nix24
-rw-r--r--pkgs/development/libraries/ntirpc/default.nix4
-rw-r--r--pkgs/development/libraries/openbabel/2.nix10
-rw-r--r--pkgs/development/libraries/openexr/3.nix4
-rw-r--r--pkgs/development/libraries/openfst/default.nix2
-rw-r--r--pkgs/development/libraries/opengrm-ngram/default.nix2
-rw-r--r--pkgs/development/libraries/openimagedenoise/default.nix4
-rw-r--r--pkgs/development/libraries/pipewire/default.nix8
-rw-r--r--pkgs/development/libraries/precice/default.nix2
-rw-r--r--pkgs/development/libraries/proj/default.nix4
-rw-r--r--pkgs/development/libraries/qrencode/default.nix2
-rw-r--r--pkgs/development/libraries/qt-5/qtModule.nix2
-rw-r--r--pkgs/development/libraries/qtstyleplugin-kvantum/default.nix5
-rw-r--r--pkgs/development/libraries/range-v3/default.nix11
-rw-r--r--pkgs/development/libraries/reproc/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/petsc/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/zn_poly/default.nix2
-rw-r--r--pkgs/development/libraries/sentry-native/default.nix4
-rw-r--r--pkgs/development/libraries/sqlcipher/default.nix4
-rw-r--r--pkgs/development/libraries/tdlib/default.nix6
-rw-r--r--pkgs/development/libraries/thrift/0.10.nix2
-rw-r--r--pkgs/development/libraries/thrift/default.nix2
-rw-r--r--pkgs/development/libraries/tl-expected/default.nix2
-rw-r--r--pkgs/development/libraries/uid_wrapper/default.nix4
-rw-r--r--pkgs/development/libraries/unicorn/default.nix6
-rw-r--r--pkgs/development/libraries/v8/plv8_6_x.nix189
-rw-r--r--pkgs/development/libraries/wolfssl/default.nix4
-rw-r--r--pkgs/development/libraries/wxwidgets/3.0/mac.nix10
-rw-r--r--pkgs/development/libraries/x265/default.nix4
-rw-r--r--pkgs/development/libraries/xalanc/default.nix2
-rw-r--r--pkgs/development/libraries/xml-security-c/default.nix2
-rw-r--r--pkgs/development/mobile/androidenv/compose-android-packages.nix2
-rw-r--r--pkgs/development/mobile/imgpatchtools/default.nix2
-rw-r--r--pkgs/development/nim-packages/flatty/default.nix4
-rw-r--r--pkgs/development/nim-packages/packedjson/default.nix4
-rw-r--r--pkgs/development/nim-packages/redis/default.nix4
-rw-r--r--pkgs/development/nim-packages/redpool/default.nix4
-rw-r--r--pkgs/development/nim-packages/regex/default.nix4
-rw-r--r--pkgs/development/nim-packages/zippy/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/awa/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/ca-certs-nss/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/conduit/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/higlo/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/higlo/install.patch14
-rw-r--r--pkgs/development/ocaml-modules/iri/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/letsencrypt/app.nix2
-rw-r--r--pkgs/development/ocaml-modules/letsencrypt/default.nix12
-rw-r--r--pkgs/development/ocaml-modules/lustre-v6/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/ocaml-version/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/ocf/default.nix33
-rw-r--r--pkgs/development/ocaml-modules/ocf/ppx.nix14
-rw-r--r--pkgs/development/ocaml-modules/odoc-parser/default.nix18
-rw-r--r--pkgs/development/ocaml-modules/paf/default.nix18
-rw-r--r--pkgs/development/ocaml-modules/paf/le.nix2
-rw-r--r--pkgs/development/ocaml-modules/piqi-ocaml/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/piqi/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/tls/async.nix3
-rw-r--r--pkgs/development/ocaml-modules/tls/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/x509/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/xtmpl/default.nix30
-rw-r--r--pkgs/development/ocaml-modules/xtmpl/jsoo.patch26
-rw-r--r--pkgs/development/ocaml-modules/xtmpl/ppx.nix14
-rw-r--r--pkgs/development/php-packages/composer/default.nix4
-rw-r--r--pkgs/development/php-packages/gnupg/default.nix4
-rw-r--r--pkgs/development/php-packages/php-cs-fixer/default.nix4
-rw-r--r--pkgs/development/php-packages/phpstan/default.nix4
-rw-r--r--pkgs/development/php-packages/swoole/default.nix4
-rw-r--r--pkgs/development/python-modules/Nikola/default.nix4
-rw-r--r--pkgs/development/python-modules/actdiag/default.nix4
-rw-r--r--pkgs/development/python-modules/affinity/default.nix20
-rw-r--r--pkgs/development/python-modules/aiohttp-socks/default.nix5
-rw-r--r--pkgs/development/python-modules/aiohue/default.nix4
-rw-r--r--pkgs/development/python-modules/aiomusiccast/default.nix4
-rw-r--r--pkgs/development/python-modules/angr/default.nix3
-rw-r--r--pkgs/development/python-modules/antlr4-python2-runtime/default.nix21
-rw-r--r--pkgs/development/python-modules/application/default.nix26
-rw-r--r--pkgs/development/python-modules/arrow/2.nix40
-rw-r--r--pkgs/development/python-modules/ase/3.17.nix36
-rw-r--r--pkgs/development/python-modules/astroid/1.6.nix39
-rw-r--r--pkgs/development/python-modules/asyncio-dgram/default.nix30
-rw-r--r--pkgs/development/python-modules/av/default.nix4
-rw-r--r--pkgs/development/python-modules/backports_lzma/default.nix35
-rw-r--r--pkgs/development/python-modules/backports_os/default.nix35
-rw-r--r--pkgs/development/python-modules/bcrypt/3_1.nix23
-rw-r--r--pkgs/development/python-modules/bitbucket-api/default.nix23
-rw-r--r--pkgs/development/python-modules/bitbucket-cli/default.nix24
-rw-r--r--pkgs/development/python-modules/black/default.nix6
-rw-r--r--pkgs/development/python-modules/blinkpy/default.nix4
-rw-r--r--pkgs/development/python-modules/blivet/default.nix42
-rw-r--r--pkgs/development/python-modules/boschshcpy/default.nix4
-rw-r--r--pkgs/development/python-modules/box2d/default.nix36
-rw-r--r--pkgs/development/python-modules/brother-ql/default.nix37
-rw-r--r--pkgs/development/python-modules/browsermob-proxy/default.nix28
-rw-r--r--pkgs/development/python-modules/cachey/default.nix30
-rw-r--r--pkgs/development/python-modules/cairocffi/0_9.nix26
-rw-r--r--pkgs/development/python-modules/cairocffi/dlopen-paths-0.9.patch47
-rw-r--r--pkgs/development/python-modules/cairosvg/1_x.nix37
-rw-r--r--pkgs/development/python-modules/cddb/default.nix25
-rw-r--r--pkgs/development/python-modules/cdecimal/default.nix23
-rw-r--r--pkgs/development/python-modules/cherrypy/17.nix36
-rw-r--r--pkgs/development/python-modules/chex/default.nix50
-rw-r--r--pkgs/development/python-modules/cliapp/default.nix31
-rw-r--r--pkgs/development/python-modules/closure-linter/default.nix33
-rw-r--r--pkgs/development/python-modules/cmdtest/default.nix32
-rw-r--r--pkgs/development/python-modules/cogapp/default.nix2
-rw-r--r--pkgs/development/python-modules/coilmq/default.nix25
-rw-r--r--pkgs/development/python-modules/convertdate/2.2.x.nix36
-rw-r--r--pkgs/development/python-modules/coverage/default.nix2
-rw-r--r--pkgs/development/python-modules/cvxpy/default.nix4
-rw-r--r--pkgs/development/python-modules/darcsver/default.nix29
-rw-r--r--pkgs/development/python-modules/dateparser/0.x.nix55
-rw-r--r--pkgs/development/python-modules/deemix/default.nix4
-rw-r--r--pkgs/development/python-modules/deepdish/default.nix41
-rw-r--r--pkgs/development/python-modules/deezer-py/default.nix4
-rw-r--r--pkgs/development/python-modules/defcon/default.nix4
-rw-r--r--pkgs/development/python-modules/deskcon/default.nix43
-rw-r--r--pkgs/development/python-modules/django-statici18n/default.nix4
-rw-r--r--pkgs/development/python-modules/django_evolution/default.nix27
-rw-r--r--pkgs/development/python-modules/dm-tree/cmake.patch141
-rw-r--r--pkgs/development/python-modules/dm-tree/default.nix71
-rw-r--r--pkgs/development/python-modules/dnspython/1.nix25
-rw-r--r--pkgs/development/python-modules/dnspython/default.nix2
-rw-r--r--pkgs/development/python-modules/docstring-parser/default.nix27
-rw-r--r--pkgs/development/python-modules/dtopt/default.nix24
-rw-r--r--pkgs/development/python-modules/duckdb/default.nix21
-rw-r--r--pkgs/development/python-modules/dulwich/0_19.nix30
-rw-r--r--pkgs/development/python-modules/emv/default.nix42
-rw-r--r--pkgs/development/python-modules/eventlib/default.nix30
-rw-r--r--pkgs/development/python-modules/fastapi/default.nix36
-rw-r--r--pkgs/development/python-modules/faulthandler/default.nix27
-rw-r--r--pkgs/development/python-modules/fdint/default.nix36
-rw-r--r--pkgs/development/python-modules/feedparser/5.nix24
-rw-r--r--pkgs/development/python-modules/filebrowser_safe/default.nix4
-rw-r--r--pkgs/development/python-modules/flashtext/default.nix2
-rw-r--r--pkgs/development/python-modules/flask-ldap-login/default.nix37
-rw-r--r--pkgs/development/python-modules/flask-paginate/default.nix4
-rw-r--r--pkgs/development/python-modules/flup/default.nix23
-rw-r--r--pkgs/development/python-modules/flux-led/default.nix4
-rw-r--r--pkgs/development/python-modules/fontmath/default.nix4
-rw-r--r--pkgs/development/python-modules/fontparts/default.nix4
-rw-r--r--pkgs/development/python-modules/formbox/default.nix26
-rw-r--r--pkgs/development/python-modules/frozendict/default.nix5
-rw-r--r--pkgs/development/python-modules/fudge/default.nix31
-rw-r--r--pkgs/development/python-modules/gateone/default.nix35
-rw-r--r--pkgs/development/python-modules/gdrivefs/default.nix50
-rw-r--r--pkgs/development/python-modules/geopy/2.nix28
-rw-r--r--pkgs/development/python-modules/gnutls/default.nix31
-rw-r--r--pkgs/development/python-modules/goodwe/default.nix4
-rw-r--r--pkgs/development/python-modules/google-nest-sdm/default.nix4
-rw-r--r--pkgs/development/python-modules/graphviz/default.nix21
-rw-r--r--pkgs/development/python-modules/graphviz/paths.patch24
-rw-r--r--pkgs/development/python-modules/greeclimate/default.nix6
-rw-r--r--pkgs/development/python-modules/gruut-ipa/default.nix4
-rw-r--r--pkgs/development/python-modules/gruut/default.nix33
-rw-r--r--pkgs/development/python-modules/gsd/1.7.nix27
-rw-r--r--pkgs/development/python-modules/gunicorn/19.nix39
-rw-r--r--pkgs/development/python-modules/hahomematic/default.nix4
-rw-r--r--pkgs/development/python-modules/hg-git/0.8.nix36
-rw-r--r--pkgs/development/python-modules/hgsvn/default.nix32
-rw-r--r--pkgs/development/python-modules/hsaudiotag/default.nix26
-rw-r--r--pkgs/development/python-modules/html2text/2018.nix21
-rw-r--r--pkgs/development/python-modules/http_signature/default.nix26
-rw-r--r--pkgs/development/python-modules/huawei-lte-api/default.nix4
-rw-r--r--pkgs/development/python-modules/imbalanced-learn/0.4.nix29
-rw-r--r--pkgs/development/python-modules/importlib-resources/2.nix38
-rw-r--r--pkgs/development/python-modules/importlib-resources/default.nix5
-rw-r--r--pkgs/development/python-modules/ipykernel/4.nix41
-rw-r--r--pkgs/development/python-modules/ipython/5.nix72
-rw-r--r--pkgs/development/python-modules/isort/4.nix43
-rw-r--r--pkgs/development/python-modules/jaraco_functools/2.nix25
-rw-r--r--pkgs/development/python-modules/jaraco_stream/2.nix13
-rw-r--r--pkgs/development/python-modules/jmp/default.nix42
-rw-r--r--pkgs/development/python-modules/json-schema-for-humans/default.nix4
-rw-r--r--pkgs/development/python-modules/jsonrpclib/default.nix27
-rw-r--r--pkgs/development/python-modules/jupyter-client/5.nix40
-rw-r--r--pkgs/development/python-modules/jupyter-server-mathjax/default.nix2
-rw-r--r--pkgs/development/python-modules/jupyter_console/5.nix38
-rw-r--r--pkgs/development/python-modules/jupyterlab-pygments/default.nix2
-rw-r--r--pkgs/development/python-modules/jupyterlab_server/default.nix4
-rw-r--r--pkgs/development/python-modules/jupytext/default.nix4
-rw-r--r--pkgs/development/python-modules/karton-dashboard/default.nix5
-rw-r--r--pkgs/development/python-modules/keystone-engine/default.nix4
-rw-r--r--pkgs/development/python-modules/kiwisolver/1_1.nix28
-rw-r--r--pkgs/development/python-modules/koji/default.nix32
-rw-r--r--pkgs/development/python-modules/konfig/default.nix48
-rw-r--r--pkgs/development/python-modules/larch/default.nix32
-rw-r--r--pkgs/development/python-modules/lasagne/default.nix31
-rw-r--r--pkgs/development/python-modules/ldaptor/19.nix35
-rw-r--r--pkgs/development/python-modules/le/default.nix32
-rw-r--r--pkgs/development/python-modules/libcloud/2.nix2
-rw-r--r--pkgs/development/python-modules/libnacl/default.nix10
-rw-r--r--pkgs/development/python-modules/libvirt/5.9.0.nix31
-rw-r--r--pkgs/development/python-modules/lightblue/default.nix27
-rw-r--r--pkgs/development/python-modules/limnoria/default.nix54
-rw-r--r--pkgs/development/python-modules/line_profiler/default.nix36
-rw-r--r--pkgs/development/python-modules/lmdb/default.nix4
-rw-r--r--pkgs/development/python-modules/lsi/default.nix29
-rw-r--r--pkgs/development/python-modules/lxc/default.nix29
-rw-r--r--pkgs/development/python-modules/magicgui/default.nix33
-rw-r--r--pkgs/development/python-modules/manimpango/default.nix4
-rw-r--r--pkgs/development/python-modules/mapsplotlib/default.nix32
-rw-r--r--pkgs/development/python-modules/marionette-harness/default.nix33
-rw-r--r--pkgs/development/python-modules/marionette-harness/marionette_driver.nix27
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozcrash.nix25
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozdevice.nix27
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozfile.nix27
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozhttpd.nix24
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozinfo.nix27
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozlog.nix32
-rw-r--r--pkgs/development/python-modules/marionette-harness/moznetwork.nix25
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozprocess.nix24
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozprofile.nix29
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozrunner.nix31
-rw-r--r--pkgs/development/python-modules/marionette-harness/moztest.nix24
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozversion.nix25
-rw-r--r--pkgs/development/python-modules/matplotlib/2.nix80
-rw-r--r--pkgs/development/python-modules/matrix-nio/default.nix7
-rw-r--r--pkgs/development/python-modules/mautrix/default.nix4
-rw-r--r--pkgs/development/python-modules/meliae/default.nix41
-rw-r--r--pkgs/development/python-modules/memcached/default.nix2
-rw-r--r--pkgs/development/python-modules/meshtastic/default.nix6
-rw-r--r--pkgs/development/python-modules/metaphone/default.nix23
-rw-r--r--pkgs/development/python-modules/minio/default.nix12
-rw-r--r--pkgs/development/python-modules/mocket/default.nix4
-rw-r--r--pkgs/development/python-modules/moinmoin/default.nix35
-rw-r--r--pkgs/development/python-modules/moinmoin/fix_tests.patch16
-rw-r--r--pkgs/development/python-modules/mozsvc/default.nix29
-rw-r--r--pkgs/development/python-modules/mozterm/default.nix21
-rw-r--r--pkgs/development/python-modules/mpd/default.nix23
-rw-r--r--pkgs/development/python-modules/mrbob/default.nix29
-rw-r--r--pkgs/development/python-modules/msrplib/default.nix27
-rw-r--r--pkgs/development/python-modules/mutf8/default.nix9
-rw-r--r--pkgs/development/python-modules/muttils/default.nix26
-rw-r--r--pkgs/development/python-modules/mwlib-ext/default.nix24
-rw-r--r--pkgs/development/python-modules/mwlib-rl/default.nix27
-rw-r--r--pkgs/development/python-modules/mwlib/default.nix55
-rw-r--r--pkgs/development/python-modules/mypy/default.nix11
-rw-r--r--pkgs/development/python-modules/namebench/default.nix49
-rw-r--r--pkgs/development/python-modules/napari-console/default.nix33
-rw-r--r--pkgs/development/python-modules/napari-plugin-engine/default.nix26
-rw-r--r--pkgs/development/python-modules/napari-svg/default.nix30
-rw-r--r--pkgs/development/python-modules/napari/default.nix75
-rw-r--r--pkgs/development/python-modules/nbformat/2.nix41
-rw-r--r--pkgs/development/python-modules/networkx/2.2.nix28
-rw-r--r--pkgs/development/python-modules/nix-prefetch-github/default.nix22
-rw-r--r--pkgs/development/python-modules/nltk/default.nix8
-rw-r--r--pkgs/development/python-modules/nose-focus/default.nix35
-rw-r--r--pkgs/development/python-modules/nose-of-yeti/default.nix30
-rw-r--r--pkgs/development/python-modules/notebook/2.nix76
-rw-r--r--pkgs/development/python-modules/notify/default.nix41
-rw-r--r--pkgs/development/python-modules/nwdiag/default.nix4
-rw-r--r--pkgs/development/python-modules/nxt-python/default.nix36
-rw-r--r--pkgs/development/python-modules/oauthlib/3.1.nix33
-rw-r--r--pkgs/development/python-modules/objax/default.nix46
-rw-r--r--pkgs/development/python-modules/onnx/default.nix2
-rw-r--r--pkgs/development/python-modules/openpyxl/2.nix38
-rw-r--r--pkgs/development/python-modules/opt-einsum/2.nix30
-rw-r--r--pkgs/development/python-modules/ormar/default.nix80
-rw-r--r--pkgs/development/python-modules/p1monitor/default.nix4
-rw-r--r--pkgs/development/python-modules/packbits/default.nix26
-rw-r--r--pkgs/development/python-modules/pagerduty/default.nix23
-rw-r--r--pkgs/development/python-modules/pandas/2.nix119
-rw-r--r--pkgs/development/python-modules/path.py/2.nix42
-rw-r--r--pkgs/development/python-modules/pecan/default.nix2
-rw-r--r--pkgs/development/python-modules/pg8000/1_12.nix27
-rw-r--r--pkgs/development/python-modules/pglast/default.nix4
-rw-r--r--pkgs/development/python-modules/pgpy/default.nix3
-rw-r--r--pkgs/development/python-modules/pikepdf/default.nix6
-rw-r--r--pkgs/development/python-modules/platformdirs/2.nix43
-rw-r--r--pkgs/development/python-modules/plumbum/default.nix4
-rw-r--r--pkgs/development/python-modules/plyvel/default.nix4
-rw-r--r--pkgs/development/python-modules/praw/6.3.nix53
-rw-r--r--pkgs/development/python-modules/pre-commit-hooks/default.nix15
-rw-r--r--pkgs/development/python-modules/progressbar231/default.nix23
-rw-r--r--pkgs/development/python-modules/prometheus-client/default.nix9
-rw-r--r--pkgs/development/python-modules/psygnal/default.nix35
-rw-r--r--pkgs/development/python-modules/pvo/default.nix4
-rw-r--r--pkgs/development/python-modules/pyamf/default.nix22
-rw-r--r--pkgs/development/python-modules/pyblosxom/default.nix31
-rw-r--r--pkgs/development/python-modules/pycarddav/default.nix31
-rw-r--r--pkgs/development/python-modules/pycassa/default.nix38
-rw-r--r--pkgs/development/python-modules/pychromecast/default.nix4
-rw-r--r--pkgs/development/python-modules/pycryptopp/default.nix44
-rw-r--r--pkgs/development/python-modules/pycurl2/default.nix34
-rw-r--r--pkgs/development/python-modules/pydns/default.nix23
-rw-r--r--pkgs/development/python-modules/pyenvisalink/default.nix4
-rw-r--r--pkgs/development/python-modules/pyexcelerator/default.nix28
-rw-r--r--pkgs/development/python-modules/pyexiv2/default.nix28
-rw-r--r--pkgs/development/python-modules/pygtksourceview/codegendir.patch25
-rw-r--r--pkgs/development/python-modules/pygtksourceview/default.nix21
-rw-r--r--pkgs/development/python-modules/pyhamcrest/1.nix27
-rw-r--r--pkgs/development/python-modules/pykeyatome/default.nix4
-rw-r--r--pkgs/development/python-modules/pykickstart/default.nix38
-rw-r--r--pkgs/development/python-modules/pylama/default.nix6
-rw-r--r--pkgs/development/python-modules/pylibacl/0.5.nix26
-rw-r--r--pkgs/development/python-modules/pylint/1.9.nix51
-rw-r--r--pkgs/development/python-modules/pylutron-caseta/default.nix12
-rw-r--r--pkgs/development/python-modules/pymelcloud/default.nix45
-rw-r--r--pkgs/development/python-modules/pynetdicom/default.nix4
-rw-r--r--pkgs/development/python-modules/pynput/default.nix4
-rw-r--r--pkgs/development/python-modules/pyobjc/default.nix22
-rw-r--r--pkgs/development/python-modules/pypdf/default.nix25
-rw-r--r--pkgs/development/python-modules/pypoppler/default.nix41
-rw-r--r--pkgs/development/python-modules/pypoppler/pypoppler-0.39.0.patch23
-rw-r--r--pkgs/development/python-modules/pypoppler/pypoppler-poppler.c.patch12
-rw-r--r--pkgs/development/python-modules/pyproj/default.nix4
-rw-r--r--pkgs/development/python-modules/pyreport/default.nix26
-rw-r--r--pkgs/development/python-modules/pyside/apiextractor.nix10
-rw-r--r--pkgs/development/python-modules/pyside/generatorrunner.nix13
-rw-r--r--pkgs/development/python-modules/pysimplegui/default.nix27
-rw-r--r--pkgs/development/python-modules/pystray/default.nix4
-rw-r--r--pkgs/development/python-modules/pytap2/default.nix42
-rw-r--r--pkgs/development/python-modules/pytest-aio/default.nix30
-rw-r--r--pkgs/development/python-modules/pytest-helpers-namespace/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-mock/2.nix39
-rw-r--r--pkgs/development/python-modules/pytest-mypy-plugins/default.nix29
-rw-r--r--pkgs/development/python-modules/pytest-services/default.nix3
-rw-r--r--pkgs/development/python-modules/python-codon-tables/default.nix4
-rw-r--r--pkgs/development/python-modules/python-izone/default.nix9
-rw-r--r--pkgs/development/python-modules/python-lsp-server/default.nix11
-rw-r--r--pkgs/development/python-modules/python-lzo/default.nix4
-rw-r--r--pkgs/development/python-modules/python-otr/default.nix36
-rw-r--r--pkgs/development/python-modules/python-utils/default.nix4
-rw-r--r--pkgs/development/python-modules/python2-pythondialog/default.nix27
-rw-r--r--pkgs/development/python-modules/python_statsd/default.nix28
-rw-r--r--pkgs/development/python-modules/pythonirclib/default.nix34
-rw-r--r--pkgs/development/python-modules/pythonmagick/default.nix43
-rw-r--r--pkgs/development/python-modules/pytradfri/default.nix4
-rw-r--r--pkgs/development/python-modules/pyupgrade/default.nix4
-rw-r--r--pkgs/development/python-modules/pywbem/default.nix4
-rw-r--r--pkgs/development/python-modules/pyweatherflowrest/default.nix4
-rw-r--r--pkgs/development/python-modules/pywebdav/default.nix17
-rw-r--r--pkgs/development/python-modules/pyxml/default.nix30
-rw-r--r--pkgs/development/python-modules/qpid-python/default.nix2
-rw-r--r--pkgs/development/python-modules/qserve/default.nix24
-rw-r--r--pkgs/development/python-modules/qtconsole/default.nix4
-rw-r--r--pkgs/development/python-modules/questionary/default.nix18
-rw-r--r--pkgs/development/python-modules/remotecv/default.nix39
-rw-r--r--pkgs/development/python-modules/remotecv/install_requires.patch16
-rw-r--r--pkgs/development/python-modules/renault-api/default.nix4
-rw-r--r--pkgs/development/python-modules/requests-cache/default.nix4
-rw-r--r--pkgs/development/python-modules/restview/default.nix26
-rw-r--r--pkgs/development/python-modules/rhpl/builder.sh13
-rw-r--r--pkgs/development/python-modules/rhpl/default.nix19
-rw-r--r--pkgs/development/python-modules/robotframework-ride/default.nix32
-rw-r--r--pkgs/development/python-modules/rpkg/default.nix27
-rw-r--r--pkgs/development/python-modules/rpy2/2.nix108
-rw-r--r--pkgs/development/python-modules/rpy2/r-libs-site.patch20
-rw-r--r--pkgs/development/python-modules/rsa/4_0.nix33
-rw-r--r--pkgs/development/python-modules/ruamel-ordereddict/default.nix25
-rw-r--r--pkgs/development/python-modules/ruamel-yaml/0.16.nix38
-rw-r--r--pkgs/development/python-modules/runsnakerun/default.nix25
-rw-r--r--pkgs/development/python-modules/sandboxlib/default.nix26
-rw-r--r--pkgs/development/python-modules/scikit-learn/0.20.nix39
-rw-r--r--pkgs/development/python-modules/seaborn/0.9.1.nix33
-rw-r--r--pkgs/development/python-modules/seahub/default.nix56
-rw-r--r--pkgs/development/python-modules/semantic/default.nix30
-rw-r--r--pkgs/development/python-modules/serversyncstorage/default.nix47
-rw-r--r--pkgs/development/python-modules/setuptoolsdarcs/default.nix30
-rw-r--r--pkgs/development/python-modules/simpleai/default.nix29
-rw-r--r--pkgs/development/python-modules/simpleparse/default.nix27
-rw-r--r--pkgs/development/python-modules/singledispatch/default.nix34
-rw-r--r--pkgs/development/python-modules/sipsimple/default.nix46
-rw-r--r--pkgs/development/python-modules/slowaes/default.nix24
-rw-r--r--pkgs/development/python-modules/smartdc/default.nix25
-rw-r--r--pkgs/development/python-modules/snug/default.nix39
-rw-r--r--pkgs/development/python-modules/socid-extractor/default.nix4
-rw-r--r--pkgs/development/python-modules/sopel/default.nix2
-rw-r--r--pkgs/development/python-modules/soupsieve/1.nix36
-rw-r--r--pkgs/development/python-modules/spambayes/default.nix20
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-spelling/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlite3dbm/default.nix23
-rw-r--r--pkgs/development/python-modules/sqlmap/default.nix2
-rw-r--r--pkgs/development/python-modules/squaremap/default.nix29
-rw-r--r--pkgs/development/python-modules/srsly/default.nix4
-rw-r--r--pkgs/development/python-modules/starlette/default.nix18
-rw-r--r--pkgs/development/python-modules/stompclient/default.nix29
-rw-r--r--pkgs/development/python-modules/stringtemplate/default.nix24
-rw-r--r--pkgs/development/python-modules/stumpy/default.nix4
-rw-r--r--pkgs/development/python-modules/subprocess32/default.nix37
-rw-r--r--pkgs/development/python-modules/suds/default.nix29
-rw-r--r--pkgs/development/python-modules/suds/suds-0.4-CVE-2013-2217.patch19
-rw-r--r--pkgs/development/python-modules/superqt/default.nix31
-rw-r--r--pkgs/development/python-modules/supervisor/default.nix4
-rw-r--r--pkgs/development/python-modules/sure/default.nix9
-rw-r--r--pkgs/development/python-modules/sybase/default.nix30
-rw-r--r--pkgs/development/python-modules/sympy/1_5.nix35
-rw-r--r--pkgs/development/python-modules/tables/3.5.nix56
-rw-r--r--pkgs/development/python-modules/tarman/default.nix34
-rw-r--r--pkgs/development/python-modules/tensorboardx/default.nix3
-rw-r--r--pkgs/development/python-modules/tern/default.nix4
-rw-r--r--pkgs/development/python-modules/thumbor/0001-Don-t-use-which-implementation-to-find-required-exec.patch277
-rw-r--r--pkgs/development/python-modules/thumbor/default.nix90
-rw-r--r--pkgs/development/python-modules/time-machine/default.nix4
-rw-r--r--pkgs/development/python-modules/tmdb3/default.nix23
-rw-r--r--pkgs/development/python-modules/tokenserver/default.nix36
-rw-r--r--pkgs/development/python-modules/toolz/2.nix28
-rw-r--r--pkgs/development/python-modules/tornado/4.nix8
-rw-r--r--pkgs/development/python-modules/tornado/5.nix8
-rw-r--r--pkgs/development/python-modules/traitlets/4.nix36
-rw-r--r--pkgs/development/python-modules/treeo/default.nix41
-rw-r--r--pkgs/development/python-modules/trio-asyncio/default.nix47
-rw-r--r--pkgs/development/python-modules/ttystatus/default.nix30
-rw-r--r--pkgs/development/python-modules/twitterapi/default.nix7
-rw-r--r--pkgs/development/python-modules/typed-ast/default.nix31
-rw-r--r--pkgs/development/python-modules/types-decorator/default.nix9
-rw-r--r--pkgs/development/python-modules/types-protobuf/default.nix22
-rw-r--r--pkgs/development/python-modules/types-requests/default.nix4
-rw-r--r--pkgs/development/python-modules/types-setuptools/default.nix8
-rw-r--r--pkgs/development/python-modules/types-typed-ast/default.nix9
-rw-r--r--pkgs/development/python-modules/tzlocal/2.nix36
-rw-r--r--pkgs/development/python-modules/ujson/2.nix28
-rw-r--r--pkgs/development/python-modules/umemcache/default.nix20
-rw-r--r--pkgs/development/python-modules/uritools/default.nix21
-rw-r--r--pkgs/development/python-modules/uvloop/default.nix2
-rw-r--r--pkgs/development/python-modules/variants/default.nix7
-rw-r--r--pkgs/development/python-modules/vpk/default.nix4
-rw-r--r--pkgs/development/python-modules/wptserve/default.nix31
-rw-r--r--pkgs/development/python-modules/wsgiproxy/default.nix27
-rw-r--r--pkgs/development/python-modules/xattr/default.nix4
-rw-r--r--pkgs/development/python-modules/xcaplib/default.nix28
-rw-r--r--pkgs/development/python-modules/yenc/default.nix29
-rw-r--r--pkgs/development/python-modules/yt/default.nix54
-rw-r--r--pkgs/development/python-modules/zbase32/default.nix28
-rw-r--r--pkgs/development/tools/analysis/checkov/default.nix5
-rw-r--r--pkgs/development/tools/analysis/rizin/cutter.nix4
-rw-r--r--pkgs/development/tools/analysis/rizin/default.nix4
-rw-r--r--pkgs/development/tools/analysis/tartan/default.nix52
-rw-r--r--pkgs/development/tools/buf/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/apache-ant/1.9.nix2
-rw-r--r--pkgs/development/tools/build-managers/apache-maven/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/pants/default.nix41
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/github-runner/default.nix5
-rw-r--r--pkgs/development/tools/continuous-integration/laminar/default.nix9
-rw-r--r--pkgs/development/tools/dapper/default.nix4
-rw-r--r--pkgs/development/tools/database/schemaspy/default.nix2
-rw-r--r--pkgs/development/tools/ddosify/default.nix8
-rw-r--r--pkgs/development/tools/delve/default.nix6
-rw-r--r--pkgs/development/tools/dprint/default.nix4
-rw-r--r--pkgs/development/tools/esbuild/default.nix4
-rw-r--r--pkgs/development/tools/fedpkg/default.nix38
-rw-r--r--pkgs/development/tools/fedpkg/fix-paths.patch16
-rw-r--r--pkgs/development/tools/frugal/default.nix6
-rw-r--r--pkgs/development/tools/go-task/default.nix6
-rw-r--r--pkgs/development/tools/gofumpt/default.nix6
-rw-r--r--pkgs/development/tools/gopls/default.nix6
-rw-r--r--pkgs/development/tools/hjson-go/default.nix4
-rw-r--r--pkgs/development/tools/java/visualvm/default.nix4
-rw-r--r--pkgs/development/tools/metal-cli/default.nix6
-rw-r--r--pkgs/development/tools/minizinc/ide.nix4
-rw-r--r--pkgs/development/tools/misc/doclifter/default.nix12
-rw-r--r--pkgs/development/tools/misc/gede/default.nix4
-rw-r--r--pkgs/development/tools/misc/inotify-tools/default.nix16
-rw-r--r--pkgs/development/tools/misc/premake/3.nix2
-rw-r--r--pkgs/development/tools/misc/premake/default.nix2
-rw-r--r--pkgs/development/tools/mold/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/ocamlformat/default.nix10
-rw-r--r--pkgs/development/tools/ocaml/ocamlformat/generic.nix25
-rw-r--r--pkgs/development/tools/parsing/byacc/default.nix4
-rw-r--r--pkgs/development/tools/perseus-cli/default.nix28
-rw-r--r--pkgs/development/tools/profiling/heaptrack/default.nix4
-rw-r--r--pkgs/development/tools/pup/default.nix2
-rw-r--r--pkgs/development/tools/rust/sqlx-cli/default.nix6
-rw-r--r--pkgs/development/tools/selenium/chromedriver/default.nix5
-rw-r--r--pkgs/development/tools/sumneko-lua-language-server/default.nix10
-rw-r--r--pkgs/development/tools/tokio-console/default.nix29
-rw-r--r--pkgs/development/tools/wally-cli/default.nix3
-rw-r--r--pkgs/development/tools/wasm-pack/default.nix6
-rw-r--r--pkgs/development/web/cypress/default.nix4
-rw-r--r--pkgs/development/web/deno/default.nix6
-rw-r--r--pkgs/development/web/nodejs/nodejs.nix1
-rw-r--r--pkgs/development/web/postman/default.nix4
555 files changed, 3087 insertions, 8749 deletions
diff --git a/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix b/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix
index 88aa7f30669..26f7d9138cc 100644
--- a/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix
+++ b/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   pname = "adoptopenjdk-icedtea-web";
 
-  version = "1.8.7";
+  version = "1.8.8";
 
   src = fetchFromGitHub {
     owner = "AdoptOpenJDK";
     repo = "IcedTea-Web";
     rev = "icedtea-web-${version}";
-    sha256 = "sha256-XY6S1IvDqPxkYgFs7kB9AR0zQ4n3COVbS2lUT5mhTVc=";
+    sha256 = "sha256-hpEVWG9ltNDL/0EFJjgQRRce+BLcCO4ZERULYZxyC1o=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config bc ];
diff --git a/pkgs/development/compilers/aspectj/default.nix b/pkgs/development/compilers/aspectj/default.nix
index 24ff50f558c..e1b299f1e73 100644
--- a/pkgs/development/compilers/aspectj/default.nix
+++ b/pkgs/development/compilers/aspectj/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "aspectj";
-  version = "1.9.6";
+  version = "1.9.7";
   builder = ./builder.sh;
 
   src = let
     versionSnakeCase = builtins.replaceStrings ["."] ["_"] version;
   in fetchurl {
     url = "https://github.com/eclipse/org.aspectj/releases/download/V${versionSnakeCase}/aspectj-${version}.jar";
-    sha256 = "02jh66l3vw57k9a4dxlga3qh3487r36gyi6k2z2mmqxbpqajslja";
+    sha256 = "sha256-xrg88nLOcagaAsFSnnYChhlv6EKhdBqkJJTDzhUBvTo=";
   };
 
   inherit jre;
diff --git a/pkgs/development/compilers/carp/default.nix b/pkgs/development/compilers/carp/default.nix
index fa2b4ebd620..3f188e23317 100644
--- a/pkgs/development/compilers/carp/default.nix
+++ b/pkgs/development/compilers/carp/default.nix
@@ -2,13 +2,13 @@
 
 haskellPackages.mkDerivation rec {
   pname = "carp";
-  version = "0.5.3";
+  version = "0.5.4";
 
   src = fetchFromGitHub {
     owner = "carp-lang";
     repo = "Carp";
     rev = "v${version}";
-    sha256 = "08ryk30ii24qsdpdq7bqi406ynv9nr8zy2pcv9n70ar8fxfw0859";
+    sha256 = "sha256-o7NLd7jC1BvcoVzbD18LvHg/SqOnfn9yELUrpg2uZtY=";
   };
 
   buildTools = [ makeWrapper ];
diff --git a/pkgs/development/compilers/elm/default.nix b/pkgs/development/compilers/elm/default.nix
index d63c6ff0596..11b5f58a12d 100644
--- a/pkgs/development/compilers/elm/default.nix
+++ b/pkgs/development/compilers/elm/default.nix
@@ -1,10 +1,13 @@
 { lib, stdenv, pkgs
-, haskell, haskellPackages, nodejs
+, haskell, haskellPackages, nodejs-14_x
 , fetchurl, fetchpatch, makeWrapper, writeScriptBin
   # Rust dependecies
 , curl, rustPlatform, openssl, pkg-config, Security, darwin
 }:
 let
+  # To controll nodejs version we pass down
+  nodejs = nodejs-14_x;
+
   fetchElmDeps = import ./fetchElmDeps.nix { inherit stdenv lib fetchurl; };
 
   hsPkgs = haskellPackages.override {
diff --git a/pkgs/development/compilers/elm/packages/generate-node-packages.sh b/pkgs/development/compilers/elm/packages/generate-node-packages.sh
index 0ffa56eae90..49e697e43e8 100755
--- a/pkgs/development/compilers/elm/packages/generate-node-packages.sh
+++ b/pkgs/development/compilers/elm/packages/generate-node-packages.sh
@@ -4,9 +4,7 @@ ROOT="$(realpath "$(dirname -- "$(readlink -f -- "${BASH_SOURCE[0]}")")"/../../.
 
 set -eu -o pipefail
 
-rm -f node-env.nix
 $(nix-build $ROOT -A nodePackages.node2nix --no-out-link)/bin/node2nix \
-    --nodejs-12 \
     -i node-packages.json \
     -o node-packages.nix \
     -c node-composition.nix \
diff --git a/pkgs/development/compilers/elm/packages/node-packages.nix b/pkgs/development/compilers/elm/packages/node-packages.nix
index c2b5c5a07dc..083ab8530d8 100644
--- a/pkgs/development/compilers/elm/packages/node-packages.nix
+++ b/pkgs/development/compilers/elm/packages/node-packages.nix
@@ -49,13 +49,13 @@ let
         sha512 = "eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==";
       };
     };
-    "@babel/generator-7.16.0" = {
+    "@babel/generator-7.16.5" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.16.0.tgz";
-        sha512 = "RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.16.5.tgz";
+        sha512 = "kIvCdjZqcdKqoDbVVdt5R99icaRtrtYhYK/xux5qiWCBmfdvEYMFZ68QCrpE5cbFM1JsuArUNs1ZkuKtTtUcZA==";
       };
     };
     "@babel/helper-annotate-as-pure-7.16.0" = {
@@ -67,13 +67,13 @@ let
         sha512 = "ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==";
       };
     };
-    "@babel/helper-builder-binary-assignment-operator-visitor-7.16.0" = {
+    "@babel/helper-builder-binary-assignment-operator-visitor-7.16.5" = {
       name = "_at_babel_slash_helper-builder-binary-assignment-operator-visitor";
       packageName = "@babel/helper-builder-binary-assignment-operator-visitor";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.0.tgz";
-        sha512 = "9KuleLT0e77wFUku6TUkqZzCEymBdtuQQ27MhEKzf9UOOJu3cYj98kyaDAzxpC7lV6DGiZFuC8XqDsq8/Kl6aQ==";
+        url = "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.5.tgz";
+        sha512 = "3JEA9G5dmmnIWdzaT9d0NmFRgYnWUThLsDaL7982H0XqqWr56lRrsmwheXFMjR+TMl7QMBb6mzy9kvgr1lRLUA==";
       };
     };
     "@babel/helper-compilation-targets-7.16.3" = {
@@ -85,13 +85,13 @@ let
         sha512 = "vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==";
       };
     };
-    "@babel/helper-create-class-features-plugin-7.16.0" = {
+    "@babel/helper-create-class-features-plugin-7.16.5" = {
       name = "_at_babel_slash_helper-create-class-features-plugin";
       packageName = "@babel/helper-create-class-features-plugin";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.0.tgz";
-        sha512 = "XLwWvqEaq19zFlF5PTgOod4bUA+XbkR4WLQBct1bkzmxJGB0ZEJaoKF4c8cgH9oBtCDuYJ8BP5NB9uFiEgO5QA==";
+        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.5.tgz";
+        sha512 = "NEohnYA7mkB8L5JhU7BLwcBdU3j83IziR9aseMueWGeAjblbul3zzb8UvJ3a1zuBiqCMObzCJHFqKIQE6hTVmg==";
       };
     };
     "@babel/helper-create-regexp-features-plugin-7.16.0" = {
@@ -103,6 +103,15 @@ let
         sha512 = "3DyG0zAFAZKcOp7aVr33ddwkxJ0Z0Jr5V99y3I690eYLpukJsJvAbzTy1ewoCqsML8SbIrjH14Jc/nSQ4TvNPA==";
       };
     };
+    "@babel/helper-environment-visitor-7.16.5" = {
+      name = "_at_babel_slash_helper-environment-visitor";
+      packageName = "@babel/helper-environment-visitor";
+      version = "7.16.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.5.tgz";
+        sha512 = "ODQyc5AnxmZWm/R2W7fzhamOk1ey8gSguo5SGvF0zcB3uUzRpTRmM/jmLSm9bDMyPlvbyJ+PwPEK0BWIoZ9wjg==";
+      };
+    };
     "@babel/helper-explode-assignable-expression-7.16.0" = {
       name = "_at_babel_slash_helper-explode-assignable-expression";
       packageName = "@babel/helper-explode-assignable-expression";
@@ -139,13 +148,13 @@ let
         sha512 = "1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==";
       };
     };
-    "@babel/helper-member-expression-to-functions-7.16.0" = {
+    "@babel/helper-member-expression-to-functions-7.16.5" = {
       name = "_at_babel_slash_helper-member-expression-to-functions";
       packageName = "@babel/helper-member-expression-to-functions";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz";
-        sha512 = "bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ==";
+        url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.5.tgz";
+        sha512 = "7fecSXq7ZrLE+TWshbGT+HyCLkxloWNhTbU2QM1NTI/tDqyf0oZiMcEfYtDuUDCo528EOlt39G1rftea4bRZIw==";
       };
     };
     "@babel/helper-module-imports-7.16.0" = {
@@ -157,13 +166,13 @@ let
         sha512 = "kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==";
       };
     };
-    "@babel/helper-module-transforms-7.16.0" = {
+    "@babel/helper-module-transforms-7.16.5" = {
       name = "_at_babel_slash_helper-module-transforms";
       packageName = "@babel/helper-module-transforms";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz";
-        sha512 = "My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA==";
+        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.5.tgz";
+        sha512 = "CkvMxgV4ZyyioElFwcuWnDCcNIeyqTkCm9BxXZi73RR1ozqlpboqsbGUNvRTflgZtFbbJ1v5Emvm+lkjMYY/LQ==";
       };
     };
     "@babel/helper-optimise-call-expression-7.16.0" = {
@@ -175,31 +184,31 @@ let
         sha512 = "SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw==";
       };
     };
-    "@babel/helper-plugin-utils-7.14.5" = {
+    "@babel/helper-plugin-utils-7.16.5" = {
       name = "_at_babel_slash_helper-plugin-utils";
       packageName = "@babel/helper-plugin-utils";
-      version = "7.14.5";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz";
-        sha512 = "/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==";
+        url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.5.tgz";
+        sha512 = "59KHWHXxVA9K4HNF4sbHCf+eJeFe0Te/ZFGqBT4OjXhrwvA04sGfaEGsVTdsjoszq0YTP49RC9UKe5g8uN2RwQ==";
       };
     };
-    "@babel/helper-remap-async-to-generator-7.16.4" = {
+    "@babel/helper-remap-async-to-generator-7.16.5" = {
       name = "_at_babel_slash_helper-remap-async-to-generator";
       packageName = "@babel/helper-remap-async-to-generator";
-      version = "7.16.4";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.4.tgz";
-        sha512 = "vGERmmhR+s7eH5Y/cp8PCVzj4XEjerq8jooMfxFdA5xVtAk9Sh4AQsrWgiErUEBjtGrBtOFKDUcWQFW4/dFwMA==";
+        url = "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.5.tgz";
+        sha512 = "X+aAJldyxrOmN9v3FKp+Hu1NO69VWgYgDGq6YDykwRPzxs5f2N+X988CBXS7EQahDU+Vpet5QYMqLk+nsp+Qxw==";
       };
     };
-    "@babel/helper-replace-supers-7.16.0" = {
+    "@babel/helper-replace-supers-7.16.5" = {
       name = "_at_babel_slash_helper-replace-supers";
       packageName = "@babel/helper-replace-supers";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz";
-        sha512 = "TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==";
+        url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.5.tgz";
+        sha512 = "ao3seGVa/FZCMCCNDuBcqnBFSbdr8N2EW35mzojx3TwfIbdPmNK+JV6+2d5bR0Z71W5ocLnQp9en/cTF7pBJiQ==";
       };
     };
     "@babel/helper-simple-access-7.16.0" = {
@@ -247,22 +256,22 @@ let
         sha512 = "OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==";
       };
     };
-    "@babel/helper-wrap-function-7.16.0" = {
+    "@babel/helper-wrap-function-7.16.5" = {
       name = "_at_babel_slash_helper-wrap-function";
       packageName = "@babel/helper-wrap-function";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.0.tgz";
-        sha512 = "VVMGzYY3vkWgCJML+qVLvGIam902mJW0FvT7Avj1zEe0Gn7D93aWdLblYARTxEw+6DhZmtzhBM2zv0ekE5zg1g==";
+        url = "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.5.tgz";
+        sha512 = "2J2pmLBqUqVdJw78U0KPNdeE2qeuIyKoG4mKV7wAq3mc4jJG282UgjZw4ZYDnqiWQuS3Y3IYdF/AQ6CpyBV3VA==";
       };
     };
-    "@babel/helpers-7.16.3" = {
+    "@babel/helpers-7.16.5" = {
       name = "_at_babel_slash_helpers";
       packageName = "@babel/helpers";
-      version = "7.16.3";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.3.tgz";
-        sha512 = "Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==";
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.5.tgz";
+        sha512 = "TLgi6Lh71vvMZGEkFuIxzaPsyeYCHQ5jJOOX1f0xXn0uciFuE8cEk0wyBquMcCxBXZ5BJhE2aUB7pnWTD150Tw==";
       };
     };
     "@babel/highlight-7.16.0" = {
@@ -274,130 +283,130 @@ let
         sha512 = "t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==";
       };
     };
-    "@babel/parser-7.16.4" = {
+    "@babel/parser-7.16.6" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.16.4";
+      version = "7.16.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz";
-        sha512 = "6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.16.6.tgz";
+        sha512 = "Gr86ujcNuPDnNOY8mi383Hvi8IYrJVJYuf3XcuBM/Dgd+bINn/7tHqsj+tKkoreMbmGsFLsltI/JJd8fOFWGDQ==";
       };
     };
-    "@babel/plugin-proposal-async-generator-functions-7.16.4" = {
+    "@babel/plugin-proposal-async-generator-functions-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-async-generator-functions";
       packageName = "@babel/plugin-proposal-async-generator-functions";
-      version = "7.16.4";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.4.tgz";
-        sha512 = "/CUekqaAaZCQHleSK/9HajvcD/zdnJiKRiuUFq8ITE+0HsPzquf53cpFiqAwl/UfmJbR6n5uGPQSPdrmKOvHHg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.5.tgz";
+        sha512 = "C/FX+3HNLV6sz7AqbTQqEo1L9/kfrKjxcVtgyBCmvIgOjvuBVUWooDoi7trsLxOzCEo5FccjRvKHkfDsJFZlfA==";
       };
     };
-    "@babel/plugin-proposal-class-properties-7.16.0" = {
+    "@babel/plugin-proposal-class-properties-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-class-properties";
       packageName = "@babel/plugin-proposal-class-properties";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.0.tgz";
-        sha512 = "mCF3HcuZSY9Fcx56Lbn+CGdT44ioBMMvjNVldpKtj8tpniETdLjnxdHI1+sDWXIM1nNt+EanJOZ3IG9lzVjs7A==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.5.tgz";
+        sha512 = "pJD3HjgRv83s5dv1sTnDbZOaTjghKEz8KUn1Kbh2eAIRhGuyQ1XSeI4xVXU3UlIEVA3DAyIdxqT1eRn7Wcn55A==";
       };
     };
-    "@babel/plugin-proposal-dynamic-import-7.16.0" = {
+    "@babel/plugin-proposal-dynamic-import-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-dynamic-import";
       packageName = "@babel/plugin-proposal-dynamic-import";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.0.tgz";
-        sha512 = "QGSA6ExWk95jFQgwz5GQ2Dr95cf7eI7TKutIXXTb7B1gCLTCz5hTjFTQGfLFBBiC5WSNi7udNwWsqbbMh1c4yQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.5.tgz";
+        sha512 = "P05/SJZTTvHz79LNYTF8ff5xXge0kk5sIIWAypcWgX4BTRUgyHc8wRxJ/Hk+mU0KXldgOOslKaeqnhthcDJCJQ==";
       };
     };
-    "@babel/plugin-proposal-export-namespace-from-7.16.0" = {
+    "@babel/plugin-proposal-export-namespace-from-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-export-namespace-from";
       packageName = "@babel/plugin-proposal-export-namespace-from";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.0.tgz";
-        sha512 = "CjI4nxM/D+5wCnhD11MHB1AwRSAYeDT+h8gCdcVJZ/OK7+wRzFsf7PFPWVpVpNRkHMmMkQWAHpTq+15IXQ1diA==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.5.tgz";
+        sha512 = "i+sltzEShH1vsVydvNaTRsgvq2vZsfyrd7K7vPLUU/KgS0D5yZMe6uipM0+izminnkKrEfdUnz7CxMRb6oHZWw==";
       };
     };
-    "@babel/plugin-proposal-json-strings-7.16.0" = {
+    "@babel/plugin-proposal-json-strings-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-json-strings";
       packageName = "@babel/plugin-proposal-json-strings";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.0.tgz";
-        sha512 = "kouIPuiv8mSi5JkEhzApg5Gn6hFyKPnlkO0a9YSzqRurH8wYzSlf6RJdzluAsbqecdW5pBvDJDfyDIUR/vLxvg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.5.tgz";
+        sha512 = "QQJueTFa0y9E4qHANqIvMsuxM/qcLQmKttBACtPCQzGUEizsXDACGonlPiSwynHfOa3vNw0FPMVvQzbuXwh4SQ==";
       };
     };
-    "@babel/plugin-proposal-logical-assignment-operators-7.16.0" = {
+    "@babel/plugin-proposal-logical-assignment-operators-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-logical-assignment-operators";
       packageName = "@babel/plugin-proposal-logical-assignment-operators";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.0.tgz";
-        sha512 = "pbW0fE30sVTYXXm9lpVQQ/Vc+iTeQKiXlaNRZPPN2A2VdlWyAtsUrsQ3xydSlDW00TFMK7a8m3cDTkBF5WnV3Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.5.tgz";
+        sha512 = "xqibl7ISO2vjuQM+MzR3rkd0zfNWltk7n9QhaD8ghMmMceVguYrNDt7MikRyj4J4v3QehpnrU8RYLnC7z/gZLA==";
       };
     };
-    "@babel/plugin-proposal-nullish-coalescing-operator-7.16.0" = {
+    "@babel/plugin-proposal-nullish-coalescing-operator-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-nullish-coalescing-operator";
       packageName = "@babel/plugin-proposal-nullish-coalescing-operator";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.0.tgz";
-        sha512 = "3bnHA8CAFm7cG93v8loghDYyQ8r97Qydf63BeYiGgYbjKKB/XP53W15wfRC7dvKfoiJ34f6Rbyyx2btExc8XsQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.5.tgz";
+        sha512 = "YwMsTp/oOviSBhrjwi0vzCUycseCYwoXnLiXIL3YNjHSMBHicGTz7GjVU/IGgz4DtOEXBdCNG72pvCX22ehfqg==";
       };
     };
-    "@babel/plugin-proposal-numeric-separator-7.16.0" = {
+    "@babel/plugin-proposal-numeric-separator-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-numeric-separator";
       packageName = "@babel/plugin-proposal-numeric-separator";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.0.tgz";
-        sha512 = "FAhE2I6mjispy+vwwd6xWPyEx3NYFS13pikDBWUAFGZvq6POGs5eNchw8+1CYoEgBl9n11I3NkzD7ghn25PQ9Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.5.tgz";
+        sha512 = "DvB9l/TcsCRvsIV9v4jxR/jVP45cslTVC0PMVHvaJhhNuhn2Y1SOhCSFlPK777qLB5wb8rVDaNoqMTyOqtY5Iw==";
       };
     };
-    "@babel/plugin-proposal-object-rest-spread-7.16.0" = {
+    "@babel/plugin-proposal-object-rest-spread-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-object-rest-spread";
       packageName = "@babel/plugin-proposal-object-rest-spread";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.0.tgz";
-        sha512 = "LU/+jp89efe5HuWJLmMmFG0+xbz+I2rSI7iLc1AlaeSMDMOGzWlc5yJrMN1d04osXN4sSfpo4O+azkBNBes0jg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.5.tgz";
+        sha512 = "UEd6KpChoyPhCoE840KRHOlGhEZFutdPDMGj+0I56yuTTOaT51GzmnEl/0uT41fB/vD2nT+Pci2KjezyE3HmUw==";
       };
     };
-    "@babel/plugin-proposal-optional-catch-binding-7.16.0" = {
+    "@babel/plugin-proposal-optional-catch-binding-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-optional-catch-binding";
       packageName = "@babel/plugin-proposal-optional-catch-binding";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.0.tgz";
-        sha512 = "kicDo0A/5J0nrsCPbn89mTG3Bm4XgYi0CZtvex9Oyw7gGZE3HXGD0zpQNH+mo+tEfbo8wbmMvJftOwpmPy7aVw==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.5.tgz";
+        sha512 = "ihCMxY1Iljmx4bWy/PIMJGXN4NS4oUj1MKynwO07kiKms23pNvIn1DMB92DNB2R0EA882sw0VXIelYGdtF7xEQ==";
       };
     };
-    "@babel/plugin-proposal-optional-chaining-7.16.0" = {
+    "@babel/plugin-proposal-optional-chaining-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-optional-chaining";
       packageName = "@babel/plugin-proposal-optional-chaining";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.0.tgz";
-        sha512 = "Y4rFpkZODfHrVo70Uaj6cC1JJOt3Pp0MdWSwIKtb8z1/lsjl9AmnB7ErRFV+QNGIfcY1Eruc2UMx5KaRnXjMyg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.5.tgz";
+        sha512 = "kzdHgnaXRonttiTfKYnSVafbWngPPr2qKw9BWYBESl91W54e+9R5pP70LtWxV56g0f05f/SQrwHYkfvbwcdQ/A==";
       };
     };
-    "@babel/plugin-proposal-private-methods-7.16.0" = {
+    "@babel/plugin-proposal-private-methods-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-private-methods";
       packageName = "@babel/plugin-proposal-private-methods";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.0.tgz";
-        sha512 = "IvHmcTHDFztQGnn6aWq4t12QaBXTKr1whF/dgp9kz84X6GUcwq9utj7z2wFCUfeOup/QKnOlt2k0zxkGFx9ubg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.5.tgz";
+        sha512 = "+yFMO4BGT3sgzXo+lrq7orX5mAZt57DwUK6seqII6AcJnJOIhBJ8pzKH47/ql/d426uQ7YhN8DpUFirQzqYSUA==";
       };
     };
-    "@babel/plugin-proposal-unicode-property-regex-7.16.0" = {
+    "@babel/plugin-proposal-unicode-property-regex-7.16.5" = {
       name = "_at_babel_slash_plugin-proposal-unicode-property-regex";
       packageName = "@babel/plugin-proposal-unicode-property-regex";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.0.tgz";
-        sha512 = "ti7IdM54NXv29cA4+bNNKEMS4jLMCbJgl+Drv+FgYy0erJLAxNAIXcNjNjrRZEcWq0xJHsNVwQezskMFpF8N9g==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.5.tgz";
+        sha512 = "s5sKtlKQyFSatt781HQwv1hoM5BQ9qRH30r+dK56OLDsHmV74mzwJNX7R1yMuE7VZKG5O6q/gmOGSAO6ikTudg==";
       };
     };
     "@babel/plugin-syntax-async-generators-7.8.4" = {
@@ -508,229 +517,229 @@ let
         sha512 = "hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==";
       };
     };
-    "@babel/plugin-transform-arrow-functions-7.16.0" = {
+    "@babel/plugin-transform-arrow-functions-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-arrow-functions";
       packageName = "@babel/plugin-transform-arrow-functions";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.0.tgz";
-        sha512 = "vIFb5250Rbh7roWARvCLvIJ/PtAU5Lhv7BtZ1u24COwpI9Ypjsh+bZcKk6rlIyalK+r0jOc1XQ8I4ovNxNrWrA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.5.tgz";
+        sha512 = "8bTHiiZyMOyfZFULjsCnYOWG059FVMes0iljEHSfARhNgFfpsqE92OrCffv3veSw9rwMkYcFe9bj0ZoXU2IGtQ==";
       };
     };
-    "@babel/plugin-transform-async-to-generator-7.16.0" = {
+    "@babel/plugin-transform-async-to-generator-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-async-to-generator";
       packageName = "@babel/plugin-transform-async-to-generator";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.0.tgz";
-        sha512 = "PbIr7G9kR8tdH6g8Wouir5uVjklETk91GMVSUq+VaOgiinbCkBP6Q7NN/suM/QutZkMJMvcyAriogcYAdhg8Gw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.5.tgz";
+        sha512 = "TMXgfioJnkXU+XRoj7P2ED7rUm5jbnDWwlCuFVTpQboMfbSya5WrmubNBAMlk7KXvywpo8rd8WuYZkis1o2H8w==";
       };
     };
-    "@babel/plugin-transform-block-scoped-functions-7.16.0" = {
+    "@babel/plugin-transform-block-scoped-functions-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-block-scoped-functions";
       packageName = "@babel/plugin-transform-block-scoped-functions";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.0.tgz";
-        sha512 = "V14As3haUOP4ZWrLJ3VVx5rCnrYhMSHN/jX7z6FAt5hjRkLsb0snPCmJwSOML5oxkKO4FNoNv7V5hw/y2bjuvg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.5.tgz";
+        sha512 = "BxmIyKLjUGksJ99+hJyL/HIxLIGnLKtw772zYDER7UuycDZ+Xvzs98ZQw6NGgM2ss4/hlFAaGiZmMNKvValEjw==";
       };
     };
-    "@babel/plugin-transform-block-scoping-7.16.0" = {
+    "@babel/plugin-transform-block-scoping-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-block-scoping";
       packageName = "@babel/plugin-transform-block-scoping";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.0.tgz";
-        sha512 = "27n3l67/R3UrXfizlvHGuTwsRIFyce3D/6a37GRxn28iyTPvNXaW4XvznexRh1zUNLPjbLL22Id0XQElV94ruw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.5.tgz";
+        sha512 = "JxjSPNZSiOtmxjX7PBRBeRJTUKTyJ607YUYeT0QJCNdsedOe+/rXITjP08eG8xUpsLfPirgzdCFN+h0w6RI+pQ==";
       };
     };
-    "@babel/plugin-transform-classes-7.16.0" = {
+    "@babel/plugin-transform-classes-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-classes";
       packageName = "@babel/plugin-transform-classes";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.0.tgz";
-        sha512 = "HUxMvy6GtAdd+GKBNYDWCIA776byUQH8zjnfjxwT1P1ARv/wFu8eBDpmXQcLS/IwRtrxIReGiplOwMeyO7nsDQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.5.tgz";
+        sha512 = "DzJ1vYf/7TaCYy57J3SJ9rV+JEuvmlnvvyvYKFbk5u46oQbBvuB9/0w+YsVsxkOv8zVWKpDmUoj4T5ILHoXevA==";
       };
     };
-    "@babel/plugin-transform-computed-properties-7.16.0" = {
+    "@babel/plugin-transform-computed-properties-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-computed-properties";
       packageName = "@babel/plugin-transform-computed-properties";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.0.tgz";
-        sha512 = "63l1dRXday6S8V3WFY5mXJwcRAnPYxvFfTlt67bwV1rTyVTM5zrp0DBBb13Kl7+ehkCVwIZPumPpFP/4u70+Tw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.5.tgz";
+        sha512 = "n1+O7xtU5lSLraRzX88CNcpl7vtGdPakKzww74bVwpAIRgz9JVLJJpOLb0uYqcOaXVM0TL6X0RVeIJGD2CnCkg==";
       };
     };
-    "@babel/plugin-transform-destructuring-7.16.0" = {
+    "@babel/plugin-transform-destructuring-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-destructuring";
       packageName = "@babel/plugin-transform-destructuring";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.0.tgz";
-        sha512 = "Q7tBUwjxLTsHEoqktemHBMtb3NYwyJPTJdM+wDwb0g8PZ3kQUIzNvwD5lPaqW/p54TXBc/MXZu9Jr7tbUEUM8Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.5.tgz";
+        sha512 = "GuRVAsjq+c9YPK6NeTkRLWyQskDC099XkBSVO+6QzbnOnH2d/4mBVXYStaPrZD3dFRfg00I6BFJ9Atsjfs8mlg==";
       };
     };
-    "@babel/plugin-transform-dotall-regex-7.16.0" = {
+    "@babel/plugin-transform-dotall-regex-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-dotall-regex";
       packageName = "@babel/plugin-transform-dotall-regex";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.0.tgz";
-        sha512 = "FXlDZfQeLILfJlC6I1qyEwcHK5UpRCFkaoVyA1nk9A1L1Yu583YO4un2KsLBsu3IJb4CUbctZks8tD9xPQubLw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.5.tgz";
+        sha512 = "iQiEMt8Q4/5aRGHpGVK2Zc7a6mx7qEAO7qehgSug3SDImnuMzgmm/wtJALXaz25zUj1PmnNHtShjFgk4PDx4nw==";
       };
     };
-    "@babel/plugin-transform-duplicate-keys-7.16.0" = {
+    "@babel/plugin-transform-duplicate-keys-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-duplicate-keys";
       packageName = "@babel/plugin-transform-duplicate-keys";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.0.tgz";
-        sha512 = "LIe2kcHKAZOJDNxujvmp6z3mfN6V9lJxubU4fJIGoQCkKe3Ec2OcbdlYP+vW++4MpxwG0d1wSDOJtQW5kLnkZQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.5.tgz";
+        sha512 = "81tijpDg2a6I1Yhj4aWY1l3O1J4Cg/Pd7LfvuaH2VVInAkXtzibz9+zSPdUM1WvuUi128ksstAP0hM5w48vQgg==";
       };
     };
-    "@babel/plugin-transform-exponentiation-operator-7.16.0" = {
+    "@babel/plugin-transform-exponentiation-operator-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-exponentiation-operator";
       packageName = "@babel/plugin-transform-exponentiation-operator";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.0.tgz";
-        sha512 = "OwYEvzFI38hXklsrbNivzpO3fh87skzx8Pnqi4LoSYeav0xHlueSoCJrSgTPfnbyzopo5b3YVAJkFIcUpK2wsw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.5.tgz";
+        sha512 = "12rba2HwemQPa7BLIKCzm1pT2/RuQHtSFHdNl41cFiC6oi4tcrp7gjB07pxQvFpcADojQywSjblQth6gJyE6CA==";
       };
     };
-    "@babel/plugin-transform-for-of-7.16.0" = {
+    "@babel/plugin-transform-for-of-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-for-of";
       packageName = "@babel/plugin-transform-for-of";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.0.tgz";
-        sha512 = "5QKUw2kO+GVmKr2wMYSATCTTnHyscl6sxFRAY+rvN7h7WB0lcG0o4NoV6ZQU32OZGVsYUsfLGgPQpDFdkfjlJQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.5.tgz";
+        sha512 = "+DpCAJFPAvViR17PIMi9x2AE34dll5wNlXO43wagAX2YcRGgEVHCNFC4azG85b4YyyFarvkc/iD5NPrz4Oneqw==";
       };
     };
-    "@babel/plugin-transform-function-name-7.16.0" = {
+    "@babel/plugin-transform-function-name-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-function-name";
       packageName = "@babel/plugin-transform-function-name";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.0.tgz";
-        sha512 = "lBzMle9jcOXtSOXUpc7tvvTpENu/NuekNJVova5lCCWCV9/U1ho2HH2y0p6mBg8fPm/syEAbfaaemYGOHCY3mg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.5.tgz";
+        sha512 = "Fuec/KPSpVLbGo6z1RPw4EE1X+z9gZk1uQmnYy7v4xr4TO9p41v1AoUuXEtyqAI7H+xNJYSICzRqZBhDEkd3kQ==";
       };
     };
-    "@babel/plugin-transform-literals-7.16.0" = {
+    "@babel/plugin-transform-literals-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-literals";
       packageName = "@babel/plugin-transform-literals";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.0.tgz";
-        sha512 = "gQDlsSF1iv9RU04clgXqRjrPyyoJMTclFt3K1cjLmTKikc0s/6vE3hlDeEVC71wLTRu72Fq7650kABrdTc2wMQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.5.tgz";
+        sha512 = "B1j9C/IfvshnPcklsc93AVLTrNVa69iSqztylZH6qnmiAsDDOmmjEYqOm3Ts2lGSgTSywnBNiqC949VdD0/gfw==";
       };
     };
-    "@babel/plugin-transform-member-expression-literals-7.16.0" = {
+    "@babel/plugin-transform-member-expression-literals-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-member-expression-literals";
       packageName = "@babel/plugin-transform-member-expression-literals";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.0.tgz";
-        sha512 = "WRpw5HL4Jhnxw8QARzRvwojp9MIE7Tdk3ez6vRyUk1MwgjJN0aNpRoXainLR5SgxmoXx/vsXGZ6OthP6t/RbUg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.5.tgz";
+        sha512 = "d57i3vPHWgIde/9Y8W/xSFUndhvhZN5Wu2TjRrN1MVz5KzdUihKnfDVlfP1U7mS5DNj/WHHhaE4/tTi4hIyHwQ==";
       };
     };
-    "@babel/plugin-transform-modules-amd-7.16.0" = {
+    "@babel/plugin-transform-modules-amd-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-modules-amd";
       packageName = "@babel/plugin-transform-modules-amd";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.0.tgz";
-        sha512 = "rWFhWbCJ9Wdmzln1NmSCqn7P0RAD+ogXG/bd9Kg5c7PKWkJtkiXmYsMBeXjDlzHpVTJ4I/hnjs45zX4dEv81xw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.5.tgz";
+        sha512 = "oHI15S/hdJuSCfnwIz+4lm6wu/wBn7oJ8+QrkzPPwSFGXk8kgdI/AIKcbR/XnD1nQVMg/i6eNaXpszbGuwYDRQ==";
       };
     };
-    "@babel/plugin-transform-modules-commonjs-7.16.0" = {
+    "@babel/plugin-transform-modules-commonjs-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-modules-commonjs";
       packageName = "@babel/plugin-transform-modules-commonjs";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.0.tgz";
-        sha512 = "Dzi+NWqyEotgzk/sb7kgQPJQf7AJkQBWsVp1N6JWc1lBVo0vkElUnGdr1PzUBmfsCCN5OOFya3RtpeHk15oLKQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.5.tgz";
+        sha512 = "ABhUkxvoQyqhCWyb8xXtfwqNMJD7tx+irIRnUh6lmyFud7Jln1WzONXKlax1fg/ey178EXbs4bSGNd6PngO+SQ==";
       };
     };
-    "@babel/plugin-transform-modules-systemjs-7.16.0" = {
+    "@babel/plugin-transform-modules-systemjs-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-modules-systemjs";
       packageName = "@babel/plugin-transform-modules-systemjs";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.0.tgz";
-        sha512 = "yuGBaHS3lF1m/5R+6fjIke64ii5luRUg97N2wr+z1sF0V+sNSXPxXDdEEL/iYLszsN5VKxVB1IPfEqhzVpiqvg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.5.tgz";
+        sha512 = "53gmLdScNN28XpjEVIm7LbWnD/b/TpbwKbLk6KV4KqC9WyU6rq1jnNmVG6UgAdQZVVGZVoik3DqHNxk4/EvrjA==";
       };
     };
-    "@babel/plugin-transform-modules-umd-7.16.0" = {
+    "@babel/plugin-transform-modules-umd-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-modules-umd";
       packageName = "@babel/plugin-transform-modules-umd";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.0.tgz";
-        sha512 = "nx4f6no57himWiHhxDM5pjwhae5vLpTK2zCnDH8+wNLJy0TVER/LJRHl2bkt6w9Aad2sPD5iNNoUpY3X9sTGDg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.5.tgz";
+        sha512 = "qTFnpxHMoenNHkS3VoWRdwrcJ3FhX567GvDA3hRZKF0Dj8Fmg0UzySZp3AP2mShl/bzcywb/UWAMQIjA1bhXvw==";
       };
     };
-    "@babel/plugin-transform-named-capturing-groups-regex-7.16.0" = {
+    "@babel/plugin-transform-named-capturing-groups-regex-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-named-capturing-groups-regex";
       packageName = "@babel/plugin-transform-named-capturing-groups-regex";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.0.tgz";
-        sha512 = "LogN88uO+7EhxWc8WZuQ8vxdSyVGxhkh8WTC3tzlT8LccMuQdA81e9SGV6zY7kY2LjDhhDOFdQVxdGwPyBCnvg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.5.tgz";
+        sha512 = "/wqGDgvFUeKELW6ex6QB7dLVRkd5ehjw34tpXu1nhKC0sFfmaLabIswnpf8JgDyV2NeDmZiwoOb0rAmxciNfjA==";
       };
     };
-    "@babel/plugin-transform-new-target-7.16.0" = {
+    "@babel/plugin-transform-new-target-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-new-target";
       packageName = "@babel/plugin-transform-new-target";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.0.tgz";
-        sha512 = "fhjrDEYv2DBsGN/P6rlqakwRwIp7rBGLPbrKxwh7oVt5NNkIhZVOY2GRV+ULLsQri1bDqwDWnU3vhlmx5B2aCw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.5.tgz";
+        sha512 = "ZaIrnXF08ZC8jnKR4/5g7YakGVL6go6V9ql6Jl3ecO8PQaQqFE74CuM384kezju7Z9nGCCA20BqZaR1tJ/WvHg==";
       };
     };
-    "@babel/plugin-transform-object-super-7.16.0" = {
+    "@babel/plugin-transform-object-super-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-object-super";
       packageName = "@babel/plugin-transform-object-super";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.0.tgz";
-        sha512 = "fds+puedQHn4cPLshoHcR1DTMN0q1V9ou0mUjm8whx9pGcNvDrVVrgw+KJzzCaiTdaYhldtrUps8DWVMgrSEyg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.5.tgz";
+        sha512 = "tded+yZEXuxt9Jdtkc1RraW1zMF/GalVxaVVxh41IYwirdRgyAxxxCKZ9XB7LxZqmsjfjALxupNE1MIz9KH+Zg==";
       };
     };
-    "@babel/plugin-transform-parameters-7.16.3" = {
+    "@babel/plugin-transform-parameters-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-parameters";
       packageName = "@babel/plugin-transform-parameters";
-      version = "7.16.3";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.3.tgz";
-        sha512 = "3MaDpJrOXT1MZ/WCmkOFo7EtmVVC8H4EUZVrHvFOsmwkk4lOjQj8rzv8JKUZV4YoQKeoIgk07GO+acPU9IMu/w==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.5.tgz";
+        sha512 = "B3O6AL5oPop1jAVg8CV+haeUte9oFuY85zu0jwnRNZZi3tVAbJriu5tag/oaO2kGaQM/7q7aGPBlTI5/sr9enA==";
       };
     };
-    "@babel/plugin-transform-property-literals-7.16.0" = {
+    "@babel/plugin-transform-property-literals-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-property-literals";
       packageName = "@babel/plugin-transform-property-literals";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.0.tgz";
-        sha512 = "XLldD4V8+pOqX2hwfWhgwXzGdnDOThxaNTgqagOcpBgIxbUvpgU2FMvo5E1RyHbk756WYgdbS0T8y0Cj9FKkWQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.5.tgz";
+        sha512 = "+IRcVW71VdF9pEH/2R/Apab4a19LVvdVsr/gEeotH00vSDVlKD+XgfSIw+cgGWsjDB/ziqGv/pGoQZBIiQVXHg==";
       };
     };
-    "@babel/plugin-transform-regenerator-7.16.0" = {
+    "@babel/plugin-transform-regenerator-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-regenerator";
       packageName = "@babel/plugin-transform-regenerator";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.0.tgz";
-        sha512 = "JAvGxgKuwS2PihiSFaDrp94XOzzTUeDeOQlcKzVAyaPap7BnZXK/lvMDiubkPTdotPKOIZq9xWXWnggUMYiExg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.5.tgz";
+        sha512 = "2z+it2eVWU8TtQQRauvGUqZwLy4+7rTfo6wO4npr+fvvN1SW30ZF3O/ZRCNmTuu4F5MIP8OJhXAhRV5QMJOuYg==";
       };
     };
-    "@babel/plugin-transform-reserved-words-7.16.0" = {
+    "@babel/plugin-transform-reserved-words-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-reserved-words";
       packageName = "@babel/plugin-transform-reserved-words";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.0.tgz";
-        sha512 = "Dgs8NNCehHSvXdhEhln8u/TtJxfVwGYCgP2OOr5Z3Ar+B+zXicEOKNTyc+eca2cuEOMtjW6m9P9ijOt8QdqWkg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.5.tgz";
+        sha512 = "aIB16u8lNcf7drkhXJRoggOxSTUAuihTSTfAcpynowGJOZiGf+Yvi7RuTwFzVYSYPmWyARsPqUGoZWWWxLiknw==";
       };
     };
     "@babel/plugin-transform-runtime-7.12.10" = {
@@ -742,67 +751,67 @@ let
         sha512 = "xOrUfzPxw7+WDm9igMgQCbO3cJKymX7dFdsgRr1eu9n3KjjyU4pptIXbXPseQDquw+W+RuJEJMHKHNsPNNm3CA==";
       };
     };
-    "@babel/plugin-transform-shorthand-properties-7.16.0" = {
+    "@babel/plugin-transform-shorthand-properties-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-shorthand-properties";
       packageName = "@babel/plugin-transform-shorthand-properties";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.0.tgz";
-        sha512 = "iVb1mTcD8fuhSv3k99+5tlXu5N0v8/DPm2mO3WACLG6al1CGZH7v09HJyUb1TtYl/Z+KrM6pHSIJdZxP5A+xow==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.5.tgz";
+        sha512 = "ZbuWVcY+MAXJuuW7qDoCwoxDUNClfZxoo7/4swVbOW1s/qYLOMHlm9YRWMsxMFuLs44eXsv4op1vAaBaBaDMVg==";
       };
     };
-    "@babel/plugin-transform-spread-7.16.0" = {
+    "@babel/plugin-transform-spread-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-spread";
       packageName = "@babel/plugin-transform-spread";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.0.tgz";
-        sha512 = "Ao4MSYRaLAQczZVp9/7E7QHsCuK92yHRrmVNRe/SlEJjhzivq0BSn8mEraimL8wizHZ3fuaHxKH0iwzI13GyGg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.5.tgz";
+        sha512 = "5d6l/cnG7Lw4tGHEoga4xSkYp1euP7LAtrah1h1PgJ3JY7yNsjybsxQAnVK4JbtReZ/8z6ASVmd3QhYYKLaKZw==";
       };
     };
-    "@babel/plugin-transform-sticky-regex-7.16.0" = {
+    "@babel/plugin-transform-sticky-regex-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-sticky-regex";
       packageName = "@babel/plugin-transform-sticky-regex";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.0.tgz";
-        sha512 = "/ntT2NljR9foobKk4E/YyOSwcGUXtYWv5tinMK/3RkypyNBNdhHUaq6Orw5DWq9ZcNlS03BIlEALFeQgeVAo4Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.5.tgz";
+        sha512 = "usYsuO1ID2LXxzuUxifgWtJemP7wL2uZtyrTVM4PKqsmJycdS4U4mGovL5xXkfUheds10Dd2PjoQLXw6zCsCbg==";
       };
     };
-    "@babel/plugin-transform-template-literals-7.16.0" = {
+    "@babel/plugin-transform-template-literals-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-template-literals";
       packageName = "@babel/plugin-transform-template-literals";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.0.tgz";
-        sha512 = "Rd4Ic89hA/f7xUSJQk5PnC+4so50vBoBfxjdQAdvngwidM8jYIBVxBZ/sARxD4e0yMXRbJVDrYf7dyRtIIKT6Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.5.tgz";
+        sha512 = "gnyKy9RyFhkovex4BjKWL3BVYzUDG6zC0gba7VMLbQoDuqMfJ1SDXs8k/XK41Mmt1Hyp4qNAvGFb9hKzdCqBRQ==";
       };
     };
-    "@babel/plugin-transform-typeof-symbol-7.16.0" = {
+    "@babel/plugin-transform-typeof-symbol-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-typeof-symbol";
       packageName = "@babel/plugin-transform-typeof-symbol";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.0.tgz";
-        sha512 = "++V2L8Bdf4vcaHi2raILnptTBjGEFxn5315YU+e8+EqXIucA+q349qWngCLpUYqqv233suJ6NOienIVUpS9cqg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.5.tgz";
+        sha512 = "ldxCkW180qbrvyCVDzAUZqB0TAeF8W/vGJoRcaf75awm6By+PxfJKvuqVAnq8N9wz5Xa6mSpM19OfVKKVmGHSQ==";
       };
     };
-    "@babel/plugin-transform-unicode-escapes-7.16.0" = {
+    "@babel/plugin-transform-unicode-escapes-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-unicode-escapes";
       packageName = "@babel/plugin-transform-unicode-escapes";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.0.tgz";
-        sha512 = "VFi4dhgJM7Bpk8lRc5CMaRGlKZ29W9C3geZjt9beuzSUrlJxsNwX7ReLwaL6WEvsOf2EQkyIJEPtF8EXjB/g2A==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.5.tgz";
+        sha512 = "shiCBHTIIChGLdyojsKQjoAyB8MBwat25lKM7MJjbe1hE0bgIppD+LX9afr41lLHOhqceqeWl4FkLp+Bgn9o1Q==";
       };
     };
-    "@babel/plugin-transform-unicode-regex-7.16.0" = {
+    "@babel/plugin-transform-unicode-regex-7.16.5" = {
       name = "_at_babel_slash_plugin-transform-unicode-regex";
       packageName = "@babel/plugin-transform-unicode-regex";
-      version = "7.16.0";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.0.tgz";
-        sha512 = "jHLK4LxhHjvCeZDWyA9c+P9XH1sOxRd1RO9xMtDVRAOND/PczPqizEtVdx4TQF/wyPaewqpT+tgQFYMnN/P94A==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.5.tgz";
+        sha512 = "GTJ4IW012tiPEMMubd7sD07iU9O/LOo8Q/oU4xNhcaq0Xn8+6TcUQaHtC8YxySo1T+ErQ8RaWogIEeFhKGNPzw==";
       };
     };
     "@babel/preset-env-7.12.10" = {
@@ -841,13 +850,13 @@ let
         sha512 = "MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==";
       };
     };
-    "@babel/traverse-7.16.3" = {
+    "@babel/traverse-7.16.5" = {
       name = "_at_babel_slash_traverse";
       packageName = "@babel/traverse";
-      version = "7.16.3";
+      version = "7.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.3.tgz";
-        sha512 = "eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==";
+        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.5.tgz";
+        sha512 = "FOCODAzqUMROikDYLYxl4nmwiLlu85rNqBML/A5hKRVXG2LV8d0iMqgPzdYTcIpjZEBB7D6UDU9vxRZiriASdQ==";
       };
     };
     "@babel/types-7.16.0" = {
@@ -1021,13 +1030,13 @@ let
         sha512 = "SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==";
       };
     };
-    "@types/http-proxy-1.17.7" = {
+    "@types/http-proxy-1.17.8" = {
       name = "_at_types_slash_http-proxy";
       packageName = "@types/http-proxy";
-      version = "1.17.7";
+      version = "1.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.7.tgz";
-        sha512 = "9hdj6iXH64tHSLTY+Vt2eYOGzSogC+JQ2H7bdPWkuh7KXP5qLllWx++t+K9Wk556c3dkDdPws/SpMRi0sdCT1w==";
+        url = "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz";
+        sha512 = "5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==";
       };
     };
     "@types/json-schema-7.0.9" = {
@@ -1057,13 +1066,13 @@ let
         sha512 = "Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==";
       };
     };
-    "@types/node-16.11.12" = {
+    "@types/node-17.0.5" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "16.11.12";
+      version = "17.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-16.11.12.tgz";
-        sha512 = "+2Iggwg7PxoO5Kyhvsq9VarmPbIelXP070HMImEpbtGCoyWNINQj4wzjbQCXzdHTRXnqufutJb5KAURZANNBAw==";
+        url = "https://registry.npmjs.org/@types/node/-/node-17.0.5.tgz";
+        sha512 = "w3mrvNXLeDYV1GKTZorGJQivK6XLCoGwpnyJFbJVK/aTBQUxOCaa/GlFAAN3OTDFcb7h5tiFG+YXCO2By+riZw==";
       };
     };
     "@types/parse-json-4.0.0" = {
@@ -2047,6 +2056,15 @@ let
         sha512 = "dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==";
       };
     };
+    "body-parser-1.19.1" = {
+      name = "body-parser";
+      packageName = "body-parser";
+      version = "1.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz";
+        sha512 = "8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==";
+      };
+    };
     "bonjour-3.5.0" = {
       name = "bonjour";
       packageName = "bonjour";
@@ -2164,13 +2182,13 @@ let
         sha512 = "VBorw+tgpOtZ1BYhrVSVTzTt/3+vSE3eFUh0N2GCFK1HffceOaf32YS/bs6WiFhjDAblAFrx85jMy3BG9fBK2Q==";
       };
     };
-    "browserslist-4.18.1" = {
+    "browserslist-4.19.1" = {
       name = "browserslist";
       packageName = "browserslist";
-      version = "4.18.1";
+      version = "4.19.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz";
-        sha512 = "8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==";
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz";
+        sha512 = "u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==";
       };
     };
     "buffer-4.9.2" = {
@@ -2254,6 +2272,15 @@ let
         sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
       };
     };
+    "bytes-3.1.1" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz";
+        sha512 = "dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==";
+      };
+    };
     "cacache-10.0.4" = {
       name = "cacache";
       packageName = "cacache";
@@ -2407,13 +2434,13 @@ let
         sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
       };
     };
-    "caniuse-lite-1.0.30001286" = {
+    "caniuse-lite-1.0.30001294" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30001286";
+      version = "1.0.30001294";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001286.tgz";
-        sha512 = "zaEMRH6xg8ESMi2eQ3R4eZ5qw/hJiVsO/HlLwniIwErij0JDr9P+8V4dtx1l+kLq6j3yy8l8W4fst1lBnat5wQ==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001294.tgz";
+        sha512 = "LiMlrs1nSKZ8qkNhpUf5KD0Al1KCBE3zaT7OLOwEkagXMEDij98SiOovn9wxVGQpklk9vVC/pUSqgYmkmKOS8g==";
       };
     };
     "case-sensitive-paths-webpack-plugin-2.3.0" = {
@@ -3001,13 +3028,13 @@ let
         sha1 = "0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4";
       };
     };
-    "content-disposition-0.5.3" = {
+    "content-disposition-0.5.4" = {
       name = "content-disposition";
       packageName = "content-disposition";
-      version = "0.5.3";
+      version = "0.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz";
-        sha512 = "ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==";
+        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz";
+        sha512 = "FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==";
       };
     };
     "content-type-1.0.4" = {
@@ -3037,13 +3064,13 @@ let
         sha1 = "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb";
       };
     };
-    "cookie-0.4.0" = {
+    "cookie-0.4.1" = {
       name = "cookie";
       packageName = "cookie";
-      version = "0.4.0";
+      version = "0.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz";
-        sha512 = "+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==";
+        url = "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz";
+        sha512 = "ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==";
       };
     };
     "cookie-signature-1.0.6" = {
@@ -3091,13 +3118,13 @@ let
         sha512 = "Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==";
       };
     };
-    "core-js-compat-3.19.3" = {
+    "core-js-compat-3.20.1" = {
       name = "core-js-compat";
       packageName = "core-js-compat";
-      version = "3.19.3";
+      version = "3.20.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.19.3.tgz";
-        sha512 = "59tYzuWgEEVU9r+SRgceIGXSSUn47JknoiXW6Oq7RW8QHjXWz3/vp8pa7dbtuVu40sewz3OP3JmQEcDdztrLhA==";
+        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.20.1.tgz";
+        sha512 = "AVhKZNpqMV3Jz8hU0YEXXE06qoxtQGsAqU0u1neUngz5IusDJRX/ZJ6t3i7mS7QxNyEONbCo14GprkBrxPlTZA==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -3271,13 +3298,13 @@ let
         sha512 = "Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==";
       };
     };
-    "css-select-4.1.3" = {
+    "css-select-4.2.1" = {
       name = "css-select";
       packageName = "css-select";
-      version = "4.1.3";
+      version = "4.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz";
-        sha512 = "gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==";
+        url = "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz";
+        sha512 = "/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==";
       };
     };
     "css-select-base-adapter-0.1.1" = {
@@ -3865,13 +3892,13 @@ let
         sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
       };
     };
-    "electron-to-chromium-1.4.16" = {
+    "electron-to-chromium-1.4.30" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.4.16";
+      version = "1.4.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.16.tgz";
-        sha512 = "BQb7FgYwnu6haWLU63/CdVW+9xhmHls3RCQUFiV4lvw3wimEHTVcUk2hkuZo76QhR8nnDdfZE7evJIZqijwPdA==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.30.tgz";
+        sha512 = "609z9sIMxDHg+TcR/VB3MXwH+uwtrYyeAwWc/orhnr90ixs6WVGSrt85CDLGUdNnLqCA7liv426V20EecjvflQ==";
       };
     };
     "elliptic-6.5.4" = {
@@ -4306,13 +4333,13 @@ let
         sha1 = "6af8a502350db3246ecc4becf6b5a34d22f7ed53";
       };
     };
-    "express-4.17.1" = {
+    "express-4.17.2" = {
       name = "express";
       packageName = "express";
-      version = "4.17.1";
+      version = "4.17.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/express/-/express-4.17.1.tgz";
-        sha512 = "mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==";
+        url = "https://registry.npmjs.org/express/-/express-4.17.2.tgz";
+        sha512 = "oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==";
       };
     };
     "express-ws-2.0.0" = {
@@ -5521,6 +5548,15 @@ let
         sha512 = "ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==";
       };
     };
+    "http-errors-1.8.1" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz";
+        sha512 = "Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==";
+      };
+    };
     "http-parser-js-0.5.5" = {
       name = "http-parser-js";
       packageName = "http-parser-js";
@@ -5656,13 +5692,13 @@ let
         sha512 = "Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==";
       };
     };
-    "ignore-5.1.9" = {
+    "ignore-5.2.0" = {
       name = "ignore";
       packageName = "ignore";
-      version = "5.1.9";
+      version = "5.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz";
-        sha512 = "2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==";
+        url = "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz";
+        sha512 = "CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==";
       };
     };
     "immer-1.7.2" = {
@@ -7411,6 +7447,15 @@ let
         sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
       };
     };
+    "ms-2.1.3" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz";
+        sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
+      };
+    };
     "multicast-dns-6.2.3" = {
       name = "multicast-dns";
       packageName = "multicast-dns";
@@ -7762,13 +7807,13 @@ let
         sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
       };
     };
-    "object-inspect-1.11.1" = {
+    "object-inspect-1.12.0" = {
       name = "object-inspect";
       packageName = "object-inspect";
-      version = "1.11.1";
+      version = "1.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.1.tgz";
-        sha512 = "If7BjFlpkzzBeV1cqgT3OSWT3azyoxDGajR+iGnFBfVV2EWyDyWaZZW2ERDjUaY2QM8i5jI3Sj7mhsM4DDAqWA==";
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz";
+        sha512 = "Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==";
       };
     };
     "object-is-1.1.5" = {
@@ -8563,13 +8608,13 @@ let
         sha512 = "yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==";
       };
     };
-    "postcss-8.4.4" = {
+    "postcss-8.4.5" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.4.4";
+      version = "8.4.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.4.tgz";
-        sha512 = "joU6fBsN6EIer28Lj6GDFoC/5yOZzLCfn0zHAn/MYXI7aPt4m4hK5KC5ovEZXy+lnCjmYIbQWngvju2ddyEr8Q==";
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz";
+        sha512 = "jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==";
       };
     };
     "postcss-calc-7.0.5" = {
@@ -8869,13 +8914,13 @@ let
         sha512 = "h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==";
       };
     };
-    "postcss-selector-parser-6.0.7" = {
+    "postcss-selector-parser-6.0.8" = {
       name = "postcss-selector-parser";
       packageName = "postcss-selector-parser";
-      version = "6.0.7";
+      version = "6.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.7.tgz";
-        sha512 = "U+b/Deoi4I/UmE6KOVPpnhS7I7AYdKbhGcat+qTQ27gycvaACvNEw11ba6RrkwVmDVRW7sigWgLj4/KbbJjeDA==";
+        url = "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.8.tgz";
+        sha512 = "D5PG53d209Z1Uhcc0qAZ5U3t5HagH3cxu+WLZ22jt3gLUpXM4eXXfiO14jiDWST3NNooX/E8wISfOhZ9eIjGTQ==";
       };
     };
     "postcss-svgo-4.0.3" = {
@@ -9157,6 +9202,15 @@ let
         sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==";
       };
     };
+    "qs-6.9.6" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.9.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz";
+        sha512 = "TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==";
+      };
+    };
     "query-string-4.3.4" = {
       name = "query-string";
       packageName = "query-string";
@@ -9247,6 +9301,15 @@ let
         sha512 = "4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==";
       };
     };
+    "raw-body-2.4.2" = {
+      name = "raw-body";
+      packageName = "raw-body";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz";
+        sha512 = "RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==";
+      };
+    };
     "rc-1.2.8" = {
       name = "rc";
       packageName = "rc";
@@ -10021,6 +10084,15 @@ let
         sha512 = "BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==";
       };
     };
+    "send-0.17.2" = {
+      name = "send";
+      packageName = "send";
+      version = "0.17.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/send/-/send-0.17.2.tgz";
+        sha512 = "UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==";
+      };
+    };
     "serialize-javascript-1.9.1" = {
       name = "serialize-javascript";
       packageName = "serialize-javascript";
@@ -10066,6 +10138,15 @@ let
         sha512 = "JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==";
       };
     };
+    "serve-static-1.14.2" = {
+      name = "serve-static";
+      packageName = "serve-static";
+      version = "1.14.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz";
+        sha512 = "+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==";
+      };
+    };
     "set-blocking-2.0.0" = {
       name = "set-blocking";
       packageName = "set-blocking";
@@ -10120,6 +10201,15 @@ let
         sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
       };
     };
+    "setprototypeof-1.2.0" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz";
+        sha512 = "E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==";
+      };
+    };
     "sha.js-2.4.11" = {
       name = "sha.js";
       packageName = "sha.js";
@@ -11128,6 +11218,15 @@ let
         sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==";
       };
     };
+    "toidentifier-1.0.1" = {
+      name = "toidentifier";
+      packageName = "toidentifier";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz";
+        sha512 = "o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==";
+      };
+    };
     "touch-3.1.0" = {
       name = "touch";
       packageName = "touch";
@@ -11524,13 +11623,13 @@ let
         sha512 = "3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==";
       };
     };
-    "url-parse-1.5.3" = {
+    "url-parse-1.5.4" = {
       name = "url-parse";
       packageName = "url-parse";
-      version = "1.5.3";
+      version = "1.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/url-parse/-/url-parse-1.5.3.tgz";
-        sha512 = "IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ==";
+        url = "https://registry.npmjs.org/url-parse/-/url-parse-1.5.4.tgz";
+        sha512 = "ITeAByWWoqutFClc/lRZnFplgXgEZr3WJ6XngMM/N9DMIm4K8zXPCZ1Jdu0rERwO84w1WC5wkle2ubwTA4NTBg==";
       };
     };
     "url-parse-lax-3.0.0" = {
@@ -11722,13 +11821,13 @@ let
         sha512 = "k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==";
       };
     };
-    "vscode-uri-3.0.2" = {
+    "vscode-uri-3.0.3" = {
       name = "vscode-uri";
       packageName = "vscode-uri";
-      version = "3.0.2";
+      version = "3.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.2.tgz";
-        sha512 = "jkjy6pjU1fxUvI51P+gCsxg1u2n8LSt0W6KrCNQceaziKzff74GoWmjVG46KieVzybO1sttPQmYfrwSHey7GUA==";
+        url = "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.3.tgz";
+        sha512 = "EcswR2S8bpR7fD0YPeS7r2xXExrScVMxg4MedACaWHEtx9ftCF/qHG1xGkolzTPcEmjTavCQgbVzHUIdTMzFGA==";
       };
     };
     "watchpack-1.7.5" = {
@@ -12784,10 +12883,10 @@ in
       sources."balanced-match-1.0.2"
       sources."batch-0.6.1"
       sources."binary-extensions-2.2.0"
-      sources."body-parser-1.19.0"
+      sources."body-parser-1.19.1"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."bytes-3.1.0"
+      sources."bytes-3.1.1"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
@@ -12801,9 +12900,9 @@ in
       sources."color-name-1.1.4"
       sources."commander-5.1.0"
       sources."concat-map-0.0.1"
-      sources."content-disposition-0.5.3"
+      sources."content-disposition-0.5.4"
       sources."content-type-1.0.4"
-      sources."cookie-0.4.0"
+      sources."cookie-0.4.1"
       sources."cookie-signature-1.0.6"
       sources."cross-spawn-7.0.3"
       sources."debug-2.6.9"
@@ -12818,7 +12917,7 @@ in
       sources."end-of-stream-1.4.4"
       sources."escape-html-1.0.3"
       sources."etag-1.8.1"
-      sources."express-4.17.1"
+      sources."express-4.17.2"
       (sources."express-ws-4.0.0" // {
         dependencies = [
           sources."ws-5.2.3"
@@ -12836,10 +12935,10 @@ in
       sources."got-9.6.0"
       sources."has-flag-4.0.0"
       sources."http-cache-semantics-4.1.0"
-      sources."http-errors-1.7.2"
+      sources."http-errors-1.8.1"
       sources."iconv-lite-0.4.24"
       sources."inflight-1.0.6"
-      sources."inherits-2.0.3"
+      sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."ipaddr.js-1.9.1"
       sources."is-binary-path-2.1.0"
@@ -12879,31 +12978,32 @@ in
       sources."prepend-http-2.0.0"
       sources."proxy-addr-2.0.7"
       sources."pump-3.0.0"
-      sources."qs-6.7.0"
+      sources."qs-6.9.6"
       sources."range-parser-1.2.1"
-      sources."raw-body-2.4.0"
+      sources."raw-body-2.4.2"
       sources."rc-1.2.8"
       sources."readdirp-3.6.0"
       sources."registry-auth-token-4.2.1"
       sources."registry-url-5.1.0"
       sources."responselike-1.0.2"
       sources."rimraf-2.7.1"
-      sources."safe-buffer-5.1.2"
+      sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."semver-6.3.0"
-      (sources."send-0.17.1" // {
+      (sources."send-0.17.2" // {
         dependencies = [
-          sources."ms-2.1.1"
+          sources."ms-2.1.3"
         ];
       })
       (sources."serve-index-1.9.1" // {
         dependencies = [
           sources."http-errors-1.6.3"
+          sources."inherits-2.0.3"
           sources."setprototypeof-1.1.0"
         ];
       })
-      sources."serve-static-1.14.1"
-      sources."setprototypeof-1.1.1"
+      sources."serve-static-1.14.2"
+      sources."setprototypeof-1.2.0"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       sources."statuses-1.5.0"
@@ -12912,7 +13012,7 @@ in
       sources."tmp-0.1.0"
       sources."to-readable-stream-1.0.0"
       sources."to-regex-range-5.0.1"
-      sources."toidentifier-1.0.0"
+      sources."toidentifier-1.0.1"
       sources."type-is-1.6.18"
       sources."unpipe-1.0.0"
       sources."url-parse-lax-3.0.0"
@@ -12962,7 +13062,7 @@ in
       sources."glob-parent-5.1.2"
       sources."globby-11.0.4"
       sources."human-signals-2.1.0"
-      sources."ignore-5.1.9"
+      sources."ignore-5.2.0"
       sources."is-binary-path-2.1.0"
       sources."is-extglob-2.1.1"
       sources."is-glob-4.0.3"
@@ -12999,7 +13099,7 @@ in
       sources."vscode-languageserver-protocol-3.16.0"
       sources."vscode-languageserver-textdocument-1.0.2"
       sources."vscode-languageserver-types-3.16.0"
-      sources."vscode-uri-3.0.2"
+      sources."vscode-uri-3.0.3"
       sources."web-tree-sitter-0.19.4"
       sources."which-2.0.2"
     ];
@@ -13209,7 +13309,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.3"
-      sources."@types/node-16.11.12"
+      sources."@types/node-17.0.5"
       sources."@types/responselike-1.0.0"
       sources."cacheable-lookup-2.0.1"
       sources."cacheable-request-7.0.2"
@@ -13528,49 +13628,50 @@ in
       sources."@babel/code-frame-7.16.0"
       sources."@babel/compat-data-7.16.4"
       sources."@babel/core-7.12.10"
-      sources."@babel/generator-7.16.0"
+      sources."@babel/generator-7.16.5"
       sources."@babel/helper-annotate-as-pure-7.16.0"
-      sources."@babel/helper-builder-binary-assignment-operator-visitor-7.16.0"
+      sources."@babel/helper-builder-binary-assignment-operator-visitor-7.16.5"
       (sources."@babel/helper-compilation-targets-7.16.3" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.16.0"
+      sources."@babel/helper-create-class-features-plugin-7.16.5"
       sources."@babel/helper-create-regexp-features-plugin-7.16.0"
+      sources."@babel/helper-environment-visitor-7.16.5"
       sources."@babel/helper-explode-assignable-expression-7.16.0"
       sources."@babel/helper-function-name-7.16.0"
       sources."@babel/helper-get-function-arity-7.16.0"
       sources."@babel/helper-hoist-variables-7.16.0"
-      sources."@babel/helper-member-expression-to-functions-7.16.0"
+      sources."@babel/helper-member-expression-to-functions-7.16.5"
       sources."@babel/helper-module-imports-7.16.0"
-      sources."@babel/helper-module-transforms-7.16.0"
+      sources."@babel/helper-module-transforms-7.16.5"
       sources."@babel/helper-optimise-call-expression-7.16.0"
-      sources."@babel/helper-plugin-utils-7.14.5"
-      sources."@babel/helper-remap-async-to-generator-7.16.4"
-      sources."@babel/helper-replace-supers-7.16.0"
+      sources."@babel/helper-plugin-utils-7.16.5"
+      sources."@babel/helper-remap-async-to-generator-7.16.5"
+      sources."@babel/helper-replace-supers-7.16.5"
       sources."@babel/helper-simple-access-7.16.0"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.16.0"
       sources."@babel/helper-split-export-declaration-7.16.0"
       sources."@babel/helper-validator-identifier-7.15.7"
       sources."@babel/helper-validator-option-7.14.5"
-      sources."@babel/helper-wrap-function-7.16.0"
-      sources."@babel/helpers-7.16.3"
+      sources."@babel/helper-wrap-function-7.16.5"
+      sources."@babel/helpers-7.16.5"
       sources."@babel/highlight-7.16.0"
-      sources."@babel/parser-7.16.4"
-      sources."@babel/plugin-proposal-async-generator-functions-7.16.4"
-      sources."@babel/plugin-proposal-class-properties-7.16.0"
-      sources."@babel/plugin-proposal-dynamic-import-7.16.0"
-      sources."@babel/plugin-proposal-export-namespace-from-7.16.0"
-      sources."@babel/plugin-proposal-json-strings-7.16.0"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.16.0"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.16.0"
-      sources."@babel/plugin-proposal-numeric-separator-7.16.0"
-      sources."@babel/plugin-proposal-object-rest-spread-7.16.0"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.16.0"
-      sources."@babel/plugin-proposal-optional-chaining-7.16.0"
-      sources."@babel/plugin-proposal-private-methods-7.16.0"
-      sources."@babel/plugin-proposal-unicode-property-regex-7.16.0"
+      sources."@babel/parser-7.16.6"
+      sources."@babel/plugin-proposal-async-generator-functions-7.16.5"
+      sources."@babel/plugin-proposal-class-properties-7.16.5"
+      sources."@babel/plugin-proposal-dynamic-import-7.16.5"
+      sources."@babel/plugin-proposal-export-namespace-from-7.16.5"
+      sources."@babel/plugin-proposal-json-strings-7.16.5"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.16.5"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.16.5"
+      sources."@babel/plugin-proposal-numeric-separator-7.16.5"
+      sources."@babel/plugin-proposal-object-rest-spread-7.16.5"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.16.5"
+      sources."@babel/plugin-proposal-optional-chaining-7.16.5"
+      sources."@babel/plugin-proposal-private-methods-7.16.5"
+      sources."@babel/plugin-proposal-unicode-property-regex-7.16.5"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-class-properties-7.12.13"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
@@ -13583,44 +13684,44 @@ in
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
       sources."@babel/plugin-syntax-top-level-await-7.14.5"
-      sources."@babel/plugin-transform-arrow-functions-7.16.0"
-      sources."@babel/plugin-transform-async-to-generator-7.16.0"
-      sources."@babel/plugin-transform-block-scoped-functions-7.16.0"
-      sources."@babel/plugin-transform-block-scoping-7.16.0"
-      sources."@babel/plugin-transform-classes-7.16.0"
-      sources."@babel/plugin-transform-computed-properties-7.16.0"
-      sources."@babel/plugin-transform-destructuring-7.16.0"
-      sources."@babel/plugin-transform-dotall-regex-7.16.0"
-      sources."@babel/plugin-transform-duplicate-keys-7.16.0"
-      sources."@babel/plugin-transform-exponentiation-operator-7.16.0"
-      sources."@babel/plugin-transform-for-of-7.16.0"
-      sources."@babel/plugin-transform-function-name-7.16.0"
-      sources."@babel/plugin-transform-literals-7.16.0"
-      sources."@babel/plugin-transform-member-expression-literals-7.16.0"
-      sources."@babel/plugin-transform-modules-amd-7.16.0"
-      sources."@babel/plugin-transform-modules-commonjs-7.16.0"
-      sources."@babel/plugin-transform-modules-systemjs-7.16.0"
-      sources."@babel/plugin-transform-modules-umd-7.16.0"
-      sources."@babel/plugin-transform-named-capturing-groups-regex-7.16.0"
-      sources."@babel/plugin-transform-new-target-7.16.0"
-      sources."@babel/plugin-transform-object-super-7.16.0"
-      sources."@babel/plugin-transform-parameters-7.16.3"
-      sources."@babel/plugin-transform-property-literals-7.16.0"
-      sources."@babel/plugin-transform-regenerator-7.16.0"
-      sources."@babel/plugin-transform-reserved-words-7.16.0"
+      sources."@babel/plugin-transform-arrow-functions-7.16.5"
+      sources."@babel/plugin-transform-async-to-generator-7.16.5"
+      sources."@babel/plugin-transform-block-scoped-functions-7.16.5"
+      sources."@babel/plugin-transform-block-scoping-7.16.5"
+      sources."@babel/plugin-transform-classes-7.16.5"
+      sources."@babel/plugin-transform-computed-properties-7.16.5"
+      sources."@babel/plugin-transform-destructuring-7.16.5"
+      sources."@babel/plugin-transform-dotall-regex-7.16.5"
+      sources."@babel/plugin-transform-duplicate-keys-7.16.5"
+      sources."@babel/plugin-transform-exponentiation-operator-7.16.5"
+      sources."@babel/plugin-transform-for-of-7.16.5"
+      sources."@babel/plugin-transform-function-name-7.16.5"
+      sources."@babel/plugin-transform-literals-7.16.5"
+      sources."@babel/plugin-transform-member-expression-literals-7.16.5"
+      sources."@babel/plugin-transform-modules-amd-7.16.5"
+      sources."@babel/plugin-transform-modules-commonjs-7.16.5"
+      sources."@babel/plugin-transform-modules-systemjs-7.16.5"
+      sources."@babel/plugin-transform-modules-umd-7.16.5"
+      sources."@babel/plugin-transform-named-capturing-groups-regex-7.16.5"
+      sources."@babel/plugin-transform-new-target-7.16.5"
+      sources."@babel/plugin-transform-object-super-7.16.5"
+      sources."@babel/plugin-transform-parameters-7.16.5"
+      sources."@babel/plugin-transform-property-literals-7.16.5"
+      sources."@babel/plugin-transform-regenerator-7.16.5"
+      sources."@babel/plugin-transform-reserved-words-7.16.5"
       sources."@babel/plugin-transform-runtime-7.12.10"
-      sources."@babel/plugin-transform-shorthand-properties-7.16.0"
-      sources."@babel/plugin-transform-spread-7.16.0"
-      sources."@babel/plugin-transform-sticky-regex-7.16.0"
-      sources."@babel/plugin-transform-template-literals-7.16.0"
-      sources."@babel/plugin-transform-typeof-symbol-7.16.0"
-      sources."@babel/plugin-transform-unicode-escapes-7.16.0"
-      sources."@babel/plugin-transform-unicode-regex-7.16.0"
+      sources."@babel/plugin-transform-shorthand-properties-7.16.5"
+      sources."@babel/plugin-transform-spread-7.16.5"
+      sources."@babel/plugin-transform-sticky-regex-7.16.5"
+      sources."@babel/plugin-transform-template-literals-7.16.5"
+      sources."@babel/plugin-transform-typeof-symbol-7.16.5"
+      sources."@babel/plugin-transform-unicode-escapes-7.16.5"
+      sources."@babel/plugin-transform-unicode-regex-7.16.5"
       sources."@babel/preset-env-7.12.10"
       sources."@babel/preset-modules-0.1.5"
       sources."@babel/runtime-7.12.5"
       sources."@babel/template-7.16.0"
-      sources."@babel/traverse-7.16.3"
+      sources."@babel/traverse-7.16.5"
       sources."@babel/types-7.16.0"
       sources."@hapi/address-2.1.4"
       sources."@hapi/bourne-1.3.2"
@@ -13631,10 +13732,10 @@ in
       sources."@nodelib/fs.stat-1.1.3"
       sources."@types/glob-7.2.0"
       sources."@types/html-minifier-terser-5.1.2"
-      sources."@types/http-proxy-1.17.7"
+      sources."@types/http-proxy-1.17.8"
       sources."@types/json-schema-7.0.9"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-16.11.12"
+      sources."@types/node-17.0.5"
       sources."@types/parse-json-4.0.0"
       sources."@types/q-1.5.5"
       sources."@types/source-list-map-0.1.2"
@@ -13757,12 +13858,12 @@ in
       sources."bindings-1.5.0"
       sources."bluebird-3.7.2"
       sources."bn.js-5.2.0"
-      (sources."body-parser-1.19.0" // {
+      (sources."body-parser-1.19.1" // {
         dependencies = [
-          sources."bytes-3.1.0"
+          sources."bytes-3.1.1"
           sources."debug-2.6.9"
           sources."ms-2.0.0"
-          sources."qs-6.7.0"
+          sources."qs-6.9.6"
         ];
       })
       (sources."bonjour-3.5.0" // {
@@ -13785,7 +13886,7 @@ in
         ];
       })
       sources."browserify-zlib-0.2.0"
-      sources."browserslist-4.18.1"
+      sources."browserslist-4.19.1"
       sources."buffer-4.9.2"
       sources."buffer-from-1.1.2"
       sources."buffer-indexof-1.1.1"
@@ -13802,7 +13903,7 @@ in
       sources."camel-case-4.1.2"
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001286"
+      sources."caniuse-lite-1.0.30001294"
       sources."case-sensitive-paths-webpack-plugin-2.3.0"
       sources."caseless-0.12.0"
       (sources."chalk-2.4.2" // {
@@ -13878,10 +13979,14 @@ in
       sources."connect-history-api-fallback-1.6.0"
       sources."console-browserify-1.2.0"
       sources."constants-browserify-1.0.0"
-      sources."content-disposition-0.5.3"
+      (sources."content-disposition-0.5.4" // {
+        dependencies = [
+          sources."safe-buffer-5.2.1"
+        ];
+      })
       sources."content-type-1.0.4"
       sources."convert-source-map-1.8.0"
-      sources."cookie-0.4.0"
+      sources."cookie-0.4.1"
       sources."cookie-signature-1.0.6"
       sources."copy-concurrently-1.0.5"
       sources."copy-descriptor-0.1.1"
@@ -13897,7 +14002,7 @@ in
         ];
       })
       sources."core-js-2.6.12"
-      (sources."core-js-compat-3.19.3" // {
+      (sources."core-js-compat-3.20.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -13924,7 +14029,7 @@ in
           sources."yallist-4.0.0"
         ];
       })
-      sources."css-select-4.1.3"
+      sources."css-select-4.2.1"
       sources."css-select-base-adapter-0.1.1"
       (sources."css-tree-1.0.0-alpha.37" // {
         dependencies = [
@@ -13998,7 +14103,7 @@ in
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.16"
+      sources."electron-to-chromium-1.4.30"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -14083,12 +14188,13 @@ in
         ];
       })
       sources."expand-tilde-2.0.2"
-      (sources."express-4.17.1" // {
+      (sources."express-4.17.2" // {
         dependencies = [
           sources."array-flatten-1.1.1"
           sources."debug-2.6.9"
           sources."ms-2.0.0"
-          sources."qs-6.7.0"
+          sources."qs-6.9.6"
+          sources."safe-buffer-5.2.1"
         ];
       })
       sources."extend-3.0.2"
@@ -14249,11 +14355,7 @@ in
       sources."html-webpack-plugin-4.5.0"
       sources."htmlparser2-6.1.0"
       sources."http-deceiver-1.2.7"
-      (sources."http-errors-1.7.2" // {
-        dependencies = [
-          sources."inherits-2.0.3"
-        ];
-      })
+      sources."http-errors-1.8.1"
       sources."http-parser-js-0.5.5"
       sources."http-proxy-1.18.1"
       sources."http-proxy-middleware-0.21.0"
@@ -14476,7 +14578,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.11.1"
+      sources."object-inspect-1.12.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
@@ -14681,10 +14783,10 @@ in
       })
       (sources."postcss-safe-parser-5.0.2" // {
         dependencies = [
-          sources."postcss-8.4.4"
+          sources."postcss-8.4.5"
         ];
       })
-      sources."postcss-selector-parser-6.0.7"
+      sources."postcss-selector-parser-6.0.8"
       (sources."postcss-svgo-4.0.3" // {
         dependencies = [
           sources."postcss-value-parser-3.3.1"
@@ -14725,9 +14827,9 @@ in
       sources."randombytes-2.1.0"
       sources."randomfill-1.0.4"
       sources."range-parser-1.2.1"
-      (sources."raw-body-2.4.0" // {
+      (sources."raw-body-2.4.2" // {
         dependencies = [
-          sources."bytes-3.1.0"
+          sources."bytes-3.1.1"
         ];
       })
       (sources."react-dev-utils-6.1.1" // {
@@ -14833,14 +14935,14 @@ in
       sources."select-hose-2.0.0"
       sources."selfsigned-1.10.11"
       sources."semver-5.7.1"
-      (sources."send-0.17.1" // {
+      (sources."send-0.17.2" // {
         dependencies = [
           (sources."debug-2.6.9" // {
             dependencies = [
               sources."ms-2.0.0"
             ];
           })
-          sources."ms-2.1.1"
+          sources."ms-2.1.3"
         ];
       })
       sources."serialize-javascript-4.0.0"
@@ -14853,7 +14955,7 @@ in
           sources."setprototypeof-1.1.0"
         ];
       })
-      sources."serve-static-1.14.1"
+      sources."serve-static-1.14.2"
       sources."set-blocking-2.0.0"
       (sources."set-value-2.0.1" // {
         dependencies = [
@@ -14861,7 +14963,7 @@ in
         ];
       })
       sources."setimmediate-1.0.5"
-      sources."setprototypeof-1.1.1"
+      sources."setprototypeof-1.2.0"
       sources."sha.js-2.4.11"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
@@ -15050,7 +15152,7 @@ in
       })
       sources."to-regex-3.0.2"
       sources."to-regex-range-5.0.1"
-      sources."toidentifier-1.0.0"
+      sources."toidentifier-1.0.1"
       sources."tough-cookie-2.5.0"
       sources."tslib-2.3.1"
       sources."tty-browserify-0.0.0"
@@ -15124,7 +15226,7 @@ in
           sources."schema-utils-3.1.1"
         ];
       })
-      sources."url-parse-1.5.3"
+      sources."url-parse-1.5.4"
       sources."use-3.1.1"
       (sources."util-0.11.1" // {
         dependencies = [
@@ -15394,7 +15496,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.3"
-      sources."@types/node-16.11.12"
+      sources."@types/node-17.0.5"
       sources."@types/responselike-1.0.0"
       (sources."ansi-escapes-4.3.2" // {
         dependencies = [
diff --git a/pkgs/development/compilers/fasm/bin.nix b/pkgs/development/compilers/fasm/bin.nix
index 12a25ca6a4d..9f4263b08ed 100644
--- a/pkgs/development/compilers/fasm/bin.nix
+++ b/pkgs/development/compilers/fasm/bin.nix
@@ -3,11 +3,11 @@
 stdenvNoCC.mkDerivation rec {
   pname = "fasm-bin";
 
-  version = "1.73.28";
+  version = "1.73.29";
 
   src = fetchurl {
     url = "https://flatassembler.net/fasm-${version}.tgz";
-    sha256 = "sha256-ntHrtIX9EXQRGpTrdzEFojSRE5jgUJD15xSr9iyAkpI=";
+    sha256 = "sha256-Yyj02DRo9wTkJ01ukOwElHr1ZyZFPOMTibwyAkqYISs=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/compilers/fstar/default.nix b/pkgs/development/compilers/fstar/default.nix
index 97fa1dbe3d6..43bdbda8184 100644
--- a/pkgs/development/compilers/fstar/default.nix
+++ b/pkgs/development/compilers/fstar/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fstar";
-  version = "2021.11.27";
+  version = "2021.12.25";
 
   src = fetchFromGitHub {
     owner = "FStarLang";
     repo = "FStar";
     rev = "v${version}";
-    sha256 = "sha256-OpY7vDb37ym4srsmD+deXiuofUJKRyKXG7g3zsJKvHo=";
+    sha256 = "RmXKv/admC1w26z/ClNhH11J8n87WTfDr2lYOF6Fx7I=";
   };
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
diff --git a/pkgs/development/compilers/gleam/default.nix b/pkgs/development/compilers/gleam/default.nix
index f9f0396ef07..e766683f022 100644
--- a/pkgs/development/compilers/gleam/default.nix
+++ b/pkgs/development/compilers/gleam/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gleam";
-  version = "0.18.0";
+  version = "0.18.2";
 
   src = fetchFromGitHub {
     owner = "gleam-lang";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-S7PYN0iiSXEApIG0Tyb/PJmKjHzjz3S+ToDy+pwPK18=";
+    sha256 = "sha256-uakZmaIkBgC/FTQ7us58pJT6IzpcF1cQxBfehlB3bWk=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++
     lib.optionals stdenv.isDarwin [ Security libiconv ];
 
-  cargoSha256 = "sha256-Q5WyKQ4HFOIL1KAQ0QvAbZfy+WRAWf9HxSvSabSz4W4=";
+  cargoSha256 = "sha256-NogDrd7YWl/CV0aCd1jfYWYB9VZG7u890VLEktI3sOQ=";
 
   meta = with lib; {
     description = "A statically typed language for the Erlang VM";
diff --git a/pkgs/development/compilers/go-jsonnet/default.nix b/pkgs/development/compilers/go-jsonnet/default.nix
index 1d8b912a978..2b7c6a2f071 100644
--- a/pkgs/development/compilers/go-jsonnet/default.nix
+++ b/pkgs/development/compilers/go-jsonnet/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "go-jsonnet";
-  version = "0.17.0";
+  version = "0.18.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "go-jsonnet";
     rev = "v${version}";
-    sha256 = "1rprs8l15nbrx4dw4pdg81c5l22zhj80pl4zwqgsm4113wyyvc98";
+    sha256 = "sha256-o/IjXskGaMhvQmTsAS745anGBMI2bwHf/EOEp57H8LU=";
   };
 
-  vendorSha256 = "0nsm4gsbbn8myz4yfi6m7qc3iizhdambsr18iks0clkdn3mi2jn1";
+  vendorSha256 = "sha256-fZBhlZrLcC4xj5uvb862lBOczGnJa9CceS3D8lUhBQo=";
 
   doCheck = false;
 
diff --git a/pkgs/development/compilers/microscheme/default.nix b/pkgs/development/compilers/microscheme/default.nix
index 1f3a98de821..fa65622ba0c 100644
--- a/pkgs/development/compilers/microscheme/default.nix
+++ b/pkgs/development/compilers/microscheme/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
 
   meta = with lib; {
-    homepage = "http://microscheme.org";
+    homepage = "https://ryansuchocki.github.io/microscheme/";
     description = "A Scheme subset for Atmel microcontrollers";
     longDescription = ''
       Microscheme is a Scheme subset/variant designed for Atmel
diff --git a/pkgs/development/compilers/ocaml/ber-metaocaml.nix b/pkgs/development/compilers/ocaml/ber-metaocaml.nix
index 895706312c1..92fcb7c04c7 100644
--- a/pkgs/development/compilers/ocaml/ber-metaocaml.nix
+++ b/pkgs/development/compilers/ocaml/ber-metaocaml.nix
@@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description     = "Multi-Stage Programming extension for OCaml";
-    homepage        = "http://okmij.org/ftp/ML/MetaOCaml.html";
+    homepage        = "https://okmij.org/ftp/ML/MetaOCaml.html";
     license         = with licenses; [ /* compiler */ qpl /* library */ lgpl2 ];
     maintainers     = with maintainers; [ thoughtpolice ];
 
diff --git a/pkgs/development/compilers/rgbds/default.nix b/pkgs/development/compilers/rgbds/default.nix
index 00b20abbda8..0d076f0cfae 100644
--- a/pkgs/development/compilers/rgbds/default.nix
+++ b/pkgs/development/compilers/rgbds/default.nix
@@ -2,15 +2,17 @@
 
 stdenv.mkDerivation rec {
   pname = "rgbds";
-  version = "0.5.1";
+  version = "0.5.2";
   src = fetchFromGitHub {
     owner = "gbdev";
     repo = "rgbds";
     rev = "v${version}";
-    sha256 = "11b1hg2m2f60q5622rb0nxhrzzylsxjx0c8inbxifi6lvmj9ak4x";
+    sha256 = "sha256-/GjxdB3Nt+XuKKQWjU12mS91U4FFoeP+9t0L+HsB/o8=";
   };
-  nativeBuildInputs = [ bison flex pkg-config libpng ];
-  installFlags = [ "PREFIX=\${out}" ];
+  nativeBuildInputs = [ bison flex pkg-config ];
+  buildInputs = [ libpng ];
+  NIX_CFLAGS_COMPILE = lib.optional stdenv.isDarwin "-fno-lto";
+  installFlags = [ "PREFIX=${placeholder "out"}" ];
 
   meta = with lib; {
     homepage = "https://rgbds.gbdev.io/";
diff --git a/pkgs/development/compilers/rust/clippy.nix b/pkgs/development/compilers/rust/clippy.nix
index a3597e9febf..7ebdaa474ad 100644
--- a/pkgs/development/compilers/rust/clippy.nix
+++ b/pkgs/development/compilers/rust/clippy.nix
@@ -20,6 +20,10 @@ rustPlatform.buildRustPackage {
   #   (/private/tmp/nix-build-clippy-1.36.0.drv-0/rustc-1.36.0-src/src/librustc_llvm)
   doCheck = false;
 
+  preBuild = ''
+    export CARGO_TARGET_DIR="$(pwd)/target"
+  '';
+
   preFixup = lib.optionalString stdenv.isDarwin ''
     install_name_tool -add_rpath "${rustc}/lib" $out/bin/clippy-driver
   '';
diff --git a/pkgs/development/compilers/zig/0.8.1.nix b/pkgs/development/compilers/zig/0.8.1.nix
new file mode 100644
index 00000000000..385b68a7929
--- /dev/null
+++ b/pkgs/development/compilers/zig/0.8.1.nix
@@ -0,0 +1,57 @@
+{ lib
+, fetchFromGitHub
+, cmake
+, llvmPackages
+, libxml2
+, zlib
+}:
+
+let
+  inherit (llvmPackages) stdenv;
+in
+stdenv.mkDerivation rec {
+  pname = "zig";
+  version = "0.8.1";
+
+  src = fetchFromGitHub {
+    owner = "ziglang";
+    repo = pname;
+    rev = version;
+    hash = "sha256-zMSOH8ZWcvzHRwOgGIbLO9Q6jf1P5QL5KCMD+frp+JA=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    llvmPackages.llvm.dev
+  ];
+  buildInputs = [
+    libxml2
+    zlib
+  ] ++ (with llvmPackages; [
+    libclang
+    lld
+    llvm
+  ]);
+
+  preBuild = ''
+    export HOME=$TMPDIR;
+  '';
+
+  doCheck = true;
+  checkPhase = ''
+    runHook preCheck
+    ./zig test --cache-dir "$TMPDIR" -I $src/test $src/test/behavior.zig
+    runHook postCheck
+  '';
+
+  meta = with lib; {
+    homepage = "https://ziglang.org/";
+    description =
+      "General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software";
+    license = licenses.mit;
+    maintainers = with maintainers; [ andrewrk AndersonTorres ];
+    platforms = platforms.unix;
+    broken = stdenv.isDarwin; # See https://github.com/NixOS/nixpkgs/issues/86299
+  };
+}
+
diff --git a/pkgs/development/compilers/zig/default.nix b/pkgs/development/compilers/zig/default.nix
index 385b68a7929..d4eb57815a8 100644
--- a/pkgs/development/compilers/zig/default.nix
+++ b/pkgs/development/compilers/zig/default.nix
@@ -11,13 +11,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "zig";
-  version = "0.8.1";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "ziglang";
     repo = pname;
     rev = version;
-    hash = "sha256-zMSOH8ZWcvzHRwOgGIbLO9Q6jf1P5QL5KCMD+frp+JA=";
+    hash = "sha256-Hfl1KKtGcopMrn+U9r0/qr/wReWJIgb8+IgwMoguv/0=";
   };
 
   nativeBuildInputs = [
@@ -54,4 +54,3 @@ stdenv.mkDerivation rec {
     broken = stdenv.isDarwin; # See https://github.com/NixOS/nixpkgs/issues/86299
   };
 }
-
diff --git a/pkgs/development/coq-modules/semantics/default.nix b/pkgs/development/coq-modules/semantics/default.nix
index 796c9dee0a4..9b8bb10a5f2 100644
--- a/pkgs/development/coq-modules/semantics/default.nix
+++ b/pkgs/development/coq-modules/semantics/default.nix
@@ -6,6 +6,7 @@ mkCoqDerivation rec {
   owner = "coq-community";
   releaseRev = v: "v${v}";
 
+  release."8.14.0".sha256 = "sha256-TB12C3hX9XucbsXr+UL+8jM19NOFXASW/lcytwy6uVE=";
   release."8.13.0".sha256 = "sha256-8bDr/Ovl6s8BFaRcHeS5H33/K/pYdeKfSN+krVuKulQ=";
   release."8.11.1".sha256 = "sha256-jTPgcXSNn1G2mMDC7ocFcmqs8svB7Yo1emXP15iuxiU=";
   release."8.9.0".sha256 = "sha256-UBsvzlDEZsZsVkbUI0GbFEhpxnnLCiaqlqDyWVC5I6s=";
@@ -15,7 +16,7 @@ mkCoqDerivation rec {
 
   inherit version;
   defaultVersion = with versions; switch coq.coq-version [
-    { case = range "8.10" "8.13"; out = "8.13.0"; }
+    { case = range "8.10" "8.14"; out = "8.14.0"; }
     { case = "8.9"; out = "8.9.0"; }
     { case = "8.8"; out = "8.8.0"; }
     { case = "8.7"; out = "8.7.0"; }
diff --git a/pkgs/development/embedded/avrdude/default.nix b/pkgs/development/embedded/avrdude/default.nix
index db2ffce50ce..995af6bb92b 100644
--- a/pkgs/development/embedded/avrdude/default.nix
+++ b/pkgs/development/embedded/avrdude/default.nix
@@ -7,11 +7,11 @@ assert docSupport -> texLive != null && texinfo != null && texi2html != null;
 
 stdenv.mkDerivation rec {
   pname = "avrdude";
-  version = "6.3";
+  version = "6.4";
 
   src = fetchurl {
     url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "15m1w1qad3dj7r8n5ng1qqcaiyx1gyd6hnc3p2apgjllccdp77qg";
+    sha256 = "sha256-qb5wZvcKnc9L8HNvz1MdtqMlCu0aJMxkOt0nZBtxEPk=";
   };
 
   configureFlags = lib.optionals docSupport "--enable-doc";
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index 1a6eaaccd2f..d2f64dbbbaa 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -3316,6 +3316,7 @@ broken-packages:
   - NaturalSort
   - naver-translate
   - nbt
+  - ncurses
   - neat
   - needle
   - neet
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index 7e374de267c..8b87784cb59 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -2251,6 +2251,7 @@ dont-distribute-packages:
  - numhask-histogram
  - numhask-range
  - numhask-test
+ - nyan
  - nymphaea
  - oath
  - obd
@@ -2687,6 +2688,7 @@ dont-distribute-packages:
  - scp-streams
  - scrabble-bot
  - scrapbook
+ - scroll
  - sde-solver
  - seakale-postgresql
  - seakale-tests
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index f19fd450baf..6b96455ab75 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -192246,6 +192246,8 @@ self: {
        libraryToolDepends = [ c2hs ];
        description = "Modernised bindings to GNU ncurses";
        license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) ncurses;};
 
   "ndjson-conduit" = callPackage
@@ -198015,6 +198017,7 @@ self: {
        executableHaskellDepends = [ base bytestring mtl ncurses text ];
        description = "Bored? Nyan cat!";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "nylas" = callPackage
@@ -240175,6 +240178,7 @@ self: {
        ];
        description = "scroll(6), a roguelike game";
        license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "scroll-list" = callPackage
diff --git a/pkgs/development/interpreters/clojure/babashka.nix b/pkgs/development/interpreters/clojure/babashka.nix
index ffb33713a91..93755e83a3d 100644
--- a/pkgs/development/interpreters/clojure/babashka.nix
+++ b/pkgs/development/interpreters/clojure/babashka.nix
@@ -2,11 +2,11 @@
 
 buildGraalvmNativeImage rec {
   pname = "babashka";
-  version = "0.7.0";
+  version = "0.7.3";
 
   src = fetchurl {
     url = "https://github.com/babashka/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
-    sha256 = "sha256-zSjiHacetJ68U0GciIbuGET9I/51EM8JnPPUGemDfEI=";
+    sha256 = "sha256-zbxFMc02hbsU2ERlUzqMBHwHYfORB7TkMINrKC52PPU=";
   };
 
   executable = "bb";
diff --git a/pkgs/development/interpreters/guile/3.0.nix b/pkgs/development/interpreters/guile/3.0.nix
index 5241c03a954..76aa0c4404f 100644
--- a/pkgs/development/interpreters/guile/3.0.nix
+++ b/pkgs/development/interpreters/guile/3.0.nix
@@ -99,7 +99,10 @@ builder rec {
 
     # See below.
     "--without-threads"
-  ];
+  ]
+  # Disable JIT on Apple Silicon, as it is not yet supported
+  # https://debbugs.gnu.org/cgi/bugreport.cgi?bug=44505";
+  ++ lib.optional (stdenv.isDarwin && stdenv.isAarch64) "--enable-jit=no";
 
   postInstall = ''
     wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin"
diff --git a/pkgs/development/interpreters/kona/default.nix b/pkgs/development/interpreters/kona/default.nix
index ff5929745ba..24e10eb7306 100644
--- a/pkgs/development/interpreters/kona/default.nix
+++ b/pkgs/development/interpreters/kona/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kona";
-  version = "20201009";
+  version = "20211225";
 
   src = fetchFromGitHub {
     owner = "kevinlawler";
     repo = "kona";
     rev = "Win64-${version}";
-    sha256 = "0v252zds61y01cf29hxznz1zc1724vxmzy059k9jiri4r73k679v";
+    sha256 = "sha256-m3a9conyKN0qHSSAG8zAb3kx8ir+7dqgxm1XGjCQcfk=";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/development/interpreters/spidermonkey/68.nix b/pkgs/development/interpreters/spidermonkey/68.nix
index 5cfb2de919f..a71805f5056 100644
--- a/pkgs/development/interpreters/spidermonkey/68.nix
+++ b/pkgs/development/interpreters/spidermonkey/68.nix
@@ -78,6 +78,8 @@ in stdenv.mkDerivation rec {
     "--target=${stdenv.hostPlatform.config}"
   ];
 
+  # mkDerivation by default appends --build/--host to configureFlags when cross compiling
+  # These defaults are bogus for Spidermonkey - avoid passing them by providing an empty list
   configurePlatforms = [];
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/pkgs/development/interpreters/spidermonkey/78.nix b/pkgs/development/interpreters/spidermonkey/78.nix
index cd745c5ba9e..b4ed171eb78 100644
--- a/pkgs/development/interpreters/spidermonkey/78.nix
+++ b/pkgs/development/interpreters/spidermonkey/78.nix
@@ -92,6 +92,8 @@ stdenv.mkDerivation rec {
     "--target=${stdenv.hostPlatform.config}"
   ];
 
+  # mkDerivation by default appends --build/--host to configureFlags when cross compiling
+  # These defaults are bogus for Spidermonkey - avoid passing them by providing an empty list
   configurePlatforms = [ ];
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/pkgs/development/interpreters/spidermonkey/91.nix b/pkgs/development/interpreters/spidermonkey/91.nix
index a8927e79f9a..57e62e319d1 100644
--- a/pkgs/development/interpreters/spidermonkey/91.nix
+++ b/pkgs/development/interpreters/spidermonkey/91.nix
@@ -88,6 +88,10 @@ stdenv.mkDerivation rec {
     "--target=${stdenv.hostPlatform.config}"
   ];
 
+  # mkDerivation by default appends --build/--host to configureFlags when cross compiling
+  # These defaults are bogus for Spidermonkey - avoid passing them by providing an empty list
+  configurePlatforms = [ ];
+
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
   # Remove unnecessary static lib
diff --git a/pkgs/development/libraries/CGAL/default.nix b/pkgs/development/libraries/CGAL/default.nix
index d8356056812..630ff8a6964 100644
--- a/pkgs/development/libraries/CGAL/default.nix
+++ b/pkgs/development/libraries/CGAL/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cgal";
-  version = "5.3";
+  version = "5.3.1";
 
   src = fetchFromGitHub {
     owner = "CGAL";
     repo = "releases";
     rev = "CGAL-${version}";
-    sha256 = "sha256-ogY47Ggtj9k2U5pop1DNFkTusgQi2nNLc5OGN45SBCk=";
+    sha256 = "sha256-atILY/d2b99v0Kk226KwJ/qEcJnWBhtge52wkz6Bgcg=";
   };
 
   # note: optional component libCGAL_ImageIO would need zlib and opengl;
diff --git a/pkgs/development/libraries/apache-activemq/default.nix b/pkgs/development/libraries/apache-activemq/default.nix
index 13305d31273..b188754607d 100644
--- a/pkgs/development/libraries/apache-activemq/default.nix
+++ b/pkgs/development/libraries/apache-activemq/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "apache-activemq";
-  version = "5.16.2";
+  version = "5.16.3";
 
   src = fetchurl {
-    sha256 = "sha256-IS/soe5Lx1C+/UWnNcv+8AwMmu5FHvURbpkTMMGrEFs=";
+    sha256 = "sha256-GEbaKYXsZCU+zEGlTxR3cx60dQ/oQKndn9/uiOXJQlI=";
     url = "mirror://apache/activemq/${version}/${pname}-${version}-bin.tar.gz";
   };
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = "http://activemq.apache.org/";
+    homepage = "https://activemq.apache.org/";
     description = "Messaging and Integration Patterns server written in Java";
     license = lib.licenses.asl20;
     platforms = lib.platforms.unix;
diff --git a/pkgs/development/libraries/apr-util/default.nix b/pkgs/development/libraries/apr-util/default.nix
index bd00a612d4e..1cb253774d4 100644
--- a/pkgs/development/libraries/apr-util/default.nix
+++ b/pkgs/development/libraries/apr-util/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    homepage = "http://apr.apache.org/";
+    homepage = "https://apr.apache.org/";
     description = "A companion library to APR, the Apache Portable Runtime";
     maintainers = [ maintainers.eelco ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/apr/default.nix b/pkgs/development/libraries/apr/default.nix
index 0292fb223e7..e2db4db80e2 100644
--- a/pkgs/development/libraries/apr/default.nix
+++ b/pkgs/development/libraries/apr/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    homepage = "http://apr.apache.org/";
+    homepage = "https://apr.apache.org/";
     description = "The Apache Portable Runtime library";
     platforms = platforms.all;
     license = licenses.asl20;
diff --git a/pkgs/development/libraries/armadillo/default.nix b/pkgs/development/libraries/armadillo/default.nix
index 839a59edfe7..850d48ca345 100644
--- a/pkgs/development/libraries/armadillo/default.nix
+++ b/pkgs/development/libraries/armadillo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "armadillo";
-  version = "10.7.4";
+  version = "10.7.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
-    sha256 = "sha256-LBsyxbJZsF40vC3N4cq1ic/LtYF5xyqTxdquoeOVBlI=";
+    sha256 = "sha256-XQ2f1rNO/Lpqb87/VMDS0T/L6RXXr4owxecs8xfSCU8=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/audio/libsmf/default.nix b/pkgs/development/libraries/audio/libsmf/default.nix
index a98f3f55a48..b3e3a34973c 100644
--- a/pkgs/development/libraries/audio/libsmf/default.nix
+++ b/pkgs/development/libraries/audio/libsmf/default.nix
@@ -1,11 +1,14 @@
-{ lib, stdenv, fetchurl, autoreconfHook, glib, pkg-config }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, glib, pkg-config }:
 
 stdenv.mkDerivation rec {
   version = "1.3";
   pname = "libsmf";
-  src = fetchurl {
-    url = "https://github.com/stump/libsmf/archive/${pname}-${version}.tar.gz";
-    sha256 = "1527pcc1vd0l5iks2yw8m0bymcrnih2md5465lwpzw0wgy4rky7n";
+
+  src = fetchFromGitHub {
+    owner = "stump";
+    repo = "libsmf";
+    rev = "libsmf-${version}";
+    sha256 = "sha256-OJXJkXvbM2GQNInZXU2ldObquKHhqkdu1zqUDnVZN0Y=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/development/libraries/audio/lvtk/default.nix b/pkgs/development/libraries/audio/lvtk/default.nix
index 111a72972ed..414634f0707 100644
--- a/pkgs/development/libraries/audio/lvtk/default.nix
+++ b/pkgs/development/libraries/audio/lvtk/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchurl, boost, gtkmm2, lv2, pkg-config, python2, wafHook }:
+{ lib, stdenv, fetchFromGitHub, boost, gtkmm2, lv2, pkg-config, python2, wafHook }:
 
 stdenv.mkDerivation rec {
   pname = "lvtk";
   version = "1.2.0";
 
-  src = fetchurl {
-    url = "https://github.com/lvtk/lvtk/archive/${version}.tar.gz";
-    sha256 = "03nbj2cqcklqwh50zj2gwm07crh5iwqbpxbpzwbg5hvgl4k4rnjd";
+  src = fetchFromGitHub {
+    owner = "lvtk";
+    repo = "lvtk";
+    rev = version;
+    sha256 = "sha256-6IoyhBig3Nvc4Y8F0w8b1up6sn8O2RmoUVaBQ//+Aaw=";
   };
 
   nativeBuildInputs = [ pkg-config python2 wafHook ];
diff --git a/pkgs/development/libraries/aws-c-s3/default.nix b/pkgs/development/libraries/aws-c-s3/default.nix
index 514fdee1d4e..bd8ac2365a4 100644
--- a/pkgs/development/libraries/aws-c-s3/default.nix
+++ b/pkgs/development/libraries/aws-c-s3/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-s3";
-  version = "0.1.27";
+  version = "0.1.30";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-s3";
     rev = "v${version}";
-    sha256 = "sha256-GtBUC5cKMN9rd5GQbYoipVvxrUCCNKbb5vhHUGQpeH8=";
+    sha256 = "sha256-vsKQJPYdaBveb9kpZitmXFTqEeWWA4h0BkqxRzdOu28=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/bctoolbox/default.nix b/pkgs/development/libraries/bctoolbox/default.nix
index f03014b2cd7..2d8ddb27ad4 100644
--- a/pkgs/development/libraries/bctoolbox/default.nix
+++ b/pkgs/development/libraries/bctoolbox/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bctoolbox";
-  version = "5.0.55";
+  version = "5.0.58";
 
   nativeBuildInputs = [ cmake bcunit ];
   buildInputs = [ mbedtls ];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-fZ+8XBTZ6/wNd8odzg20dAXtbjRudI6Nw0hKC9bopGo=";
+    sha256 = "sha256-N7XxGTZkMSL+zyKHteVeRoZ63ZdT5Pq60xi9v6QURxA=";
   };
 
   # Do not build static libraries
diff --git a/pkgs/development/libraries/box2d/default.nix b/pkgs/development/libraries/box2d/default.nix
index 64349b1e3cf..80287f4f314 100644
--- a/pkgs/development/libraries/box2d/default.nix
+++ b/pkgs/development/libraries/box2d/default.nix
@@ -1,18 +1,20 @@
-{ lib, stdenv, fetchurl, unzip, cmake, libGLU, libGL, freeglut, libX11, xorgproto
+{ lib, stdenv, fetchFromGitHub, cmake, libGLU, libGL, freeglut, libX11, xorgproto
 , libXi, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "box2d";
   version = "2.3.1";
 
-  src = fetchurl {
-    url = "https://github.com/erincatto/box2d/archive/v${version}.tar.gz";
-    sha256 = "0p03ngsmyz0r5kbpiaq10ns4fxwkjvvawi8k6pfall46b93wizsq";
+  src = fetchFromGitHub {
+    owner = "erincatto";
+    repo = "box2d";
+    rev = "v${version}";
+    sha256 = "sha256-Z2J17YMzQNZqABIa5eyJDT7BWfXveymzs+DWsrklPIs=";
   };
 
-  sourceRoot = "box2d-${version}/Box2D";
+  sourceRoot = "source/Box2D";
 
-  nativeBuildInputs = [ cmake unzip pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ libGLU libGL freeglut libX11 xorgproto libXi ];
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/bullet/default.nix b/pkgs/development/libraries/bullet/default.nix
index 60ca2e9b18b..167dda7c4c4 100644
--- a/pkgs/development/libraries/bullet/default.nix
+++ b/pkgs/development/libraries/bullet/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bullet";
-  version = "3.17";
+  version = "3.21";
 
   src = fetchFromGitHub {
     owner = "bulletphysics";
     repo = "bullet3";
     rev = version;
-    sha256 = "sha256-uQ4X8F8nmagbcFh0KexrmnhHIXFSB3A1CCnjPVeHL3Q=";
+    sha256 = "sha256-krzqZ2TPycyWjJzYJ69rb6Qgymlio5HGw2nPCjDZPGk=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/capstone/default.nix b/pkgs/development/libraries/capstone/default.nix
index cce14951c8b..adc52da1e56 100644
--- a/pkgs/development/libraries/capstone/default.nix
+++ b/pkgs/development/libraries/capstone/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchurl, pkg-config }:
+{ lib, stdenv, fetchFromGitHub, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "capstone";
   version = "4.0.2";
 
-  src = fetchurl {
-    url    = "https://github.com/aquynh/capstone/archive/${version}.tar.gz";
-    sha256 = "0sjjbqps48az4map0kmai7j7dak3gy0xcq0sgx8fg09g0acdg0bw";
+  src = fetchFromGitHub {
+    owner = "aquynh";
+    repo = "capstone";
+    rev = version;
+    sha256 = "sha256-XMwQ7UaPC8YYu4yxsE4bbR3leYPfBHu5iixSLz05r3g=";
   };
 
   # replace faulty macos detection
diff --git a/pkgs/development/libraries/cmrt/default.nix b/pkgs/development/libraries/cmrt/default.nix
index 43d73ba200c..5b2895a3f17 100644
--- a/pkgs/development/libraries/cmrt/default.nix
+++ b/pkgs/development/libraries/cmrt/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchurl, autoreconfHook, pkg-config, libdrm, libva }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libdrm, libva }:
 
 stdenv.mkDerivation rec {
   pname = "cmrt";
   version = "1.0.6";
 
-  src = fetchurl {
-    url = "https://github.com/intel/cmrt/archive/${version}.tar.gz";
-    sha256 = "1q7651nvvcqhph5rgfhklm71zqd0c405mrh3wx0cfzvil82yj8na";
+  src = fetchFromGitHub {
+    owner = "intel";
+    repo = "cmrt";
+    rev = version;
+    sha256 = "sha256-W6MQI41J9CKeM1eILCkvmW34cbCC8YeEF2mE+Ci8o7s=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/development/libraries/codec2/default.nix b/pkgs/development/libraries/codec2/default.nix
index 9f15f9e16d4..7d271e16f24 100644
--- a/pkgs/development/libraries/codec2/default.nix
+++ b/pkgs/development/libraries/codec2/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "codec2";
-  version = "1.0.1";
+  version = "1.0.3";
 
   src = fetchFromGitHub {
     owner = "drowe67";
     repo = "codec2";
     rev = "v${version}";
-    sha256 = "05xjsb67dzwncl2rnhg6fqih8krf38b7vmvzlsb7y9g6d1b085wg";
+    hash = "sha256-2/Ef5cEe7Kr3a/D8u4BgvTQM6M6vglXsF+ccstFHDUw=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Speech codec designed for communications quality speech at low data rates";
-    homepage = "http://www.rowetel.com/blog/?page_id=452";
+    homepage = "https://www.rowetel.com/codec2.html";
     license = licenses.lgpl21Only;
     platforms = platforms.unix;
     maintainers = with maintainers; [ markuskowa ];
diff --git a/pkgs/development/libraries/embree/default.nix b/pkgs/development/libraries/embree/default.nix
index b85c057217e..3495386ce10 100644
--- a/pkgs/development/libraries/embree/default.nix
+++ b/pkgs/development/libraries/embree/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "embree";
-  version = "3.13.1";
+  version = "3.13.2";
 
   src = fetchFromGitHub {
     owner = "embree";
     repo = "embree";
     rev = "v${version}";
-    sha256 = "sha256-6BL/NnveIMg+xD8Zsc3sidL0iw0YbJITgd8Zf4Mh28I=";
+    sha256 = "sha256-bnd7p8Yu0YGkhUrg3yy32rk7kmHGB4YxMx1qWzIx5vw=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/entt/default.nix b/pkgs/development/libraries/entt/default.nix
index 122bd938730..c514e3d7800 100644
--- a/pkgs/development/libraries/entt/default.nix
+++ b/pkgs/development/libraries/entt/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchFromGitHub, cmake }:
 stdenv.mkDerivation rec {
   pname = "entt";
-  version = "3.8.1";
+  version = "3.9.0";
 
   src = fetchFromGitHub {
     owner = "skypjack";
     repo = "entt";
     rev = "v${version}";
-    sha256 = "sha256-vg2tpGyZZM8c97Qko88JMP5YNPZx5kI5qRkkRclvZtA=";
+    sha256 = "sha256-7UeL8D+A0pH3TKNO5B8A1nhD7uDWeirHnHaI/YKVwyo=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/skypjack/entt";
     description = "A header-only, tiny and easy to use library for game programming and much more written in modern C++";
     maintainers = with maintainers; [ twey ];
+    platforms = platforms.all;
     license = licenses.mit;
   };
 }
diff --git a/pkgs/development/libraries/funambol/default.nix b/pkgs/development/libraries/funambol/default.nix
index e5ad34a56bb..3e7bf0d21a2 100644
--- a/pkgs/development/libraries/funambol/default.nix
+++ b/pkgs/development/libraries/funambol/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "SyncML client sdk by Funambol project";
-    homepage = "http://www.funambol.com";
+    homepage = "https://www.funambol.com";
     license = licenses.agpl3;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/glfw/3.x.nix b/pkgs/development/libraries/glfw/3.x.nix
index a860eed37a7..53409ec7f73 100644
--- a/pkgs/development/libraries/glfw/3.x.nix
+++ b/pkgs/development/libraries/glfw/3.x.nix
@@ -6,14 +6,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.3.5";
+  version = "3.3.6";
   pname = "glfw";
 
   src = fetchFromGitHub {
     owner = "glfw";
     repo = "GLFW";
     rev = version;
-    sha256 = "sha256-1KkzYclOLGqiV1/8BsJ3e+pXMQ6a+sjLwZ7mjSuxxbA=";
+    sha256 = "sha256-mYcnucIRudLLySShKSDzsQfuoM2/0guKpeLSGuAWEkQ=";
   };
 
   # Fix freezing on Wayland (https://github.com/glfw/glfw/pull/1711)
diff --git a/pkgs/development/libraries/grantlee/5/default.nix b/pkgs/development/libraries/grantlee/5/default.nix
index 6c8bf6eb722..56899b1f897 100644
--- a/pkgs/development/libraries/grantlee/5/default.nix
+++ b/pkgs/development/libraries/grantlee/5/default.nix
@@ -1,14 +1,15 @@
-{ mkDerivation, lib, fetchurl, qtbase, qtscript, cmake }:
+{ mkDerivation, lib, fetchFromGitHub, qtbase, qtscript, cmake }:
 
 mkDerivation rec {
   pname = "grantlee";
   version = "5.2.0";
   grantleePluginPrefix = "lib/grantlee/${lib.versions.majorMinor version}";
 
-  src = fetchurl {
-    url = "https://github.com/steveire/grantlee/archive/v${version}.tar.gz";
-    sha256 = "02lrdbnvaz19hkawbbj2psww1m04qsbhvv172ggpp5bbfkjwx6hk";
-    name = "${pname}-${version}.tar.gz";
+  src = fetchFromGitHub {
+    owner = "steveire";
+    repo = "grantlee";
+    rev = "v${version}";
+    sha256 = "sha256-mAbgzdBdIW1wOTQNBePQuyTgkKdpn1c+zR3H7mXHvgk=";
   };
 
   buildInputs = [ qtbase qtscript ];
diff --git a/pkgs/development/libraries/gsound/default.nix b/pkgs/development/libraries/gsound/default.nix
index 13a8aaa2f19..ddbfc307b2d 100644
--- a/pkgs/development/libraries/gsound/default.nix
+++ b/pkgs/development/libraries/gsound/default.nix
@@ -9,9 +9,16 @@ stdenv.mkDerivation rec {
     sha256 = "06l80xgykj7x1kqkjvcq06pwj2rmca458zvs053qc55x3sg06bfa";
   };
 
+  strictDeps = true;
+  depsBuildBuild = [ pkg-config ];
   nativeBuildInputs = [ pkg-config meson ninja gobject-introspection libtool vala ];
   buildInputs = [ glib libcanberra ];
 
+  mesonFlags = [
+    "-Dintrospection=${lib.boolToString (stdenv.buildPlatform == stdenv.hostPlatform)}"
+    "-Denable_vala=${lib.boolToString (stdenv.buildPlatform == stdenv.hostPlatform)}"
+  ];
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/pkgs/development/libraries/gvm-libs/default.nix b/pkgs/development/libraries/gvm-libs/default.nix
index 6706057ab8c..63692ca7de0 100644
--- a/pkgs/development/libraries/gvm-libs/default.nix
+++ b/pkgs/development/libraries/gvm-libs/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gvm-libs";
-  version = "21.4.2";
+  version = "21.4.3";
 
   src = fetchFromGitHub {
     owner = "greenbone";
     repo = pname;
     rev = "v${version}";
-    sha256 = "14v7z8ynd20s4pkhp2nc19n6gbmbh8yrn39yi2fbfm7gj28b52sx";
+    sha256 = "sha256-1NVLGyUDUnOy3GYDtVyhGTvWOYoWp95EbkgTlFWuxE8=";
   };
 
   nativeBuildInputs = [
@@ -50,6 +50,10 @@ stdenv.mkDerivation rec {
     zlib
   ];
 
+  cmakeFlags = [
+    "-DGVM_RUN_DIR=$out/run/gvm"
+  ];
+
   meta = with lib; {
     description = "Libraries module for the Greenbone Vulnerability Management Solution";
     homepage = "https://github.com/greenbone/gvm-libs";
diff --git a/pkgs/development/libraries/imgui/default.nix b/pkgs/development/libraries/imgui/default.nix
index 94dd9f95d39..038c5a03620 100644
--- a/pkgs/development/libraries/imgui/default.nix
+++ b/pkgs/development/libraries/imgui/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "imgui";
-  version = "1.85";
+  version = "1.86";
 
   src = fetchFromGitHub {
     owner = "ocornut";
     repo = "imgui";
     rev = "v${version}";
-    sha256 = "sha256-HQsGlsvmf3ikqhGnJHf/d6SRCY/QDeW7XUTwXQH/JYE=";
+    sha256 = "sha256-NuyWrtD+/bRkMlsvU0gNkQhDJVlSPPWhBELN/AtYRwk=";
   };
 
   dontBuild = true;
diff --git a/pkgs/development/libraries/intel-gmmlib/default.nix b/pkgs/development/libraries/intel-gmmlib/default.nix
index 59aaeb6ad92..644975ca66c 100644
--- a/pkgs/development/libraries/intel-gmmlib/default.nix
+++ b/pkgs/development/libraries/intel-gmmlib/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-gmmlib";
-  version = "21.3.3";
+  version = "22.0.1";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "gmmlib";
     rev = "intel-gmmlib-${version}";
-    sha256 = "0hvly3fykhy4m7mzaa7xadaz7jz8krnfgj3zgzl2a2rpzja6frdn";
+    sha256 = "1s46vwcs26hdlsa8h51gq4fyi9i8k5hrcx5ffbv9g7v3x706nplf";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/intel-media-driver/default.nix b/pkgs/development/libraries/intel-media-driver/default.nix
index 689a70a320d..d76a58fc633 100644
--- a/pkgs/development/libraries/intel-media-driver/default.nix
+++ b/pkgs/development/libraries/intel-media-driver/default.nix
@@ -7,13 +7,14 @@
 , libva
 , libpciaccess
 , intel-gmmlib
+, libdrm
 , enableX11 ? stdenv.isLinux
 , libX11
 }:
 
 stdenv.mkDerivation rec {
   pname = "intel-media-driver";
-  version = "21.4.3";
+  version = "22.1.0";
 
   outputs = [ "out" "dev" ];
 
@@ -21,7 +22,7 @@ stdenv.mkDerivation rec {
     owner = "intel";
     repo = "media-driver";
     rev = "intel-media-${version}";
-    sha256 = "04r03f48j1nly0j6aq8017va9m3yrnscv6lbrvf3a98fpwk9gc1l";
+    sha256 = "0giba5274kzpjb5rp3d9bbnvcz7fp8ybi4s3hha2idxk0l5yamf1";
   };
 
   patches = [
@@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = [ libva libpciaccess intel-gmmlib ]
+  buildInputs = [ libva libpciaccess intel-gmmlib libdrm ]
     ++ lib.optional enableX11 libX11;
 
   postFixup = lib.optionalString enableX11 ''
diff --git a/pkgs/development/libraries/java/commons/bcel/default.nix b/pkgs/development/libraries/java/commons/bcel/default.nix
index 9d34aaf6c8e..104320a8d89 100644
--- a/pkgs/development/libraries/java/commons/bcel/default.nix
+++ b/pkgs/development/libraries/java/commons/bcel/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage    = "http://commons.apache.org/proper/commons-bcel/";
+    homepage    = "https://commons.apache.org/proper/commons-bcel/";
     description = "Gives users a convenient way to analyze, create, and manipulate (binary) Java class files";
     maintainers = with lib.maintainers; [ copumpkin ];
     license     = lib.licenses.asl20;
diff --git a/pkgs/development/libraries/java/commons/bsf/default.nix b/pkgs/development/libraries/java/commons/bsf/default.nix
index 08b6a99a55d..22a9fae358d 100644
--- a/pkgs/development/libraries/java/commons/bsf/default.nix
+++ b/pkgs/development/libraries/java/commons/bsf/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Interface to scripting languages, including JSR-223";
-    homepage = "http://commons.apache.org/proper/commons-bsf/";
+    homepage = "https://commons.apache.org/proper/commons-bsf/";
     license = lib.licenses.asl20;
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/development/libraries/java/commons/compress/default.nix b/pkgs/development/libraries/java/commons/compress/default.nix
index 3bbedde2e95..c685eb691c5 100644
--- a/pkgs/development/libraries/java/commons/compress/default.nix
+++ b/pkgs/development/libraries/java/commons/compress/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage    = "http://commons.apache.org/proper/commons-compress";
+    homepage    = "https://commons.apache.org/proper/commons-compress";
     description = "Allows manipulation of ar, cpio, Unix dump, tar, zip, gzip, XZ, Pack200, bzip2, 7z, arj, lzma, snappy, DEFLATE and Z files";
     maintainers = with lib.maintainers; [ copumpkin ];
     license     = lib.licenses.asl20;
diff --git a/pkgs/development/libraries/java/commons/fileupload/default.nix b/pkgs/development/libraries/java/commons/fileupload/default.nix
index 868f2da4e53..074dc2be01c 100644
--- a/pkgs/development/libraries/java/commons/fileupload/default.nix
+++ b/pkgs/development/libraries/java/commons/fileupload/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage    = "http://commons.apache.org/proper/commons-fileupload";
+    homepage    = "https://commons.apache.org/proper/commons-fileupload";
     description = "Makes it easy to add robust, high-performance, file upload capability to your servlets and web applications";
     maintainers = with lib.maintainers; [ copumpkin ];
     license     = lib.licenses.asl20;
diff --git a/pkgs/development/libraries/java/commons/io/default.nix b/pkgs/development/libraries/java/commons/io/default.nix
index ba8b59162c5..d8b32607a9e 100644
--- a/pkgs/development/libraries/java/commons/io/default.nix
+++ b/pkgs/development/libraries/java/commons/io/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage    = "http://commons.apache.org/proper/commons-io";
+    homepage    = "https://commons.apache.org/proper/commons-io";
     description = "A library of utilities to assist with developing IO functionality";
     maintainers = with lib.maintainers; [ copumpkin ];
     license     = lib.licenses.asl20;
diff --git a/pkgs/development/libraries/java/commons/lang/default.nix b/pkgs/development/libraries/java/commons/lang/default.nix
index 974f7bf9a1c..07e94148817 100644
--- a/pkgs/development/libraries/java/commons/lang/default.nix
+++ b/pkgs/development/libraries/java/commons/lang/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage    = "http://commons.apache.org/proper/commons-lang";
+    homepage    = "https://commons.apache.org/proper/commons-lang";
     description = "Provides additional methods to manipulate standard Java library classes";
     maintainers = with lib.maintainers; [ copumpkin ];
     license     = lib.licenses.asl20;
diff --git a/pkgs/development/libraries/java/commons/logging/default.nix b/pkgs/development/libraries/java/commons/logging/default.nix
index 5b6c8b36b34..f98c8bd72e0 100644
--- a/pkgs/development/libraries/java/commons/logging/default.nix
+++ b/pkgs/development/libraries/java/commons/logging/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Wrapper around a variety of logging API implementations";
-    homepage = "http://commons.apache.org/proper/commons-logging";
+    homepage = "https://commons.apache.org/proper/commons-logging";
     license = lib.licenses.asl20;
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/development/libraries/java/commons/math/default.nix b/pkgs/development/libraries/java/commons/math/default.nix
index 960f12fb8bf..5543532015e 100644
--- a/pkgs/development/libraries/java/commons/math/default.nix
+++ b/pkgs/development/libraries/java/commons/math/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage    = "http://commons.apache.org/proper/commons-math/";
+    homepage    = "https://commons.apache.org/proper/commons-math/";
     description = "A library of lightweight, self-contained mathematics and statistics components";
     maintainers = with lib.maintainers; [ copumpkin ];
     license     = lib.licenses.asl20;
diff --git a/pkgs/development/libraries/jemalloc/common.nix b/pkgs/development/libraries/jemalloc/common.nix
deleted file mode 100644
index 5abde13a2e6..00000000000
--- a/pkgs/development/libraries/jemalloc/common.nix
+++ /dev/null
@@ -1,59 +0,0 @@
-{ version, sha256 }:
-{ lib, stdenv, fetchurl
-, fetchpatch
-# By default, jemalloc puts a je_ prefix onto all its symbols on OSX, which
-# then stops downstream builds (mariadb in particular) from detecting it. This
-# option should remove the prefix and give us a working jemalloc.
-# Causes segfaults with some software (ex. rustc), but defaults to true for backward
-# compatibility.
-, stripPrefix ? stdenv.hostPlatform.isDarwin
-, disableInitExecTls ? false
-}:
-
-with lib;
-
-stdenv.mkDerivation rec {
-  pname = "jemalloc";
-  inherit version;
-
-  src = fetchurl {
-    url = "https://github.com/jemalloc/jemalloc/releases/download/${version}/${pname}-${version}.tar.bz2";
-    inherit sha256;
-  };
-
-  patches = [
-    # workaround https://github.com/jemalloc/jemalloc/issues/2091
-    (fetchpatch {
-      url = "https://github.com/jemalloc/jemalloc/commit/3b4a03b92b2e415415a08f0150fdb9eeb659cd52.diff";
-      sha256 = "sha256-6AYtADREhfj93ZLk9xnXtjc6vHDU0EKLLOvLd6YdJeI=";
-    })
-  ];
-
-  # see the comment on stripPrefix
-  configureFlags = []
-    ++ optional stripPrefix "--with-jemalloc-prefix="
-    ++ optional disableInitExecTls "--disable-initial-exec-tls"
-    # jemalloc is unable to correctly detect transparent hugepage support on
-    # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default
-    # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support
-    ++ optionals (stdenv.isAarch32 && versionOlder version "5") [
-      "--disable-thp"
-      "je_cv_thp=no"
-    ]
-  ;
-
-  doCheck = true;
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    homepage = "http://jemalloc.net";
-    description = "General purpose malloc(3) implementation";
-    longDescription = ''
-      malloc(3)-compatible memory allocator that emphasizes fragmentation
-      avoidance and scalable concurrency support.
-    '';
-    license = licenses.bsd2;
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/jemalloc/default.nix b/pkgs/development/libraries/jemalloc/default.nix
index 9324279ed10..8ed9219fb7b 100644
--- a/pkgs/development/libraries/jemalloc/default.nix
+++ b/pkgs/development/libraries/jemalloc/default.nix
@@ -1,4 +1,58 @@
-import ./common.nix {
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+# By default, jemalloc puts a je_ prefix onto all its symbols on OSX, which
+# then stops downstream builds (mariadb in particular) from detecting it. This
+# option should remove the prefix and give us a working jemalloc.
+# Causes segfaults with some software (ex. rustc), but defaults to true for backward
+# compatibility.
+, stripPrefix ? stdenv.hostPlatform.isDarwin
+, disableInitExecTls ? false
+}:
+
+stdenv.mkDerivation rec {
+  pname = "jemalloc";
   version = "5.2.1";
-  sha256 = "1xl7z0vwbn5iycg7amka9jd6hxd8nmfk7nahi4p9w2bnw9f0wcrl";
+
+  src = fetchurl {
+    url = "https://github.com/jemalloc/jemalloc/releases/download/${version}/${pname}-${version}.tar.bz2";
+    sha256 = "1xl7z0vwbn5iycg7amka9jd6hxd8nmfk7nahi4p9w2bnw9f0wcrl";
+  };
+
+  patches = [
+    # workaround https://github.com/jemalloc/jemalloc/issues/2091
+    (fetchpatch {
+      url = "https://github.com/jemalloc/jemalloc/commit/3b4a03b92b2e415415a08f0150fdb9eeb659cd52.diff";
+      sha256 = "sha256-6AYtADREhfj93ZLk9xnXtjc6vHDU0EKLLOvLd6YdJeI=";
+    })
+  ];
+
+  # see the comment on stripPrefix
+  configureFlags = []
+    ++ lib.optional stripPrefix "--with-jemalloc-prefix="
+    ++ lib.optional disableInitExecTls "--disable-initial-exec-tls"
+    # jemalloc is unable to correctly detect transparent hugepage support on
+    # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default
+    # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support
+    ++ lib.optionals (stdenv.isAarch32 && lib.versionOlder version "5") [
+      "--disable-thp"
+      "je_cv_thp=no"
+    ]
+  ;
+
+  doCheck = true;
+
+  enableParallelBuilding = true;
+
+  meta = with lib; {
+    homepage = "http://jemalloc.net";
+    description = "General purpose malloc(3) implementation";
+    longDescription = ''
+      malloc(3)-compatible memory allocator that emphasizes fragmentation
+      avoidance and scalable concurrency support.
+    '';
+    license = licenses.bsd2;
+    platforms = platforms.all;
+  };
 }
diff --git a/pkgs/development/libraries/jemalloc/jemalloc450.nix b/pkgs/development/libraries/jemalloc/jemalloc450.nix
deleted file mode 100644
index 85b4fb100f7..00000000000
--- a/pkgs/development/libraries/jemalloc/jemalloc450.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-import ./common.nix {
-  version = "4.5.0";
-  sha256 = "10373xhpc10pgmai9fkc1z0rs029qlcb3c0qfnvkbwdlcibdh2cl";
-}
diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix
index 6c162c381ac..9adf509f8aa 100644
--- a/pkgs/development/libraries/jsoncpp/default.nix
+++ b/pkgs/development/libraries/jsoncpp/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     "-DBUILD_STATIC_LIBS=OFF"
     "-DBUILD_OBJECT_LIBS=OFF"
     "-DJSONCPP_WITH_CMAKE_PACKAGE=ON"
-  ];
+  ] ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "-DJSONCPP_WITH_TESTS=OFF";
 
   meta = with lib; {
     homepage = "https://github.com/open-source-parsers/jsoncpp";
diff --git a/pkgs/development/libraries/libamqpcpp/default.nix b/pkgs/development/libraries/libamqpcpp/default.nix
index ee34afad4f7..8e9a34716f2 100644
--- a/pkgs/development/libraries/libamqpcpp/default.nix
+++ b/pkgs/development/libraries/libamqpcpp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libamqpcpp";
-  version = "4.3.12";
+  version = "4.3.15";
 
   src = fetchFromGitHub {
     owner = "CopernicaMarketingSoftware";
     repo = "AMQP-CPP";
     rev = "v${version}";
-    sha256 = "sha256-veiD2RrJ08HYZ1Jy8EUe6ct2qh7a2xZCn3TTM+Hvu+0=";
+    sha256 = "sha256-S2/ecWC78Q4ihVLtDQ6DD8/qX1cDslnTjqd5IkKCjc4=";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/development/libraries/libb64/default.nix b/pkgs/development/libraries/libb64/default.nix
index 81ba4263a1d..987a36cd79f 100644
--- a/pkgs/development/libraries/libb64/default.nix
+++ b/pkgs/development/libraries/libb64/default.nix
@@ -19,7 +19,11 @@ stdenv.mkDerivation rec {
       url = "https://github.com/libb64/libb64/commit/4fe47c052e9123da8f751545deb48be08c3411f6.patch";
       sha256 = "18b3np3gpyzimqmk6001riqv5n70wfbclky6zzsrvj5zl1dj4ljf";
     })
-  ];
+  ] ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) (fetchpatch {
+    name = "0001-example-Do-not-run-the-tests.patch";
+    url = "https://cgit.openembedded.org/meta-openembedded/plain/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch?id=484e0de1e4ee107f21ae2a5c5f976ed987978baf";
+    sha256 = "sha256-KTsiIWJe66BKlu/A43FWfW0XAu4E7lWX/RY4NITRrm4=";
+  });
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/libcaca/default.nix b/pkgs/development/libraries/libcaca/default.nix
index f12409f271f..b0d09a5f749 100644
--- a/pkgs/development/libraries/libcaca/default.nix
+++ b/pkgs/development/libraries/libcaca/default.nix
@@ -1,40 +1,32 @@
 { lib
 , stdenv
-, fetchurl
+, fetchFromGitHub
+, autoreconfHook
 , imlib2
 , libX11
 , libXext
 , ncurses
 , pkg-config
-, x11Support ? !stdenv.isDarwin
 , zlib
+, x11Support ? !stdenv.isDarwin
 }:
 
 stdenv.mkDerivation rec {
   pname = "libcaca";
-  version = "0.99.beta19";
+  version = "0.99.beta20";
 
-  src = fetchurl {
-    urls = [
-      "http://fossies.org/linux/privat/${pname}-${version}.tar.gz"
-      "http://caca.zoy.org/files/libcaca/${pname}-${version}.tar.gz"
-    ];
-    hash = "sha256-EotGfE7QMmTBh0BRcqToMEk0LMjML2VfU6LQ7p03cvQ=";
+  src = fetchFromGitHub {
+    owner = "cacalabs";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-N0Lfi0d4kjxirEbIjdeearYWvStkKMyV6lgeyNKXcVw=";
   };
 
-  outputs = [ "bin" "dev" "out" "man" ];
-
-  configureFlags = [
-    (if x11Support then "--enable-x11" else "--disable-x11")
-  ];
-
-  NIX_CFLAGS_COMPILE = lib.optionalString (!x11Support) "-DX_DISPLAY_MISSING";
-
-  enableParallelBuilding = true;
-
   nativeBuildInputs = [
+    autoreconfHook
     pkg-config
   ];
+
   buildInputs = [
     ncurses
     zlib
@@ -44,6 +36,14 @@ stdenv.mkDerivation rec {
     libXext
   ];
 
+  outputs = [ "bin" "dev" "out" "man" ];
+
+  configureFlags = [
+    (if x11Support then "--enable-x11" else "--disable-x11")
+  ];
+
+  NIX_CFLAGS_COMPILE = lib.optionalString (!x11Support) "-DX_DISPLAY_MISSING";
+
   postInstall = ''
     mkdir -p $dev/bin
     mv $bin/bin/caca-config $dev/bin/caca-config
diff --git a/pkgs/development/libraries/libcacard/default.nix b/pkgs/development/libraries/libcacard/default.nix
index 3585daefbf5..1ab5b428f57 100644
--- a/pkgs/development/libraries/libcacard/default.nix
+++ b/pkgs/development/libraries/libcacard/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     description = "Smart card emulation library";
     homepage = "https://gitlab.freedesktop.org/spice/libcacard";
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ yegortimoshenko ];
+    maintainers = with maintainers; [ yana ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libcello/default.nix b/pkgs/development/libraries/libcello/default.nix
index 100077bcc70..b2f3fc5fae5 100644
--- a/pkgs/development/libraries/libcello/default.nix
+++ b/pkgs/development/libraries/libcello/default.nix
@@ -5,14 +5,14 @@ stdenv.mkDerivation rec {
   version = "2.1.0";
 
   src = fetchurl {
-    url = "http://libcello.org/static/libCello-${version}.tar.gz";
+    url = "https://libcello.org/static/libCello-${version}.tar.gz";
     sha256 = "0a1b2x5ni07vd9ridnl7zv7h2s32070wsphjy94qr066b99gdb29";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
 
   meta = {
-    homepage = "http://libcello.org/";
+    homepage = "https://libcello.org/";
     description = "Higher level programming in C";
     license = lib.licenses.bsd3;
     maintainers = [ lib.maintainers.MostAwesomeDude ];
diff --git a/pkgs/development/libraries/libcouchbase/default.nix b/pkgs/development/libraries/libcouchbase/default.nix
index 6edb264d2e2..0c9cd1a7530 100644
--- a/pkgs/development/libraries/libcouchbase/default.nix
+++ b/pkgs/development/libraries/libcouchbase/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libcouchbase";
-  version = "3.2.3";
+  version = "3.2.4";
 
   src = fetchFromGitHub {
     owner = "couchbase";
     repo = "libcouchbase";
     rev = version;
-    sha256 = "sha256-pCqSsmddgNtQJnOVIHz5ft0gJN5T7T3ehHtjuexhBxI=";
+    sha256 = "sha256-7gHqnhNog0CN92YyvypbHWWUnCDuvGP4oiJjtP9GkIY=";
   };
 
   cmakeFlags = [ "-DLCB_NO_MOCK=ON" ];
diff --git a/pkgs/development/libraries/libfaketime/default.nix b/pkgs/development/libraries/libfaketime/default.nix
index 34c957715dd..7ac48a705a8 100644
--- a/pkgs/development/libraries/libfaketime/default.nix
+++ b/pkgs/development/libraries/libfaketime/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchurl, perl, coreutils }:
+{ lib, stdenv, fetchFromGitHub, perl, coreutils }:
 
 stdenv.mkDerivation rec {
   pname = "libfaketime";
   version = "0.9.9";
 
-  src = fetchurl {
-    url = "https://github.com/wolfcw/libfaketime/archive/v${version}.tar.gz";
-    sha256 = "sha256-V9AYEVA2HAqbXI7vBbETkvYTStosLZmOkuY9rtY5ZHw=";
+  src = fetchFromGitHub {
+    owner = "wolfcw";
+    repo = "libfaketime";
+    rev = "v${version}";
+    sha256 = "sha256-P1guVggteGtoq8+eeE966hDPkRwsn0m7oLCohyPrIb4=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libinotify-kqueue/default.nix b/pkgs/development/libraries/libinotify-kqueue/default.nix
index ff74060d3d4..d01407b43d0 100644
--- a/pkgs/development/libraries/libinotify-kqueue/default.nix
+++ b/pkgs/development/libraries/libinotify-kqueue/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchzip, autoreconfHook }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   pname = "libinotify-kqueue";
   version = "20180201";
 
-  src = fetchzip {
-    url = "https://github.com/libinotify-kqueue/libinotify-kqueue/archive/${version}.tar.gz";
-    sha256 = "0dkh6n0ghhcl7cjkjmpin118h7al6i4vlkmw57vip5f6ngr6q3pl";
+  src = fetchFromGitHub {
+    owner = "libinotify-kqueue";
+    repo = "libinotify-kqueue";
+    rev = version;
+    sha256 = "sha256-9A5s8rPGlRv3KbxOukk0VB2IQrDxVjklO5RB+IA1cDY=";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
@@ -18,7 +20,7 @@ stdenv.mkDerivation rec {
     description = "Inotify shim for macOS and BSD";
     homepage = "https://github.com/libinotify-kqueue/libinotify-kqueue";
     license = licenses.mit;
-    maintainers = with maintainers; [ yegortimoshenko ];
+    maintainers = with maintainers; [ yana ];
     platforms = with platforms; darwin ++ freebsd ++ netbsd ++ openbsd;
   };
 }
diff --git a/pkgs/development/libraries/liblcf/default.nix b/pkgs/development/libraries/liblcf/default.nix
index 1e6f57368b7..45bb7f5b60e 100644
--- a/pkgs/development/libraries/liblcf/default.nix
+++ b/pkgs/development/libraries/liblcf/default.nix
@@ -2,23 +2,24 @@
 
 stdenv.mkDerivation rec {
   pname = "liblcf";
-  version = "0.6.2";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "EasyRPG";
     repo = "liblcf";
     rev = version;
-    sha256 = "0b0bz9ydpc98mxbg78bgf8kil85kxyqgkzxgsjq7awzmyw7f3c1c";
+    sha256 = "sha256-69cYZ8hJ92gK39gueaEoUM0K7BDWIQ/0NvcQ/6e3Sg8=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
   propagatedBuildInputs = [ expat icu ];
+  enableParallelBuilding = true;
 
   meta = with lib; {
     description = "Library to handle RPG Maker 2000/2003 and EasyRPG projects";
     homepage = "https://github.com/EasyRPG/liblcf";
     license = licenses.mit;
-    maintainers = with maintainers; [ yegortimoshenko ];
+    maintainers = with maintainers; [ yana ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libmowgli/default.nix b/pkgs/development/libraries/libmowgli/default.nix
index e227c09b2b6..a2a3971844b 100644
--- a/pkgs/development/libraries/libmowgli/default.nix
+++ b/pkgs/development/libraries/libmowgli/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
   pname = "libmowgli";
   version = "2.1.3";
 
-  src = fetchurl {
-    url = "https://github.com/atheme/libmowgli-2/archive/v${version}.tar.gz";
-    sha256 = "0xx4vndmwz40pxa5gikl8z8cskpdl9a30i2i5fjncqzlp4pspymp";
+  src = fetchFromGitHub {
+    owner = "atheme";
+    repo = "libmowgli-2";
+    rev = "v${version}";
+    sha256 = "sha256-jlw6ixMoIdIjmQ86N+KN+Gez218sw894POkcCYnT0s0=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libmx/default.nix b/pkgs/development/libraries/libmx/default.nix
index f4256de6981..683c21095e6 100644
--- a/pkgs/development/libraries/libmx/default.nix
+++ b/pkgs/development/libraries/libmx/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl
+{ lib, stdenv, fetchFromGitHub
 , libtool, pkg-config, automake, autoconf, intltool
 , glib, gobject-introspection, gtk2, gtk-doc
 , clutter, clutter-gtk
@@ -8,9 +8,11 @@ stdenv.mkDerivation rec {
   pname = "libmx";
   version = "1.4.7";
 
-  src = fetchurl {
-    url = "https://github.com/clutter-project/mx/archive/${version}.tar.gz";
-    sha256 = "8a7514ea33c1dec7251d0141e24a702e7701dc9f00348cbcf1816925b7f74dbc";
+  src = fetchFromGitHub {
+    owner = "clutter-project";
+    repo = "mx";
+    rev = version;
+    sha256 = "sha256-+heIPSkg3d22xsU48UOTJ9FPLXC7zLivcnabQOM9aEk=";
   };
 
   # remove the following superfluous checks
diff --git a/pkgs/development/libraries/libplctag/default.nix b/pkgs/development/libraries/libplctag/default.nix
index 5276b8523d6..334fc61fc3d 100644
--- a/pkgs/development/libraries/libplctag/default.nix
+++ b/pkgs/development/libraries/libplctag/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libplctag";
-  version = "2.4.7";
+  version = "2.4.8";
 
   src = fetchFromGitHub {
     owner = "libplctag";
     repo = "libplctag";
     rev = "v${version}";
-    sha256 = "sha256-DLx9VBmyn5L30i6qPK4LD+3cOo7zG2YLOui6+krU9So=";
+    sha256 = "sha256-GVYG+ioqGo0k6ClrJu2mijtuBBFc9l6dNexNDNyh5+8=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libsearpc/default.nix b/pkgs/development/libraries/libsearpc/default.nix
index 199ae0b685c..bbd892c33ee 100644
--- a/pkgs/development/libraries/libsearpc/default.nix
+++ b/pkgs/development/libraries/libsearpc/default.nix
@@ -1,5 +1,12 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, python3Packages
-, glib, jansson }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkg-config
+, python3
+, glib
+, jansson
+}:
 
 stdenv.mkDerivation rec {
   version = "3.2.0";
@@ -12,9 +19,19 @@ stdenv.mkDerivation rec {
     sha256 = "18i5zvrp6dv6vygxx5nc93mai2p2x786n5lnf5avrin6xiz2j6hd";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = with python3Packages; [ python simplejson ];
-  propagatedBuildInputs = [ glib jansson ];
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+  ];
+
+  buildInputs = [
+    python3
+  ];
+
+  propagatedBuildInputs = [
+    glib
+    jansson
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/haiwen/libsearpc";
diff --git a/pkgs/development/libraries/libshout/default.nix b/pkgs/development/libraries/libshout/default.nix
index 5b284e4408c..e231fb0ed6e 100644
--- a/pkgs/development/libraries/libshout/default.nix
+++ b/pkgs/development/libraries/libshout/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       bad data from getting to the icecast server.
     '';
 
-    homepage = "http://www.icecast.org";
+    homepage = "https://www.icecast.org";
     license = lib.licenses.gpl2;
     maintainers = with lib.maintainers; [ jcumming ];
     platforms = with lib.platforms; unix;
diff --git a/pkgs/development/libraries/libvirt/5.9.0.nix b/pkgs/development/libraries/libvirt/5.9.0.nix
deleted file mode 100644
index f7a393e8fda..00000000000
--- a/pkgs/development/libraries/libvirt/5.9.0.nix
+++ /dev/null
@@ -1,141 +0,0 @@
-{ lib, stdenv, fetchurl, fetchgit
-, pkg-config, makeWrapper, libtool, autoconf, automake, fetchpatch
-, coreutils, libxml2, gnutls, perl, python2, attr
-, iproute2, iptables, readline, lvm2, util-linux, systemd, libpciaccess, gettext
-, libtasn1, libgcrypt, yajl, pmutils, libcap_ng, libapparmor
-, dnsmasq, libnl, libpcap, libxslt, xhtml1, numad, numactl, perlPackages
-, curl, libiconv, gmp, zfs, parted, bridge-utils, dmidecode, glib, rpcsvc-proto, libtirpc
-, enableXen ? false, xen ? null
-, enableIscsi ? false, openiscsi
-, enableCeph ? false, ceph
-}:
-
-with lib;
-
-# if you update, also bump <nixpkgs/pkgs/development/python-modules/libvirt/default.nix> and SysVirt in <nixpkgs/pkgs/top-level/perl-packages.nix>
-let
-  buildFromTarball = stdenv.isDarwin;
-in stdenv.mkDerivation rec {
-  pname = "libvirt";
-  version = "5.9.0";
-
-  src =
-    if buildFromTarball then
-      fetchurl {
-        url = "http://libvirt.org/sources/${pname}-${version}.tar.xz";
-        sha256 = "0fc9jxw3v6x5hc10bkd7bbcayn24hbld5adj2gh5s648v7hx55il";
-      }
-    else
-      fetchgit {
-        url = "git://libvirt.org/libvirt.git";
-        rev = "v${version}";
-        sha256 = "0smm77ag8bg24xkbhl4akqikjrsq2pd3wk31nj0hk1avqnl00gmk";
-        fetchSubmodules = true;
-      };
-
-  nativeBuildInputs = [ makeWrapper pkg-config rpcsvc-proto ];
-  buildInputs = [
-    libxml2 gnutls perl python2 readline gettext libtasn1 libgcrypt yajl
-    libxslt xhtml1 perlPackages.XMLXPath curl libpcap glib
-  ] ++ optionals (!buildFromTarball) [
-    libtool autoconf automake
-  ] ++ optionals stdenv.isLinux [
-    libpciaccess lvm2 util-linux systemd libnl numad zfs
-    libapparmor libcap_ng numactl attr parted libtirpc
-  ] ++ optionals (enableXen && stdenv.isLinux && stdenv.isx86_64) [
-    xen
-  ] ++ optionals enableIscsi [
-    openiscsi
-  ] ++ optionals enableCeph [
-    ceph
-  ] ++ optionals stdenv.isDarwin [
-    libiconv gmp
-  ];
-
-  preConfigure = ''
-    ${ optionalString (!buildFromTarball) "./bootstrap --no-git --gnulib-srcdir=$(pwd)/.gnulib" }
-    PATH=${lib.makeBinPath ([ dnsmasq ] ++ optionals stdenv.isLinux [ iproute2 iptables lvm2 systemd numad ] ++ optionals enableIscsi [ openiscsi ])}:$PATH
-    # the path to qemu-kvm will be stored in VM's .xml and .save files
-    # do not use "''${qemu_kvm}/bin/qemu-kvm" to avoid bound VMs to particular qemu derivations
-    substituteInPlace src/lxc/lxc_conf.c \
-      --replace 'lxc_path,' '"/run/libvirt/nix-emulators/libvirt_lxc",'
-    patchShebangs . # fixes /usr/bin/python references
-  '';
-
-  configureFlags = [
-    "--localstatedir=/var"
-    "--sysconfdir=/var/lib"
-    "--with-libpcap"
-    "--with-qemu"
-    "--with-vmware"
-    "--with-vbox"
-    "--with-test"
-    "--with-esx"
-    "--with-remote"
-  ] ++ optionals stdenv.isLinux [
-    "QEMU_BRIDGE_HELPER=/run/wrappers/bin/qemu-bridge-helper"
-    "QEMU_PR_HELPER=/run/libvirt/nix-helpers/qemu-pr-helper"
-    "CFLAGS=-I${libtirpc.dev}/include/tirpc"
-    "--with-attr"
-    "--with-apparmor"
-    "--with-secdriver-apparmor"
-    "--with-numad"
-    "--with-macvtap"
-    "--with-virtualport"
-    "--with-storage-disk"
-  ] ++ optionals (stdenv.isLinux && zfs != null) [
-    "--with-storage-zfs"
-  ] ++ optionals enableIscsi [
-    "--with-storage-iscsi"
-  ] ++ optionals enableCeph [
-    "--with-storage-rbd"
-  ] ++ optionals stdenv.isDarwin [
-    "--with-init-script=none"
-  ];
-
-  installFlags = [
-    "localstatedir=$(TMPDIR)/var"
-    "sysconfdir=$(out)/var/lib"
-  ];
-
-
-  postInstall = let
-    binPath = [ iptables iproute2 pmutils numad numactl bridge-utils dmidecode dnsmasq ] ++ optionals enableIscsi [ openiscsi ];
-  in ''
-    substituteInPlace $out/libexec/libvirt-guests.sh \
-      --replace 'ON_BOOT=start'       'ON_BOOT=''${ON_BOOT:-start}' \
-      --replace 'ON_SHUTDOWN=suspend' 'ON_SHUTDOWN=''${ON_SHUTDOWN:-suspend}' \
-      --replace "$out/bin"            '${gettext}/bin' \
-      --replace 'lock/subsys'         'lock' \
-      --replace 'gettext.sh'          'gettext.sh
-  # Added in nixpkgs:
-  gettext() { "${gettext}/bin/gettext" "$@"; }
-  '
-  '' + optionalString stdenv.isLinux ''
-    substituteInPlace $out/lib/systemd/system/libvirtd.service --replace /bin/kill ${coreutils}/bin/kill
-    rm $out/lib/systemd/system/{virtlockd,virtlogd}.*
-    wrapProgram $out/sbin/libvirtd \
-      --prefix PATH : /run/libvirt/nix-emulators:${makeBinPath binPath}
-  '';
-
-  enableParallelBuilding = true;
-
-  NIX_CFLAGS_COMPILE = "-fno-stack-protector";
-
-  meta = {
-    homepage = "http://libvirt.org/";
-    repositories.git = "git://libvirt.org/libvirt.git";
-    description = ''
-      A toolkit to interact with the virtualization capabilities of recent
-      versions of Linux (and other OSes)
-    '';
-    license = licenses.lgpl2Plus;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ fpletz globin ];
-    knownVulnerabilities = [
-      "https://security.libvirt.org/2019/0008.html"
-      "https://security.libvirt.org/2019/0009.html"
-      "https://security.libvirt.org/2020/0001.html"
-    ];
-  };
-}
diff --git a/pkgs/development/libraries/libwpe/default.nix b/pkgs/development/libraries/libwpe/default.nix
index 1fcb91a7fb3..66de5847d78 100644
--- a/pkgs/development/libraries/libwpe/default.nix
+++ b/pkgs/development/libraries/libwpe/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libwpe";
-  version = "1.10.1";
+  version = "1.12.0";
 
   src = fetchurl {
     url = "https://wpewebkit.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "sha256-oyez/88jVtvoFIwdtLvcU1nX5xY9F39nVRqDk7FErfA=";
+    sha256 = "sha256-6O7KIoprTDYpTPtj99O6mtpHpDCQSlqXOzyZyWpEwYw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libx86emu/default.nix b/pkgs/development/libraries/libx86emu/default.nix
index 8f9669561d6..c4df61bd22b 100644
--- a/pkgs/development/libraries/libx86emu/default.nix
+++ b/pkgs/development/libraries/libx86emu/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libx86emu";
-  version = "3.1";
+  version = "3.5";
 
   src = fetchFromGitHub {
     owner = "wfeldt";
     repo = "libx86emu";
     rev = version;
-    sha256 = "104xqc6nj9rpi7knl3dfqvasf087hlz2n5yndb1iycw35a6j509b";
+    sha256 = "sha256-dKT/Ey+vardXu/+coaC69TTUXjJLsLBKgCx9VY8f0oY=";
   };
 
   nativeBuildInputs = [ perl ];
diff --git a/pkgs/development/libraries/libzim/default.nix b/pkgs/development/libraries/libzim/default.nix
new file mode 100644
index 00000000000..9aea86d5e5e
--- /dev/null
+++ b/pkgs/development/libraries/libzim/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, icu
+, meson
+, ninja
+, pkg-config
+, xz
+, zstd
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libzim";
+  version = "7.0.0";
+
+  src = fetchFromGitHub {
+    owner = "openzim";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-OQVGopAInAI7KCEVr3BxaKD6np2QcFCaDjgNWjT202U=";
+  };
+
+  nativeBuildInputs = [
+    ninja
+    meson
+    pkg-config
+  ];
+
+  buildInputs = [
+    icu
+    xz
+    zstd
+  ];
+
+  mesonFlags = [
+    # Tests are located at https://github.com/openzim/zim-testing-suite
+    # "...some tests need up to 16GB of memory..."
+    "-Dtest_data_dir=none"
+    "-Dwith_xapian=false"
+  ];
+
+  meta = with lib; {
+    description = "Reference implementation of the ZIM specification";
+    homepage = "https://github.com/openzim/libzim";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/libraries/nco/default.nix b/pkgs/development/libraries/nco/default.nix
index b90d64c2ffc..f6ca87a5e96 100644
--- a/pkgs/development/libraries/nco/default.nix
+++ b/pkgs/development/libraries/nco/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nco";
-  version = "5.0.3";
+  version = "5.0.4";
 
   src = fetchFromGitHub {
     owner = "nco";
     repo = "nco";
     rev = version;
-    sha256 = "sha256-KrFRBlD3z/sjKIvxmE0s/xCILQmESecilnlUGzDDICw=";
+    sha256 = "sha256-hE3TSfZoKqiUEcLO+Q3xAjhyDPNqoq7+FGlKNpm8hjY=";
   };
 
   nativeBuildInputs = [ flex which antlr2 ];
diff --git a/pkgs/development/libraries/ndn-cxx/default.nix b/pkgs/development/libraries/ndn-cxx/default.nix
index 3fb3fc305a3..410ede638c0 100644
--- a/pkgs/development/libraries/ndn-cxx/default.nix
+++ b/pkgs/development/libraries/ndn-cxx/default.nix
@@ -1,11 +1,12 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchFromGitHub
 , doxygen
 , pkg-config
 , python3
 , python3Packages
 , wafHook
-, boost
+, boost175
 , openssl
 , sqlite
 }:
@@ -18,19 +19,28 @@ stdenv.mkDerivation rec {
     owner = "named-data";
     repo = "ndn-cxx";
     rev = "${pname}-${version}";
-    sha256 = "1lcaqc79n3d9sip7knddblba17sz18b0w7nlxmj3fz3lb3z9qd51";
+    sha256 = "sha256-oTSc/lh0fDdk7dQeDhYKX5+gFl2t2Xlu1KkNmw7DitE=";
   };
 
   nativeBuildInputs = [ doxygen pkg-config python3 python3Packages.sphinx wafHook ];
 
-  buildInputs = [ boost openssl sqlite ];
+  buildInputs = [ boost175 openssl sqlite ];
 
   wafConfigureFlags = [
     "--with-openssl=${openssl.dev}"
-    "--boost-includes=${boost.dev}/include"
-    "--boost-libs=${boost.out}/lib"
+    "--boost-includes=${boost175.dev}/include"
+    "--boost-libs=${boost175.out}/lib"
+    # "--with-tests" # disabled since upstream tests fail (Net/TestFaceUri/ParseDev Bug #3896)
   ];
 
+
+  doCheck = false; # disabled since upstream tests fail (Net/TestFaceUri/ParseDev Bug #3896)
+  checkPhase = ''
+    runHook preCheck
+    LD_PRELOAD=build/ndn-cxx.so build/unit-tests
+    runHook postCheck
+  '';
+
   meta = with lib; {
     homepage = "https://named-data.net/";
     description = "A Named Data Neworking (NDN) or Content Centric Networking (CCN) abstraction";
@@ -49,6 +59,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.lgpl3;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ sjmackenzie ];
+    maintainers = with maintainers; [ sjmackenzie bertof ];
   };
 }
diff --git a/pkgs/development/libraries/ntirpc/default.nix b/pkgs/development/libraries/ntirpc/default.nix
index e98cfac7858..55f1edf490b 100644
--- a/pkgs/development/libraries/ntirpc/default.nix
+++ b/pkgs/development/libraries/ntirpc/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ntirpc";
-  version = "3.4";
+  version = "4.0";
 
   src = fetchFromGitHub {
     owner = "nfs-ganesha";
     repo = "ntirpc";
     rev = "v${version}";
-    sha256 = "1xdwqyc9m4lbsgr7ll1g0f84c2h8jrfkg67cgvsp424i1a7r9mm1";
+    sha256 = "0hffma57b4c7g7862yvfr8bvbsbxh5w383mvjkjv3jpzi01l79yv";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/openbabel/2.nix b/pkgs/development/libraries/openbabel/2.nix
index 11265c643f9..4f2f31d614c 100644
--- a/pkgs/development/libraries/openbabel/2.nix
+++ b/pkgs/development/libraries/openbabel/2.nix
@@ -1,12 +1,14 @@
-{stdenv, lib, fetchurl, fetchpatch, cmake, zlib, libxml2, eigen, python, cairo, pcre, pkg-config }:
+{stdenv, lib, fetchFromGitHub, fetchpatch, cmake, zlib, libxml2, eigen, python, cairo, pcre, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "openbabel";
   version = "2.4.1";
 
-  src = fetchurl {
-    url = "https://github.com/openbabel/openbabel/archive/openbabel-${lib.replaceStrings ["."] ["-"] version}.tar.gz";
-    sha256 = "0xm7y859ivq2cp0q08mwshfxm0jq31xkyr4x8s0j6l7khf57yk2r";
+  src = fetchFromGitHub {
+    owner = "openbabel";
+    repo = "openbabel";
+    rev = "openbabel-${lib.replaceStrings ["."] ["-"] version}";
+    sha256 = "sha256-+pXsWMzex7rB1mm6dnTHzAcyw9jImgx1OZuLeCvbeJ0=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/openexr/3.nix b/pkgs/development/libraries/openexr/3.nix
index 1fae6682906..24af4e429a0 100644
--- a/pkgs/development/libraries/openexr/3.nix
+++ b/pkgs/development/libraries/openexr/3.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "openexr";
-  version = "3.1.2";
+  version = "3.1.3";
 
   outputs = [ "bin" "dev" "out" "doc" ];
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     owner = "AcademySoftwareFoundation";
     repo = "openexr";
     rev = "v${version}";
-    sha256 = "0vyclrrikphwkkpyjg8kzh3qzflzk3d6xsidgqllgfdgllr9wmgv";
+    sha256 = "sha256-Bi6yTcZBWTsWWMm3A7FVYblvSXKLSkHmhGvpNYGiOzE=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/openfst/default.nix b/pkgs/development/libraries/openfst/default.nix
index 08767680ffd..599d1cad0cc 100644
--- a/pkgs/development/libraries/openfst/default.nix
+++ b/pkgs/development/libraries/openfst/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       FSTs have key applications in speech recognition and synthesis, machine translation, optical character recognition,
       pattern matching, string processing, machine learning, information extraction and retrieval among others
     '';
-    homepage = "http://www.openfst.org/twiki/bin/view/FST/WebHome";
+    homepage = "https://www.openfst.org/twiki/bin/view/FST/WebHome";
     license = licenses.asl20;
     maintainers = [ maintainers.dfordivam ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/opengrm-ngram/default.nix b/pkgs/development/libraries/opengrm-ngram/default.nix
index 3b00ae17e91..06f2e3542bb 100644
--- a/pkgs/development/libraries/opengrm-ngram/default.nix
+++ b/pkgs/development/libraries/opengrm-ngram/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Library to make and modify n-gram language models encoded as weighted finite-state transducers";
-    homepage = "http://www.openfst.org/twiki/bin/view/GRM/NGramLibrary";
+    homepage = "https://www.openfst.org/twiki/bin/view/GRM/NGramLibrary";
     license = licenses.asl20;
     maintainers = with maintainers; [ mic92 ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/openimagedenoise/default.nix b/pkgs/development/libraries/openimagedenoise/default.nix
index c44dccbb5d5..f1bbb01653f 100644
--- a/pkgs/development/libraries/openimagedenoise/default.nix
+++ b/pkgs/development/libraries/openimagedenoise/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "openimagedenoise";
-  version = "1.4.1";
+  version = "1.4.2";
 
   # The release tarballs include pretrained weights, which would otherwise need to be fetched with git-lfs
   src = fetchzip {
     url = "https://github.com/OpenImageDenoise/oidn/releases/download/v${version}/oidn-${version}.src.tar.gz";
-    sha256 = "sha256-TQ7cL0/6pnSTuW21DESA5I3S/C1BHStrWK9yaPoim6E=";
+    sha256 = "sha256-+7o7b64ORCLn8z0KbnUKhlgPs9mlyDCUiNKJEbusGxw=";
   };
 
   nativeBuildInputs = [ cmake python3 ispc ];
diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix
index 03125f225b8..af5f238c9df 100644
--- a/pkgs/development/libraries/pipewire/default.nix
+++ b/pkgs/development/libraries/pipewire/default.nix
@@ -25,6 +25,8 @@
 , webrtc-audio-processing
 , ncurses
 , readline81 # meson can't find <7 as those versions don't have a .pc file
+, lilv
+, openssl
 , makeFontsConf
 , callPackage
 , nixosTests
@@ -64,7 +66,7 @@ let
 
   self = stdenv.mkDerivation rec {
     pname = "pipewire";
-    version = "0.3.40";
+    version = "0.3.42";
 
     outputs = [
       "out"
@@ -82,7 +84,7 @@ let
       owner = "pipewire";
       repo = "pipewire";
       rev = version;
-      sha256 = "sha256-eY6uQa4+sC6yUWhF4IpAgRoppwhHO4s5fIMXOkS0z7A=";
+      sha256 = "sha256-Iyd5snOt+iCT7W0+FlfvhMUZo/gF+zr9JX4HIGVdHto=";
     };
 
     patches = [
@@ -117,7 +119,9 @@ let
       libjack2
       libusb1
       libsndfile
+      lilv
       ncurses
+      openssl
       readline81
       udev
       vulkan-headers
diff --git a/pkgs/development/libraries/precice/default.nix b/pkgs/development/libraries/precice/default.nix
index 134eb660214..ba35a55d920 100644
--- a/pkgs/development/libraries/precice/default.nix
+++ b/pkgs/development/libraries/precice/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "preCICE stands for Precise Code Interaction Coupling Environment";
     license = with lib.licenses; [ gpl3 ];
-    homepage = "https://www.precice.org/";
+    homepage = "https://precice.org/";
     platforms = lib.platforms.unix;
     maintainers = with lib.maintainers; [ Scriptkiddi ];
   };
diff --git a/pkgs/development/libraries/proj/default.nix b/pkgs/development/libraries/proj/default.nix
index 7ab64cf59c5..6ecc3606b96 100644
--- a/pkgs/development/libraries/proj/default.nix
+++ b/pkgs/development/libraries/proj/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "proj";
-  version = "8.1.1";
+  version = "8.2.0";
 
   src = fetchFromGitHub {
     owner = "OSGeo";
     repo = "PROJ";
     rev = version;
-    sha256 = "sha256-Z2nruyowC3NG4Wb8AFBL0PME/zp9D7SwQdMSl6VjH/w=";
+    sha256 = "sha256-YXZ3txBWW5vUcdYLISJPxdFGCQpKi1vvJlX8rntujg8=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/qrencode/default.nix b/pkgs/development/libraries/qrencode/default.nix
index c005b835a93..abab060bf2c 100644
--- a/pkgs/development/libraries/qrencode/default.nix
+++ b/pkgs/development/libraries/qrencode/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     '';
 
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ adolfogc yegortimoshenko ];
+    maintainers = with maintainers; [ adolfogc yana ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/qt-5/qtModule.nix b/pkgs/development/libraries/qt-5/qtModule.nix
index 12a9a85c7b7..3323e3fb4cc 100644
--- a/pkgs/development/libraries/qt-5/qtModule.nix
+++ b/pkgs/development/libraries/qt-5/qtModule.nix
@@ -68,7 +68,7 @@ mkDerivation (args // {
   '';
 
   meta = {
-    homepage = "http://www.qt.io";
+    homepage = "https://www.qt.io";
     description = "A cross-platform application framework for C++";
     license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
     maintainers = with maintainers; [ qknight ttuegel periklis bkchr ];
diff --git a/pkgs/development/libraries/qtstyleplugin-kvantum/default.nix b/pkgs/development/libraries/qtstyleplugin-kvantum/default.nix
index f25173c41c9..909903c2c34 100644
--- a/pkgs/development/libraries/qtstyleplugin-kvantum/default.nix
+++ b/pkgs/development/libraries/qtstyleplugin-kvantum/default.nix
@@ -4,18 +4,19 @@
 
 stdenv.mkDerivation rec {
   pname = "qtstyleplugin-kvantum";
-  version = "0.20.2";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "tsujan";
     repo = "Kvantum";
     rev = "V${version}";
-    sha256 = "145wm8c5v56djmvgjhksmywx6ak81vhxyg6yy3jj7wlvcan4p238";
+    sha256 = "0yvxj7r9z890nfq5cadw7ys144c2mnvaplvx4v4ndv7238b741l8";
   };
 
   nativeBuildInputs = [
     qmake qttools wrapQtAppsHook
   ];
+
   buildInputs = [
     qtbase qtsvg qtx11extras kwindowsystem libX11 libXext
   ];
diff --git a/pkgs/development/libraries/range-v3/default.nix b/pkgs/development/libraries/range-v3/default.nix
index 4b5f277fc53..e29fc1f70c9 100644
--- a/pkgs/development/libraries/range-v3/default.nix
+++ b/pkgs/development/libraries/range-v3/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake }:
 
 stdenv.mkDerivation rec {
   pname = "range-v3";
@@ -13,13 +13,18 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./gcc10.patch
+    (fetchpatch {
+      url = "https://github.com/ericniebler/range-v3/commit/66e847d4e14be3a369b7e26a03a172b20e62c003.patch";
+      sha256 = "sha256-JOQptVqNicdMhcDhBrWQRf7MfskBv56cICwvMA8g88Y=";
+    })
   ];
 
   nativeBuildInputs = [ cmake ];
 
   # Building the tests currently fails on AArch64 due to internal compiler
   # errors (with GCC 9.2):
-  cmakeFlags = lib.optional stdenv.isAarch64 "-DRANGE_V3_TESTS=OFF";
+  cmakeFlags = [ "-DRANGES_ENABLE_WERROR=OFF" ]
+    ++ lib.optional stdenv.isAarch64 "-DRANGE_V3_TESTS=OFF";
 
   doCheck = !stdenv.isAarch64;
   checkTarget = "test";
@@ -30,6 +35,6 @@ stdenv.mkDerivation rec {
     changelog = "https://github.com/ericniebler/range-v3/releases/tag/${version}";
     license = licenses.boost;
     platforms = platforms.all;
-    maintainers = with maintainers; [ primeos ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/libraries/reproc/default.nix b/pkgs/development/libraries/reproc/default.nix
index cd5bc5b7dce..b8449b61d76 100644
--- a/pkgs/development/libraries/reproc/default.nix
+++ b/pkgs/development/libraries/reproc/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "reproc";
-  version = "14.2.3";
+  version = "14.2.4";
 
   src = fetchFromGitHub {
     owner = "DaanDeMeyer";
     repo = "reproc";
     rev = "v${version}";
-    sha256 = "sha256-bdZ7czkeoSl5znGit0AYQ9D4K8qE2Co+F2Z4jLJuQok=";
+    sha256 = "sha256-LWzBeKhE7cSiZsK8xWzoTdrOcPiU/zEkmi40WiFytic=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/science/math/petsc/default.nix b/pkgs/development/libraries/science/math/petsc/default.nix
index 4ac72013eb3..e9ca9b84946 100644
--- a/pkgs/development/libraries/science/math/petsc/default.nix
+++ b/pkgs/development/libraries/science/math/petsc/default.nix
@@ -18,11 +18,11 @@ assert petsc-withp4est -> p4est.mpiSupport;
 
 stdenv.mkDerivation rec {
   pname = "petsc";
-  version = "3.16.1";
+  version = "3.16.2";
 
   src = fetchurl {
     url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-${version}.tar.gz";
-    sha256 = "sha256-kJz3vOe2oN2yWAoayVAqoBYx7EEFxxZZTBgE8O4eoGo=";
+    sha256 = "sha256-erJXrhUNSDesjThyodIGmXliV4eF7CQnY5zqxG0TG7w=";
   };
 
   mpiSupport = !withp4est || p4est.mpiSupport;
diff --git a/pkgs/development/libraries/science/math/zn_poly/default.nix b/pkgs/development/libraries/science/math/zn_poly/default.nix
index 8f3e1aba350..38d5d91e083 100644
--- a/pkgs/development/libraries/science/math/zn_poly/default.nix
+++ b/pkgs/development/libraries/science/math/zn_poly/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with lib; {
-    homepage = "http://web.maths.unsw.edu.au/~davidharvey/code/zn_poly/";
+    homepage = "https://web.maths.unsw.edu.au/~davidharvey/code/zn_poly/";
     description = "Polynomial arithmetic over Z/nZ";
     license = with licenses; [ gpl3 ];
     maintainers = teams.sage.members;
diff --git a/pkgs/development/libraries/sentry-native/default.nix b/pkgs/development/libraries/sentry-native/default.nix
index af2a5e64d11..ba4c8fcd0ef 100644
--- a/pkgs/development/libraries/sentry-native/default.nix
+++ b/pkgs/development/libraries/sentry-native/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sentry-native";
-  version = "0.4.12";
+  version = "0.4.13";
 
   src = fetchFromGitHub {
     owner = "getsentry";
     repo = "sentry-native";
     rev = version;
-    sha256 = "sha256-ut864o4LHmuHYJszFz7LFoIiSvf6a0S42xmV51CVBQ0=";
+    sha256 = "sha256-btgv/GwwQhT/DtWhjM/g081UYLT7E76ZhqXZdMiIWsk=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/sqlcipher/default.nix b/pkgs/development/libraries/sqlcipher/default.nix
index e6965abf898..cbac792e44e 100644
--- a/pkgs/development/libraries/sqlcipher/default.nix
+++ b/pkgs/development/libraries/sqlcipher/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sqlcipher";
-  version = "4.4.3";
+  version = "4.5.0";
 
   src = fetchFromGitHub {
     owner = "sqlcipher";
     repo = "sqlcipher";
     rev = "v${version}";
-    sha256 = "sha256-E23PTNnVZbBQtHL0YjUwHNVUA76XS8rlARBOVvX6zZw=";
+    sha256 = "sha256-MFuFyKvOOrDrq9cDPQlNK6/YHSkaRX4qbw/44m5CRh4=";
   };
 
   nativeBuildInputs = [ installShellFiles tcl ];
diff --git a/pkgs/development/libraries/tdlib/default.nix b/pkgs/development/libraries/tdlib/default.nix
index 089fd70f19d..79895a63a34 100644
--- a/pkgs/development/libraries/tdlib/default.nix
+++ b/pkgs/development/libraries/tdlib/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "tdlib";
-  version = "1.7.12";
+  version = "1.8.0";
 
   src = fetchFromGitHub {
     owner = "tdlib";
     repo = "td";
     # https://github.com/tdlib/td/issues/1790
-    rev = "a69030239c53951db8a1b0af6408f24d63f5dcb7";
-    sha256 = "tqytmjij79YzvBP1abbA/Oavx28mvEGESn39b3HYAMg=";
+    rev = "b3ab664a18f8611f4dfcd3054717504271eeaa7a";
+    sha256 = "OBgzFBi+lIBbKnHDm5D/F3Xi4s1x4geb+1OoBP3F+qY=";
   };
 
   buildInputs = [ gperf openssl readline zlib ];
diff --git a/pkgs/development/libraries/thrift/0.10.nix b/pkgs/development/libraries/thrift/0.10.nix
index 001de25e996..3cfe56e3f7a 100644
--- a/pkgs/development/libraries/thrift/0.10.nix
+++ b/pkgs/development/libraries/thrift/0.10.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Library for scalable cross-language services";
-    homepage = "http://thrift.apache.org/";
+    homepage = "https://thrift.apache.org/";
     license = licenses.asl20;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/development/libraries/thrift/default.nix b/pkgs/development/libraries/thrift/default.nix
index dbd21949ecf..c5795df55c0 100644
--- a/pkgs/development/libraries/thrift/default.nix
+++ b/pkgs/development/libraries/thrift/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Library for scalable cross-language services";
-    homepage = "http://thrift.apache.org/";
+    homepage = "https://thrift.apache.org/";
     license = licenses.asl20;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/development/libraries/tl-expected/default.nix b/pkgs/development/libraries/tl-expected/default.nix
index 4915fd7e700..c7cb92440ee 100644
--- a/pkgs/development/libraries/tl-expected/default.nix
+++ b/pkgs/development/libraries/tl-expected/default.nix
@@ -19,6 +19,6 @@ stdenv.mkDerivation rec {
     homepage = "https://tl.tartanllama.xyz/en/latest/api/expected.html";
     license = licenses.cc0;
     platforms = platforms.all;
-    maintainers = with maintainers; [ primeos ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/libraries/uid_wrapper/default.nix b/pkgs/development/libraries/uid_wrapper/default.nix
index c4ec9c84f40..8ba9066de32 100644
--- a/pkgs/development/libraries/uid_wrapper/default.nix
+++ b/pkgs/development/libraries/uid_wrapper/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "uid_wrapper";
-  version = "1.2.8";
+  version = "1.2.9";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/uid_wrapper-${version}.tar.gz";
-    sha256 = "0swm9d8l69dw7nbrw6xh7rdy7cfrqflw3hxshicsrhd9v03iwvqf";
+    sha256 = "sha256-fowCQHKCX+hrq0ZZHPS5CeOZz5j1SCL55SdC9CAEcIQ=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/libraries/unicorn/default.nix b/pkgs/development/libraries/unicorn/default.nix
index 2be3c950829..30ceba76163 100644
--- a/pkgs/development/libraries/unicorn/default.nix
+++ b/pkgs/development/libraries/unicorn/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "unicorn";
-  version = "2.0.0-rc4";
+  version = "2.0.0-rc5";
 
   src = fetchFromGitHub {
     owner = "unicorn-engine";
     repo = pname;
     rev = version;
-    sha256 = "sha256-dNBebXp8HVmmY1RVRYuRFoJ3PStCf4taNTeYKi2lhQM=";
+    sha256 = "1q9k8swnq4qsi54zdfaap69z56w3yj4n4ggm9pscmmmr69nply5f";
   };
 
   nativeBuildInputs = [ pkg-config cmake ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Lightweight multi-platform CPU emulator library";
-    homepage = "http://www.unicorn-engine.org";
+    homepage = "https://www.unicorn-engine.org";
     license = licenses.gpl2Only;
     platforms = platforms.unix;
     maintainers = with maintainers; [ thoughtpolice luc65r ];
diff --git a/pkgs/development/libraries/v8/plv8_6_x.nix b/pkgs/development/libraries/v8/plv8_6_x.nix
deleted file mode 100644
index 71e14a82c3e..00000000000
--- a/pkgs/development/libraries/v8/plv8_6_x.nix
+++ /dev/null
@@ -1,189 +0,0 @@
-# NOTE: this expression is NOT exported from the top-level of all-packages.nix,
-# it is exclusively used by the 'plv8' PostgreSQL extension.
-# Since plv8 2.3.2, plv8 no longer requires this specific version, but as of
-# 2019-08-29, nixpkgs does not have v8 6.x, and v8_5 is bumped to 5.4.232, which
-# is a bit outdated.  plv8 3.x is planned to support v8 7.x
-
-{ stdenv, lib, fetchgit, fetchFromGitHub, gn, ninja, python, glib, pkg-config
-, doCheck ? false
-, snapshot ? true
-}:
-
-let
-  arch = if stdenv.isAarch32
-         then if stdenv.is64bit
-              then"arm64"
-              else "arm"
-         else if stdenv.is64bit
-              then"x64"
-              else "ia32";
-  git_url = "https://chromium.googlesource.com";
-
-  # This data is from the DEPS file in the root of a V8 checkout
-  deps = {
-    "base/trace_event/common" = fetchgit {
-      url    = "${git_url}/chromium/src/base/trace_event/common.git";
-      rev    = "0e9a47d74970bee1bbfc063c47215406f8918699";
-      sha256 = "07rbzrlscp8adh4z86yl5jxdnvgkc3xs950xldpk318wf9i3bh6c";
-    };
-    build = fetchgit {
-      url    = "${git_url}/chromium/src/build.git";
-      rev    = "9338ce52d0b9bcef34c38285fbd5023b62739fac";
-      sha256 = "1s2sa8dy3waidsirjylc82ggb18l1108bczjc8z0v4ywyj4k0cvh";
-    };
-    buildtools = fetchgit {
-      url    = "${git_url}/chromium/buildtools.git";
-      rev    = "505de88083136eefd056e5ee4ca0f01fe9b33de8";
-      sha256 = "0vj216nhb803bggsl0hnyagj8njrm96pn8sim6xcnqb7nhz1vabw";
-    };
-    "test/benchmarks/data" = fetchgit {
-      url    = "${git_url}/v8/deps/third_party/benchmarks.git";
-      rev    = "05d7188267b4560491ff9155c5ee13e207ecd65f";
-      sha256 = "0ad2ay14bn67d61ks4dmzadfnhkj9bw28r4yjdjjyzck7qbnzchl";
-    };
-    "test/mozilla/data" = fetchgit {
-      url    = "${git_url}/v8/deps/third_party/mozilla-tests.git";
-      rev    = "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be";
-      sha256 = "0rfdan76yfawqxbwwb35aa57b723j3z9fx5a2w16nls02yk2kqyn";
-    };
-    "test/test262/data" = fetchgit {
-      url    = "${git_url}/external/github.com/tc39/test262.git";
-      rev    = "5d4c667b271a9b39d0de73aef5ffe6879c6f8811";
-      sha256 = "0q9iwb2nkybf9np95wgf5m372aw2lhx9wlsw41a2a80kbkvb2kqg";
-    };
-    "test/test262/harness" = fetchgit {
-      url    = "${git_url}/external/github.com/test262-utils/test262-harness-py.git";
-      rev    = "0f2acdd882c84cff43b9d60df7574a1901e2cdcd";
-      sha256 = "00brj5avp43yamc92kinba2mg3a2x1rcd7wnm7z093l73idprvkp";
-    };
-    "test/wasm-js" = fetchgit {
-      url    = "${git_url}/external/github.com/WebAssembly/spec.git";
-      rev    = "a7e226a92e660a3d5413cfea4269824f513259d2";
-      sha256 = "0z3aybj3ykajwh2bv5fwd6pwqjjsq8dnwrqc2wncb6r9xcjwbgxp";
-    };
-    "testing/gtest" = fetchgit {
-      url    = "${git_url}/external/github.com/google/googletest.git";
-      rev    = "6f8a66431cb592dad629028a50b3dd418a408c87";
-      sha256 = "0bdba2lr6pg15bla9600zg0r0vm4lnrx0wqz84p376wfdxra24vw";
-    };
-    "third_party/icu" = fetchgit {
-      url    = "${git_url}/chromium/deps/icu.git";
-      rev    = "741688ebf328da9adc52505248bf4e2ef868722c";
-      sha256 = "02ifm18qjlrkn5nm2rxkf9yz9bdlyq7c65jfjndv63vi1drqh1r9";
-    };
-    "third_party/instrumented_libraries" = fetchgit {
-      url    = "${git_url}/chromium/src/third_party/instrumented_libraries.git";
-      rev    = "28417458ac4dc79f68915079d0f283f682504cc0";
-      sha256 = "1qf5c2946n37p843yriv7xawi6ss6samabghq43s49cgd4wq8dc3";
-    };
-    "third_party/jinja2" = fetchgit {
-      url    = "${git_url}/chromium/src/third_party/jinja2.git";
-      rev    = "d34383206fa42d52faa10bb9931d6d538f3a57e0";
-      sha256 = "0d9hyw0bvp3p0dbwy833cm9vdqxcam0qbm9jc561ynphddxlkmgd";
-    };
-    "third_party/markupsafe" = fetchgit {
-      url    = "${git_url}/chromium/src/third_party/markupsafe.git";
-      rev    = "8f45f5cfa0009d2a70589bcda0349b8cb2b72783";
-      sha256 = "168ppjmicfdh4i1l0l25s86mdbrz9fgxmiq1rx33x79mph41scfz";
-    };
-    "tools/clang" = fetchgit {
-      url    = "${git_url}/chromium/src/tools/clang.git";
-      rev    = "8688d267571de76a56746324dcc249bf4232b85a";
-      sha256 = "0krq4zz1vnwp064bm517gwr2napy18wyccdh8w5s4qgkjwwxd63s";
-    };
-    "tools/gyp" = fetchgit {
-      url    = "${git_url}/external/gyp.git";
-      rev    = "d61a9397e668fa9843c4aa7da9e79460fe590bfb";
-      sha256 = "1z081h72mjy285jb1kj5xd0pb4p12n9blvsimsavyn3ldmswv0r0";
-    };
-    "tools/luci-go" = fetchgit {
-      url    = "${git_url}/chromium/src/tools/luci-go.git";
-      rev    = "45a8a51fda92e123619a69e7644d9c64a320b0c1";
-      sha256 = "0r7736gqk7r0i7ig0b5ib10d9q8a8xzsmc0f0fbkm9k78v847vpj";
-    };
-    "tools/swarming_client" = fetchgit {
-      url    = "${git_url}/infra/luci/client-py.git";
-      rev    = "4bd9152f8a975d57c972c071dfb4ddf668e02200";
-      sha256 = "03zk91gzvqv01g1vbl8d7h8al7vs4ymrrdc8ipg9wpq52yh65smh";
-    };
-  };
-
-in
-
-stdenv.mkDerivation rec {
-  pname = "v8";
-  version = "6.4.388.40";
-
-  inherit doCheck;
-
-  src = fetchFromGitHub {
-    owner = "v8";
-    repo = "v8";
-    rev = version;
-    sha256 = "1lq239cgqyidrynz8g3wbdv70ymzv6s0ppad8s219gb3jnizm16a";
-  };
-
-  postUnpack = ''
-    ${lib.concatStringsSep "\n" (
-      lib.mapAttrsToList (n: v: ''
-        mkdir -p $sourceRoot/${n}
-        cp -r ${v}/* $sourceRoot/${n}
-      '') deps)}
-  '';
-
-  prePatch = ''
-    # use our gn, not the bundled one
-    sed -i -e 's#gn_path = .*#gn_path = "${gn}/bin/gn"#' tools/mb/mb.py
-
-    # disable tests
-    if [ "$doCheck" = "" ]; then sed -i -e '/"test:gn_all",/d' BUILD.gn; fi
-
-    # disable sysroot usage
-    chmod u+w build/config build/config/sysroot.gni
-    sed -i build/config/sysroot.gni \
-        -e '/use_sysroot =/ { s#\(use_sysroot =\).*#\1 false#; :a  n; /current_cpu/ { s/^/#/; ba };  }'
-
-    # patch shebangs (/usr/bin/env)
-    patchShebangs tools/dev/v8gen.py
-  '';
-
-  configurePhase = ''
-    tools/dev/v8gen.py -vv ${arch}.release -- \
-        is_component_build=true               \
-        ${if snapshot then "v8_use_external_startup_data=false" else "v8_use_snapshot=false"} \
-        is_clang=false                        \
-        linux_use_bundled_binutils=false      \
-        treat_warnings_as_errors=false        \
-        use_custom_libcxx=false               \
-        use_custom_libcxx_for_host=false
-  '';
-
-  nativeBuildInputs = [ gn ninja pkg-config ];
-  buildInputs = [ python glib ];
-
-  buildPhase = ''
-    ninja -C out.gn/${arch}.release/
-  '';
-
-  enableParallelBuilding = true;
-
-  installPhase = ''
-    install -vD out.gn/${arch}.release/d8 "$out/bin/d8"
-    install -vD out.gn/${arch}.release/mksnapshot "$out/bin/mksnapshot"
-    mkdir -p "$out/lib"
-    for f in libicui18n.so libicuuc.so libv8_libbase.so libv8_libplatform.so libv8.so; do
-        install -vD out.gn/${arch}.release/$f "$out/lib/$f"
-    done
-    install -vD out.gn/${arch}.release/icudtl.dat "$out/lib/icudtl.dat"
-    mkdir -p "$out/include"
-    cp -vr include/*.h "$out/include"
-    cp -vr include/libplatform "$out/include"
-  '';
-
-  meta = with lib; {
-    description = "Google's open source JavaScript engine";
-    maintainers = with maintainers; [ cstrahan proglodyte ];
-    platforms = platforms.linux;
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/libraries/wolfssl/default.nix b/pkgs/development/libraries/wolfssl/default.nix
index 42505311acd..619f41eb33f 100644
--- a/pkgs/development/libraries/wolfssl/default.nix
+++ b/pkgs/development/libraries/wolfssl/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wolfssl";
-  version = "5.0.0";
+  version = "5.1.0";
 
   src = fetchFromGitHub {
     owner = "wolfSSL";
     repo = "wolfssl";
     rev = "v${version}-stable";
-    sha256 = "sha256-rv9D+P42RMH1O4YLQbZIEkD6KQfs8KgYjhnHeA9vQqE=";
+    sha256 = "sha256-PkuYXDL04LbUiY+O/4EilZn2+hTbwbRXPDE3B5d/4pQ=";
   };
 
   # Almost same as Debian but for now using --enable-all --enable-reproducible-build instead of --enable-distro to ensure options.h gets installed
diff --git a/pkgs/development/libraries/wxwidgets/3.0/mac.nix b/pkgs/development/libraries/wxwidgets/3.0/mac.nix
index 22e81840991..17c2ee9efae 100644
--- a/pkgs/development/libraries/wxwidgets/3.0/mac.nix
+++ b/pkgs/development/libraries/wxwidgets/3.0/mac.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, expat, libiconv, libjpeg, libpng, libtiff, zlib
+{ lib, stdenv, fetchFromGitHub, expat, libiconv, libjpeg, libpng, libtiff, zlib
 # darwin only attributes
 , derez, rez, setfile
 , AGL, Cocoa, Kernel, WebKit
@@ -8,9 +8,11 @@ stdenv.mkDerivation rec {
   version = "3.0.5.1";
   pname = "wxmac";
 
-  src = fetchzip {
-    url = "https://github.com/wxWidgets/wxWidgets/archive/v${version}.tar.gz";
-    sha256 = "19mqglghjjqjgz4rbybn3qdgn2cz9xc511nq1pvvli9wx2k8syl1";
+  src = fetchFromGitHub {
+    owner = "wxWidgets";
+    repo = "wxWidgets";
+    rev = "v${version}";
+    sha256 = "sha256-I91douzXDAfDgm4Pplf17iepv4vIRhXZDRFl9keJJq0=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/x265/default.nix b/pkgs/development/libraries/x265/default.nix
index 495bbc4aaab..4610aa5309f 100644
--- a/pkgs/development/libraries/x265/default.nix
+++ b/pkgs/development/libraries/x265/default.nix
@@ -95,8 +95,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake nasm ] ++ lib.optional numaSupport numactl;
 
   meta = with lib; {
-    description = "Library for encoding h.265/HEVC video streams";
-    homepage    = "http://x265.org";
+    description = "Library for encoding H.265/HEVC video streams";
+    homepage    = "https://www.x265.org/";
     license     = licenses.gpl2;
     maintainers = with maintainers; [ codyopel ];
     platforms   = platforms.all;
diff --git a/pkgs/development/libraries/xalanc/default.nix b/pkgs/development/libraries/xalanc/default.nix
index 3451979402b..445efcaf75a 100644
--- a/pkgs/development/libraries/xalanc/default.nix
+++ b/pkgs/development/libraries/xalanc/default.nix
@@ -32,7 +32,7 @@ in stdenv.mkDerivation rec {
   enableParallelBuilding = false;
 
   meta = {
-    homepage = "http://xalan.apache.org/";
+    homepage = "https://xalan.apache.org/";
     description = "A XSLT processor for transforming XML documents";
     license = lib.licenses.asl20;
     platforms = lib.platforms.linux ++ lib.platforms.darwin;
diff --git a/pkgs/development/libraries/xml-security-c/default.nix b/pkgs/development/libraries/xml-security-c/default.nix
index 925f9553fdf..6be958d7d24 100644
--- a/pkgs/development/libraries/xml-security-c/default.nix
+++ b/pkgs/development/libraries/xml-security-c/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ xalanc xercesc openssl ];
 
   meta = {
-    homepage = "http://santuario.apache.org/";
+    homepage = "https://santuario.apache.org/";
     description = "C++ Implementation of W3C security standards for XML";
     license = lib.licenses.gpl2;
     platforms = lib.platforms.unix;
diff --git a/pkgs/development/mobile/androidenv/compose-android-packages.nix b/pkgs/development/mobile/androidenv/compose-android-packages.nix
index 25a19d059f2..ed4cb4d527b 100644
--- a/pkgs/development/mobile/androidenv/compose-android-packages.nix
+++ b/pkgs/development/mobile/androidenv/compose-android-packages.nix
@@ -6,7 +6,7 @@
 , platformToolsVersion ? "31.0.3"
 , buildToolsVersions ? [ "31.0.0" ]
 , includeEmulator ? false
-, emulatorVersion ? "30.6.3"
+, emulatorVersion ? "30.9.0"
 , platformVersions ? []
 , includeSources ? false
 , includeSystemImages ? false
diff --git a/pkgs/development/mobile/imgpatchtools/default.nix b/pkgs/development/mobile/imgpatchtools/default.nix
index 2b746423cfe..f5725054bb5 100644
--- a/pkgs/development/mobile/imgpatchtools/default.nix
+++ b/pkgs/development/mobile/imgpatchtools/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://github.com/erfanoabdi/imgpatchtools";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ yegortimoshenko ];
+    maintainers = with maintainers; [ yana ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/nim-packages/flatty/default.nix b/pkgs/development/nim-packages/flatty/default.nix
index 241b59f8230..88f3426e512 100644
--- a/pkgs/development/nim-packages/flatty/default.nix
+++ b/pkgs/development/nim-packages/flatty/default.nix
@@ -2,6 +2,6 @@
 
 fetchNimble {
   pname = "flatty";
-  version = "0.2.1";
-  hash = "sha256-TqNnRh2+i6n98ktLRVQxt9CVw17FGLNYq29rJoMus/0=";
+  version = "0.2.3";
+  hash = "sha256-1tPLtnlGtE4SF5/ti/2svvYHpEy/0Za5N4YAOHFOyjA=";
 }
diff --git a/pkgs/development/nim-packages/packedjson/default.nix b/pkgs/development/nim-packages/packedjson/default.nix
index 9edad962d58..25579540c0b 100644
--- a/pkgs/development/nim-packages/packedjson/default.nix
+++ b/pkgs/development/nim-packages/packedjson/default.nix
@@ -3,6 +3,6 @@
 fetchFromGitHub {
   owner = "Araq";
   repo = "packedjson";
-  rev = "7198cc8";
-  sha256 = "1ay2zd88q8hvpvigsg8h0y5vc65hk3lk0d48fy9hwg4lcng19mp1";
+  rev = "d11d167";
+  sha256 = "1302rn58277c3ic5sfq89c4mkn0d66bhilifh5xjf40x74ahir5x";
 }
diff --git a/pkgs/development/nim-packages/redis/default.nix b/pkgs/development/nim-packages/redis/default.nix
index 1768bf1976f..1cd7c68ecc9 100644
--- a/pkgs/development/nim-packages/redis/default.nix
+++ b/pkgs/development/nim-packages/redis/default.nix
@@ -3,6 +3,6 @@
 fetchFromGitHub {
   owner = "zedeus";
   repo = "redis";
-  rev = "94bcbf1";
-  sha256 = "1p9zv4f4lqrjqa8fk98cb89b9fzlf866jc584ll9sws14904i80j";
+  rev = "d0a0e6f";
+  sha256 = "166kzflb3wgwvqnv9flyynp8b35xby617lxmk0yas8i4m6vjl00f";
 }
diff --git a/pkgs/development/nim-packages/redpool/default.nix b/pkgs/development/nim-packages/redpool/default.nix
index ef14854b32d..6c4c8a8e193 100644
--- a/pkgs/development/nim-packages/redpool/default.nix
+++ b/pkgs/development/nim-packages/redpool/default.nix
@@ -3,6 +3,6 @@
 fetchFromGitHub {
   owner = "zedeus";
   repo = "redpool";
-  rev = "57aeb25";
-  sha256 = "0fph7qlia6fvya1zqzbgvww2hk5pd0vq1wlf9ij9jyn655mg0w3q";
+  rev = "f880f49";
+  sha256 = "01n73bpgfdz2a3qvcfxsq4a6gxbhabf2n5np1ilzgdqkzcd4jf9b";
 }
diff --git a/pkgs/development/nim-packages/regex/default.nix b/pkgs/development/nim-packages/regex/default.nix
index d89fbdd6053..091377eb1f2 100644
--- a/pkgs/development/nim-packages/regex/default.nix
+++ b/pkgs/development/nim-packages/regex/default.nix
@@ -3,6 +3,6 @@
 fetchFromGitHub {
   owner = "nitely";
   repo = "nim-regex";
-  rev = "2e32fdc";
-  sha256 = "1hrl40mwql7nh4wc7sdhmk8bj5728b93v5a93j49v660l0rn4qx8";
+  rev = "eeefb4f";
+  sha256 = "13gn0qhnxz07474kv94br5qlac9j8pz2555fk83538fiq83vgbm5";
 }
diff --git a/pkgs/development/nim-packages/zippy/default.nix b/pkgs/development/nim-packages/zippy/default.nix
index 230892b6889..84008325bec 100644
--- a/pkgs/development/nim-packages/zippy/default.nix
+++ b/pkgs/development/nim-packages/zippy/default.nix
@@ -2,6 +2,6 @@
 
 fetchNimble {
   pname = "zippy";
-  version = "0.5.6";
-  hash = "sha256-axp4t9+8TFSpvnATlRKZyuOGLA0e/XKfvrVSwreXpC4=";
+  version = "0.7.3";
+  hash = "sha256-w64ENRyP3mNTtESSt7CDDxUkjYSfziNVVedkO4HIuJ8=";
 }
diff --git a/pkgs/development/ocaml-modules/awa/default.nix b/pkgs/development/ocaml-modules/awa/default.nix
index 4316d06d935..d870ab86505 100644
--- a/pkgs/development/ocaml-modules/awa/default.nix
+++ b/pkgs/development/ocaml-modules/awa/default.nix
@@ -1,21 +1,21 @@
 { lib, buildDunePackage, fetchurl
 , ppx_sexp_conv, ppx_cstruct
 , mirage-crypto, mirage-crypto-rng, mirage-crypto-pk
-, x509, cstruct, cstruct-unix, cstruct-sexp, sexplib
+, x509, cstruct, cstruct-unix, cstruct-sexp, sexplib, eqaf
 , rresult, mtime, logs, fmt, cmdliner, base64, hacl_x25519
 , zarith
 }:
 
 buildDunePackage rec {
   pname = "awa";
-  version = "0.0.4";
+  version = "0.0.5";
 
   minimumOCamlVersion = "4.07";
   useDune2 = true;
 
   src = fetchurl {
-    url = "https://github.com/mirage/awa-ssh/releases/download/v${version}/awa-v${version}.tbz";
-    sha256 = "1l7nsd8jifxjq78xyzcc0z9igc02m2qlvv4cxzsgdim6n1jfzxj2";
+    url = "https://github.com/mirage/awa-ssh/releases/download/v${version}/awa-${version}.tbz";
+    sha256 = "14hqzmikp3hlynhs0wnwj2491106if183swsl7ldk4215a0b7ms4";
   };
 
   nativeBuildInputs = [ ppx_cstruct ];
@@ -24,7 +24,7 @@ buildDunePackage rec {
     mirage-crypto mirage-crypto-rng mirage-crypto-pk x509
     cstruct cstruct-sexp sexplib mtime
     logs base64 hacl_x25519 zarith
-    ppx_sexp_conv
+    ppx_sexp_conv eqaf
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/ca-certs-nss/default.nix b/pkgs/development/ocaml-modules/ca-certs-nss/default.nix
index 31dea9201bb..2835852d670 100644
--- a/pkgs/development/ocaml-modules/ca-certs-nss/default.nix
+++ b/pkgs/development/ocaml-modules/ca-certs-nss/default.nix
@@ -1,13 +1,11 @@
 { lib
 , buildDunePackage
 , fetchurl
-, rresult
 , mirage-crypto
 , mirage-clock
 , x509
 , logs
 , fmt
-, hex
 , bos
 , astring
 , cmdliner
@@ -16,19 +14,18 @@
 
 buildDunePackage rec {
   pname = "ca-certs-nss";
-  version = "3.66";
+  version = "3.71.0.1";
 
   minimumOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/mirage/ca-certs-nss/releases/download/v${version}/ca-certs-nss-v${version}.tbz";
-    sha256 = "f0f8035b470f2a48360b92d0e6287f41f98e4ba71576a1cd4c9246c468932f09";
+    sha256 = "b83749d983781631745079dccb7345d9ee1b52c1844ce865e97a25349289a124";
   };
 
   useDune2 = true;
 
   propagatedBuildInputs = [
-    rresult
     mirage-crypto
     mirage-clock
     x509
@@ -37,7 +34,6 @@ buildDunePackage rec {
   buildInputs = [
     logs
     fmt
-    hex
     bos
     astring
     cmdliner
diff --git a/pkgs/development/ocaml-modules/conduit/default.nix b/pkgs/development/ocaml-modules/conduit/default.nix
index 077180124e4..1dc28b2b5f7 100644
--- a/pkgs/development/ocaml-modules/conduit/default.nix
+++ b/pkgs/development/ocaml-modules/conduit/default.nix
@@ -5,14 +5,14 @@
 
 buildDunePackage rec {
   pname = "conduit";
-  version = "4.0.1";
+  version = "4.0.2";
   useDune2 = true;
 
   minimumOCamlVersion = "4.03";
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-conduit/releases/download/v${version}/conduit-v${version}.tbz";
-    sha256 = "500d95bf2a524f4851e94373e32d26b6e99ee04e5134db69fe6e151c3aad9b1f";
+    sha256 = "2a37ffaa352a1e145ef3d80ac28661213c69a741b238623e59f29e3d5a12c537";
   };
 
   buildInputs = [ ppx_sexp_conv ];
diff --git a/pkgs/development/ocaml-modules/higlo/default.nix b/pkgs/development/ocaml-modules/higlo/default.nix
index 3c4b7a37f99..19b2fa8942a 100644
--- a/pkgs/development/ocaml-modules/higlo/default.nix
+++ b/pkgs/development/ocaml-modules/higlo/default.nix
@@ -1,27 +1,23 @@
-{ lib, stdenv, fetchFromGitHub, ocaml, findlib, xtmpl, ulex }:
+{ lib, buildDunePackage, fetchFromGitLab, sedlex_2, xtmpl }:
 
-stdenv.mkDerivation rec {
+buildDunePackage rec {
   pname = "higlo";
-  version = "0.6";
-  src = fetchFromGitHub {
+  version = "0.8";
+  useDune2 = true;
+  src = fetchFromGitLab {
+    domain = "framagit.org";
     owner = "zoggy";
     repo = "higlo";
-    rev = "release-${version}";
-    sha256 = "0m0qyk2ydivai54502s45sdw9w4xr0j3jpwyc4vqk62a7iz9ihxh";
+    rev = version;
+    sha256 = "sha256:09hsbwy5asacgh4gdj0vjpy4kzfnq3qji9szbsbyswsf1nbyczir";
   };
 
-  buildInputs = [ ocaml findlib ];
-  propagatedBuildInputs = [ xtmpl ulex ];
-
-  createFindlibDestdir = true;
-
-  patches = ./install.patch;
+  propagatedBuildInputs = [ sedlex_2 xtmpl ];
 
   meta = with lib; {
     description = "OCaml library for syntax highlighting";
-    homepage = "https://zoggy.github.io/higlo/";
+    inherit (src.meta) homepage;
     license = licenses.lgpl3;
-    platforms = ocaml.meta.platforms or [];
     maintainers = with maintainers; [ regnat ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/higlo/install.patch b/pkgs/development/ocaml-modules/higlo/install.patch
deleted file mode 100644
index bbdaace293b..00000000000
--- a/pkgs/development/ocaml-modules/higlo/install.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/Makefile b/Makefile
-index b8c2e01..fcd07ed 100644
---- a/Makefile
-+++ b/Makefile
-@@ -149,7 +149,8 @@ webdoc:
- install: install-lib install-bin
- 
- install-bin:
--	$(CP) $(HIGLO) $(HIGLO_BYTE) $(MK_HIGLO) `dirname \`which ocamlfind\``/
-+	mkdir -p $(out)/bin
-+	$(CP) $(HIGLO) $(HIGLO_BYTE) $(MK_HIGLO) $(out)/bin
- 
- install-lib: higlo.cmo higlo.cmx higlo.cmxs $(HIGLO) $(HIGLO_BYTE)
- 	ocamlfind install higlo META LICENSE \
diff --git a/pkgs/development/ocaml-modules/iri/default.nix b/pkgs/development/ocaml-modules/iri/default.nix
index 0845e4c1841..6a00fb453df 100644
--- a/pkgs/development/ocaml-modules/iri/default.nix
+++ b/pkgs/development/ocaml-modules/iri/default.nix
@@ -1,34 +1,26 @@
-{ stdenv, lib, fetchFromGitLab, ocaml, findlib
-, sedlex, uunf, uutf
+{ lib, buildDunePackage, fetchFromGitLab
+, sedlex_2, uunf, uutf
 }:
 
-if !lib.versionAtLeast ocaml.version "4.03"
-then throw "iri is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  version = "0.4.0";
-  name = "ocaml${ocaml.version}-iri-${version}";
+buildDunePackage rec {
+  pname = "iri";
+  version = "0.6.0";
+  useDune2 = true;
 
   src = fetchFromGitLab {
     domain = "framagit.org";
     owner = "zoggy";
     repo = "ocaml-iri";
     rev = version;
-    sha256 = "0fsmfmzmyggm0h77a7mb0n41vqi6q4ln1xzsv72zbvysa7l8w84q";
+    sha256 = "sha256:0zk8nnwcyljkc1a556byncv6cn1vqhk4267z1lm15flh1k7chyax";
   };
 
-  buildInputs = [ ocaml findlib ];
-
-  propagatedBuildInputs = [ sedlex uunf uutf ];
-
-  createFindlibDestdir = true;
+  propagatedBuildInputs = [ sedlex_2 uunf uutf ];
 
   meta = {
     description = "IRI (RFC3987) native OCaml implementation";
     license = lib.licenses.lgpl3;
     maintainers = [ lib.maintainers.vbgl ];
     inherit (src.meta) homepage;
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/letsencrypt/app.nix b/pkgs/development/ocaml-modules/letsencrypt/app.nix
index dc9006d6d16..de1dbbb8c84 100644
--- a/pkgs/development/ocaml-modules/letsencrypt/app.nix
+++ b/pkgs/development/ocaml-modules/letsencrypt/app.nix
@@ -12,6 +12,7 @@
 , bos
 , fpath
 , randomconv
+, cstruct
 }:
 
 buildDunePackage {
@@ -37,6 +38,7 @@ buildDunePackage {
     bos
     fpath
     randomconv
+    cstruct
   ];
 
   meta = letsencrypt.meta // {
diff --git a/pkgs/development/ocaml-modules/letsencrypt/default.nix b/pkgs/development/ocaml-modules/letsencrypt/default.nix
index 623fba942f2..a0646517b1b 100644
--- a/pkgs/development/ocaml-modules/letsencrypt/default.nix
+++ b/pkgs/development/ocaml-modules/letsencrypt/default.nix
@@ -1,15 +1,14 @@
 { buildDunePackage
 , lib
 , fetchurl
-, astring
 , asn1-combinators
 , uri
-, rresult
 , base64
 , logs
 , fmt
 , lwt
 , mirage-crypto
+, mirage-crypto-ec
 , mirage-crypto-pk
 , mirage-crypto-rng
 , x509
@@ -17,15 +16,16 @@
 , ounit
 , ptime
 , domain-name
+, cstruct
 }:
 
 buildDunePackage rec {
   pname = "letsencrypt";
-  version = "0.3.0";
+  version = "0.4.1";
 
   src = fetchurl {
     url = "https://github.com/mmaker/ocaml-letsencrypt/releases/download/v${version}/letsencrypt-v${version}.tbz";
-    sha256 = "8772b7e6dbda0559a03a7b23b75c1431d42ae09a154eefd64b4c7e23b8d92deb";
+    sha256 = "f90875f5c9bdcab4c8be5ec7ebe9ea763030fa708e02857300996bb16e7c2070";
   };
 
   minimumOCamlVersion = "4.08";
@@ -43,12 +43,12 @@ buildDunePackage rec {
     lwt
     base64
     mirage-crypto
+    mirage-crypto-ec
     mirage-crypto-pk
     asn1-combinators
     x509
     uri
-    rresult
-    astring
+    cstruct
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/lustre-v6/default.nix b/pkgs/development/ocaml-modules/lustre-v6/default.nix
index 34feaf85c3f..4eeb01e9f3b 100644
--- a/pkgs/development/ocaml-modules/lustre-v6/default.nix
+++ b/pkgs/development/ocaml-modules/lustre-v6/default.nix
@@ -20,7 +20,7 @@ buildDunePackage rec {
   ];
 
   meta = with lib; {
-    homepage = "http://www-verimag.imag.fr/lustre-v6.html";
+    homepage = "https://www-verimag.imag.fr/lustre-v6.html";
     description = "Lustre V6 compiler";
     license = lib.licenses.cecill21;
     maintainers = [ lib.maintainers.delta ];
diff --git a/pkgs/development/ocaml-modules/ocaml-version/default.nix b/pkgs/development/ocaml-modules/ocaml-version/default.nix
index a8912c0f5d5..aeb9c9dc699 100644
--- a/pkgs/development/ocaml-modules/ocaml-version/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-version/default.nix
@@ -2,11 +2,11 @@
 
 buildDunePackage rec {
   pname = "ocaml-version";
-  version = "3.1.0";
+  version = "3.4.0";
 
   src = fetchurl {
     url = "https://github.com/ocurrent/ocaml-version/releases/download/v${version}/ocaml-version-v${version}.tbz";
-    sha256 = "sha256-rHuhagnY9yISdC85NpgPv667aYx7v2JRgq99ayw83l8=";
+    sha256 = "sha256-2MG+tejY67dxC19DTOZqPsi3UrHk1rqHxP4nRSvbiiU=";
   };
 
   minimumOCamlVersion = "4.07";
diff --git a/pkgs/development/ocaml-modules/ocf/default.nix b/pkgs/development/ocaml-modules/ocf/default.nix
index ee14a83d57c..30f589e7561 100644
--- a/pkgs/development/ocaml-modules/ocf/default.nix
+++ b/pkgs/development/ocaml-modules/ocf/default.nix
@@ -1,37 +1,24 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, ocaml, findlib, ppx_tools, yojson }:
+{ lib, buildDunePackage, fetchFromGitLab, yojson }:
 
-if lib.versionOlder ocaml.version "4.03"
-|| lib.versionAtLeast ocaml.version "4.08"
-then throw "ocf not supported for ocaml ${ocaml.version}"
-else
-stdenv.mkDerivation rec {
+buildDunePackage rec {
   pname = "ocf";
-  version = "0.5.0";
-  src = fetchFromGitHub {
+  version = "0.8.0";
+  useDune2 = true;
+  minimalOCamlVersion = "4.03";
+  src = fetchFromGitLab {
+    domain = "framagit.org";
     owner = "zoggy";
     repo = "ocf";
-    rev = "release-${version}";
-    sha256 = "1fhq9l2nmr39hxzpavc0jssmba71nnmhsncdn4dsbh2ylv29w56y";
+    rev = version;
+    sha256 = "sha256:00ap3q5yjqmpk87lxqv1j2wkc7583ynhjr1jjrfn9r0j2h9pfd60";
   };
 
-  buildInputs = [ ocaml findlib ppx_tools ];
   propagatedBuildInputs = [ yojson ];
 
-  createFindlibDestdir = true;
-
-  dontStrip = true;
-
-  patches = [(fetchpatch {
-    url = "https://github.com/zoggy/ocf/commit/3a231c7a6c5e535a77c25e207af8952793436444.patch";
-    sha256 = "0nc8cggc5gxhch9amaz3s71lxs1xbgi7fs9p90cng04dsgr64xk5";
-  })
-  ];
-
   meta = with lib; {
     description = "OCaml library to read and write configuration options in JSON syntax";
-    homepage = "https://zoggy.github.io/ocf/";
+    homepage = "https://zoggy.frama.io/ocf/";
     license = licenses.lgpl3;
-    platforms = ocaml.meta.platforms or [];
     maintainers = with maintainers; [ regnat ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/ocf/ppx.nix b/pkgs/development/ocaml-modules/ocf/ppx.nix
new file mode 100644
index 00000000000..0b1f6998cca
--- /dev/null
+++ b/pkgs/development/ocaml-modules/ocf/ppx.nix
@@ -0,0 +1,14 @@
+{ buildDunePackage, ocf, ppxlib }:
+
+buildDunePackage {
+  pname = "ocf_ppx";
+  minimalOCamlVersion = "4.11";
+
+  inherit (ocf) src version useDune2;
+
+  buildInputs = [ ppxlib ocf ];
+
+  meta = ocf.meta // {
+    description = "Preprocessor for Ocf library";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/odoc-parser/default.nix b/pkgs/development/ocaml-modules/odoc-parser/default.nix
index a8e6bd2599c..7a2b5abd974 100644
--- a/pkgs/development/ocaml-modules/odoc-parser/default.nix
+++ b/pkgs/development/ocaml-modules/odoc-parser/default.nix
@@ -1,14 +1,24 @@
-{ lib, fetchurl, buildDunePackage, astring, result }:
+{ lib, fetchurl, buildDunePackage, astring, result , version ? "1.0.0" }:
 
+let param = {
+  "1.0.0" = {
+    sha256 = "sha256-tqoI6nGp662bK+vE2h7aDXE882dObVfRBFnZNChueqE=";
+  };
+  "0.9.0" = {
+    sha256 = "sha256-3w2tG605v03mvmZsS2O5c71y66O3W+n3JjFxIbXwvXk=";
+  };
+}."${version}"; in
+
+let v = version; in
 buildDunePackage rec {
   pname = "odoc-parser";
-  version = "0.9.0";
+  inherit version;
 
   minimumOCamlVersion = "4.02";
 
   src = fetchurl {
-    url = "https://github.com/ocaml-doc/odoc-parser/releases/download/0.9.0/odoc-parser-0.9.0.tbz";
-    sha256 = "0ydxy2sj2w9i4vvyjnxplgmp5gbkp5ilnv36pvk4vgrrmldss3fz";
+    url = "https://github.com/ocaml-doc/odoc-parser/releases/download/${version}/odoc-parser-${version}.tbz";
+    inherit (param) sha256;
   };
 
   useDune2 = true;
diff --git a/pkgs/development/ocaml-modules/paf/default.nix b/pkgs/development/ocaml-modules/paf/default.nix
index a4f3a99ce48..30277de4e51 100644
--- a/pkgs/development/ocaml-modules/paf/default.nix
+++ b/pkgs/development/ocaml-modules/paf/default.nix
@@ -7,17 +7,10 @@
 , h2
 , tls-mirage
 , mimic
-, cohttp-lwt
-, letsencrypt
-, emile
 , ke
 , bigstringaf
-, domain-name
-, duration
 , faraday
-, ipaddr
 , tls
-, x509
 , lwt
 , logs
 , fmt
@@ -32,11 +25,11 @@
 
 buildDunePackage rec {
   pname = "paf";
-  version = "0.0.5";
+  version = "0.0.6";
 
   src = fetchurl {
     url = "https://github.com/dinosaure/paf-le-chien/releases/download/${version}/paf-${version}.tbz";
-    sha256 = "e85a018046eb062d2399fdbe8d9d3400a4d5cd51bb62840446503f557c3eeff1";
+    sha256 = "21adbe0f7f9c0242354fa996468d01bf21d5cbcbdd978c911df8e2e299e8f9ae";
   };
 
   useDune2 = true;
@@ -48,17 +41,10 @@ buildDunePackage rec {
     h2
     tls-mirage
     mimic
-    cohttp-lwt
-    letsencrypt
-    emile
     ke
     bigstringaf
-    domain-name
-    ipaddr
-    duration
     faraday
     tls
-    x509
     cstruct
   ];
 
diff --git a/pkgs/development/ocaml-modules/paf/le.nix b/pkgs/development/ocaml-modules/paf/le.nix
index 9281e48b6c2..06a8d9b51eb 100644
--- a/pkgs/development/ocaml-modules/paf/le.nix
+++ b/pkgs/development/ocaml-modules/paf/le.nix
@@ -8,6 +8,7 @@
 , mirage-stack
 , mirage-time
 , tls-mirage
+, x509
 }:
 
 buildDunePackage {
@@ -29,6 +30,7 @@ buildDunePackage {
     mirage-stack
     mirage-time
     tls-mirage
+    x509
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/piqi-ocaml/default.nix b/pkgs/development/ocaml-modules/piqi-ocaml/default.nix
index 7203f370285..9899bfc4bdf 100644
--- a/pkgs/development/ocaml-modules/piqi-ocaml/default.nix
+++ b/pkgs/development/ocaml-modules/piqi-ocaml/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   installPhase = "DESTDIR=$out make install";
 
   meta = with lib; {
-    homepage = "http://piqi.org";
+    homepage = "https://piqi.org";
     description = "Universal schema language and a collection of tools built around it. These are the ocaml bindings";
     license = licenses.asl20;
     maintainers = [ maintainers.maurer ];
diff --git a/pkgs/development/ocaml-modules/piqi/default.nix b/pkgs/development/ocaml-modules/piqi/default.nix
index d7bc4b55b45..84ccc469f6e 100644
--- a/pkgs/development/ocaml-modules/piqi/default.nix
+++ b/pkgs/development/ocaml-modules/piqi/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = "http://piqi.org";
+    homepage = "https://piqi.org";
     description = "Universal schema language and a collection of tools built around it";
     license = licenses.asl20;
     maintainers = [ maintainers.maurer ];
diff --git a/pkgs/development/ocaml-modules/tls/async.nix b/pkgs/development/ocaml-modules/tls/async.nix
index 0215ac18088..ceac7a7c074 100644
--- a/pkgs/development/ocaml-modules/tls/async.nix
+++ b/pkgs/development/ocaml-modules/tls/async.nix
@@ -1,4 +1,4 @@
-{ lib, buildDunePackage, tls, async, cstruct-async, core, cstruct, mirage-crypto-rng-async, async_find }:
+{ lib, buildDunePackage, tls, async, cstruct-async, core, cstruct, mirage-crypto-rng-async }:
 
 buildDunePackage rec {
   pname = "tls-async";
@@ -12,7 +12,6 @@ buildDunePackage rec {
 
   propagatedBuildInputs = [
     async
-    async_find
     core
     cstruct
     cstruct-async
diff --git a/pkgs/development/ocaml-modules/tls/default.nix b/pkgs/development/ocaml-modules/tls/default.nix
index e5c9b7b54b1..81f0a176bfc 100644
--- a/pkgs/development/ocaml-modules/tls/default.nix
+++ b/pkgs/development/ocaml-modules/tls/default.nix
@@ -1,15 +1,16 @@
 { lib, fetchurl, buildDunePackage
-, cstruct, cstruct-sexp, domain-name, fmt, ppx_cstruct, ppx_sexp_conv, logs, hkdf, mirage-crypto, mirage-crypto-ec, mirage-crypto-pk, mirage-crypto-rng, ocaml_lwt, ptime, rresult, sexplib, x509
+, cstruct, cstruct-sexp, domain-name, fmt, ppx_cstruct, ppx_sexp_conv, logs, hkdf, mirage-crypto, mirage-crypto-ec, mirage-crypto-pk, mirage-crypto-rng, ocaml_lwt, ptime, sexplib, x509
+, ipaddr, ipaddr-sexp
 , alcotest, cstruct-unix, ounit2, randomconv
 }:
 
 buildDunePackage rec {
   pname = "tls";
-  version = "0.14.1";
+  version = "0.15.2";
 
   src = fetchurl {
     url = "https://github.com/mirleft/ocaml-tls/releases/download/v${version}/tls-v${version}.tbz";
-    sha256 = "58cf2d517d6eac5b1ccc5eeb656da690aef2125a19c1eca3fbececd858046216";
+    sha256 = "b76371757249bbeabb12c333de4ea2a09c095767bdbbc83322538c0da1fc1e36";
   };
 
   minimumOCamlVersion = "4.08";
@@ -30,9 +31,10 @@ buildDunePackage rec {
     mirage-crypto-rng
     ocaml_lwt
     ptime
-    rresult
     sexplib
     x509
+    ipaddr
+    ipaddr-sexp
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/x509/default.nix b/pkgs/development/ocaml-modules/x509/default.nix
index 8330eb27965..116772e7819 100644
--- a/pkgs/development/ocaml-modules/x509/default.nix
+++ b/pkgs/development/ocaml-modules/x509/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchurl, buildDunePackage
 , alcotest, cstruct-unix
-, asn1-combinators, domain-name, fmt, gmap, pbkdf, rresult, mirage-crypto, mirage-crypto-ec, mirage-crypto-pk
+, asn1-combinators, domain-name, fmt, gmap, pbkdf, mirage-crypto, mirage-crypto-ec, mirage-crypto-pk, ipaddr
 , logs, base64
 }:
 
@@ -8,17 +8,17 @@ buildDunePackage rec {
   minimumOCamlVersion = "4.07";
 
   pname = "x509";
-  version = "0.14.1";
+  version = "0.15.2";
 
   src = fetchurl {
     url = "https://github.com/mirleft/ocaml-x509/releases/download/v${version}/x509-v${version}.tbz";
-    sha256 = "d91eb4f2790f9d098713c71cc4b5d12706aedb1795666b5e6d667fe5c262f9c3";
+    sha256 = "4034afdd83a0cb8291b1f809403015da9139bd772813d59d6093e42ec31ba643";
   };
 
   useDune2 = true;
 
   buildInputs = [ alcotest cstruct-unix ];
-  propagatedBuildInputs = [ asn1-combinators domain-name fmt gmap mirage-crypto mirage-crypto-pk mirage-crypto-ec pbkdf rresult logs base64 ];
+  propagatedBuildInputs = [ asn1-combinators domain-name fmt gmap mirage-crypto mirage-crypto-pk mirage-crypto-ec pbkdf logs base64 ipaddr ];
 
   doCheck = true;
 
diff --git a/pkgs/development/ocaml-modules/xtmpl/default.nix b/pkgs/development/ocaml-modules/xtmpl/default.nix
index f1c1f15dc72..7c2f0a01e53 100644
--- a/pkgs/development/ocaml-modules/xtmpl/default.nix
+++ b/pkgs/development/ocaml-modules/xtmpl/default.nix
@@ -1,39 +1,23 @@
-{ lib, stdenv, fetchFromGitLab, ocaml, findlib, iri, ppx_tools, js_of_ocaml
-, js_of_ocaml-ppx, re }:
+{ lib, buildDunePackage, fetchFromGitLab, iri, re, sedlex_2, uutf }:
 
-if lib.versionOlder ocaml.version "4.03"
-|| lib.versionAtLeast ocaml.version "4.11"
-then throw "xtmpl not supported for ocaml ${ocaml.version}"
-else
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-xtmpl-${version}";
-  version = "0.17.0";
+buildDunePackage rec {
+  pname = "xtmpl";
+  version = "0.19.0";
+  useDune2 = true;
   src = fetchFromGitLab {
     domain = "framagit.org";
     owner = "zoggy";
     repo = "xtmpl";
     rev = version;
-    sha256 = "1hq6y4rhz958q40145k4av8hx8jyvspg78xf741samd7vc3jd221";
+    sha256 = "sha256:0vwj0aayg60wm98d91fg3hmj90730liljy4cn8771dpxvz8m07bw";
   };
 
-  patches = [ ./jsoo.patch ];
-
-  postPatch = ''
-    substituteInPlace Makefile --replace js_of_ocaml.ppx js_of_ocaml-ppx
-  '';
-
-  buildInputs = [ ocaml findlib ppx_tools js_of_ocaml js_of_ocaml-ppx ];
-  propagatedBuildInputs = [ iri re ];
-
-  createFindlibDestdir = true;
-
-  dontStrip = true;
+  propagatedBuildInputs = [ iri re sedlex_2 uutf ];
 
   meta = with lib; {
     description = "XML templating library for OCaml";
     homepage = "https://www.good-eris.net/xtmpl/";
     license = licenses.lgpl3;
-    platforms = ocaml.meta.platforms or [];
     maintainers = with maintainers; [ regnat ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/xtmpl/jsoo.patch b/pkgs/development/ocaml-modules/xtmpl/jsoo.patch
deleted file mode 100644
index 7546dbca924..00000000000
--- a/pkgs/development/ocaml-modules/xtmpl/jsoo.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/xtmpl_js.ml b/xtmpl_js.ml
-index e0d3894..991d1b3 100644
---- a/xtmpl_js.ml
-+++ b/xtmpl_js.ml
-@@ -25,6 +25,8 @@
- 
- (** *)
- 
-+open Js_of_ocaml
-+
- let log s = Firebug.console##log (Js.string s);;
- 
- module X = Xtmpl_rewrite
-diff --git a/xtmpl_js.mli b/xtmpl_js.mli
-index d709896..5ed471c 100644
---- a/xtmpl_js.mli
-+++ b/xtmpl_js.mli
-@@ -25,6 +25,8 @@
- 
- (** Convenient functions to use in JS code *)
- 
-+open Js_of_ocaml
-+
- (** Create a new tree of DOM nodes from a given XML tree.
-   Errors are logged to the firebug console.
-   @param doc Default is [Dom_html.document].
diff --git a/pkgs/development/ocaml-modules/xtmpl/ppx.nix b/pkgs/development/ocaml-modules/xtmpl/ppx.nix
new file mode 100644
index 00000000000..b6f5bd65000
--- /dev/null
+++ b/pkgs/development/ocaml-modules/xtmpl/ppx.nix
@@ -0,0 +1,14 @@
+{ buildDunePackage, xtmpl, ppxlib }:
+
+buildDunePackage {
+  pname = "xtmpl_ppx";
+  minimalOCamlVersion = "4.11";
+
+  inherit (xtmpl) src version useDune2;
+
+  buildInputs = [ ppxlib xtmpl ];
+
+  meta = xtmpl.meta // {
+    description = "Xml templating library, ppx extension";
+  };
+}
diff --git a/pkgs/development/php-packages/composer/default.nix b/pkgs/development/php-packages/composer/default.nix
index 504c1940260..9247f984d43 100644
--- a/pkgs/development/php-packages/composer/default.nix
+++ b/pkgs/development/php-packages/composer/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, unzip, lib, php }:
 let
   pname = "composer";
-  version = "2.2.1";
+  version = "2.2.3";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://getcomposer.org/download/${version}/composer.phar";
-    sha256 = "sha256-HSBnzYpN9UZJiwSBew+jgn8pHVZLzeKSVOjW0tsV+JY=";
+    sha256 = "sha256-chzCf4HGSF//cOb1a58qra53Ch+JdKOEw041mHojDYw=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/php-packages/gnupg/default.nix b/pkgs/development/php-packages/gnupg/default.nix
index d00c9781062..1d0b65d2c56 100644
--- a/pkgs/development/php-packages/gnupg/default.nix
+++ b/pkgs/development/php-packages/gnupg/default.nix
@@ -3,8 +3,8 @@
 buildPecl {
   pname = "gnupg";
 
-  version = "1.5.0";
-  sha256 = "0r0akrjjf9i460z11llybdr6sg2rlcz38nwfy0yqz443ljdggxfl";
+  version = "1.5.1";
+  sha256 = "sha256-qZBvRlqyNDyy8xJ+4gnHJ2Ajh0XDSHjZu8FXZIYhklI=";
 
   buildInputs = [ gpgme ];
   checkInputs = [ gnupg ];
diff --git a/pkgs/development/php-packages/php-cs-fixer/default.nix b/pkgs/development/php-packages/php-cs-fixer/default.nix
index 02461ca7188..8e3329ae0b1 100644
--- a/pkgs/development/php-packages/php-cs-fixer/default.nix
+++ b/pkgs/development/php-packages/php-cs-fixer/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, lib, php }:
 let
   pname = "php-cs-fixer";
-  version = "3.3.2";
+  version = "3.4.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
-    sha256 = "sha256-iny2/L+RbwHUtCO3hQtEAbxocnUBG29DcyJnmk/EYT8=";
+    sha256 = "sha256-UlZ3L5JaFN988WaHeZZRdl9yif29zFO0LMiFDGkMFuQ=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/php-packages/phpstan/default.nix b/pkgs/development/php-packages/phpstan/default.nix
index 4a193d9eaac..55d3570dfb7 100644
--- a/pkgs/development/php-packages/phpstan/default.nix
+++ b/pkgs/development/php-packages/phpstan/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, lib, php }:
 let
   pname = "phpstan";
-  version = "1.2.0";
+  version = "1.3.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
-    sha256 = "sha256-WA1N6fOibS0+txaGxH+cOgec9CsrIYzQbpjQCfQf/ao=";
+    sha256 = "sha256-3B7mYuK4k8l6YPMMHRd2yRdCr69VsYXnAZZYIDDDIMM=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/php-packages/swoole/default.nix b/pkgs/development/php-packages/swoole/default.nix
index 664837c2f3d..d017bc86f1a 100644
--- a/pkgs/development/php-packages/swoole/default.nix
+++ b/pkgs/development/php-packages/swoole/default.nix
@@ -3,8 +3,8 @@
 buildPecl {
   pname = "swoole";
 
-  version = "4.8.4";
-  sha256 = "sha256-gqDXcbjnsmo2XdrrRPeRrAD1yXtLkY8fZtu9OaiDq6s=";
+  version = "4.8.5";
+  sha256 = "sha256-FCda91vO79Y1O1Pojv710VLzwwVUPHwn0O1kliOyKPg=";
 
   buildInputs = [ pcre2 ] ++ lib.optionals (!stdenv.isDarwin) [ valgrind ];
   internalDeps = lib.optionals (lib.versionOlder php.version "7.4") [ php.extensions.hash ];
diff --git a/pkgs/development/python-modules/Nikola/default.nix b/pkgs/development/python-modules/Nikola/default.nix
index 364e50c1024..faa17a83839 100644
--- a/pkgs/development/python-modules/Nikola/default.nix
+++ b/pkgs/development/python-modules/Nikola/default.nix
@@ -41,12 +41,12 @@
 
 buildPythonPackage rec {
   pname = "Nikola";
-  version = "8.1.3";
+  version = "8.2.0";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "05eac356bb4273cdd05d2dd6ad676226133496c457af91987c3f0d40e2fe57ef";
+    sha256 = "9998fedfcb932e19e3b54faeb497a49cde8b15163af764c5afe5847fef5ec1ff";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/actdiag/default.nix b/pkgs/development/python-modules/actdiag/default.nix
index c1ab1843eb3..dd0a1c20cc7 100644
--- a/pkgs/development/python-modules/actdiag/default.nix
+++ b/pkgs/development/python-modules/actdiag/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "actdiag";
-  version = "2.0.0";
+  version = "3.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "blockdiag";
     repo = pname;
     rev = version;
-    sha256 = "sha256-pTWunoc6T1m+4SOe0ob0ac4ZwwXsYNZwkdwVtlMZrIo=";
+    sha256 = "sha256-WmprkHOgvlsOIg8H77P7fzEqxGnj6xaL7Df7urRkg3o=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/affinity/default.nix b/pkgs/development/python-modules/affinity/default.nix
deleted file mode 100644
index c6eb9543024..00000000000
--- a/pkgs/development/python-modules/affinity/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k }:
-
-buildPythonPackage rec {
-  pname = "affinity";
-  version = "0.1.0";
-
-  # syntax error
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1i6j7kszvnzh5vh9k48cqwx2kzf73a6abgv9s6bf0j2zmfjl2wb6";
-  };
-
-  meta = {
-    description = "control processor affinity on windows and linux";
-    homepage    = "http://cheeseshop.python.org/pypi/affinity";
-    license     = with lib.licenses; [ psfl ];
-  };
-}
diff --git a/pkgs/development/python-modules/aiohttp-socks/default.nix b/pkgs/development/python-modules/aiohttp-socks/default.nix
index 4e75f56a8da..e782eed49b7 100644
--- a/pkgs/development/python-modules/aiohttp-socks/default.nix
+++ b/pkgs/development/python-modules/aiohttp-socks/default.nix
@@ -2,18 +2,19 @@
 
 buildPythonPackage rec {
   pname = "aiohttp-socks";
-  version = "0.6.0";
+  version = "0.7.1";
 
   src = fetchPypi {
     inherit version;
     pname = "aiohttp_socks";
-    sha256 = "04w010bvi719ifpc3sshav95k10hf9nq8czn9yglkj206yxcypdr";
+    sha256 = "sha256-IhXKxIke8/oUt9YA7TQ+0PCmcMI7EOQUKqhis9sgNBo=";
   };
 
   propagatedBuildInputs = [ aiohttp attrs python-socks ];
 
   # Checks needs internet access
   doCheck = false;
+  pythonImportsCheck = [ "aiohttp_socks" ];
 
   disabled = pythonOlder "3.5.3";
 
diff --git a/pkgs/development/python-modules/aiohue/default.nix b/pkgs/development/python-modules/aiohue/default.nix
index fd15d3aa8f8..1f479311af0 100644
--- a/pkgs/development/python-modules/aiohue/default.nix
+++ b/pkgs/development/python-modules/aiohue/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "aiohue";
-  version = "3.0.10";
+  version = "3.0.11";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-LwtE9F5ic0aZ9/q3dSWn20O27yW/QD/Yi1NPdFmiP10=";
+    sha256 = "sha256-McC5DX3Cti9eGpPniywNY2DvbAqHSFwhek85TJN/zn0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/aiomusiccast/default.nix b/pkgs/development/python-modules/aiomusiccast/default.nix
index 704315b225e..6d1116bfefa 100644
--- a/pkgs/development/python-modules/aiomusiccast/default.nix
+++ b/pkgs/development/python-modules/aiomusiccast/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "aiomusiccast";
-  version = "0.14.2";
+  version = "0.14.3";
 
   format = "pyproject";
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "vigonotion";
     repo = "aiomusiccast";
     rev = version;
-    sha256 = "sha256-5xIz36FgNwcaesmkYp3EWTxCe/8RaUJOJW9dqK+eang=";
+    hash = "sha256-ELdNxeU9dajWr4VeOyuvNrSi7B+ImVJM/BlZsw3tcKE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix
index d6fb43d0705..4468dfabecd 100644
--- a/pkgs/development/python-modules/angr/default.nix
+++ b/pkgs/development/python-modules/angr/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , ailment
 , archinfo
 , buildPythonPackage
@@ -54,6 +55,8 @@ buildPythonPackage rec {
     sha256 = "sha256-AZlqSalTOQh3QR959ZuanFuTZVKi9valKJ3snsquC/A=";
   };
 
+  setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ];
+
   propagatedBuildInputs = [
     ailment
     archinfo
diff --git a/pkgs/development/python-modules/antlr4-python2-runtime/default.nix b/pkgs/development/python-modules/antlr4-python2-runtime/default.nix
deleted file mode 100644
index aa18a0fe290..00000000000
--- a/pkgs/development/python-modules/antlr4-python2-runtime/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib, buildPythonPackage, isPy3k, python
-, antlr4
-}:
-
-buildPythonPackage rec {
-  pname = "antlr4-python2-runtime";
-  inherit (antlr4.runtime.cpp) version src;
-  disabled = isPy3k;
-
-  sourceRoot = "source/runtime/Python2";
-
-  checkPhase = ''
-    ${python.interpreter} tests/TestTokenStreamRewriter.py
-  '';
-
-  meta = with lib; {
-    description = "Runtime for ANTLR";
-    homepage = "https://www.antlr.org/";
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/application/default.nix b/pkgs/development/python-modules/application/default.nix
deleted file mode 100644
index 90b21baafdd..00000000000
--- a/pkgs/development/python-modules/application/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub, zope_interface, isPy3k }:
-
-buildPythonPackage rec {
-  pname = "python-application";
-  version = "2.8.0";
-  disabled = isPy3k;
-
-  src = fetchFromGitHub {
-    owner = "AGProjects";
-    repo = pname;
-    rev = "release-${version}";
-    sha256 = "1xd2gbpmx2ghap9cnr1h6sxjai9419bdp3y9qp5lh67977m0qg30";
-  };
-
-  buildInputs = [ zope_interface ];
-
-  # No tests upstream to run
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Basic building blocks for python applications";
-    homepage = "https://github.com/AGProjects/python-application";
-    changelog = "https://github.com/AGProjects/python-application/blob/master/ChangeLog";
-    license = licenses.lgpl2Plus;
-  };
-}
diff --git a/pkgs/development/python-modules/arrow/2.nix b/pkgs/development/python-modules/arrow/2.nix
deleted file mode 100644
index cc702a525f9..00000000000
--- a/pkgs/development/python-modules/arrow/2.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27
-, simplejson, backports_functools_lru_cache
-, python-dateutil, pytz, pytest-mock, sphinx, dateparser, pytest-cov
-, pytestCheckHook
-}:
-
-buildPythonPackage rec {
-  pname = "arrow";
-  version = "0.17.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "ff08d10cda1d36c68657d6ad20d74fbea493d980f8b2d45344e00d6ed2bf6ed4";
-  };
-
-  propagatedBuildInputs = [ python-dateutil ]
-    ++ lib.optionals isPy27 [ backports_functools_lru_cache ];
-
-  checkInputs = [
-    dateparser
-    pytestCheckHook
-    pytest-cov
-    pytest-mock
-    pytz
-    simplejson
-    sphinx
-  ];
-
-  # ParserError: Could not parse timezone expression "America/Nuuk"
-  disabledTests = [
-    "test_parse_tz_name_zzz"
-  ];
-
-  meta = with lib; {
-    description = "Python library for date manipulation";
-    homepage = "https://github.com/crsmithdev/arrow";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ thoughtpolice ];
-  };
-}
diff --git a/pkgs/development/python-modules/ase/3.17.nix b/pkgs/development/python-modules/ase/3.17.nix
deleted file mode 100644
index 40b9b405aab..00000000000
--- a/pkgs/development/python-modules/ase/3.17.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, fetchPypi
-, buildPythonPackage
-, numpy
-, scipy
-, matplotlib
-, flask
-, pillow
-, psycopg2
-}:
-
-buildPythonPackage rec {
-  pname = "ase";
-  version = "3.17.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1d4gxypaahby45zcpl0rffcn2z7n55dg9lcd8sv6jjsmbbf9vr4g";
-  };
-
-  propagatedBuildInputs = [ numpy scipy matplotlib flask pillow psycopg2 ];
-
-  checkPhase = ''
-    $out/bin/ase test
-  '';
-
-  # tests just hang most likely due to something with subprocesses and cli
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Atomic Simulation Environment";
-    homepage = "https://wiki.fysik.dtu.dk/ase/";
-    license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ costrouc ];
-  };
-}
diff --git a/pkgs/development/python-modules/astroid/1.6.nix b/pkgs/development/python-modules/astroid/1.6.nix
deleted file mode 100644
index 47c7e8f6eb3..00000000000
--- a/pkgs/development/python-modules/astroid/1.6.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib, fetchPypi, buildPythonPackage
-, lazy-object-proxy, six, wrapt, enum34, singledispatch, backports_functools_lru_cache
-, pytest
-}:
-
-buildPythonPackage rec {
-  pname = "astroid";
-  version = "1.6.6";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d25869fc7f44f1d9fb7d24fd7ea0639656f5355fc3089cd1f3d18c6ec6b124c7";
-  };
-
-  # From astroid/__pkginfo__.py
-  propagatedBuildInputs = [
-    lazy-object-proxy
-    six
-    wrapt
-    enum34
-    singledispatch
-    backports_functools_lru_cache
-  ];
-
-  checkInputs = [ pytest ];
-
-  checkPhase = ''
-    # test_builtin_help is broken
-    pytest -k "not test_builtin_help and not test_namespace_and_file_mismatch and not test_namespace_package_pth_support and not test_nested_namespace_import" astroid
-  '';
-
-  meta = with lib; {
-    description = "An abstract syntax tree for Python with inference support";
-    homepage = "https://github.com/PyCQA/astroid";
-    license = licenses.lgpl2;
-    platforms = platforms.all;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/asyncio-dgram/default.nix b/pkgs/development/python-modules/asyncio-dgram/default.nix
index b06af4d2bbe..324e4ec823a 100644
--- a/pkgs/development/python-modules/asyncio-dgram/default.nix
+++ b/pkgs/development/python-modules/asyncio-dgram/default.nix
@@ -1,33 +1,41 @@
-{ stdenv
-, lib
+{ lib
+, stdenv
 , buildPythonPackage
 , fetchFromGitHub
-, pytestCheckHook
 , pytest-asyncio
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "asyncio-dgram";
-  version = "2.1.0";
+  version = "2.1.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "jsbronder";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1ibyphncb3d8vrs3yk8j6l1smmnibizx9k1vir2njhi09r57h9mx";
+    sha256 = "sha256-3K9VpX6JWCgz+Lx+5ZKqXG53B/uJCtI0x4pHy2pJdZg=";
   };
 
-  # OSError: AF_UNIX path too long
-  doCheck = !stdenv.isDarwin;
-
   checkInputs = [
-    pytestCheckHook
     pytest-asyncio
+    pytestCheckHook
   ];
 
-  disabledTests = [ "test_protocol_pause_resume" ];
+  # OSError: AF_UNIX path too long
+  doCheck = !stdenv.isDarwin;
+
+  disabledTests = [
+    "test_protocol_pause_resume"
+  ];
 
-  pythonImportsCheck = [ "asyncio_dgram" ];
+  pythonImportsCheck = [
+    "asyncio_dgram"
+  ];
 
   meta = with lib; {
     description = "Python support for higher level Datagram";
diff --git a/pkgs/development/python-modules/av/default.nix b/pkgs/development/python-modules/av/default.nix
index bf21025e862..c79dc8b3fcb 100644
--- a/pkgs/development/python-modules/av/default.nix
+++ b/pkgs/development/python-modules/av/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "av";
-  version = "8.0.3";
+  version = "8.1.0";
   disabled = isPy27; # setup.py no longer compatible
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "521814309c91d526b6b5c9517018aef2dd12bc3d86351037db69aa67730692b8";
+    sha256 = "0402169bc27e38e0f44e0e0e1854cf488337e86206b6d25d6dae2bfd7a1a0230";
   };
 
   checkInputs = [ numpy ];
diff --git a/pkgs/development/python-modules/backports_lzma/default.nix b/pkgs/development/python-modules/backports_lzma/default.nix
deleted file mode 100644
index bf346f3a3ca..00000000000
--- a/pkgs/development/python-modules/backports_lzma/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, xz
-, python
-, pythonOlder
-}:
-
-if !(pythonOlder "3.3") then null else buildPythonPackage rec {
-  pname = "backports.lzma";
-  version = "0.0.14";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "16d8b68e4d3cd4e6c9ddb059850452946da3914c8a8e197a7f2b0954559f2df4";
-  };
-
-  buildInputs = [ xz ];
-
-  checkPhase = ''
-    ${python.interpreter} test/test_lzma.py
-  '';
-
-  # Relative import does not seem to function.
-  doCheck = false;
-
-  meta = {
-    description = "Backport of Python 3.3's 'lzma' module for XZ/LZMA compressed files";
-    homepage = "https://github.com/peterjc/backports.lzma";
-    license = lib.licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/backports_os/default.nix b/pkgs/development/python-modules/backports_os/default.nix
deleted file mode 100644
index 21444970843..00000000000
--- a/pkgs/development/python-modules/backports_os/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools-scm
-, future
-, isPy3k
-, python
-, hypothesis
-}:
-
-buildPythonPackage rec {
-  version = "0.1.1";
-  pname = "backports.os";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "b472c4933094306ca08ec90b2a8cbb50c34f1fb2767775169a1c1650b7b74630";
-  };
-
-  buildInputs = [ setuptools-scm ];
-  checkInputs = [ hypothesis ];
-  propagatedBuildInputs = [ future ];
-
-  checkPhase = ''
-    ${python.interpreter} -m unittest discover tests
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/pjdelport/backports.os";
-    description = "Backport of new features in Python's os module";
-    license = licenses.mit;
-    maintainers = [ maintainers.costrouc ];
-  };
-}
diff --git a/pkgs/development/python-modules/bcrypt/3_1.nix b/pkgs/development/python-modules/bcrypt/3_1.nix
deleted file mode 100644
index df57eb3cd0c..00000000000
--- a/pkgs/development/python-modules/bcrypt/3_1.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi
-, isPyPy, cffi, pytest, six }:
-
-buildPythonPackage rec {
-  version = "3.1.7";
-  pname = "bcrypt";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0b0069c752ec14172c5f78208f1863d7ad6755a6fae6fe76ec2c80d13be41e42";
-  };
-
-  checkInputs = [ pytest ];
-
-  propagatedBuildInputs = [ six ] ++ lib.optional (!isPyPy) cffi;
-
-  meta = with lib; {
-    description = "Modern password hashing for your software and your servers";
-    homepage = "https://github.com/pyca/bcrypt/";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ domenkozar ];
-  };
-}
diff --git a/pkgs/development/python-modules/bitbucket-api/default.nix b/pkgs/development/python-modules/bitbucket-api/default.nix
deleted file mode 100644
index b874f1af525..00000000000
--- a/pkgs/development/python-modules/bitbucket-api/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k
-, requests_oauthlib, nose, sh }:
-
-buildPythonPackage rec {
-  pname = "bitbucket-api";
-  version = "0.5.0";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "b541d9d7f234074a74214505aff1846eb21e5dd6d3915139e817d4675d34f4e3";
-  };
-
-  propagatedBuildInputs = [ requests_oauthlib nose sh ];
-
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://github.com/Sheeprider/BitBucket-api";
-    description = "Python library to interact with BitBucket REST API";
-    license = licenses.mit;
-  };
-}
diff --git a/pkgs/development/python-modules/bitbucket-cli/default.nix b/pkgs/development/python-modules/bitbucket-cli/default.nix
deleted file mode 100644
index bb1fa1d6c17..00000000000
--- a/pkgs/development/python-modules/bitbucket-cli/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, requests }:
-
-buildPythonPackage rec {
-  pname = "bitbucket-cli";
-  version = "0.5.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1xmn73x6jirnwfwcdy380ncmkai9f9dhmld6zin01ypbqwgf50fq";
-  };
-
-  propagatedBuildInputs = [ requests ];
-
-  # No tests
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Bitbucket command line interface";
-    homepage = "https://bitbucket.org/zhemao/bitbucket-cli";
-    maintainers = with maintainers; [ refnil ];
-    license = licenses.bsd2;
-  };
-}
diff --git a/pkgs/development/python-modules/black/default.nix b/pkgs/development/python-modules/black/default.nix
index ea4fb0b4a74..13f05fa6136 100644
--- a/pkgs/development/python-modules/black/default.nix
+++ b/pkgs/development/python-modules/black/default.nix
@@ -10,7 +10,6 @@
 , pathspec
 , parameterized
 , platformdirs
-, regex
 , tomli
 , typed-ast
 , typing-extensions
@@ -20,13 +19,13 @@
 
 buildPythonPackage rec {
   pname = "black";
-  version = "21.10b0";
+  version = "21.12b0";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-qZUiKQkuMl/l89rlbYH2ObI/cTHrhAeBlH5LKIYDDzM=";
+    hash = "sha256-d7gPaTpWni5SeVhFljTxjfmwuiYluk4MLV2lvkLm8rM=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
@@ -68,7 +67,6 @@ buildPythonPackage rec {
     mypy-extensions
     pathspec
     platformdirs
-    regex
     tomli
     typed-ast # required for tests and python2 extra
     uvloop
diff --git a/pkgs/development/python-modules/blinkpy/default.nix b/pkgs/development/python-modules/blinkpy/default.nix
index c427886a032..572dbad932b 100644
--- a/pkgs/development/python-modules/blinkpy/default.nix
+++ b/pkgs/development/python-modules/blinkpy/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "blinkpy";
-  version = "0.17.1";
+  version = "0.18.0";
 
   src = fetchFromGitHub {
     owner = "fronzbot";
     repo = "blinkpy";
     rev = "v${version}";
-    sha256 = "11h4r2vkrlxwjig1lay1n5wpny5isfgz85f7lsn8ndnqa2wpsymp";
+    hash = "sha256-96HoGXVQE5PbUbu0oDOC0es0HXYig4ScTeexiUhGse4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/blivet/default.nix b/pkgs/development/python-modules/blivet/default.nix
deleted file mode 100644
index fd97fa20648..00000000000
--- a/pkgs/development/python-modules/blivet/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, fetchFromGitHub, buildPythonPackage, pykickstart, pyparted, pyblock
-, pyudev, six, libselinux, multipath-tools, lsof, util-linux
-}:
-
-buildPythonPackage rec {
-  pname = "blivet";
-  version = "0.67";
-
-  src = fetchFromGitHub {
-    owner = "dwlehman";
-    repo = "blivet";
-    rev = "${pname}-${version}";
-    sha256 = "1gk94ghjrxfqnx53hph1j2s7qcv86fjz48is7l099q9c24rjv8ky";
-  };
-
-  postPatch = ''
-    sed -i \
-      -e 's|"multipath"|"${multipath-tools}/sbin/multipath"|' \
-      -e '/^def set_friendly_names/a \    return False' \
-      blivet/devicelibs/mpath.py
-    sed -i -e '/"wipefs"/ {
-      s|wipefs|${util-linux}/sbin/wipefs|
-      s/-f/--force/
-    }' blivet/formats/__init__.py
-    sed -i -e 's|"lsof"|"${lsof}/bin/lsof"|' blivet/formats/fs.py
-    sed -i -r -e 's|"(u?mount)"|"${util-linux}/bin/\1"|' blivet/util.py
-  '';
-
-  propagatedBuildInputs = [
-    pykickstart pyparted pyblock pyudev libselinux
-    six
-  ];
-
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://fedoraproject.org/wiki/Blivet";
-    description = "Module for management of a system's storage configuration";
-    license = with licenses; [ gpl2Plus lgpl21Plus ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/python-modules/boschshcpy/default.nix b/pkgs/development/python-modules/boschshcpy/default.nix
index ea8525d0a41..27610d7cd9b 100644
--- a/pkgs/development/python-modules/boschshcpy/default.nix
+++ b/pkgs/development/python-modules/boschshcpy/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "boschshcpy";
-  version = "0.2.27";
+  version = "0.2.28";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "tschamm";
     repo = pname;
     rev = version;
-    sha256 = "sha256-xlkLMCLo1tut1mLj/L9YcRn16+GVKXJSSkpClBh1ujI=";
+    sha256 = "sha256-CnfJiYUM8A4QZ6VMtekO8nD5tQ2VL9vMeK6OWYcgwmU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/box2d/default.nix b/pkgs/development/python-modules/box2d/default.nix
deleted file mode 100644
index e6f6a390f37..00000000000
--- a/pkgs/development/python-modules/box2d/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, swig2
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "Box2D";
-  version = "2.3.2";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d1557dffdf9c1d6c796ec5df53e3d93227bb026c14b8411d22c295edaa2fb225";
-  };
-
-  postPatch = ''
-    sed -i "s/'Box2D.tests' : 'tests'//" setup.py
-  '';
-
-  nativeBuildInputs = [ swig2 ];
-
-  # tests not included with pypi release
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://github.com/pybox2d/pybox2d";
-    description = ''
-      A 2D game physics library for Python under
-      the very liberal zlib license
-    '';
-    license = licenses.zlib;
-    maintainers = with maintainers; [ sepi ];
-  };
-}
diff --git a/pkgs/development/python-modules/brother-ql/default.nix b/pkgs/development/python-modules/brother-ql/default.nix
new file mode 100644
index 00000000000..891791dfecb
--- /dev/null
+++ b/pkgs/development/python-modules/brother-ql/default.nix
@@ -0,0 +1,37 @@
+{ stdenv
+, fetchPypi
+, buildPythonPackage
+, future
+, packbits
+, pillow
+, pyusb
+, pytest
+, mock
+, click
+, attrs
+, lib
+}:
+
+buildPythonPackage rec {
+  pname = "brother-ql";
+  version = "0.9.4";
+
+  src = fetchPypi {
+    pname = "brother_ql";
+    inherit version;
+    sha256 = "sha256-H1xXoDnwEsnCBDl/RwAB9267dINCHr3phdDLPGFOhmA=";
+  };
+
+  propagatedBuildInputs = [ future packbits pillow pyusb click attrs ];
+
+  meta = with lib; {
+    description = "Python package for the raster language protocol of the Brother QL series label printers";
+    longDescription = ''
+      Python package for the raster language protocol of the Brother QL series label printers
+      (QL-500, QL-550, QL-570, QL-700, QL-710W, QL-720NW, QL-800, QL-820NWB, QL-1050 and more)
+    '';
+    homepage = "https://github.com/pklaus/brother_ql";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ grahamc ];
+  };
+}
diff --git a/pkgs/development/python-modules/browsermob-proxy/default.nix b/pkgs/development/python-modules/browsermob-proxy/default.nix
deleted file mode 100644
index 1c69d70a134..00000000000
--- a/pkgs/development/python-modules/browsermob-proxy/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, requests
-, urllib3
-}:
-
-buildPythonPackage rec {
-  pname = "browsermob-proxy";
-  version = "0.8.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1bxvmghm834gsfz3pm69772wzhh15p8ci526b25dpk3z4315nd7v";
-  };
-
-  propagatedBuildInputs = [ (requests.override { urllib3 = urllib3.override {
-    pyopenssl = null;
-    cryptography = null;
-  };}) ];
-
-  meta = {
-    description = "A library for interacting with Browsermob Proxy";
-    homepage = "http://oss.theautomatedtester.co.uk/browsermob-proxy-py";
-    license = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/cachey/default.nix b/pkgs/development/python-modules/cachey/default.nix
new file mode 100644
index 00000000000..aff819adcad
--- /dev/null
+++ b/pkgs/development/python-modules/cachey/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, typing-extensions
+, heapdict
+, pytestCheckHook
+, pythonOlder
+}: buildPythonPackage rec {
+  pname = "cachey";
+  version = "0.2.1";
+  format = "setuptools";
+  disabled = pythonOlder "3.6";
+  src = fetchFromGitHub {
+    owner = "dask";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-5USmuufrrWtmgibpfkjo9NtgN30hdl8plJfythmxM4s=";
+  };
+  propagatedBuildInputs = [ typing-extensions heapdict ];
+  checkInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [
+    "cachey"
+  ];
+  meta = with lib; {
+    description = "Caching based on computation time and storage space";
+    homepage = "https://github.com/dask/cachey/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/cairocffi/0_9.nix b/pkgs/development/python-modules/cairocffi/0_9.nix
deleted file mode 100644
index 84c1767bc29..00000000000
--- a/pkgs/development/python-modules/cairocffi/0_9.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-# FIXME: make gdk-pixbuf dependency optional
-{ stdenv
-, buildPythonPackage
-, pythonOlder
-, fetchPypi
-, lib
-, substituteAll
-, makeFontsConf
-, freefont_ttf
-, pytest
-, pytest-runner
-, glibcLocales
-, cairo
-, cffi
-, withXcffib ? false, xcffib
-, python
-, glib
-, gdk-pixbuf
-}@args:
-
-import ./generic.nix ({
-  version = "0.9.0";
-  sha256 = "15386c3a9e08823d6826c4491eaccc7b7254b1dc587a3b9ce60c350c3f990337";
-  dlopen_patch = ./dlopen-paths-0.9.patch;
-  inherit withXcffib;
-} // args)
diff --git a/pkgs/development/python-modules/cairocffi/dlopen-paths-0.9.patch b/pkgs/development/python-modules/cairocffi/dlopen-paths-0.9.patch
deleted file mode 100644
index 307cb428c07..00000000000
--- a/pkgs/development/python-modules/cairocffi/dlopen-paths-0.9.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-commit 705dc9a55bd160625d9996e63fc7dc532d0ad0ab
-Author: Alexander V. Nikolaev <avn@avnik.info>
-Date:   Sat Feb 6 08:09:06 2016 +0200
-
-    Patch dlopen() to allow direct paths to all required libs
-
-    This patch is NixOS specific
-
-diff --git a/cairocffi/__init__.py b/cairocffi/__init__.py
-index 718aa7f..1a1dcff 100644
---- a/cairocffi/__init__.py
-+++ b/cairocffi/__init__.py
-@@ -27,20 +27,22 @@ VERSION = '0.7.2'
- version = '1.10.0'
- version_info = (1, 10, 0)
-
-+# Use hardcoded soname, because ctypes.util use gcc/objdump which shouldn't be required for runtime
-+_LIBS = {
-+    'cairo': '@cairo@/lib/libcairo@ext@',
-+    'glib-2.0': '@glib@/lib/libglib-2.0@ext@',
-+    'gobject-2.0': '@glib@/lib/libgobject-2.0@ext@',
-+    'gdk_pixbuf-2.0': '@gdk_pixbuf@/lib/libgdk_pixbuf-2.0@ext@',
-+}
-
--def dlopen(ffi, *names):
-+def dlopen(ffi, name, *names):
-     """Try various names for the same library, for different platforms."""
--    for name in names:
--        for lib_name in [name, 'lib' + name]:
--            try:
--                path = ctypes.util.find_library(lib_name)
--                if path:
--                    lib = ffi.dlopen(path)
--                    if lib:
--                        return lib
--            except OSError:
--                pass
--    raise OSError("dlopen() failed to load a library: %s" % ' / '.join(names))
-+    path = _LIBS.get(name, None)
-+    if path:
-+        lib = ffi.dlopen(path)
-+        if lib:
-+            return lib
-+    raise OSError("dlopen() failed to load a library: %s as %s" % (name, path))
-
-
- cairo = dlopen(ffi, 'cairo', 'cairo-2')
diff --git a/pkgs/development/python-modules/cairosvg/1_x.nix b/pkgs/development/python-modules/cairosvg/1_x.nix
deleted file mode 100644
index 3e1a67f8282..00000000000
--- a/pkgs/development/python-modules/cairosvg/1_x.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub, cairocffi, nose, fontconfig
-, cssselect2, defusedxml, pillow, tinycss2 }:
-
-# CairoSVG 2.x dropped support for Python 2 so offer CairoSVG 1.x as an
-# alternative
-buildPythonPackage rec {
-  pname = "CairoSVG";
-  version = "1.0.22";
-
-  # PyPI doesn't include tests so use GitHub
-  src = fetchFromGitHub {
-    owner = "Kozea";
-    repo = pname;
-    rev = version;
-    sha256 = "15z0cag5s79ghhrlgs5xc9ayvzzdr3v8151vf6k819f1drsfjfxl";
-  };
-
-  propagatedBuildInputs = [ cairocffi ];
-
-  checkInputs = [ nose fontconfig cssselect2 defusedxml pillow tinycss2 ];
-
-  # Almost all tests just fail. Not sure how to fix them.
-  doCheck = false;
-
-  # checkInputs = [ nose fontconfig cssselect2 defusedxml pillow tinycss2 ];
-
-  # checkPhase = ''
-  #   FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf nosetests .
-  # '';
-
-  meta = with lib; {
-    homepage = "https://cairosvg.org";
-    license = licenses.lgpl3;
-    description = "SVG converter based on Cairo";
-    maintainers = with maintainers; [ jluttine ];
-  };
-}
diff --git a/pkgs/development/python-modules/cddb/default.nix b/pkgs/development/python-modules/cddb/default.nix
deleted file mode 100644
index 55d659376c6..00000000000
--- a/pkgs/development/python-modules/cddb/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib, stdenv
-, buildPythonPackage
-, pkgs
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "CDDB";
-  version = "1.4";
-  disabled = isPy3k;
-
-  buildInputs = lib.optionals stdenv.isDarwin [ pkgs.darwin.apple_sdk.frameworks.IOKit ];
-
-  src = pkgs.fetchurl {
-    url = "http://cddb-py.sourceforge.net/${pname}-${version}.tar.gz";
-    sha256 = "098xhd575ibvdx7i3dny3lwi851yxhjg2hn5jbbgrwj833rg5l5w";
-  };
-
-  meta = with lib; {
-    homepage = "http://cddb-py.sourceforge.net/";
-    description = "CDDB and FreeDB audio CD track info access";
-    license = licenses.gpl2Plus;
-  };
-
-}
diff --git a/pkgs/development/python-modules/cdecimal/default.nix b/pkgs/development/python-modules/cdecimal/default.nix
deleted file mode 100644
index cf889050590..00000000000
--- a/pkgs/development/python-modules/cdecimal/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, buildPythonPackage, fetchurl, isPy3k }:
-
-buildPythonPackage rec {
-  pname = "cdecimal";
-  version = "2.3";
-
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url="http://www.bytereef.org/software/mpdecimal/releases/${pname}-${version}.tar.gz";
-    sha256 = "d737cbe43ed1f6ad9874fb86c3db1e9bbe20c0c750868fde5be3f379ade83d8b";
-  };
-
-  # Upstream tests are not included s. a. http://www.bytereef.org/mpdecimal/testing.html
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Fast drop-in replacement for decimal.py";
-    homepage    = "http://www.bytereef.org/mpdecimal/";
-    license     = licenses.bsd2;
-    maintainers = [ maintainers.udono ];
-  };
-}
diff --git a/pkgs/development/python-modules/cherrypy/17.nix b/pkgs/development/python-modules/cherrypy/17.nix
deleted file mode 100644
index 2ae180a8bae..00000000000
--- a/pkgs/development/python-modules/cherrypy/17.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi
-, setuptools-scm
-, cheroot, contextlib2, portend, routes, six, zc_lockfile
-, backports_unittest-mock, objgraph, pathpy, pytest, pytest-cov, backports_functools_lru_cache, requests-toolbelt
-}:
-
-buildPythonPackage rec {
-  pname = "cherrypy";
-  version = "17.4.2";
-
-  src = fetchPypi {
-    pname = "CherryPy";
-    inherit version;
-    sha256 = "ef1619ad161f526745d4f0e4e517753d9d985814f1280e330661333d2ba05cdf";
-  };
-
-  propagatedBuildInputs = [
-    cheroot contextlib2 portend routes six zc_lockfile
-  ];
-
-  nativeBuildInputs = [ setuptools-scm ];
-
-  checkInputs = [
-    backports_unittest-mock objgraph pathpy pytest pytest-cov backports_functools_lru_cache requests-toolbelt
-  ];
-
-  checkPhase = ''
-    pytest ${lib.optionalString stdenv.isDarwin "--ignore=cherrypy/test/test_wsgi_unix_socket.py"}
-  '';
-
-  meta = with lib; {
-    homepage = "https://www.cherrypy.org";
-    description = "A pythonic, object-oriented HTTP framework";
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/chex/default.nix b/pkgs/development/python-modules/chex/default.nix
new file mode 100644
index 00000000000..bb873f2c3bf
--- /dev/null
+++ b/pkgs/development/python-modules/chex/default.nix
@@ -0,0 +1,50 @@
+{ absl-py
+, buildPythonPackage
+, dm-tree
+, fetchFromGitHub
+, jax
+, jaxlib
+, lib
+, numpy
+, pytestCheckHook
+, toolz
+}:
+
+buildPythonPackage rec {
+  pname = "chex";
+  # As of 2021-12-29, the latest official version has broken tests with jax 0.2.26:
+  # `AttributeError: module 'jax.interpreters.xla' has no attribute 'xb'`
+  version = "unstable-2021-12-16";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "deepmind";
+    repo = pname;
+    rev = "5adc10e0b4218f8ec775567fca38b68bbad42a3a";
+    sha256 = "00xib6zv9pwid2q7wcr109qj3fa3g3b852skz8444kw7r0qxy7z3";
+  };
+
+  propagatedBuildInputs = [
+    absl-py
+    dm-tree
+    jax
+    numpy
+    toolz
+  ];
+
+  pythonImportsCheck = [
+    "chex"
+  ];
+
+  checkInputs = [
+    jaxlib
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Chex is a library of utilities for helping to write reliable JAX code.";
+    homepage = "https://github.com/deepmind/chex";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ndl ];
+  };
+}
diff --git a/pkgs/development/python-modules/cliapp/default.nix b/pkgs/development/python-modules/cliapp/default.nix
deleted file mode 100644
index e410a37fcb4..00000000000
--- a/pkgs/development/python-modules/cliapp/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchgit
-, sphinx
-, isPy3k
-}:
-
-buildPythonPackage {
-  pname = "cliapp";
-  version = "1.20150305";
-  disabled = isPy3k;
-
-  src = fetchgit {
-      url = "http://git.liw.fi/cgi-bin/cgit/cgit.cgi/cliapp";
-      rev = "569df8a5959cd8ef46f78c9497461240a5aa1123";
-      sha256 = "882c5daf933e4cf089842995efc721e54361d98f64e0a075e7373b734cd899f3";
-  };
-
-  buildInputs = [ sphinx ];
-
-  # error: invalid command 'test'
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://liw.fi/cliapp/";
-    description = "Python framework for Unix command line programs";
-    license = licenses.gpl2;
-    maintainers = [];
-  };
-
-}
diff --git a/pkgs/development/python-modules/closure-linter/default.nix b/pkgs/development/python-modules/closure-linter/default.nix
deleted file mode 100644
index 18782fb50bb..00000000000
--- a/pkgs/development/python-modules/closure-linter/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchgit
-, isPy3k
-, gflags
-}:
-
-/* There is a project called "closure-linter" on PyPI that is the
-   same as this, but it does not appear to be owned by Google.
-   So we're pulling from Google's GitHub repo instead. */
-buildPythonPackage {
-  pname = "closure-linter";
-  version = "2.3.19";
-
-  /* This project has no Python 3 support, as noted by
-     https://github.com/google/closure-linter/issues/81 */
-  disabled = isPy3k;
-
-  src = fetchgit {
-    url = "https://github.com/google/closure-linter";
-    rev = "5c27529075bb88bdc45e73008f496dec8438d658";
-    sha256 = "076c7q7pr7akfvq5y8lxr1ab81wwps07gw00igdkcxnc5k9dzxwc";
-  };
-
-  propagatedBuildInputs = [ gflags ];
-
-  meta = with lib; {
-    description = "Checks JavaScript files against Google's style guide.";
-    homepage = "https://developers.google.com/closure/utilities/";
-    license = with licenses; [ asl20 ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/cmdtest/default.nix b/pkgs/development/python-modules/cmdtest/default.nix
deleted file mode 100644
index 28d78203b6d..00000000000
--- a/pkgs/development/python-modules/cmdtest/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, cliapp
-, ttystatus
-, markdown
-, isPy3k
-, isPyPy
-}:
-
-buildPythonPackage rec {
-  pname = "cmdtest";
-  version = "0.32";
-  disabled = isPy3k || isPyPy;
-
-  src = fetchurl {
-    url = "http://code.liw.fi/debian/pool/main/c/cmdtest/cmdtest_${version}.orig.tar.xz";
-    sha256 = "0scc47h1nkmbm5zlvk9bsnsg64kb9r4xadchdinf4f1mph9qpgn6";
-  };
-
-  propagatedBuildInputs = [ cliapp ttystatus markdown ];
-
-  # TODO: cmdtest tests must be run before the buildPhase
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://liw.fi/cmdtest/";
-    description = "Black box tests Unix command line tools";
-    license = licenses.gpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/cogapp/default.nix b/pkgs/development/python-modules/cogapp/default.nix
index facbc320689..92dbe23cd91 100644
--- a/pkgs/development/python-modules/cogapp/default.nix
+++ b/pkgs/development/python-modules/cogapp/default.nix
@@ -14,7 +14,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A code generator for executing Python snippets in source files";
-    homepage = "http://nedbatchelder.com/code/cog";
+    homepage = "https://nedbatchelder.com/code/cog";
     license = licenses.mit;
     maintainers = with maintainers; [ lovek323 ];
   };
diff --git a/pkgs/development/python-modules/coilmq/default.nix b/pkgs/development/python-modules/coilmq/default.nix
deleted file mode 100644
index b21ea193cbf..00000000000
--- a/pkgs/development/python-modules/coilmq/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi
-, stompclient, python-daemon, redis, pid, pytest, six, click, coverage
-, sqlalchemy }:
-
-buildPythonPackage rec {
-  pname = "CoilMQ";
-  version = "1.0.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "4cbfeb5ed2459df14902c1380157be6267702b1271682924cd316ccad8a29d1d";
-  };
-
-  propagatedBuildInputs = [ stompclient python-daemon redis pid ];
-  buildInputs = [ pytest six click coverage sqlalchemy ];
-
-  # The teste data is not included in the distribution
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Simple, lightweight, and easily extensible STOMP message broker";
-    homepage = "https://github.com/hozn/coilmq/";
-    license = licenses.asl20;
-  };
-}
diff --git a/pkgs/development/python-modules/convertdate/2.2.x.nix b/pkgs/development/python-modules/convertdate/2.2.x.nix
deleted file mode 100644
index 1145a61ca4f..00000000000
--- a/pkgs/development/python-modules/convertdate/2.2.x.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pymeeus
-, pytz
-, pytestCheckHook
-}:
-
-buildPythonPackage rec {
-  pname = "convertdate";
-  version = "2.2.2";
-
-  # Tests are not available in the PyPI tarball so use GitHub instead.
-  src = fetchFromGitHub {
-    owner = "fitnr";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "07x1j6jgkmrzdpv2lhpp4n16621mpmlylvwdwsggdjivhzvc3x9q";
-  };
-
-  propagatedBuildInputs = [
-    pymeeus
-    pytz
-  ];
-
-  checkInputs = [
-    pytestCheckHook
-  ];
-
-  meta = with lib; {
-    homepage = "https://github.com/fitnr/convertdate";
-    description = "Utils for converting between date formats and calculating holidays";
-    license = licenses.mit;
-    maintainers = with maintainers; [ jluttine ];
-  };
-}
diff --git a/pkgs/development/python-modules/coverage/default.nix b/pkgs/development/python-modules/coverage/default.nix
index 5a7fe9a534e..f93d32d392f 100644
--- a/pkgs/development/python-modules/coverage/default.nix
+++ b/pkgs/development/python-modules/coverage/default.nix
@@ -19,7 +19,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "Code coverage measurement for python";
-    homepage = "http://nedbatchelder.com/code/coverage/";
+    homepage = "https://coverage.readthedocs.io/";
     license = lib.licenses.bsd3;
   };
 }
diff --git a/pkgs/development/python-modules/cvxpy/default.nix b/pkgs/development/python-modules/cvxpy/default.nix
index 6fc56c85e9e..79ed1ebac5f 100644
--- a/pkgs/development/python-modules/cvxpy/default.nix
+++ b/pkgs/development/python-modules/cvxpy/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "cvxpy";
-  version = "1.1.17";
+  version = "1.1.18";
   format = "pyproject";
 
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-M5fTuJ13Dqnw/DWbHJs6/t5qDTvqHP8g4mU7E0Uc24o=";
+    sha256 = "sha256-W67+Hy7Wk3dJspNYbGzk9C7TDniQIj92Ycyyu333C+8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/darcsver/default.nix b/pkgs/development/python-modules/darcsver/default.nix
deleted file mode 100644
index c46337981bd..00000000000
--- a/pkgs/development/python-modules/darcsver/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, mock }:
-
-buildPythonPackage rec {
-  pname = "darcsver";
-  version = "1.7.4";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1yb1c3jxqvy4r3qiwvnb86qi5plw6018h15r3yk5ji3nk54qdcb6";
-  };
-
-  buildInputs = [ mock ];
-
-  # Note: We don't actually need to provide Darcs as a build input.
-  # Darcsver will DTRT when Darcs isn't available.  See news.gmane.org
-  # http://thread.gmane.org/gmane.comp.file-systems.tahoe.devel/3200 for a
-  # discussion.
-
-  # AttributeError: 'module' object has no attribute 'test_darcsver'
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Darcsver, generate a version number from Darcs history";
-    homepage = "https://pypi.python.org/pypi/darcsver";
-    license = "BSD-style";
-  };
-}
diff --git a/pkgs/development/python-modules/dateparser/0.x.nix b/pkgs/development/python-modules/dateparser/0.x.nix
deleted file mode 100644
index 35125453e78..00000000000
--- a/pkgs/development/python-modules/dateparser/0.x.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, mock
-, parameterized
-, pytestCheckHook
-, python-dateutil
-, pytz
-, regex
-, tzlocal
-, convertdate
-, umalqurra
-, jdatetime
-, ruamel-yaml
-}:
-
-buildPythonPackage rec {
-  pname = "dateparser";
-  version = "0.7.6";
-
-  src = fetchFromGitHub {
-    owner = "scrapinghub";
-    repo = "dateparser";
-    rev = "v${version}";
-    sha256 = "0j3sm4hlx7z0ci5fnjq5n9i02vvlfz0wxa889ydryfknjhy5apqw";
-  };
-
-  checkInputs = [
-    mock
-    parameterized
-    pytestCheckHook
-  ];
-
-  pytestFlagsArray = [ "tests" ];
-
-  disabledTestPaths = [
-    "tests/test_dateparser_data_integrity.py" # ImportError: No module named ruamel.yaml
-  ];
-
-  propagatedBuildInputs = [
-    # install_requires
-    python-dateutil pytz regex tzlocal
-    # extra_requires
-    convertdate umalqurra jdatetime ruamel-yaml
-  ];
-
-  pythonImportsCheck = [ "dateparser" ];
-
-  meta = with lib; {
-    description = "Date parsing library designed to parse dates from HTML pages";
-    homepage = "https://github.com/scrapinghub/dateparser";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ dotlambda ];
-  };
-}
diff --git a/pkgs/development/python-modules/deemix/default.nix b/pkgs/development/python-modules/deemix/default.nix
index f7b2ef59779..cf54f6facf8 100644
--- a/pkgs/development/python-modules/deemix/default.nix
+++ b/pkgs/development/python-modules/deemix/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "deemix";
-  version = "3.6.1";
+  version = "3.6.4";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-oLVCh268TlImOff75m3oSy0dPJi7qrOQ4YOf6rj105M=";
+    sha256 = "268617b3ff9346ae51a063cbdb820c1f591cbadc1cf2fafd201dc671e721c1dd";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/deepdish/default.nix b/pkgs/development/python-modules/deepdish/default.nix
new file mode 100644
index 00000000000..6ae9316a0f6
--- /dev/null
+++ b/pkgs/development/python-modules/deepdish/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, fetchPypi
+, buildPythonPackage
+, numpy
+, scipy
+, tables
+}:
+
+buildPythonPackage rec {
+  pname = "deepdish";
+  version = "0.3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1wqzwh3y0mjdyba5kfbvlamn561d3afz50zi712c7klkysz3mzva";
+  };
+
+  propagatedBuildInputs = [
+    numpy
+    scipy
+    tables
+  ];
+
+  pythonImportsCheck = [
+    "deepdish"
+  ];
+
+  # checkInputs = [
+  #   pandas
+  # ];
+
+  # The tests are broken: `ModuleNotFoundError: No module named 'deepdish.six.conf'`
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Flexible HDF5 saving/loading and other data science tools from the University of Chicago.";
+    homepage = "https://github.com/uchicago-cs/deepdish";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ndl ];
+  };
+}
diff --git a/pkgs/development/python-modules/deezer-py/default.nix b/pkgs/development/python-modules/deezer-py/default.nix
index 66648f058fb..648f0e3f0fc 100644
--- a/pkgs/development/python-modules/deezer-py/default.nix
+++ b/pkgs/development/python-modules/deezer-py/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "deezer-py";
-  version = "1.3.0";
+  version = "1.3.2";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2e38f02b6b8809907d3fb419d54c040bd176ec921b2b226a716fe7ebb456bde4";
+    sha256 = "sha256-G4GREc+PWvaphnOuzBePraj4pHgmhhKqsyVHKOPwGik=";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/development/python-modules/defcon/default.nix b/pkgs/development/python-modules/defcon/default.nix
index 845993be711..f40ba374d03 100644
--- a/pkgs/development/python-modules/defcon/default.nix
+++ b/pkgs/development/python-modules/defcon/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonPackage rec {
   pname = "defcon";
-  version = "0.9.0";
+  version = "0.10.0";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "140f51da51e9630a9fa11dfd34376c4e29785fdb0bddc2e371df5b36bec17b76";
+    sha256 = "a009862a0bc3f41f2b1a1b1f80d6aeedb3a17ed77d598da09f5a1bd93e970b3c";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/deskcon/default.nix b/pkgs/development/python-modules/deskcon/default.nix
deleted file mode 100644
index a3e061ce3af..00000000000
--- a/pkgs/development/python-modules/deskcon/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, buildPythonPackage
-, pyopenssl
-, pkgs
-, isPy3k
-, python
-}:
-
-buildPythonPackage {
-  pname = "deskcon";
-  version = "0.3";
-  disabled = isPy3k;
-
-  src = pkgs.fetchFromGitHub {
-    owner= "screenfreeze";
-    repo = "deskcon-desktop";
-    rev = "267804122188fa79c37f2b21f54fe05c898610e6";
-    sha256 ="0i1dd85ls6n14m9q7lkympms1w3x0pqyaxvalq82s4xnjdv585j3";
-  };
-
-  dontBuild = true;
-  doCheck = false;
-
-  pythonPath = [ pyopenssl pkgs.gtk3 ];
-
-  installPhase = ''
-    substituteInPlace server/deskcon-server --replace "python2" "python"
-
-    mkdir -p $out/bin
-    mkdir -p $out/lib/${python.libPrefix}/site-packages
-    cp -r "server/"* $out/lib/${python.libPrefix}/site-packages
-    mv $out/lib/${python.libPrefix}/site-packages/deskcon-server $out/bin/deskcon-server
-
-    wrapPythonProgramsIn $out/bin "$out $pythonPath"
-  '';
-
-  meta = with lib; {
-    description = "Integrates an Android device into a desktop";
-    homepage = "https://github.com/screenfreeze/deskcon-desktop";
-    license = licenses.gpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/django-statici18n/default.nix b/pkgs/development/python-modules/django-statici18n/default.nix
index 7282cf3b987..78c807903c4 100644
--- a/pkgs/development/python-modules/django-statici18n/default.nix
+++ b/pkgs/development/python-modules/django-statici18n/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "django-statici18n";
-  version = "2.1.1";
+  version = "2.2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5c85192fa95e3ef3727517ac104add8959fc0a54be3d13440a8a3319fddbc778";
+    sha256 = "dbcdac190d93e0b4eabcab8875c8eb68795eceb442f926843ec5cbe1432fe628";
   };
 
   propagatedBuildInputs = [ django django_appconf ];
diff --git a/pkgs/development/python-modules/django_evolution/default.nix b/pkgs/development/python-modules/django_evolution/default.nix
deleted file mode 100644
index 16358c54c1a..00000000000
--- a/pkgs/development/python-modules/django_evolution/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, django
-}:
-
-buildPythonPackage rec {
-  pname = "django_evolution";
-  version = "2.1.2";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "28bad07b5e29a0ea4bd9727c6927cbee25d349d21606a553a0c748fbee0c073c";
-  };
-
-  propagatedBuildInputs = [ django ];
-
-  meta = with lib; {
-    description = "A database schema evolution tool for the Django web framework";
-    homepage = "https://github.com/beanbaginc/django-evolution";
-    license = licenses.bsd0;
-    broken = true;
-  };
-
-}
diff --git a/pkgs/development/python-modules/dm-tree/cmake.patch b/pkgs/development/python-modules/dm-tree/cmake.patch
new file mode 100644
index 00000000000..e5698f457bc
--- /dev/null
+++ b/pkgs/development/python-modules/dm-tree/cmake.patch
@@ -0,0 +1,141 @@
+diff --git a/tree/CMakeLists.txt b/tree/CMakeLists.txt
+index 8f9946c..b9d6e9b 100644
+--- a/tree/CMakeLists.txt
++++ b/tree/CMakeLists.txt
+@@ -50,70 +50,80 @@ if(APPLE)
+   set (CMAKE_FIND_FRAMEWORK LAST)
+ endif()
+ 
+-# Fetch pybind to be able to use pybind11_add_module symbol.
+-set(PYBIND_VER v2.6.2)
+-include(FetchContent)
+-FetchContent_Declare(
+-  pybind11
+-  GIT_REPOSITORY https://github.com/pybind/pybind11
+-  GIT_TAG        ${PYBIND_VER}
+-)
+-if(NOT pybind11_POPULATED)
+-    FetchContent_Populate(pybind11)
+-    add_subdirectory(${pybind11_SOURCE_DIR} ${pybind11_BINARY_DIR})
+-    include_directories(${pybind11_INCLUDE_DIR})
+-endif()
+-
+-# Needed to disable Abseil tests.
+-set (BUILD_TESTING OFF)
+-
+-# Include abseil-cpp.
+-set(ABSEIL_VER 20210324.2)
+-include(ExternalProject)
+-set(ABSEIL_CMAKE_ARGS
+-    "-DCMAKE_INSTALL_PREFIX=${CMAKE_SOURCE_DIR}/abseil-cpp"
+-    "-DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD}"
+-    "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}"
+-    "-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}"
+-    "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}"
+-    "-DCMAKE_POSITION_INDEPENDENT_CODE=${CMAKE_POSITION_INDEPENDENT_CODE}"
+-    "-DLIBRARY_OUTPUT_PATH=${CMAKE_SOURCE_DIR}/abseil-cpp/lib")
+-if(DEFINED CMAKE_OSX_ARCHITECTURES)
+-    set(ABSEIL_CMAKE_ARGS
+-        ${ABSEIL_CMAKE_ARGS}
+-        "-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}")
++find_package(pybind11 CONFIG)
++
++if (NOT pybind11_FOUND)
++  # Fetch pybind to be able to use pybind11_add_module symbol.
++  set(PYBIND_VER v2.6.2)
++  include(FetchContent)
++  FetchContent_Declare(
++    pybind11
++    GIT_REPOSITORY https://github.com/pybind/pybind11
++    GIT_TAG        ${PYBIND_VER}
++  )
++  if(NOT pybind11_POPULATED)
++      FetchContent_Populate(pybind11)
++      add_subdirectory(${pybind11_SOURCE_DIR} ${pybind11_BINARY_DIR})
++      include_directories(${pybind11_INCLUDE_DIR})
++  endif()
+ endif()
+-ExternalProject_Add(abseil-cpp
+-  GIT_REPOSITORY    https://github.com/abseil/abseil-cpp.git
+-  GIT_TAG           ${ABSEIL_VER}
+-  PREFIX            ${CMAKE_SOURCE_DIR}/abseil-cpp
+-  CMAKE_ARGS        ${ABSEIL_CMAKE_ARGS}
+-)
+-ExternalProject_Get_Property(abseil-cpp install_dir)
+-set(abseil_install_dir ${install_dir})
+-include_directories (${abseil_install_dir}/include)
+-
+ 
+ # Define pybind11 tree module.
+ pybind11_add_module(_tree tree.h tree.cc)
+-add_dependencies(_tree abseil-cpp)
+ 
+-if (WIN32 OR MSVC)
+-    set(ABSEIL_LIB_PREF "absl")
+-    set(LIB_SUFF "lib")
++find_package(absl)
++
++if (NOT absl_FOUND)
++  # Needed to disable Abseil tests.
++  set (BUILD_TESTING OFF)
++
++  # Include abseil-cpp.
++  set(ABSEIL_VER 20210324.2)
++  include(ExternalProject)
++  set(ABSEIL_CMAKE_ARGS
++      "-DCMAKE_INSTALL_PREFIX=${CMAKE_SOURCE_DIR}/abseil-cpp"
++      "-DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD}"
++      "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}"
++      "-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}"
++      "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}"
++      "-DCMAKE_POSITION_INDEPENDENT_CODE=${CMAKE_POSITION_INDEPENDENT_CODE}"
++      "-DLIBRARY_OUTPUT_PATH=${CMAKE_SOURCE_DIR}/abseil-cpp/lib")
++  if(DEFINED CMAKE_OSX_ARCHITECTURES)
++      set(ABSEIL_CMAKE_ARGS
++          ${ABSEIL_CMAKE_ARGS}
++          "-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}")
++  endif()
++  ExternalProject_Add(abseil-cpp
++    GIT_REPOSITORY    https://github.com/abseil/abseil-cpp.git
++    GIT_TAG           ${ABSEIL_VER}
++    PREFIX            ${CMAKE_SOURCE_DIR}/abseil-cpp
++    CMAKE_ARGS        ${ABSEIL_CMAKE_ARGS}
++  )
++  ExternalProject_Get_Property(abseil-cpp install_dir)
++  set(abseil_install_dir ${install_dir})
++  include_directories (${abseil_install_dir}/include)
++
++  add_dependencies(_tree abseil-cpp)
++
++  if (WIN32 OR MSVC)
++      set(ABSEIL_LIB_PREF "absl")
++      set(LIB_SUFF "lib")
++  else()
++      set(ABSEIL_LIB_PREF "libabsl")
++      set(LIB_SUFF "a")
++  endif()
++
++  # Link abseil static libs.
++  # We don't use find_library here to force cmake to build abseil before linking.
++  set(ABSEIL_LIBS int128 raw_hash_set raw_logging_internal strings throw_delegate)
++  foreach(ABSEIL_LIB IN LISTS ABSEIL_LIBS)
++    target_link_libraries(_tree PRIVATE
++        "${abseil_install_dir}/lib/${ABSEIL_LIB_PREF}_${ABSEIL_LIB}.${LIB_SUFF}")
++  endforeach()
+ else()
+-    set(ABSEIL_LIB_PREF "libabsl")
+-    set(LIB_SUFF "a")
++  target_link_libraries(_tree PRIVATE absl::int128 absl::raw_hash_set absl::raw_logging_internal absl::strings absl::throw_delegate)
+ endif()
+ 
+-# Link abseil static libs.
+-# We don't use find_library here to force cmake to build abseil before linking.
+-set(ABSEIL_LIBS int128 raw_hash_set raw_logging_internal strings throw_delegate)
+-foreach(ABSEIL_LIB IN LISTS ABSEIL_LIBS)
+-  target_link_libraries(_tree PRIVATE
+-      "${abseil_install_dir}/lib/${ABSEIL_LIB_PREF}_${ABSEIL_LIB}.${LIB_SUFF}")
+-endforeach()
+-
+ # Make the module private to tree package.
+ set_target_properties(_tree PROPERTIES OUTPUT_NAME tree/_tree)
+ 
diff --git a/pkgs/development/python-modules/dm-tree/default.nix b/pkgs/development/python-modules/dm-tree/default.nix
index 81eb101399a..307e932aae3 100644
--- a/pkgs/development/python-modules/dm-tree/default.nix
+++ b/pkgs/development/python-modules/dm-tree/default.nix
@@ -1,47 +1,56 @@
-{ autoPatchelfHook
+{ abseil-cpp
+, absl-py
+, attrs
 , buildPythonPackage
-, fetchPypi
-, isPy39
+, cmake
+, fetchFromGitHub
 , lib
-, six
-, stdenv
+, numpy
+, pybind11
+, wrapt
 }:
 
 buildPythonPackage rec {
   pname = "dm-tree";
-  version = "0.1.6";
-  format = "wheel";
-
-  # At the time of writing (8/19/21), there are releases for 3.6-3.9. Supporting
-  # all of them is a pain, so we focus on 3.9, the current nixpkgs python3
-  # version.
-  disabled = !isPy39;
-
-  src = fetchPypi {
-    inherit version format;
-    sha256 = "1f71dy5xa5ywa5chbdhpdf8k0w1v9cvpn3qyk8nnjm79j90la9c4";
-    pname = "dm_tree";
-    dist = "cp39";
-    python = "cp39";
-    abi = "cp39";
-    platform = "manylinux_2_24_x86_64";
+  # As of 2021-12-29, the latest stable version still builds with Bazel.
+  version = "unstable-2021-12-20";
+
+  src = fetchFromGitHub {
+    owner = "deepmind";
+    repo = "tree";
+    rev = "b452e5c2743e7489b4ba7f16ecd51c516d7cd8e3";
+    sha256 = "1r187xwpvnnj98lyasngcv3lbxz0ziihpl5dbnjbfbjr0kh6z0j9";
   };
 
-  # Prebuilt wheels are dynamically linked against things that nix can't find.
-  # Run `autoPatchelfHook` to automagically fix them.
-  nativeBuildInputs = [ autoPatchelfHook ];
-  # Dynamic link dependencies
-  buildInputs = [ stdenv.cc.cc ];
+  patches = [
+    ./cmake.patch
+  ];
+
+  dontUseCmakeConfigure = true;
+
+  nativeBuildInputs = [
+    cmake
+    pybind11
+  ];
+
+  buildInputs = [
+    abseil-cpp
+    pybind11
+  ];
 
-  propagatedBuildInputs = [ six ];
+  checkInputs = [
+    absl-py
+    attrs
+    numpy
+    wrapt
+  ];
 
   pythonImportsCheck = [ "tree" ];
 
   meta = with lib; {
     description = "Tree is a library for working with nested data structures.";
-    homepage    = "https://github.com/deepmind/tree";
-    license     = licenses.asl20;
-    maintainers = with maintainers; [ samuela ];
-    platforms = [ "x86_64-linux" ];
+    homepage = "https://github.com/deepmind/tree";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ samuela ndl ];
   };
 }
diff --git a/pkgs/development/python-modules/dnspython/1.nix b/pkgs/development/python-modules/dnspython/1.nix
deleted file mode 100644
index d4015f1f4ab..00000000000
--- a/pkgs/development/python-modules/dnspython/1.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-}:
-
-buildPythonPackage rec {
-  pname = "dnspython";
-  version = "1.16.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    extension = "zip";
-    sha256 = "36c5e8e38d4369a08b6780b7f27d790a292b2b08eea01607865bf0936c558e01";
-  };
-
-  # needs networking for some tests
-  doCheck = false;
-  pythonImportsCheck = [ "dns" ];
-
-  meta = with lib; {
-    description = "A DNS toolkit for Python";
-    homepage = "http://www.dnspython.org";
-    license = with licenses; [ isc ];
-  };
-}
diff --git a/pkgs/development/python-modules/dnspython/default.nix b/pkgs/development/python-modules/dnspython/default.nix
index 56e69aac044..e4a319b31a8 100644
--- a/pkgs/development/python-modules/dnspython/default.nix
+++ b/pkgs/development/python-modules/dnspython/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A DNS toolkit for Python";
-    homepage = "http://www.dnspython.org";
+    homepage = "https://www.dnspython.org";
     license = with licenses; [ isc ];
   };
 }
diff --git a/pkgs/development/python-modules/docstring-parser/default.nix b/pkgs/development/python-modules/docstring-parser/default.nix
new file mode 100644
index 00000000000..5408b11c7d8
--- /dev/null
+++ b/pkgs/development/python-modules/docstring-parser/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, wheel
+, pytest
+}: buildPythonPackage rec {
+  pname = "docstring-parser";
+  version = "0.12";
+  src = fetchFromGitHub {
+    owner = "rr-";
+    repo = "docstring_parser";
+    rev = "${version}";
+    sha256 = "sha256-hQuPJQrGvDs4dJrMLSR4sSnqy45xrF2ufinBG+azuCg=";
+  };
+  nativeBuildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [ pytest setuptools wheel ];
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  meta = with lib; {
+    description = "Parse Python docstrings in various flavors. ";
+    homepage = "https://github.com/rr-/docstring_parser";
+    license = licenses.mit;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/dtopt/default.nix b/pkgs/development/python-modules/dtopt/default.nix
deleted file mode 100644
index a5d4675f993..00000000000
--- a/pkgs/development/python-modules/dtopt/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "dtopt";
-  version = "0.1";
-  # Test contain Python 2 print
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "06ae07a12294a7ba708abaa63f838017d1a2faf6147a1e7a14ca4fa28f86da7f";
-  };
-
-  meta = with lib; {
-    description = "Add options to doctest examples while they are running";
-    homepage = "https://pypi.python.org/pypi/dtopt";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/duckdb/default.nix b/pkgs/development/python-modules/duckdb/default.nix
index fd360bfbd12..6e47e4eb389 100644
--- a/pkgs/development/python-modules/duckdb/default.nix
+++ b/pkgs/development/python-modules/duckdb/default.nix
@@ -4,31 +4,23 @@
 , numpy
 , pandas
 , pybind11
+, mypy
 , setuptools-scm
-, pytest-runner
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "duckdb";
   inherit (duckdb) version src;
+  format = "setuptools";
 
-  # build attempts to use git to figure out its own version. don't want to add
-  # the dependency for something pointless.
-  postPatch = ''
-    substituteInPlace scripts/package_build.py --replace \
-      "'git'" "'false'"
-  '';
+  sourceRoot = "source/tools/pythonpkg";
 
-  postConfigure = ''
-    cd tools/pythonpkg
-    export SETUPTOOLS_SCM_PRETEND_VERSION=${version}
-  '';
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
   nativeBuildInputs = [
     pybind11
     setuptools-scm
-    pytest-runner
   ];
 
   propagatedBuildInputs = [
@@ -37,10 +29,13 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
+    mypy
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "duckdb" ];
+  pythonImportsCheck = [
+    "duckdb"
+  ];
 
   meta = with lib; {
     description = "Python binding for DuckDB";
diff --git a/pkgs/development/python-modules/dulwich/0_19.nix b/pkgs/development/python-modules/dulwich/0_19.nix
deleted file mode 100644
index 9a09c7cc75d..00000000000
--- a/pkgs/development/python-modules/dulwich/0_19.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi
-, urllib3, certifi
-, gevent, geventhttpclient, mock, fastimport
-, git, glibcLocales }:
-
-buildPythonPackage rec {
-  version = "0.19.16";
-  pname = "dulwich";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "f74561c448bfb6f04c07de731c1181ae4280017f759b0bb04fa5770aa84ca850";
-  };
-
-  LC_ALL = "en_US.UTF-8";
-
-  propagatedBuildInputs = [ urllib3 certifi ];
-
-  # Only test dependencies
-  checkInputs = [ git glibcLocales gevent geventhttpclient mock fastimport ];
-
-  doCheck = !stdenv.isDarwin;
-
-  meta = with lib; {
-    description = "Simple Python implementation of the Git file formats and protocols";
-    homepage = "https://www.dulwich.io/";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ koral ];
-  };
-}
diff --git a/pkgs/development/python-modules/emv/default.nix b/pkgs/development/python-modules/emv/default.nix
index a962151aeaf..d688e1e22e6 100644
--- a/pkgs/development/python-modules/emv/default.nix
+++ b/pkgs/development/python-modules/emv/default.nix
@@ -1,31 +1,29 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, click, enum-compat, pyscard, pycountry, terminaltables
-, pytestCheckHook, pythonOlder
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, click
+, pyscard
+, pycountry
+, terminaltables
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "emv";
-  version = "1.0.13";
+  version = "1.0.14";
+  format = "setuptools";
+
   disabled = pythonOlder "3.4";
 
   src = fetchFromGitHub {
     owner = "russss";
     repo = "python-emv";
     rev = "v${version}";
-    hash = "sha256-Jobw8OyKMaLfVsvMadrUrg5BijFo9G6kjgjhGIV8H1M=";
+    hash = "sha256-MnaeQZ0rA3i0CoUA6HgJQpwk5yo4rm9e+pc5XzRd1eg=";
   };
 
-  postPatch = ''
-    # argparse is part of the standard libary since python 2.7/3.2
-    sed -i '/argparse==1.4.0/d' setup.py
-
-    substituteInPlace setup.py \
-      --replace "click==7.1.2" "click" \
-      --replace "pyscard==2.0.0" "pyscard"
-  '';
-
   propagatedBuildInputs = [
-    enum-compat
     click
     pyscard
     pycountry
@@ -36,9 +34,21 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace '"enum-compat==0.0.3",' "" \
+      --replace '"argparse==1.4.0",' "" \
+      --replace "click==7.1.2" "click" \
+      --replace "pyscard==2.0.0" "pyscard"
+  '';
+
+  pythonImportsCheck = [
+    "emv"
+  ];
+
   meta = with lib; {
-    homepage = "https://github.com/russss/python-emv";
     description = "Implementation of the EMV chip-and-pin smartcard protocol";
+    homepage = "https://github.com/russss/python-emv";
     license = licenses.mit;
     maintainers = with maintainers; [ lukegb ];
   };
diff --git a/pkgs/development/python-modules/eventlib/default.nix b/pkgs/development/python-modules/eventlib/default.nix
deleted file mode 100644
index 4d4bff85842..00000000000
--- a/pkgs/development/python-modules/eventlib/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, buildPythonPackage
-, isPy3k
-, fetchdarcs
-, greenlet
-}:
-
-buildPythonPackage rec {
-  pname = "python-eventlib";
-  version = "0.2.4";
-  # Judging from SyntaxError
-  disabled = isPy3k;
-
-  src = fetchdarcs {
-    url = "http://devel.ag-projects.com/repositories/${pname}";
-    rev = "release-${version}";
-    sha256 = "1w1axsm6w9bl2smzxmyk4in1lsm8gk8ma6y183m83cpj66aqxg4z";
-  };
-
-  propagatedBuildInputs = [ greenlet ];
-
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Eventlib bindings for python";
-    homepage    = "https://ag-projects.com/";
-    license     = licenses.lgpl2;
-  };
-
-}
diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix
index 85594a2c4c2..f0f10a88c7d 100644
--- a/pkgs/development/python-modules/fastapi/default.nix
+++ b/pkgs/development/python-modules/fastapi/default.nix
@@ -14,25 +14,23 @@
 , python-jose
 , sqlalchemy
 , trio
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "fastapi";
-  version = "0.70.0";
+  version = "0.70.1";
   format = "flit";
 
+  disabled = pythonOlder "3.6";
+
   src = fetchFromGitHub {
     owner = "tiangolo";
-    repo = "fastapi";
+    repo = pname;
     rev = version;
-    sha256 = "sha256-mLI+w9PeewnwUMuUnXj6J2r/3shinjlwXMnhNcQlhrM=";
+    sha256 = "sha256-iwjxcAe8h38PPTTDGCxIJSB7zCS0FA0gOcKUjPpk3yg=";
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "starlette ==" "starlette >="
-  '';
-
   propagatedBuildInputs = [
     starlette
     pydantic
@@ -52,16 +50,22 @@ buildPythonPackage rec {
     trio
   ];
 
-  # disabled tests require orjson which requires rust nightly
-
-  # ignoring deprecation warnings to avoid test failure from
-  # tests/test_tutorial/test_testing/test_tutorial001.py
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "starlette ==" "starlette >="
+  '';
 
   pytestFlagsArray = [
-    "--ignore=tests/test_default_response_class.py"
+    # ignoring deprecation warnings to avoid test failure from
+    # tests/test_tutorial/test_testing/test_tutorial001.py
     "-W ignore::DeprecationWarning"
   ];
 
+  disabledTestPaths = [
+    # Disabled tests require orjson which requires rust nightly
+    "tests/test_default_response_class.py"
+  ];
+
   disabledTests = [
     "test_get_custom_response"
 
@@ -70,9 +74,13 @@ buildPythonPackage rec {
     "test_websocket_no_credentials"
   ];
 
+  pythonImportsCheck = [
+    "fastapi"
+  ];
+
   meta = with lib; {
+    description = "Web framework for building APIs";
     homepage = "https://github.com/tiangolo/fastapi";
-    description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production";
     license = licenses.mit;
     maintainers = with maintainers; [ wd15 ];
   };
diff --git a/pkgs/development/python-modules/faulthandler/default.nix b/pkgs/development/python-modules/faulthandler/default.nix
deleted file mode 100644
index f1588690a77..00000000000
--- a/pkgs/development/python-modules/faulthandler/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, fetchPypi, buildPythonPackage }:
-
-buildPythonPackage rec {
-  pname = "faulthandler";
-  version = "3.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "08ybjjdrfp01syckksxzivqhn6b0yhmc17kdxh77h0lg6rvgvk8y";
-  };
-
-  # This may be papering over a real failure where the env var activation route
-  # for faulthandler does not appear to work. That said, since all other tests
-  # pass and since this module is python 2 only (it was upstreamed into the
-  # interpreter itself as of python 3.3 and is disabled ) this just disables the
-  # test to fix the build. From inspecting Hydra logs and git bisect, the commit
-  # that broke it is this one:
-  # https://github.com/NixOS/nixpkgs/commit/90be4c2c7875c9487508d95b5c638d97e2903ada
-  patches = [ ./disable-env-test.patch ];
-
-  meta = with lib; {
-    description = "Dump the Python traceback";
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ sauyon ];
-    homepage = "https://faulthandler.readthedocs.io/";
-  };
-}
diff --git a/pkgs/development/python-modules/fdint/default.nix b/pkgs/development/python-modules/fdint/default.nix
deleted file mode 100644
index 413416c99a2..00000000000
--- a/pkgs/development/python-modules/fdint/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, cython
-, numpy
-, python
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  version = "2.0.2";
-  pname = "fdint";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "30db139684d362652670e2cd3206b5dd7b3b93b86c3aff37f4b4fd4a3f98aead";
-  };
-
-  buildInputs = [ cython ];
-  propagatedBuildInputs = [ numpy ];
-
-  # tests not included with pypi release
-  doCheck = false;
-
-  checkPhase = ''
-    ${python.interpreter} -m fdint.tests
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/scott-maddox/fdint";
-    description = "A free, open-source python package for quickly and precisely approximating Fermi-Dirac integrals";
-    license = licenses.mit;
-    maintainers = [ maintainers.costrouc ];
-  };
-}
diff --git a/pkgs/development/python-modules/feedparser/5.nix b/pkgs/development/python-modules/feedparser/5.nix
deleted file mode 100644
index 58cdad9884e..00000000000
--- a/pkgs/development/python-modules/feedparser/5.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-}:
-
-buildPythonPackage rec {
-  pname = "feedparser";
-  version = "5.2.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1ycva69bqssalhqg45rbrfipz3l6hmycszy26k0351fhq990c0xx";
-  };
-
-  # lots of networking failures
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://github.com/kurtmckee/feedparser";
-    description = "Universal feed parser";
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ domenkozar ];
-  };
-}
diff --git a/pkgs/development/python-modules/filebrowser_safe/default.nix b/pkgs/development/python-modules/filebrowser_safe/default.nix
index 0ffc8a06b52..d571f76f922 100644
--- a/pkgs/development/python-modules/filebrowser_safe/default.nix
+++ b/pkgs/development/python-modules/filebrowser_safe/default.nix
@@ -5,12 +5,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.0.0";
+  version = "1.1.0";
   pname = "filebrowser_safe";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1209a26abd5a085a6453e020513fd94e920bde3908a2bcf3fe0ad5e4292b943b";
+    sha256 = "14b6e0af9697f1d0f08508cc88bc8459273cd6453636cebe8504dccc80e926e4";
   };
 
   buildInputs = [ django ];
diff --git a/pkgs/development/python-modules/flashtext/default.nix b/pkgs/development/python-modules/flashtext/default.nix
index 52b54f4dcea..b0623bd18d5 100644
--- a/pkgs/development/python-modules/flashtext/default.nix
+++ b/pkgs/development/python-modules/flashtext/default.nix
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    homepage = "http://github.com/vi3k6i5/flashtext";
+    homepage = "https://github.com/vi3k6i5/flashtext";
     description = "Python package to replace keywords in sentences or extract keywords from sentences";
     maintainers = with maintainers; [ aanderse ];
     license = with licenses; [ mit ];
diff --git a/pkgs/development/python-modules/flask-ldap-login/default.nix b/pkgs/development/python-modules/flask-ldap-login/default.nix
deleted file mode 100644
index 08aa2efb8f2..00000000000
--- a/pkgs/development/python-modules/flask-ldap-login/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, buildPythonPackage, isPy3k, fetchFromGitHub, fetchpatch
-, flask, flask_wtf, flask_testing, ldap
-, mock, nose }:
-
-buildPythonPackage rec {
-  pname = "flask-ldap-login";
-  version = "0.3.4";
-  disabled = isPy3k;
-
-  src = fetchFromGitHub {
-    owner = "ContinuumIO";
-    repo = "flask-ldap-login";
-    rev = version;
-    sha256 = "1l6zahqhwn5g9fmhlvjv80288b5h2fk5mssp7amdkw5ysk570wzp";
-  };
-
-  patches = [
-    # Fix flask_wtf>=0.9.0 incompatibility. See https://github.com/ContinuumIO/flask-ldap-login/issues/41
-    (fetchpatch {
-      url = "https://github.com/ContinuumIO/flask-ldap-login/commit/ed08c03c818dc63b97b01e2e7c56862eaa6daa43.patch";
-      sha256 = "19pkhbldk8jq6m10kdylvjf1c8m84fvvj04v5qda4cjyks15aq48";
-    })
-  ];
-
-  checkInputs = [ nose mock flask_testing ];
-  propagatedBuildInputs = [ flask flask_wtf ldap ];
-
-  checkPhase = "nosetests -d";
-
-  meta = with lib; {
-    homepage = "https://github.com/ContinuumIO/flask-ldap-login";
-    description = "User session management for Flask";
-    license = licenses.mit;
-    platforms = platforms.all;
-    maintainers = with maintainers; [ mic92 ];
-  };
-}
diff --git a/pkgs/development/python-modules/flask-paginate/default.nix b/pkgs/development/python-modules/flask-paginate/default.nix
index db3a209d4d0..d23306be62b 100644
--- a/pkgs/development/python-modules/flask-paginate/default.nix
+++ b/pkgs/development/python-modules/flask-paginate/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "flask-paginate";
-  version = "2021.10.29";
+  version = "2021.12.28";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "660ba1451e4cb168d3a42ed63914fe507bb5c0b30c26a6286b923077bba2362b";
+    sha256 = "c722a25067d722483e24cde16ed987a822292ca758a213299e445694d2b5b587";
   };
 
   propagatedBuildInputs = [ flask ];
diff --git a/pkgs/development/python-modules/flup/default.nix b/pkgs/development/python-modules/flup/default.nix
deleted file mode 100644
index fa19d9bdf7a..00000000000
--- a/pkgs/development/python-modules/flup/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib
-, buildPythonPackage
-, isPy3k
-, fetchPypi
-}:
-
-buildPythonPackage rec {
-  pname = "flup";
-  version = "1.0.3";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "5eb09f26eb0751f8380d8ac43d1dfb20e1d42eca0fa45ea9289fa532a79cd159";
-  };
-
-  meta = with lib; {
-    homepage = "https://www.saddi.com/software/flup/";
-    description = "FastCGI Python module set";
-    license = licenses.bsd0;
-  };
-
-}
diff --git a/pkgs/development/python-modules/flux-led/default.nix b/pkgs/development/python-modules/flux-led/default.nix
index 9131ad24976..08bf77f703b 100644
--- a/pkgs/development/python-modules/flux-led/default.nix
+++ b/pkgs/development/python-modules/flux-led/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "flux-led";
-  version = "0.27.19";
+  version = "0.27.28";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "Danielhiversen";
     repo = "flux_led";
     rev = version;
-    sha256 = "sha256-QJCRBwsfQQzXQ7DDvzb9NKnZS2LqrQUygdzJ+ccjWt4=";
+    sha256 = "sha256-lm560jTafxMVNH4tXx7xov1bQMEYp3FFzJEK5K+ung0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/fontmath/default.nix b/pkgs/development/python-modules/fontmath/default.nix
index d9516ceb88b..c0e4bc85773 100644
--- a/pkgs/development/python-modules/fontmath/default.nix
+++ b/pkgs/development/python-modules/fontmath/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "fontMath";
-  version = "0.8.1";
+  version = "0.9.1";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0m2z2wwbxwljfcrg8hx4xq538adzcjpc352yqbfw0czbgs5ixmrr";
+    sha256 = "1c5e76e135409f49b15809d0ce94dfd00850f893f86d4d6a336808dbbf292700";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/fontparts/default.nix b/pkgs/development/python-modules/fontparts/default.nix
index 158806f1be8..9b9cc129c63 100644
--- a/pkgs/development/python-modules/fontparts/default.nix
+++ b/pkgs/development/python-modules/fontparts/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "fontParts";
-  version = "0.9.11";
+  version = "0.10.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "558a5f681fcf7ca0bb5a1c68917b5d9b61c77d517833a01ea1667773d13f4012";
+    sha256 = "794ada47e19ba41ef39b59719be312b127672bcb56bb7208dd3234d2bb3e8218";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/formbox/default.nix b/pkgs/development/python-modules/formbox/default.nix
new file mode 100644
index 00000000000..d099b745454
--- /dev/null
+++ b/pkgs/development/python-modules/formbox/default.nix
@@ -0,0 +1,26 @@
+{ lib, buildPythonPackage, pythonOlder, fetchFromSourcehut, bleach, markdown }:
+
+buildPythonPackage rec {
+  pname = "formbox";
+  version = "0.1.0";
+  format = "flit";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromSourcehut {
+    owner = "~cnx";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-6OzmYqUC3mmrAMeMExI4rdVGUoWrxRuBfjKFYbHUlgE=";
+  };
+
+  propagatedBuildInputs = [ bleach markdown ];
+  doCheck = false; # there's no test
+  pythonImportsCheck = [ "formbox" ];
+
+  meta = with lib; {
+    description = "A script to format mbox as HTML/XML";
+    homepage = "https://sr.ht/~cnx/formbox";
+    license = licenses.agpl3Plus;
+    maintainers = [ maintainers.McSinyx ];
+  };
+}
diff --git a/pkgs/development/python-modules/frozendict/default.nix b/pkgs/development/python-modules/frozendict/default.nix
index e1ab3d9da89..02579d97d28 100644
--- a/pkgs/development/python-modules/frozendict/default.nix
+++ b/pkgs/development/python-modules/frozendict/default.nix
@@ -18,6 +18,11 @@ buildPythonPackage rec {
     sha256 = "0189168749ddea8601afd648146c502533f93ae33840eb76cd71f694742623cd";
   };
 
+  postPatch = ''
+    # fixes build on non-x86_64 architectures
+    rm frozendict/src/3_9/cpython_src/Include/pyconfig.h
+  '';
+
   pythonImportsCheck = [
     "frozendict"
   ];
diff --git a/pkgs/development/python-modules/fudge/default.nix b/pkgs/development/python-modules/fudge/default.nix
deleted file mode 100644
index ba97b2e8f47..00000000000
--- a/pkgs/development/python-modules/fudge/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "fudge";
-  version = "1.1.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1p7g6hv9qxscbzjv2n5pczpkkp55mp3s56adfc912w9qpf3rv4nr";
-  };
-
-  checkInputs = [ nose ];
-
-  checkPhase = ''
-    nosetests -v
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/fudge-py/fudge";
-    description = "Replace real objects with fakes (mocks, stubs, etc) while testing";
-    license = licenses.mit;
-    maintainers = [ maintainers.costrouc ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/gateone/default.nix b/pkgs/development/python-modules/gateone/default.nix
deleted file mode 100644
index 5c45e875e5d..00000000000
--- a/pkgs/development/python-modules/gateone/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, buildPythonPackage
-, tornado
-, futures
-, html5lib
-, pkgs
-, isPy3k
-}:
-
-buildPythonPackage {
-  pname = "gateone";
-  version = "1.2-0d57c3";
-  disabled = isPy3k;
-
-  src = pkgs.fetchFromGitHub {
-    rev = "1d0e8037fbfb7c270f3710ce24154e24b7031bea";
-    owner= "liftoff";
-    repo = "GateOne";
-    sha256 = "1ghrawlqwv7wnck6alqpbwy9mpv0y21cw2jirrvsxaracmvgk6vv";
-  };
-
-  propagatedBuildInputs = [tornado futures html5lib pkgs.openssl pkgs.cacert pkgs.openssh];
-
-  postInstall=''
-    cp -R "$out/gateone/"* $out/lib/python2.7/site-packages/gateone
-  '';
-
-  meta = with lib; {
-    homepage = "http://liftoffsoftware.com/";
-    description = "GateOne is a web-based terminal emulator and SSH client";
-    maintainers = with maintainers; [ tomberek ];
-    license = licenses.gpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/gdrivefs/default.nix b/pkgs/development/python-modules/gdrivefs/default.nix
deleted file mode 100644
index f33579f6632..00000000000
--- a/pkgs/development/python-modules/gdrivefs/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, isPy3k
-, gipc
-, greenlet
-, httplib2
-, six
-, python-dateutil
-, fusepy
-, google-api-python-client
-}:
-
-buildPythonPackage rec {
-  version = "0.14.12";
-  pname = "gdrivefs";
-  disabled = isPy3k;
-
-  src = fetchFromGitHub {
-    owner = "dsoprea";
-    repo = "GDriveFS";
-    rev = version;
-    sha256 = "sha256-eDBy2rp3uitUrR9CG75x8mAio8+gaSckA/lEPAWO0Yo=";
-  };
-
-  buildInputs = [ gipc greenlet httplib2 six ];
-  propagatedBuildInputs = [ python-dateutil fusepy google-api-python-client ];
-
-  patchPhase = ''
-    substituteInPlace gdrivefs/resources/requirements.txt \
-      --replace "==" ">="
-  '';
-
-  meta = with lib; {
-    description = "Mount Google Drive as a local file system";
-    longDescription = ''
-      GDriveFS is a FUSE wrapper for Google Drive developed. Design goals:
-      - Thread for monitoring changes via "changes" functionality of API.
-      - Complete stat() implementation.
-      - Seamlessly work around duplicate-file allowances in Google Drive.
-      - Seamlessly manage file-type versatility in Google Drive
-        (Google Doc files do not have a particular format).
-      - Allow for the same file at multiple paths.
-    '';
-    homepage = "https://github.com/dsoprea/GDriveFS";
-    license = licenses.gpl2;
-    platforms = platforms.unix;
-  };
-
-}
diff --git a/pkgs/development/python-modules/geopy/2.nix b/pkgs/development/python-modules/geopy/2.nix
deleted file mode 100644
index 48df43e2217..00000000000
--- a/pkgs/development/python-modules/geopy/2.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy27
-, geographiclib
-}:
-
-buildPythonPackage rec {
-  pname = "geopy";
-  version = "1.22.0";
-
-  disabled = !isPy27; # only Python 2.7
-  doCheck = false; # Needs network access
-
-  propagatedBuildInputs = [ geographiclib ];
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0jypkaqlbyr8icqypwm23lzsvq7flakp3a3nqr8ib5fmd0fzsq7q";
-  };
-
-  meta = with lib; {
-    homepage = "https://github.com/geopy/geopy";
-    description = "Python Geocoding Toolbox";
-    license = licenses.mit;
-    maintainers = with maintainers; [GuillaumeDesforges];
-  };
-}
diff --git a/pkgs/development/python-modules/gnutls/default.nix b/pkgs/development/python-modules/gnutls/default.nix
deleted file mode 100644
index 3c68a1713a0..00000000000
--- a/pkgs/development/python-modules/gnutls/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, pkgs
-}:
-
-buildPythonPackage rec {
-  pname = "python-gnutls";
-  version = "3.1.3";
-
-  # https://github.com/AGProjects/python-gnutls/issues/2
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "79f94017e6472ac665c85bc16d68aa2e6681f53b6a9e74516557b49b6fc6a651";
-  };
-
-  propagatedBuildInputs = [ pkgs.gnutls ];
-  patchPhase = ''
-    substituteInPlace gnutls/library/__init__.py --replace "/usr/local/lib" "${pkgs.gnutls.out}/lib"
-  '';
-
-  meta = with lib; {
-    description = "Python wrapper for the GnuTLS library";
-    homepage = "https://github.com/AGProjects/python-gnutls";
-    license = licenses.lgpl2;
-  };
-
-}
diff --git a/pkgs/development/python-modules/goodwe/default.nix b/pkgs/development/python-modules/goodwe/default.nix
index 855c7f3f81d..567ffef56e6 100644
--- a/pkgs/development/python-modules/goodwe/default.nix
+++ b/pkgs/development/python-modules/goodwe/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "goodwe";
-  version = "0.2.8";
+  version = "0.2.9";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "marcelblijleven";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0ij87hyfv4c93nb4irpxax8p1i6swnm8b6ncs70s6z5sk7ipp663";
+    sha256 = "0l895nyq2g7isvim2fx4ivdh3xzhyc10yzqvqnlg3fr56l5srfch";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/google-nest-sdm/default.nix b/pkgs/development/python-modules/google-nest-sdm/default.nix
index 4a35812a19d..93fa676f6f8 100644
--- a/pkgs/development/python-modules/google-nest-sdm/default.nix
+++ b/pkgs/development/python-modules/google-nest-sdm/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "google-nest-sdm";
-  version = "0.4.9";
+  version = "1.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "allenporter";
     repo = "python-google-nest-sdm";
     rev = version;
-    sha256 = "sha256-Y0p1Hu3hcJQzbHmwMaIC8l5W4GXuuX8LBLCOvQ1N0So=";
+    sha256 = "sha256-gg5JAkTUuch6HcRLl1Xm/LAoC32EcayG1w3Fk7GrZD8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/graphviz/default.nix b/pkgs/development/python-modules/graphviz/default.nix
index 11590048851..881dec6b932 100644
--- a/pkgs/development/python-modules/graphviz/default.nix
+++ b/pkgs/development/python-modules/graphviz/default.nix
@@ -8,13 +8,14 @@
 , makeFontsConf
 , freefont_ttf
 , mock
-, pytestCheckHook
+, pytest
 , pytest-mock
+, python
 }:
 
 buildPythonPackage rec {
   pname = "graphviz";
-  version = "0.18.1";
+  version = "0.19.1";
 
   disabled = pythonOlder "3.6";
 
@@ -23,7 +24,7 @@ buildPythonPackage rec {
     owner = "xflr6";
     repo = "graphviz";
     rev = version;
-    sha256 = "sha256-Y3w9btjYvKfcEQGuAzV+o6edJ9VmVcWhc+ICOqy87uM=";
+    sha256 = "sha256-pE1lsx/r/BjvW5W2niDx/UeRXxx4kvCyHzAUAG3bdGc=";
   };
 
   patches = [
@@ -43,10 +44,18 @@ buildPythonPackage rec {
     fontDirectories = [ freefont_ttf ];
   };
 
-  checkInputs = [ mock pytestCheckHook pytest-mock ];
+  checkInputs = [
+    mock
+    pytest
+    pytest-mock
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+
+    HOME=$TMPDIR ${python.interpreter} run-tests.py
 
-  preCheck = ''
-    export HOME=$TMPDIR
+    runHook postCheck
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/graphviz/paths.patch b/pkgs/development/python-modules/graphviz/paths.patch
index 337435c6bba..f53852544a2 100644
--- a/pkgs/development/python-modules/graphviz/paths.patch
+++ b/pkgs/development/python-modules/graphviz/paths.patch
@@ -1,36 +1,36 @@
 diff --git a/graphviz/backend/dot_command.py b/graphviz/backend/dot_command.py
-index 1e123d1..41e19c2 100644
+index 60654bd..2c62b47 100644
 --- a/graphviz/backend/dot_command.py
 +++ b/graphviz/backend/dot_command.py
-@@ -11,7 +11,7 @@ from . import _common
- __all__ = ['command']
+@@ -9,7 +9,7 @@ from .. import parameters
+ 
+ __all__ = ['DOT_BINARY', 'command']
  
- #: :class:`pathlib.Path` of layout command (``Path('dot')``).
 -DOT_BINARY = pathlib.Path('dot')
 +DOT_BINARY = pathlib.Path('@graphviz@/bin/dot')
  
  
  def command(engine: str, format_: str, *,
 diff --git a/graphviz/backend/unflattening.py b/graphviz/backend/unflattening.py
-index 5ed25d6..8d2faf8 100644
+index a386b8c..883cdc6 100644
 --- a/graphviz/backend/unflattening.py
 +++ b/graphviz/backend/unflattening.py
 @@ -11,7 +11,7 @@ from . import execute
- __all__ = ['unflatten']
  
- #: :class:`pathlib.Path` of unflatten command (``Path('unflatten')``).
+ __all__ = ['UNFLATTEN_BINARY', 'unflatten']
+ 
 -UNFLATTEN_BINARY = pathlib.Path('unflatten')
 +UNFLATTEN_BINARY = pathlib.Path('@graphviz@/bin/unflatten')
  
  
- def unflatten(source: str,
+ @_tools.deprecate_positional_args(supported_number=1)
 diff --git a/graphviz/backend/viewing.py b/graphviz/backend/viewing.py
-index 6d4a4d1..2cc6cd8 100644
+index fde74a6..6f29b68 100644
 --- a/graphviz/backend/viewing.py
 +++ b/graphviz/backend/viewing.py
-@@ -54,7 +54,7 @@ def view_darwin(filepath, *, quiet: bool) -> None:
- @tools.attach(view, 'freebsd')
- def view_unixoid(filepath, *, quiet: bool) -> None:
+@@ -55,7 +55,7 @@ def view_darwin(filepath: typing.Union[os.PathLike, str], *,
+ def view_unixoid(filepath: typing.Union[os.PathLike, str], *,
+                  quiet: bool) -> None:
      """Open filepath in the user's preferred application (linux, freebsd)."""
 -    cmd = ['xdg-open', filepath]
 +    cmd = ['@xdgutils@/bin/xdg-open', filepath]
diff --git a/pkgs/development/python-modules/greeclimate/default.nix b/pkgs/development/python-modules/greeclimate/default.nix
index 3beb08f1bd0..5f72411e9e8 100644
--- a/pkgs/development/python-modules/greeclimate/default.nix
+++ b/pkgs/development/python-modules/greeclimate/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "greeclimate";
-  version = "1.0.0";
+  version = "1.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -18,8 +18,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "cmroche";
     repo = "greeclimate";
-    rev = version;
-    sha256 = "sha256-zaa3Z6w1BdmOV1otoewc1Zpvltnn5QDJHkAVldZCQlY=";
+    rev = "v${version}";
+    hash = "sha256-O9SaEveZntb7VWL5k1WjTDK9fXhTWFIsVh5v7NKASnQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/gruut-ipa/default.nix b/pkgs/development/python-modules/gruut-ipa/default.nix
index 4fa9d62b7ac..ad1da8b2917 100644
--- a/pkgs/development/python-modules/gruut-ipa/default.nix
+++ b/pkgs/development/python-modules/gruut-ipa/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "gruut-ipa";
-  version = "0.11.0";
+  version = "0.12.0";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "rhasspy";
     repo = pname;
     rev = "v${version}";
-    sha256 = "08n79v60jhkz5vhychsicjz4bhz8v4gb2djmz5dfdaivyr0h3bsf";
+    sha256 = "sha256-6pMdBKbp++/5321rc8A2euOSXZCHzHg+wmaEaMZ0egw=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/gruut/default.nix b/pkgs/development/python-modules/gruut/default.nix
index 75d0c365e61..4718d8244d0 100644
--- a/pkgs/development/python-modules/gruut/default.nix
+++ b/pkgs/development/python-modules/gruut/default.nix
@@ -5,11 +5,15 @@
 , fetchFromGitHub
 , Babel
 , gruut-ipa
+, dateparser
 , jsonlines
 , num2words
 , python-crfsuite
 , dataclasses
 , python
+, networkx
+, glibcLocales
+, pytestCheckHook
 }:
 
 let
@@ -17,6 +21,7 @@ let
     "cs"
     "de"
     "es"
+    "en"
     "fr"
     "it"
     "nl"
@@ -28,19 +33,21 @@ let
 in
 buildPythonPackage rec {
   pname = "gruut";
-  version = "1.2.3";
+  version = "2.2.0";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "rhasspy";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-qY4xsoVk1hyY9dYmVXaqDRjcShUQmp8VZOzAQNiC6EM=";
+    sha256 = "sha256-9vj3x2IjTso8ksN1cqe5frwg0Y3GhOB6bPWvaBSBOf8=";
   };
 
   postPatch = ''
     substituteInPlace requirements.txt \
-      --replace "Babel~=2.8.0" "Babel"
+      --replace "Babel~=2.8.0" "Babel" \
+      --replace "dateparser~=1.0.0" "dateparser" \
+      --replace "gruut_lang_en~=2.0.0" "gruut_lang_en"
   '';
 
   propagatedBuildInputs = [
@@ -49,16 +56,28 @@ buildPythonPackage rec {
     jsonlines
     num2words
     python-crfsuite
+    dateparser
+    networkx
   ] ++ lib.optionals (pythonOlder "3.7") [
     dataclasses
   ] ++ (map (lang: callPackage ./language-pack.nix {
     inherit lang version format src;
   }) langPkgs);
 
-  checkPhase = ''
-    runHook preCheck
-    ${python.interpreter} -m unittest discover
-    runHook postCheck
+  checkInputs = [ glibcLocales pytestCheckHook ];
+
+  disabledTests = [
+    # https://github.com/rhasspy/gruut/issues/25
+    "test_lexicon_external"
+
+    # requires mishkal library
+    "test_fa"
+    "test_ar"
+    "test_lb"
+  ];
+
+  preCheck = ''
+    export LC_ALL=en_US.utf-8
   '';
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/gsd/1.7.nix b/pkgs/development/python-modules/gsd/1.7.nix
deleted file mode 100644
index 8d19acdc70d..00000000000
--- a/pkgs/development/python-modules/gsd/1.7.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, numpy
-}:
-
-buildPythonPackage rec {
-  version = "1.7.0";
-  pname = "gsd";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0fpk69wachyydpk9cbs901m7hkwrrvq24ykxsrz62km9ql8lr2vp";
-  };
-
-  propagatedBuildInputs = [ numpy ];
-
-  # tests not packaged with gsd
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://bitbucket.org/glotzer/gsd";
-    description = "General simulation data file format";
-    license = licenses.bsd2;
-    maintainers = [ maintainers.costrouc ];
-  };
-}
diff --git a/pkgs/development/python-modules/gunicorn/19.nix b/pkgs/development/python-modules/gunicorn/19.nix
deleted file mode 100644
index a7a418afa18..00000000000
--- a/pkgs/development/python-modules/gunicorn/19.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi
-, coverage
-, mock
-, pytest
-, pytest-cov
-, setuptools
-}:
-
-buildPythonPackage rec {
-  pname = "gunicorn";
-  version = "19.10.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1080jk1ly8j0rc6lv8i33sj94rxjaskd1732cdq5chdqb3ij9ppr";
-  };
-
-  propagatedBuildInputs = [ setuptools ];
-
-  checkInputs = [ pytest mock pytest-cov coverage ];
-
-  prePatch = ''
-    substituteInPlace requirements_test.txt --replace "==" ">=" \
-      --replace "coverage>=4.0,<4.4" "coverage"
-  '';
-
-  # better than no tests
-  checkPhase = ''
-    $out/bin/gunicorn --help > /dev/null
-  '';
-
-  pythonImportsCheck = [ "gunicorn" ];
-
-  meta = with lib; {
-    homepage = "https://github.com/benoitc/gunicorn";
-    description = "WSGI HTTP Server for UNIX";
-    license = licenses.mit;
-  };
-}
diff --git a/pkgs/development/python-modules/hahomematic/default.nix b/pkgs/development/python-modules/hahomematic/default.nix
index 9c1dbe56068..287e12afe78 100644
--- a/pkgs/development/python-modules/hahomematic/default.nix
+++ b/pkgs/development/python-modules/hahomematic/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "hahomematic";
-  version = "0.6.1";
+  version = "0.9.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "danielperna84";
     repo = pname;
     rev = version;
-    sha256 = "sha256-s3XdbkngdHApV4uE/Qudrr9TFf6gUvNHJKM3RA4UeN0=";
+    sha256 = "sha256-sxYa0SCsX1NZlCRMIpwyU1KPEteVH5HGLx1dFsbiu/E=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/hg-git/0.8.nix b/pkgs/development/python-modules/hg-git/0.8.nix
deleted file mode 100644
index b3bfdf70824..00000000000
--- a/pkgs/development/python-modules/hg-git/0.8.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, dulwich
-, isPy3k
-, fetchpatch
-}:
-
-buildPythonPackage rec {
-  pname = "hg-git";
-  version = "0.8.12";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "13hbm0ki6s88r6p65ibvrbxnskinzdz0m9gsshb8s571p91ymfjn";
-  };
-
-  propagatedBuildInputs = [ dulwich ];
-
-  # Needs patch to work with Mercurial 4.8
-  # https://foss.heptapod.net/mercurial/hg-git/-/issues/264
-  patches = [
-    (fetchpatch {
-      url = "https://foss.heptapod.net/mercurial/hg-git/-/commit/186b37af1ff61e8141e9eea5c75a03b3c82f1ab9.diff";
-      sha256 = "sha256-KS6fUJOVzCYX/r5sdRXuFDKtlgxz80bGDFb71ISnRgc=";
-    })
-  ];
-
-  meta = with lib; {
-    description = "Push and pull from a Git server using Mercurial";
-    homepage = "https://hg-git.github.io/";
-    maintainers = with maintainers; [ koral ];
-    license = licenses.gpl2Only;
-  };
-}
diff --git a/pkgs/development/python-modules/hgsvn/default.nix b/pkgs/development/python-modules/hgsvn/default.nix
deleted file mode 100644
index b8b6d43b548..00000000000
--- a/pkgs/development/python-modules/hgsvn/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, hglib
-, isPy3k
-, isPyPy
-}:
-
-buildPythonPackage rec {
-  pname = "hgsvn";
-  version = "0.3.15";
-  disabled = isPy3k || isPyPy;
-
-  src = fetchPypi {
-    inherit pname version;
-    extension = "zip";
-    sha256 = "036270cc2803f7a7de3842e8c593849631b2293e647aa3444f68f1b1834d1fa1";
-  };
-
-  buildInputs = [ nose ];
-  propagatedBuildInputs = [ hglib ];
-
-  doCheck = false;  # too many assumptions
-
-  meta = with lib; {
-    homepage = "https://pypi.python.org/pypi/hgsvn";
-    description = "A set of scripts to work locally on Subversion checkouts using Mercurial";
-    license = licenses.gpl2;
-  };
-
-}
diff --git a/pkgs/development/python-modules/hsaudiotag/default.nix b/pkgs/development/python-modules/hsaudiotag/default.nix
deleted file mode 100644
index d38ceec7e13..00000000000
--- a/pkgs/development/python-modules/hsaudiotag/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "hsaudiotag";
-  version = "1.1.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "15hgm128p8nysfi0jb127awga3vlj0iw82l50swjpvdh01m7rda8";
-  };
-
-  # no tests
-  doCheck = false;
-
-  meta = with lib; {
-    description = "A pure Python library that lets one to read metadata from media files";
-    homepage = "http://hg.hardcoded.net/hsaudiotag/";
-    license = licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/html2text/2018.nix b/pkgs/development/python-modules/html2text/2018.nix
deleted file mode 100644
index 06d0c14c7e4..00000000000
--- a/pkgs/development/python-modules/html2text/2018.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-}:
-
-buildPythonPackage rec {
-  pname = "html2text";
-  version = "2018.1.9";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "627514fb30e7566b37be6900df26c2c78a030cc9e6211bda604d8181233bcdd4";
-  };
-
-  meta = with lib; {
-    description = "Turn HTML into equivalent Markdown-structured text";
-    homepage = "https://github.com/Alir3z4/html2text/";
-    license = licenses.gpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/http_signature/default.nix b/pkgs/development/python-modules/http_signature/default.nix
deleted file mode 100644
index 9169f1e4126..00000000000
--- a/pkgs/development/python-modules/http_signature/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, pycrypto
-}:
-
-buildPythonPackage rec {
-  pname = "http_signature";
-  version = "0.1.4";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "14acc192ef20459d5e11b4e800dd3a4542f6bd2ab191bf5717c696bf30936c62";
-  };
-
-  propagatedBuildInputs = [ pycrypto ];
-
-  meta = with lib; {
-    homepage = "https://github.com/atl/py-http-signature";
-    description = "Simple secure signing for HTTP requests using http-signature";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/huawei-lte-api/default.nix b/pkgs/development/python-modules/huawei-lte-api/default.nix
index 2b0fb912387..b62ab4f0e77 100644
--- a/pkgs/development/python-modules/huawei-lte-api/default.nix
+++ b/pkgs/development/python-modules/huawei-lte-api/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "huawei-lte-api";
-  version = "1.5.2";
+  version = "1.5.4";
 
   disabled = pythonOlder "3.4";
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "Salamek";
     repo = "huawei-lte-api";
     rev = version;
-    sha256 = "sha256-xG0QTvjYW0/C/7NNhl/d024TSAe0TzgMknOXvNxrPOY=";
+    hash = "sha256-aTxP2lVrGr2B+ELz7fnVZVB0nm9HHAb15wDafV44h7M=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/imbalanced-learn/0.4.nix b/pkgs/development/python-modules/imbalanced-learn/0.4.nix
deleted file mode 100644
index 6709092ca95..00000000000
--- a/pkgs/development/python-modules/imbalanced-learn/0.4.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, scikit-learn, pandas, nose, pytest }:
-
-buildPythonPackage rec {
-  pname = "imbalanced-learn";
-  version = "0.4.3";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "5bd9e86e40ce4001a57426541d7c79b18143cbd181e3330c1a3e5c5c43287083";
-  };
-
-  propagatedBuildInputs = [ scikit-learn ];
-  checkInputs = [ nose pytest pandas ];
-  checkPhase = ''
-    export HOME=$PWD
-    # skip some tests that fail because of minimal rounding errors
-    # or large dependencies
-    py.test imblearn -k 'not classification \
-                         and not _generator \
-                         and not _forest \
-                         and not wrong_memory'
-  '';
-
-  meta = with lib; {
-    description = "Library offering a number of re-sampling techniques commonly used in datasets showing strong between-class imbalance";
-    homepage = "https://github.com/scikit-learn-contrib/imbalanced-learn";
-    license = licenses.mit;
-  };
-}
diff --git a/pkgs/development/python-modules/importlib-resources/2.nix b/pkgs/development/python-modules/importlib-resources/2.nix
deleted file mode 100644
index 1034c311130..00000000000
--- a/pkgs/development/python-modules/importlib-resources/2.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools-scm
-, importlib-metadata
-, typing
-, singledispatch
-, python
-}:
-
-buildPythonPackage rec {
-  pname = "importlib-resources";
-  version = "3.3.1";
-
-  src = fetchPypi {
-    pname = "importlib_resources";
-    inherit version;
-    sha256 = "0ed250dbd291947d1a298e89f39afcc477d5a6624770503034b72588601bcc05";
-  };
-
-  nativeBuildInputs = [ setuptools-scm ];
-  propagatedBuildInputs = [
-    importlib-metadata
-    singledispatch
-    typing
-  ];
-
-  checkPhase = ''
-    ${python.interpreter} -m unittest discover
-  '';
-
-  meta = with lib; {
-    description = "Read resources from Python packages";
-    homepage = "https://importlib-resources.readthedocs.io/";
-    license = licenses.asl20;
-    maintainers = [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/importlib-resources/default.nix b/pkgs/development/python-modules/importlib-resources/default.nix
index fda4fb00bfa..b28932a74f0 100644
--- a/pkgs/development/python-modules/importlib-resources/default.nix
+++ b/pkgs/development/python-modules/importlib-resources/default.nix
@@ -1,10 +1,10 @@
 { lib
+, isPy27
 , buildPythonPackage
 , fetchPypi
 , setuptools-scm
 , importlib-metadata
 , typing ? null
-, singledispatch ? null
 , pythonOlder
 , python
 }:
@@ -12,6 +12,7 @@
 buildPythonPackage rec {
   pname = "importlib-resources";
   version = "5.4.0";
+  disabled = isPy27;
 
   src = fetchPypi {
     pname = "importlib_resources";
@@ -25,8 +26,6 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     importlib-metadata
-  ] ++ lib.optional (pythonOlder "3.4") [
-    singledispatch
   ] ++ lib.optional (pythonOlder "3.5") [
     typing
   ];
diff --git a/pkgs/development/python-modules/ipykernel/4.nix b/pkgs/development/python-modules/ipykernel/4.nix
deleted file mode 100644
index 7530b555246..00000000000
--- a/pkgs/development/python-modules/ipykernel/4.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, isPy27
-, mock
-, ipython
-, jupyter-client
-, pexpect
-, traitlets
-, tornado
-}:
-
-buildPythonPackage rec {
-  pname = "ipykernel";
-  version = "4.10.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "eeb74b2bcfe0ced5a7900361f98fa1171288aa47ed4b522efe5acb167c6cf5fb";
-  };
-
-  checkInputs = [ nose ] ++ lib.optional isPy27 mock;
-  propagatedBuildInputs = [
-    ipython
-    jupyter-client
-    pexpect
-    traitlets
-    tornado
-  ];
-
-  # Tests require backends.
-  # I don't want to add all supported backends as propagatedBuildInputs
-  doCheck = false;
-
-  meta = {
-    description = "IPython Kernel for Jupyter";
-    homepage = "http://ipython.org/";
-    license = lib.licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/ipython/5.nix b/pkgs/development/python-modules/ipython/5.nix
deleted file mode 100644
index 45096bf7781..00000000000
--- a/pkgs/development/python-modules/ipython/5.nix
+++ /dev/null
@@ -1,72 +0,0 @@
-{ lib
-, stdenv
-, buildPythonPackage
-, fetchPypi
-, fetchpatch
-# Build dependencies
-, glibcLocales
-# Test dependencies
-, nose
-, pygments
-, testpath
-, isPy27
-, mock
-# Runtime dependencies
-, backports_shutil_get_terminal_size
-, decorator
-, pathlib2
-, pickleshare
-, requests
-, simplegeneric
-, traitlets
-, prompt-toolkit
-, pexpect
-, appnope
-}:
-
-buildPythonPackage rec {
-  pname = "ipython";
-  version = "5.8.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "4bac649857611baaaf76bc82c173aa542f7486446c335fe1a6c05d0d491c8906";
-  };
-
-  prePatch = lib.optionalString stdenv.isDarwin ''
-    substituteInPlace setup.py --replace "'gnureadline'" " "
-  '';
-
-  patches = [
-    # Use the proper pygments lexer for python2 (https://github.com/ipython/ipython/pull/12095)
-    (fetchpatch {
-      name = "python2-lexer.patch";
-      url = "https://github.com/ipython/ipython/pull/12095/commits/8805293b5e4bce9150cc2ad9c5d6d984849ae447.patch";
-      sha256 = "16p4gl7a49v76w33j39ih7yspy6x2d14p9bh4wdpg9cafhw9nbc0";
-    })
-  ];
-
-  buildInputs = [ glibcLocales ];
-
-  checkInputs = [ nose pygments testpath ] ++ lib.optional isPy27 mock;
-
-  propagatedBuildInputs = [
-    backports_shutil_get_terminal_size decorator pickleshare prompt-toolkit
-    simplegeneric traitlets requests pathlib2 pexpect
-  ] ++ lib.optionals stdenv.isDarwin [ appnope ];
-
-  LC_ALL="en_US.UTF-8";
-
-  doCheck = false; # Circular dependency with ipykernel
-
-  checkPhase = ''
-    nosetests
-  '';
-
-  meta = {
-    description = "IPython: Productive Interactive Computing";
-    homepage = "http://ipython.org/";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ bjornfor orivej lnl7 ];
-  };
-}
diff --git a/pkgs/development/python-modules/isort/4.nix b/pkgs/development/python-modules/isort/4.nix
deleted file mode 100644
index 5da9a5c6b30..00000000000
--- a/pkgs/development/python-modules/isort/4.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, setuptools, isPy27, futures
-, backports_functools_lru_cache, mock, pytest
-}:
-
-let
-  skipTests = [ "test_requirements_finder" "test_pipfile_finder" ] ++ lib.optional isPy27 "test_standard_library_deprecates_user_issue_778";
-  testOpts = lib.concatMapStringsSep " " (t: "--deselect test_isort.py::${t}") skipTests;
-in buildPythonPackage rec {
-  pname = "isort";
-  version = "4.3.21"; # Note 4.x is the last version that supports Python2
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "54da7e92468955c4fceacd0c86bd0ec997b0e1ee80d97f67c35a78b719dccab1";
-  };
-
-  propagatedBuildInputs = [
-    setuptools
-  ] ++ lib.optionals isPy27 [ futures backports_functools_lru_cache ];
-
-  checkInputs = [ mock pytest ];
-
-  checkPhase = ''
-    # isort excludes paths that contain /build/, so test fixtures don't work
-    # with TMPDIR=/build/
-    PATH=$out/bin:$PATH TMPDIR=/tmp/ pytest ${testOpts}
-
-    # Confirm that the produced executable script is wrapped correctly and runs
-    # OK, by launching it in a subshell without PYTHONPATH
-    (
-      unset PYTHONPATH
-      echo "Testing that `isort --version-number` returns OK..."
-      $out/bin/isort --version-number
-    )
-  '';
-
-  meta = with lib; {
-    description = "A Python utility / library to sort Python imports";
-    homepage = "https://github.com/timothycrosley/isort";
-    license = licenses.mit;
-    maintainers = with maintainers; [ couchemar ];
-  };
-}
diff --git a/pkgs/development/python-modules/jaraco_functools/2.nix b/pkgs/development/python-modules/jaraco_functools/2.nix
deleted file mode 100644
index e10a11018a5..00000000000
--- a/pkgs/development/python-modules/jaraco_functools/2.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi
-, setuptools-scm
-, more-itertools, backports_functools_lru_cache }:
-
-buildPythonPackage rec {
-  pname = "jaraco.functools";
-  version = "2.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0ickpwvvdrlbm477gdzfjfcbgmfia9ksm9a3i3pbx9xia97r9fim";
-  };
-
-  propagatedBuildInputs = [ more-itertools backports_functools_lru_cache ];
-
-  doCheck = false;
-
-  buildInputs = [ setuptools-scm ];
-
-  meta = with lib; {
-    description = "Additional functools in the spirit of stdlib's functools";
-    homepage = "https://github.com/jaraco/jaraco.functools";
-    license = licenses.mit;
-  };
-}
diff --git a/pkgs/development/python-modules/jaraco_stream/2.nix b/pkgs/development/python-modules/jaraco_stream/2.nix
deleted file mode 100644
index 1f5a70477a3..00000000000
--- a/pkgs/development/python-modules/jaraco_stream/2.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ buildPythonPackage, fetchPypi, setuptools-scm, six }:
-
-buildPythonPackage rec {
-  pname = "jaraco.stream";
-  version = "2.0";
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "196synw4g76yagcflmavi7wakf5cdgsflmvbj7zs616gv03xbsf2";
-  };
-  doCheck = false;
-  buildInputs = [ setuptools-scm ];
-  propagatedBuildInputs = [ six ];
-}
diff --git a/pkgs/development/python-modules/jmp/default.nix b/pkgs/development/python-modules/jmp/default.nix
new file mode 100644
index 00000000000..dc096b93ae4
--- /dev/null
+++ b/pkgs/development/python-modules/jmp/default.nix
@@ -0,0 +1,42 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, jax
+, jaxlib
+, lib
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "jmp";
+  # As of 2022-01-01, the latest stable version (0.0.2) fails tests with recent JAX versions,
+  # IIUC it's fixed in https://github.com/deepmind/jmp/commit/4969392f618d7733b265677143d8c81e44085867
+  version = "unstable-2021-10-03";
+
+  src = fetchFromGitHub {
+    owner = "deepmind";
+    repo = pname;
+    rev = "4b94370b8de29b79d6f840b09d1990b91c1afddd";
+    sha256 = "0hh4cmp93wjyidj48gh07vhx2kjvpwd23xvy79bsjn5qaaf6q4cm";
+  };
+
+  # Wheel requires only `numpy`, but the import needs both `jax` and `jaxlib`.
+  propagatedBuildInputs = [
+    jax
+    jaxlib
+  ];
+
+  pythonImportsCheck = [
+    "jmp"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "This library implements support for mixed precision training in JAX.";
+    homepage = "https://github.com/deepmind/jmp";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ndl ];
+  };
+}
diff --git a/pkgs/development/python-modules/json-schema-for-humans/default.nix b/pkgs/development/python-modules/json-schema-for-humans/default.nix
index 9e6144a8ec2..5f2c5ac7fdd 100644
--- a/pkgs/development/python-modules/json-schema-for-humans/default.nix
+++ b/pkgs/development/python-modules/json-schema-for-humans/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "json-schema-for-humans";
-  version = "0.39.1";
+  version = "0.39.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "coveooss";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-JoD4XEfIUsAbITWa0LMYgNP6WzrblI4HUIgLpx5gn18=";
+    sha256 = "sha256-rg50AE30R1OErtOKppnkhg8MTuhEY6gdBgc7ipEkONA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/jsonrpclib/default.nix b/pkgs/development/python-modules/jsonrpclib/default.nix
deleted file mode 100644
index b1b4648e903..00000000000
--- a/pkgs/development/python-modules/jsonrpclib/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, cjson
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "jsonrpclib";
-  version = "0.2.1";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "8138078fd0f2a5b1df7925e4fa0b82a7c17a4be75bf5634af20463172f44f5c0";
-  };
-
-  propagatedBuildInputs = [ cjson ];
-
-  meta = with lib; {
-    description = "JSON RPC client library";
-    homepage = "https://pypi.python.org/pypi/jsonrpclib/";
-    license = lib.licenses.asl20;
-    maintainers = [ lib.maintainers.joachifm ];
-  };
-}
diff --git a/pkgs/development/python-modules/jupyter-client/5.nix b/pkgs/development/python-modules/jupyter-client/5.nix
deleted file mode 100644
index 0894744bf0b..00000000000
--- a/pkgs/development/python-modules/jupyter-client/5.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, traitlets
-, jupyter_core
-, pyzmq
-, python-dateutil
-, isPyPy
-, py
-, tornado
-}:
-
-buildPythonPackage rec {
-  pname = "jupyter-client";
-  version = "5.3.5";
-
-  src = fetchPypi {
-    pname = "jupyter_client";
-    inherit version;
-    sha256 = "5efdf4131124d4a0d5789101e74827022585f172d2f4b60cf6fa98e0a7511b25";
-  };
-
-  propagatedBuildInputs = [
-    traitlets
-    jupyter_core
-    pyzmq
-    python-dateutil
-    tornado
-  ] ++ lib.optional isPyPy py;
-
-  # Circular dependency with ipykernel
-  doCheck = false;
-
-  meta = {
-    description = "Jupyter protocol implementation and client libraries";
-    homepage = "https://jupyter.org/";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [  ];
-  };
-}
diff --git a/pkgs/development/python-modules/jupyter-server-mathjax/default.nix b/pkgs/development/python-modules/jupyter-server-mathjax/default.nix
index 9aff01cd9d3..47f5f8e5840 100644
--- a/pkgs/development/python-modules/jupyter-server-mathjax/default.nix
+++ b/pkgs/development/python-modules/jupyter-server-mathjax/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "MathJax resources as a Jupyter Server Extension";
-    homepage = "http://jupyter.org";
+    homepage = "https://jupyter.org";
     license = licenses.bsd3;
     maintainers = with maintainers; [ jonringer ];
   };
diff --git a/pkgs/development/python-modules/jupyter_console/5.nix b/pkgs/development/python-modules/jupyter_console/5.nix
deleted file mode 100644
index 5e2436acc73..00000000000
--- a/pkgs/development/python-modules/jupyter_console/5.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, jupyter-client
-, ipython
-, ipykernel
-, prompt-toolkit
-, pygments
-}:
-
-buildPythonPackage rec {
-  pname = "jupyter_console";
-  version = "5.2.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "545dedd3aaaa355148093c5609f0229aeb121b4852995c2accfa64fe3e0e55cd";
-  };
-
-  checkInputs = [ nose ];
-  propagatedBuildInputs = [
-    jupyter-client
-    ipython
-    ipykernel
-    prompt-toolkit
-    pygments
-  ];
-
-  # ValueError: underlying buffer has been detached
-  doCheck = false;
-
-  meta = {
-    description = "Jupyter terminal console";
-    homepage = "https://jupyter.org/";
-    license = lib.licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/jupyterlab-pygments/default.nix b/pkgs/development/python-modules/jupyterlab-pygments/default.nix
index f3ea20842aa..3d6b9fa9335 100644
--- a/pkgs/development/python-modules/jupyterlab-pygments/default.nix
+++ b/pkgs/development/python-modules/jupyterlab-pygments/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Jupyterlab syntax coloring theme for pygments";
-    homepage = "https://github.com/jupyterlab/jupyterlab-pygments/";
+    homepage = "https://github.com/jupyterlab/jupyterlab_pygments";
     license = licenses.mit;
     maintainers = with maintainers; [ jonringer ];
   };
diff --git a/pkgs/development/python-modules/jupyterlab_server/default.nix b/pkgs/development/python-modules/jupyterlab_server/default.nix
index 45c70a5116e..7216421a86c 100644
--- a/pkgs/development/python-modules/jupyterlab_server/default.nix
+++ b/pkgs/development/python-modules/jupyterlab_server/default.nix
@@ -16,12 +16,12 @@
 
 buildPythonPackage rec {
   pname = "jupyterlab_server";
-  version = "2.10.1";
+  version = "2.10.2";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9683d661fc059ae4e2039b582d0d80cec96778dad581bd27b5941a06191397ba";
+    sha256 = "bf1ec9e49d4e26f14d70055cc293b3f8ec8410f95a4d5b4bd55c442d9b8b266c";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/jupytext/default.nix b/pkgs/development/python-modules/jupytext/default.nix
index b786c1efab6..777f82a3e5a 100644
--- a/pkgs/development/python-modules/jupytext/default.nix
+++ b/pkgs/development/python-modules/jupytext/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "jupytext";
-  version = "1.13.3";
+  version = "1.13.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "mwouts";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HzWAEy7z3qi+lSD3yVBGYclfvKTkG1fTsG29NlKPgQw=";
+    sha256 = "0rapp2baqml1z3n8k7ijf5461b3p8wgr45y3njz54q75v0jk7v45";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/karton-dashboard/default.nix b/pkgs/development/python-modules/karton-dashboard/default.nix
index 08eeed7141a..5b67123ee27 100644
--- a/pkgs/development/python-modules/karton-dashboard/default.nix
+++ b/pkgs/development/python-modules/karton-dashboard/default.nix
@@ -5,6 +5,7 @@
 , karton-core
 , mistune
 , prometheus-client
+, pythonOlder
 }:
 
 buildPythonPackage rec {
@@ -12,6 +13,8 @@ buildPythonPackage rec {
   version = "1.2.1";
   format = "setuptools";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchFromGitHub {
     owner = "CERT-Polska";
     repo = pname;
@@ -29,7 +32,7 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace requirements.txt \
       --replace "Flask==1.1.1" "Flask" \
-      --replace "prometheus-client==0.10.0" "prometheus-client"
+      --replace "prometheus_client==0.11.0" "prometheus_client"
   '';
 
   # Project has no tests. pythonImportsCheck requires MinIO configuration
diff --git a/pkgs/development/python-modules/keystone-engine/default.nix b/pkgs/development/python-modules/keystone-engine/default.nix
index ed9f3a6bb70..7c3cf2e70d8 100644
--- a/pkgs/development/python-modules/keystone-engine/default.nix
+++ b/pkgs/development/python-modules/keystone-engine/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, keystone }:
+{ lib, stdenv, buildPythonPackage, fetchPypi, keystone }:
 
 buildPythonPackage rec {
   pname = "keystone-engine";
@@ -9,6 +9,8 @@ buildPythonPackage rec {
    sha256 = "1xahdr6bh3dw5swrc2r8kqa8ljhqlb7k2kxv5mrw5rhcmcnzcyig";
   };
 
+  setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ];
+
   preConfigure = ''
     substituteInPlace setup.py --replace \
       "libkeystone" "${keystone}/lib/libkeystone"
diff --git a/pkgs/development/python-modules/kiwisolver/1_1.nix b/pkgs/development/python-modules/kiwisolver/1_1.nix
deleted file mode 100644
index 762b5bc0b7b..00000000000
--- a/pkgs/development/python-modules/kiwisolver/1_1.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, stdenv
-, libcxx
-}:
-
-buildPythonPackage rec {
-  pname = "kiwisolver";
-  version = "1.1.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "53eaed412477c836e1b9522c19858a8557d6e595077830146182225613b11a75";
-  };
-
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
-
-  # Does not include tests
-  doCheck = false;
-
-  meta = {
-    description = "A fast implementation of the Cassowary constraint solver";
-    homepage = "https://github.com/nucleic/kiwi";
-    license = lib.licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/koji/default.nix b/pkgs/development/python-modules/koji/default.nix
deleted file mode 100644
index cd3b5ff62c2..00000000000
--- a/pkgs/development/python-modules/koji/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, fetchurl, buildPythonPackage, isPy3k, pycurl, six, rpm, python-dateutil }:
-
-buildPythonPackage rec {
-  pname = "koji";
-  version = "1.14.3";
-  format = "other";
-
-  src = fetchurl {
-    url = "https://releases.pagure.org/koji/${pname}-${version}.tar.bz2";
-    sha256 = "0a3kn3qvspvx15imgzzzjsbvw6bqmbk29apbliqwifa9cj7pvb40";
-  };
-
-  propagatedBuildInputs = [ pycurl six rpm python-dateutil ];
-
-  # Judging from SyntaxError
-  disabled = isPy3k;
-
-  makeFlags = [ "DESTDIR=$(out)" ];
-
-  postInstall = ''
-    mv $out/usr/* $out/
-    cp -R $out/nix/store/*/* $out/
-    rm -rf $out/nix
-  '';
-
-  meta = with lib; {
-    description = "An RPM-based build system";
-    homepage = "https://pagure.io/koji";
-    license = licenses.lgpl21;
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/python-modules/konfig/default.nix b/pkgs/development/python-modules/konfig/default.nix
deleted file mode 100644
index e7062bad5ee..00000000000
--- a/pkgs/development/python-modules/konfig/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, writeText, configparser, six, pytest, glibcLocales }:
-
-buildPythonPackage rec {
-  pname = "konfig";
-  version = "1.1";
-
-  # konfig unconditionaly depend on configparser, even if it is part of
-  # the standard library in python 3.2 or above.
-  disabled = isPy3k;
-
-  # PyPI tarball is missing utf8.ini, required for tests
-  src = fetchFromGitHub {
-    owner = "mozilla-services";
-    repo = pname;
-    rev = version;
-    sha256 = "1h780fbrv275dcik4cs3rincza805z6q726b48r4a0qmh5d8160c";
-  };
-
-  propagatedBuildInputs = [ configparser six ];
-
-  patches = [ (writeText "konfig.patch" ''
-    diff --git a/setup.py b/setup.py
-    index 96fd858..bb4db06 100644
-    --- a/setup.py
-    +++ b/setup.py
-    @@ -20,7 +20,7 @@ setup(name='konfig',
-           author_email="tarek@mozilla.com",
-           include_package_data=True,
-           install_requires = [
-    -        'configparser', 'argparse', 'six'
-    +        'configparser', 'six'
-           ],
-           zip_safe=False,
-           classifiers=classifiers,
-  '') ];
-
-  checkInputs = [ pytest glibcLocales ];
-
-  checkPhase = ''
-    LC_ALL=en_US.utf8 pytest -v konfig/tests
-  '';
-
-  meta = with lib; {
-    description = "Yet Another Config Parser";
-    homepage    = "https://github.com/mozilla-services/konfig";
-    license     = licenses.mpl20;
-  };
-}
diff --git a/pkgs/development/python-modules/larch/default.nix b/pkgs/development/python-modules/larch/default.nix
deleted file mode 100644
index 630430b8270..00000000000
--- a/pkgs/development/python-modules/larch/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, sphinx
-, tracing
-, ttystatus
-, cliapp
-}:
-
-buildPythonPackage rec {
-  pname = "larch";
-  version = "1.20131130";
-
-  src = fetchurl {
-    url = "http://code.liw.fi/debian/pool/main/p/python-larch/python-larch_${version}.orig.tar.gz";
-    sha256 = "1hfanp9l6yc5348i3f5sb8c5s4r43y382hflnbl6cnz4pm8yh5r7";
-  };
-
-  buildInputs = [ sphinx ];
-  propagatedBuildInputs = [ tracing ttystatus cliapp ];
-
-  # error: invalid command 'test'
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://liw.fi/larch/";
-    description = "Python B-tree library";
-    license = licenses.gpl3;
-    maintainers = [];
-  };
-
-}
diff --git a/pkgs/development/python-modules/lasagne/default.nix b/pkgs/development/python-modules/lasagne/default.nix
deleted file mode 100644
index 5db149708ff..00000000000
--- a/pkgs/development/python-modules/lasagne/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, numpy
-, Theano
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "Lasagne";
-  version = "0.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0cqj86rdm6c7y5vq3i13qy76fg5xi3yjp4r0hpqy8hvynv54wqrw";
-  };
-
-  propagatedBuildInputs = [ numpy Theano ];
-
-  # there are no tests
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Lightweight library to build and train neural networks in Theano";
-    homepage = "https://github.com/Lasagne/Lasagne";
-    maintainers = with maintainers; [ NikolaMandic ];
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/ldaptor/19.nix b/pkgs/development/python-modules/ldaptor/19.nix
deleted file mode 100644
index 42141371c53..00000000000
--- a/pkgs/development/python-modules/ldaptor/19.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, twisted
-, passlib
-, pyopenssl
-, pyparsing
-, service-identity
-, zope_interface
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "ldaptor";
-  version = "19.1.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "64c7b870c77e34e4f5f9cfdf330b9702e89b4dd0f64275704f86c1468312c755";
-  };
-
-  propagatedBuildInputs = [
-    twisted passlib pyopenssl pyparsing service-identity zope_interface
-  ];
-
-  disabled = isPy3k;
-
-  doCheck = false;
-
-  meta = {
-    description = "A Pure-Python Twisted library for LDAP";
-    homepage = "https://github.com/twisted/ldaptor";
-    license = lib.licenses.mit;
-  };
-}
diff --git a/pkgs/development/python-modules/le/default.nix b/pkgs/development/python-modules/le/default.nix
deleted file mode 100644
index 134a143a3b0..00000000000
--- a/pkgs/development/python-modules/le/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, isPy3k
-, simplejson
-, psutil
-}:
-
-buildPythonPackage rec {
-  pname = "le";
-  version = "1.4.29";
-
-  src = fetchFromGitHub {
-    owner = "logentries";
-    repo = "le";
-    rev = "v${version}";
-    sha256 = "sha256-67JPnof0olReu90rM78e1px8NvbGcj8pphFhPaiSVmA=";
-  };
-
-  disabled = isPy3k;
-
-  doCheck = false;
-
-  propagatedBuildInputs = [ simplejson psutil ];
-
-  meta = with lib; {
-    homepage = "https://github.com/rapid7/le";
-    description = "Logentries agent";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/libcloud/2.nix b/pkgs/development/python-modules/libcloud/2.nix
index c59e026fe4f..504e7753a97 100644
--- a/pkgs/development/python-modules/libcloud/2.nix
+++ b/pkgs/development/python-modules/libcloud/2.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A unified interface to many cloud providers";
-    homepage = "http://incubator.apache.org/libcloud/";
+    homepage = "https://libcloud.apache.org/";
     license = licenses.asl20;
   };
 
diff --git a/pkgs/development/python-modules/libnacl/default.nix b/pkgs/development/python-modules/libnacl/default.nix
index f8cb85ab418..7ced26888b8 100644
--- a/pkgs/development/python-modules/libnacl/default.nix
+++ b/pkgs/development/python-modules/libnacl/default.nix
@@ -2,6 +2,7 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , libsodium
 , pytestCheckHook
 }:
@@ -17,6 +18,15 @@ buildPythonPackage rec {
     sha256 = "sha256-nttR9PQimhqd2pByJ5IJzJ4RmSI4y7lcX7a7jcK+vqc=";
   };
 
+  patches = [
+    # Fixes build on 32-bit platforms
+    (fetchpatch {
+      name = "fix-crypto_kdf_derive_from_key-32bit.patch";
+      url = "https://github.com/saltstack/libnacl/commit/e8a1f95ee1d4d0806fb6aee793dcf308b05d485d.patch";
+      sha256 = "sha256-z6TAVNfPcuWZ/hRgk6Aa8I1IGzne7/NYnUOOQ3TjGVU=";
+    })
+  ];
+
   buildInputs = [ libsodium ];
 
   postPatch =
diff --git a/pkgs/development/python-modules/libvirt/5.9.0.nix b/pkgs/development/python-modules/libvirt/5.9.0.nix
deleted file mode 100644
index 9cbd042c55a..00000000000
--- a/pkgs/development/python-modules/libvirt/5.9.0.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib, buildPythonPackage, fetchgit, pkg-config, lxml, libvirt, nose }:
-
-buildPythonPackage rec {
-  pname = "libvirt";
-  version = "5.9.0";
-
-  src = fetchgit {
-    url = "git://libvirt.org/libvirt-python.git";
-    rev = "v${version}";
-    sha256 = "0qvr0s7yasswy1s5cvkm91iifk33pb8s7nbb38zznc46706b358r";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libvirt lxml ];
-
-  checkInputs = [ nose ];
-  checkPhase = ''
-    nosetests
-  '';
-
-  passthru = {
-    inherit libvirt;
-  };
-
-  meta = with lib; {
-    homepage = "http://www.libvirt.org/";
-    description = "libvirt Python bindings";
-    license = licenses.lgpl2;
-    maintainers = [ maintainers.fpletz ];
-  };
-}
diff --git a/pkgs/development/python-modules/lightblue/default.nix b/pkgs/development/python-modules/lightblue/default.nix
deleted file mode 100644
index feb27181244..00000000000
--- a/pkgs/development/python-modules/lightblue/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, pkgs
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "lightblue";
-  version = "0.4";
-  disabled = isPy3k; # build fails, 2018-04-11
-
-  src = fetchurl {
-    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "016h1mlhpqxjj25lcvl4fqc19k8ifmsv6df7rhr12fyfcrp5i14d";
-  };
-
-  buildInputs = [ pkgs.bluez pkgs.openobex ];
-
-  meta = with lib; {
-    homepage = "http://lightblue.sourceforge.net";
-    description = "Cross-platform Bluetooth API for Python";
-    maintainers = with maintainers; [ leenaars ];
-    license = licenses.gpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/limnoria/default.nix b/pkgs/development/python-modules/limnoria/default.nix
index ba45ffbdeac..8e2cb3ca366 100644
--- a/pkgs/development/python-modules/limnoria/default.nix
+++ b/pkgs/development/python-modules/limnoria/default.nix
@@ -1,27 +1,62 @@
 { lib
 , buildPythonPackage
+, chardet
+, cryptography
+, feedparser
 , fetchPypi
-, isPy27
-, git
+, mock
+, pysocks
+, pytestCheckHook
+, python-dateutil
+, python-gnupg
+, pythonOlder
+, pytz
 }:
 
 buildPythonPackage rec {
   pname = "limnoria";
-  version = "2021.11.20";
-  disabled = isPy27; # abandoned upstream
+  version = "2022.1.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "da9c33497a09b4ed0cff6ed44954bbde6cb317edb68d56c73ef235128a802c11";
+    hash = "sha256-tJqUsNRvSipuvOTfxJOFUCojrkRrrrzIgEYNShrTP8c=";
   };
 
+  propagatedBuildInputs = [
+    chardet
+    cryptography
+    feedparser
+    mock
+    pysocks
+    python-dateutil
+    python-gnupg
+  ] ++ lib.optionals (pythonOlder "3.9") [
+    pytz
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
   postPatch = ''
-    sed -i 's/version=version/version="${version}"/' setup.py
+    substituteInPlace setup.py \
+      --replace "version=version" 'version="${version}"'
   '';
-  buildInputs = [ git ];
 
-  # cannot be imported
-  doCheck = false;
+  checkPhase = ''
+    runHook preCheck
+    export PATH="$PATH:$out/bin";
+    supybot-test test -v --no-network
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [
+    # Uses the same names as Supybot
+    "supybot"
+  ];
 
   meta = with lib; {
     description = "A modified version of Supybot, an IRC bot";
@@ -29,5 +64,4 @@ buildPythonPackage rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ goibhniu ];
   };
-
 }
diff --git a/pkgs/development/python-modules/line_profiler/default.nix b/pkgs/development/python-modules/line_profiler/default.nix
index 3ca82c96896..76aa30f0698 100644
--- a/pkgs/development/python-modules/line_profiler/default.nix
+++ b/pkgs/development/python-modules/line_profiler/default.nix
@@ -7,15 +7,19 @@
 , python
 , scikit-build
 , cmake
+, pythonOlder
 }:
 
 buildPythonPackage rec {
-  pname = "line_profiler";
-  version = "3.3.1";
+  pname = "line-profiler";
+  version = "3.4.0";
+
+  disabled = pythonOlder "3.6" || isPyPy;
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "6e2fb792ca022f900f374f9659fd3e7c530cd4df7d3b7e84be889093b487639f";
+    pname = "line_profiler";
+    inherit version;
+    sha256 = "b6b0a8100a2829358e31ef7c6f427b1dcf2b1d8e5d38b55b219719ecf758aee5";
   };
 
   nativeBuildInputs = [
@@ -24,30 +28,32 @@ buildPythonPackage rec {
     scikit-build
   ];
 
-  dontUseCmakeConfigure = true;
-
   propagatedBuildInputs = [
     ipython
   ];
 
-  disabled = isPyPy;
+  checkInputs = [
+    ipython
+  ];
+
+  dontUseCmakeConfigure = true;
 
   preBuild = ''
     rm -f _line_profiler.c
   '';
 
-  checkInputs = [
-    ipython
-  ];
-
   checkPhase = ''
     PYTHONPATH=$out/${python.sitePackages}:$PYTHONPATH cd tests && ${python.interpreter} -m unittest discover -s .
   '';
 
-  meta = {
+  pythonImportsCheck = [
+    "line_profiler"
+  ];
+
+  meta = with lib; {
     description = "Line-by-line profiler";
-    homepage = "https://github.com/rkern/line_profiler";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ fridh ];
+    homepage = "https://github.com/pyutils/line_profiler";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fridh ];
   };
 }
diff --git a/pkgs/development/python-modules/lmdb/default.nix b/pkgs/development/python-modules/lmdb/default.nix
index 3e78626238a..8efc1e3fb12 100644
--- a/pkgs/development/python-modules/lmdb/default.nix
+++ b/pkgs/development/python-modules/lmdb/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "lmdb";
-  version = "1.2.1";
+  version = "1.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5f76a90ebd08922acca11948779b5055f7a262687178e9e94f4e804b9f8465bc";
+    sha256 = "60a11efc21aaf009d06518996360eed346f6000bfc9de05114374230879f992e";
   };
 
   buildInputs = [ lmdb ];
diff --git a/pkgs/development/python-modules/lsi/default.nix b/pkgs/development/python-modules/lsi/default.nix
deleted file mode 100644
index b570a62d9e3..00000000000
--- a/pkgs/development/python-modules/lsi/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, isPy3k
-, fetchPypi
-, colored
-, boto
-, pkgs
-}:
-
-buildPythonPackage rec {
-  pname = "lsi";
-  version = "0.4.0";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "b2c4a9a276a32f914a6193509503c28b3cc84bf42d58e191214811cfe78f4736";
-  };
-
-  propagatedBuildInputs = [ colored boto pkgs.openssh pkgs.which ];
-
-  meta = with lib; {
-    description = "CLI for querying and SSHing onto AWS EC2 instances";
-    homepage = "https://github.com/NarrativeScience/lsi";
-    maintainers = [maintainers.adnelson];
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/lxc/default.nix b/pkgs/development/python-modules/lxc/default.nix
deleted file mode 100644
index 4534e0a01ef..00000000000
--- a/pkgs/development/python-modules/lxc/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, isPy3k
-, pkgs
-}:
-
-buildPythonPackage {
-  pname = "python-lxc-unstable";
-  version = "2016-08-25";
-  disabled = isPy3k;
-
-  src = fetchFromGitHub {
-    owner = "lxc";
-    repo = "python2-lxc";
-    rev = "0553f05d23b56b59bf3015fa5e45bfbfab9021ef";
-    sha256 = "0p9kb20xvq91gx2wfs3vppb7vsp8kmd90i3q95l4nl1y4aismdn4";
-  };
-
-  buildInputs = [ pkgs.lxc ];
-
-  meta = with lib; {
-    description = "Out of tree python 2.7 binding for liblxc";
-    homepage = "https://github.com/lxc/python2-lxc";
-    license = licenses.lgpl2;
-    maintainers = with maintainers; [ mic92 ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/magicgui/default.nix b/pkgs/development/python-modules/magicgui/default.nix
new file mode 100644
index 00000000000..03ca9d79159
--- /dev/null
+++ b/pkgs/development/python-modules/magicgui/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, pytestCheckHook
+, pytest-mypy-plugins
+, typing-extensions
+, qtpy
+, pyside2
+, psygnal
+, docstring-parser
+}: buildPythonPackage rec {
+  pname = "magicgui";
+  version = "0.3.0";
+  src = fetchFromGitHub {
+    owner = "napari";
+    repo = "magicgui";
+    rev = "v${version}";
+    sha256 = "sha256-DvL1szk2RoCrpisjp0BVNL6qFZtYc2oYDenX59Cxbug=";
+  };
+  nativeBuildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [ typing-extensions qtpy pyside2 psygnal docstring-parser ];
+  checkInputs = [ pytestCheckHook pytest-mypy-plugins ];
+  doCheck = false; # Reports "Fatal Python error"
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  meta = with lib; {
+    description = "Build GUIs from python functions, using magic.  (napari/magicgui)";
+    homepage = "https://github.com/napari/magicgui";
+    license = licenses.mit;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/manimpango/default.nix b/pkgs/development/python-modules/manimpango/default.nix
index 5ff88388818..0b84726d5a5 100644
--- a/pkgs/development/python-modules/manimpango/default.nix
+++ b/pkgs/development/python-modules/manimpango/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "manimpango";
-  version = "0.4.0";
+  version = "0.4.0.post0";
 
   src = fetchFromGitHub {
     owner = "ManimCommunity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1qffb04bz4s2anb6a7nm6dpqwdlvq6626z1whqwrwsvn8z9sry76";
+    sha256 = "1avlh6wk6a2mq6fl2idqk2z5bncglyla8p9m7az0430k9vdv4qks";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/mapsplotlib/default.nix b/pkgs/development/python-modules/mapsplotlib/default.nix
deleted file mode 100644
index 28a6e9c0c5c..00000000000
--- a/pkgs/development/python-modules/mapsplotlib/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, buildPythonPackage
-, isPy3k
-, fetchPypi
-, matplotlib
-, scipy
-, pandas
-, requests
-, pillow
-}:
-
-buildPythonPackage rec {
-  pname = "mapsplotlib";
-  version = "1.2.1";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "7650754e3175f13a1cb4406a62e4cfeb424036377992b9c3c2e3f6c2404d06b3";
-  };
-
-  propagatedBuildInputs = [ matplotlib scipy pandas requests pillow ];
-
-  meta = with lib; {
-    description = "Custom Python plots on a Google Maps background";
-    homepage = "https://github.com/tcassou/mapsplotlib";
-    license = licenses.mit;
-    maintainers = [ maintainers.rob ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/marionette-harness/default.nix b/pkgs/development/python-modules/marionette-harness/default.nix
deleted file mode 100644
index 187e3a646a0..00000000000
--- a/pkgs/development/python-modules/marionette-harness/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, mozprofile
-, mozversion
-, moztest
-, manifestparser
-, marionette_driver
-, browsermob-proxy
-, wptserve
-}:
-
-buildPythonPackage rec {
-  pname = "marionette-harness";
-  version = "5.0.0";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "041cd779ae383fb5c56f2bb44824f4e80ba895febd9a3f21570ac274221c82e0";
-  };
-
-  propagatedBuildInputs = [ mozprofile mozversion browsermob-proxy moztest
-    wptserve manifestparser marionette_driver ];
-
-  meta = {
-    description = "Mozilla Marionette protocol test automation harness";
-    homepage = "https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/marionette_driver.nix b/pkgs/development/python-modules/marionette-harness/marionette_driver.nix
deleted file mode 100644
index 28193528ed2..00000000000
--- a/pkgs/development/python-modules/marionette-harness/marionette_driver.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, mozversion
-, mozrunner
-}:
-
-buildPythonPackage rec {
-  pname = "marionette_driver";
-  version = "3.0.0";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "99ca2513d4e2ca29a08e550346f23947a50627a2b02f6ad36a4550e779fa0ce8";
-  };
-
-  propagatedBuildInputs = [ mozversion mozrunner ];
-
-  meta = {
-    description = "Mozilla Marionette driver";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Marionette";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozcrash.nix b/pkgs/development/python-modules/marionette-harness/mozcrash.nix
deleted file mode 100644
index 18b39307a17..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozcrash.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozfile
-, mozlog
-}:
-
-buildPythonPackage rec {
-  pname = "mozcrash";
-  version = "1.1.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "8c2d2f32bd6e0ba3644f5d16e427444d8cb51ec1e9baa340a33e10687307f8c4";
-  };
-
-  propagatedBuildInputs = [ mozfile mozlog ];
-
-  meta = {
-    description = "Minidump stack trace extractor";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozdevice.nix b/pkgs/development/python-modules/marionette-harness/mozdevice.nix
deleted file mode 100644
index 56c8fc5254d..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozdevice.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozlog
-, moznetwork
-, mozprocess
-}:
-
-buildPythonPackage rec {
-  pname = "mozdevice";
-  version = "3.0.7";
-  format = "wheel";
-
-  src = fetchPypi {
-    inherit pname version format;
-    sha256 = "1n7l3drdh3rm3320v98c9hhh37ljk9l861hyw18psca7jdd717n5";
-  };
-
-  propagatedBuildInputs = [ mozlog moznetwork mozprocess ];
-
-  meta = {
-    description = "Mozilla-authored device management";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozfile.nix b/pkgs/development/python-modules/marionette-harness/mozfile.nix
deleted file mode 100644
index 2cce0a22124..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozfile.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, six
-}:
-
-buildPythonPackage rec {
-  pname = "mozfile";
-  version = "2.1.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "e5dc835582ea150e35ecd57e9d86cb707d3aa3b2505679db7332326dd49fd6b8";
-  };
-
-  propagatedBuildInputs = [ six ];
-
-  # mozhttpd -> moznetwork -> mozinfo -> mozfile
-  doCheck = false;
-
-  meta = {
-    description = "File utilities for Mozilla testing";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozhttpd.nix b/pkgs/development/python-modules/marionette-harness/mozhttpd.nix
deleted file mode 100644
index a7cbb7ece08..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozhttpd.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, moznetwork
-}:
-
-buildPythonPackage rec {
-  pname = "mozhttpd";
-  version = "0.7.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "3e2a9b4d6c007a1a9fb729d6e95b5404d138914727747e10155426492dced975";
-  };
-
-  propagatedBuildInputs = [ moznetwork ];
-
-  meta = {
-    description = "Webserver for Mozilla testing";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozinfo.nix b/pkgs/development/python-modules/marionette-harness/mozinfo.nix
deleted file mode 100644
index 99f3afc31f6..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozinfo.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, mozfile
-}:
-
-buildPythonPackage rec {
-  pname = "mozinfo";
-  version = "1.1.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "4525c26350fb85c26b38c5f853a19f47b17b49a74de363d285d54258972a4cbc";
-  };
-
-  disabled = isPy3k;
-
-  propagatedBuildInputs = [ mozfile ];
-
-  meta = with lib; {
-    description = "System information utilities for Mozilla testing";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = licenses.mpl20;
-    maintainers = with maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozlog.nix b/pkgs/development/python-modules/marionette-harness/mozlog.nix
deleted file mode 100644
index ee1aed055e7..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozlog.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, blessings
-, mozterm
-, six
-, mozfile
-}:
-
-buildPythonPackage rec {
-  pname = "mozlog";
-  version = "5.0";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0h1hgs13c1w0wvz60400i37m00077li1ky28j7kgx4bl75pkd3sw";
-  };
-
-  propagatedBuildInputs = [ blessings mozterm six ];
-
-  checkInputs = [ mozfile ];
-
-  meta = {
-    description = "Mozilla logging library";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/moznetwork.nix b/pkgs/development/python-modules/marionette-harness/moznetwork.nix
deleted file mode 100644
index 6bdc93f680a..00000000000
--- a/pkgs/development/python-modules/marionette-harness/moznetwork.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozlog
-, mozinfo
-}:
-
-buildPythonPackage rec {
-  pname = "moznetwork";
-  version = "1.0.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0ws20l4ggb6mj7ycwrk5h7hj1jmj3mj0ca48k5jzsa4n042ahwrd";
-  };
-
-  propagatedBuildInputs = [ mozlog mozinfo ];
-
-  meta = {
-    description = "Network utilities for Mozilla testing";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozprocess.nix b/pkgs/development/python-modules/marionette-harness/mozprocess.nix
deleted file mode 100644
index 91ed225ecb8..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozprocess.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozinfo
-}:
-
-buildPythonPackage rec {
-  pname = "mozprocess";
-  version = "1.0.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "a0fd8367e663d3cac74ee46bffa789667bc8d52f242d81a14522205fa6650cb2";
-  };
-
-  propagatedBuildInputs = [ mozinfo ];
-
-  meta = {
-    description = "Mozilla-authored process handling";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozprofile.nix b/pkgs/development/python-modules/marionette-harness/mozprofile.nix
deleted file mode 100644
index 7075a37263b..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozprofile.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozlog
-, mozfile
-, mozhttpd
-, wptserve
-}:
-
-buildPythonPackage rec {
-  pname = "mozprofile";
-  version = "2.4.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "09l18x72vahq7il9nj6qj7la2d21vvbcn9szlm3vsvsbkz68w0yk";
-  };
-
-  propagatedBuildInputs = [ mozlog mozfile mozhttpd ];
-
-  checkInputs = [ wptserve ];
-
-  meta = {
-    description = "Mozilla application profile handling library";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozrunner.nix b/pkgs/development/python-modules/marionette-harness/mozrunner.nix
deleted file mode 100644
index fc1d8a7bc7c..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozrunner.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozdevice
-, mozfile
-, mozinfo
-, mozlog
-, mozprocess
-, mozprofile
-, mozcrash
-}:
-
-buildPythonPackage rec {
-  pname = "mozrunner";
-  version = "7.7.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "04s6w0sp83bn3c6ym75rnlpmcy3yr7d35jxkxhgzmy75gbcps7bi";
-  };
-
-  propagatedBuildInputs = [ mozdevice mozfile mozinfo mozlog mozprocess
-    mozprofile mozcrash ];
-
-  meta = {
-    description = "Mozilla application start/stop helpers";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/moztest.nix b/pkgs/development/python-modules/marionette-harness/moztest.nix
deleted file mode 100644
index 1c9f9259d99..00000000000
--- a/pkgs/development/python-modules/marionette-harness/moztest.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozinfo
-}:
-
-buildPythonPackage rec {
-  pname = "moztest";
-  version = "0.8";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1pg9pqq4xnn14k1jqbyqg81zag2v66y725537v6hixi41yiqkdas";
-  };
-
-  propagatedBuildInputs = [ mozinfo ];
-
-  meta = {
-    description = "Mozilla test result storage and output";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/marionette-harness/mozversion.nix b/pkgs/development/python-modules/marionette-harness/mozversion.nix
deleted file mode 100644
index 9717a847d35..00000000000
--- a/pkgs/development/python-modules/marionette-harness/mozversion.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mozlog
-, mozdevice
-}:
-
-buildPythonPackage rec {
-  pname = "mozversion";
-  version = "2.2.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0jczc1yr2yi3mf1qdgpvg9sidp5hf3jplzs4917j65ymvk2zw9na";
-  };
-
-  propagatedBuildInputs = [ mozlog mozdevice ];
-
-  meta = {
-    description = "Application version information library";
-    homepage = "https://wiki.mozilla.org/Auto-tools/Projects/Mozbase";
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/matplotlib/2.nix b/pkgs/development/python-modules/matplotlib/2.nix
deleted file mode 100644
index 96d33b681eb..00000000000
--- a/pkgs/development/python-modules/matplotlib/2.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-{ lib, stdenv, fetchPypi, writeText, python, buildPythonPackage, pycairo, backports_functools_lru_cache
-, which, cycler, python-dateutil, nose, numpy, pyparsing, sphinx, tornado, kiwisolver
-, freetype, libpng, pkg-config, mock, pytz, pygobject3, gobject-introspection, functools32, subprocess32
-, fetchpatch
-, enableGhostscript ? false, ghostscript, gtk3
-, enableGtk3 ? false, cairo
-# darwin has its own "MacOSX" backend
-, enableTk ? !stdenv.isDarwin, tcl, tk, tkinter, libX11
-, enableQt ? false, pyqt4
-, Cocoa
-, pythonOlder
-}:
-
-buildPythonPackage rec {
-  version = "2.2.3";
-  pname = "matplotlib";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "7355bf757ecacd5f0ac9dd9523c8e1a1103faadf8d33c22664178e17533f8ce5";
-  };
-
-  patches = [
-    # https://github.com/matplotlib/matplotlib/pull/12478
-    (fetchpatch {
-      name = "numpy-1.16-compat.patch";
-      url = "https://github.com/matplotlib/matplotlib/commit/2980184d092382a40ab21f95b79582ffae6e19d6.patch";
-      sha256 = "1c0wj28zy8s5h6qiavx9zzbhlmhjwpzbc3fyyw9039mbnqk0spg2";
-    })
-  ];
-
-  XDG_RUNTIME_DIR = "/tmp";
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ which sphinx ]
-    ++ lib.optional enableGhostscript ghostscript
-    ++ lib.optional stdenv.isDarwin [ Cocoa ];
-
-  propagatedBuildInputs =
-    [ cycler python-dateutil nose numpy pyparsing tornado freetype kiwisolver
-      libpng mock pytz ]
-    ++ lib.optional (pythonOlder "3.3") backports_functools_lru_cache
-    ++ lib.optionals enableGtk3 [ cairo pycairo gtk3 gobject-introspection pygobject3 ]
-    ++ lib.optionals enableTk [ tcl tk tkinter libX11 ]
-    ++ lib.optionals enableQt [ pyqt4 ]
-    ++ lib.optionals python.isPy2 [ functools32 subprocess32 ];
-
-  passthru.config = {
-    directories = { basedirlist = "."; };
-  };
-  setup_cfg = writeText "setup.cfg" (lib.generators.toINI {} passthru.config);
-  preBuild = ''
-    cp "$setup_cfg" ./setup.cfg
-  '';
-
-  # Matplotlib tries to find Tcl/Tk by opening a Tk window and asking the
-  # corresponding interpreter object for its library paths. This fails if
-  # `$DISPLAY` is not set. The fallback option assumes that Tcl/Tk are both
-  # installed under the same path which is not true in Nix.
-  # With the following patch we just hard-code these paths into the install
-  # script.
-  postPatch =
-    let
-      tcl_tk_cache = ''"${tk}/lib", "${tcl}/lib", "${lib.strings.substring 0 3 tk.version}"'';
-    in
-    lib.optionalString enableTk
-      "sed -i '/self.tcl_tk_cache = None/s|None|${tcl_tk_cache}|' setupext.py";
-
-  # Matplotlib needs to be built against a specific version of freetype in
-  # order for all of the tests to pass.
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Python plotting library, making publication quality plots";
-    homepage    = "https://matplotlib.org/";
-    maintainers = with maintainers; [ lovek323 veprbl ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/matrix-nio/default.nix b/pkgs/development/python-modules/matrix-nio/default.nix
index 96f333fcf8a..69721aeb828 100644
--- a/pkgs/development/python-modules/matrix-nio/default.nix
+++ b/pkgs/development/python-modules/matrix-nio/default.nix
@@ -41,12 +41,14 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace 'aiofiles = "^0.6.0"' 'aiofiles = "*"'
+    # Remove after https://github.com/poljar/matrix-nio/pull/288
+    substituteInPlace pyproject.toml \
+      --replace 'aiohttp-socks = "^0.6.0"' 'aiohttp-socks = "^0.7.0"'
   '';
 
   nativeBuildInputs = [
     git
     poetry-core
-    pytestCheckHook
   ];
 
   propagatedBuildInputs = [
@@ -73,8 +75,11 @@ buildPythonPackage rec {
     hypothesis
     pytest-aiohttp
     pytest-benchmark
+    pytestCheckHook
   ];
 
+  pytestFlagsArray = [ "--benchmark-disable" ];
+
   disabledTests = [
     # touches network
     "test_connect_wrapper"
diff --git a/pkgs/development/python-modules/mautrix/default.nix b/pkgs/development/python-modules/mautrix/default.nix
index 3fa2875d984..1be685e013b 100644
--- a/pkgs/development/python-modules/mautrix/default.nix
+++ b/pkgs/development/python-modules/mautrix/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "mautrix";
-  version = "0.12.4";
+  version = "0.14.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c8d226a96e57d52bb532d7e572ba5670d2e2143f720063a4bbd04a77049030d4";
+    sha256 = "5ad04e87bcf31eb3479fdd3cabd5082b257013e5c00f6b369539a2b584afadaf";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/meliae/default.nix b/pkgs/development/python-modules/meliae/default.nix
deleted file mode 100644
index 4c6aa746448..00000000000
--- a/pkgs/development/python-modules/meliae/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, cython
-, isPy3k
-, simplejson
-}:
-
-buildPythonPackage rec {
-  pname = "meliae";
-  version = "0.4.0";
-
-  src = fetchPypi {
-    inherit pname;
-    # FIXME when updating to the next version: The tarball on pypi is called
-    # "meliae-0.4.0.tar.gz" while the version within that tarball is
-    # "0.4.0.final.0".
-    version = "0.4.0";
-    sha256 = "976519ab02aaa6a8fb5f596dc4dd9f64fc9510b00e054979566e51c9be7cec99";
-  };
-
-  disabled = isPy3k;
-
-  doCheck = true;
-
-  checkPhase = ''
-    python setup.py build_ext -i
-    python run_tests.py
-  '';
-
-  checkInputs = [ simplejson ];
-
-  propagatedBuildInputs = [ cython ];
-
-  meta = with lib; {
-    description = "Python Memory Usage Analyzer";
-    homepage = "https://launchpad.net/meliae";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ xvapx ];
-  };
-}
diff --git a/pkgs/development/python-modules/memcached/default.nix b/pkgs/development/python-modules/memcached/default.nix
index 02f4bc3aa44..e7a41d7b238 100644
--- a/pkgs/development/python-modules/memcached/default.nix
+++ b/pkgs/development/python-modules/memcached/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python API for communicating with the memcached distributed memory object cache daemon";
-    homepage = "http://www.tummy.com/Community/software/python-memcached/";
+    homepage = "https://github.com/linsomniac/python-memcached";
     license = licenses.psfl;
   };
 
diff --git a/pkgs/development/python-modules/meshtastic/default.nix b/pkgs/development/python-modules/meshtastic/default.nix
index 72e8a711bb8..0d1e17afc38 100644
--- a/pkgs/development/python-modules/meshtastic/default.nix
+++ b/pkgs/development/python-modules/meshtastic/default.nix
@@ -12,12 +12,13 @@
 , pythonOlder
 , pyyaml
 , tabulate
+, pytap2
 , timeago
 }:
 
 buildPythonPackage rec {
   pname = "meshtastic";
-  version = "1.2.46";
+  version = "1.2.51";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -26,7 +27,7 @@ buildPythonPackage rec {
     owner = "meshtastic";
     repo = "Meshtastic-python";
     rev = version;
-    sha256 = "sha256-XNoAt0R3Jt8i0erovwHBIJ3l9bY5po2UjRl/uzGBs9k=";
+    sha256 = "sha256-CMoa7FQnGTWS14WmWvuryO2bKMWC05PBIDBlEWRjNRA=";
   };
 
   propagatedBuildInputs = [
@@ -43,6 +44,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
+    pytap2
     pytestCheckHook
   ];
 
diff --git a/pkgs/development/python-modules/metaphone/default.nix b/pkgs/development/python-modules/metaphone/default.nix
deleted file mode 100644
index d6b0c30c504..00000000000
--- a/pkgs/development/python-modules/metaphone/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, buildPythonPackage, isPy3k, fetchPypi, nose }:
-
-buildPythonPackage rec {
-  pname = "metaphone";
-  version = "0.6";
-
-  src = fetchPypi {
-    pname = "Metaphone";
-    inherit version;
-    sha256 = "09ysaczwh2rlsqq9j5fz7m4pq2fs0axp5vvivrpfrdvclvffl2xd";
-  };
-
-  disabled = isPy3k;
-
-  buildInputs = [ nose ];
-
-  meta = with lib; {
-    homepage = "https://github.com/oubiwann/metaphone";
-    description = "A Python implementation of the metaphone and double metaphone algorithms";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ ris ];
-  };
-}
diff --git a/pkgs/development/python-modules/minio/default.nix b/pkgs/development/python-modules/minio/default.nix
index 19c54924384..477ed47e9dd 100644
--- a/pkgs/development/python-modules/minio/default.nix
+++ b/pkgs/development/python-modules/minio/default.nix
@@ -16,14 +16,16 @@
 
 buildPythonPackage rec {
   pname = "minio";
-  version = "7.1.1";
+  version = "7.1.2";
+  format = "setuptools";
+
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "minio-py";
     rev = version;
-    sha256 = "sha256-dUNx6r7KppfeHefa1IeJPXSEMyElPk+RAGdn447ax1g=";
+    sha256 = "sha256-KluSdmhpSSqUTLVdFpIGwre7LOu3A16rt73FvaTmuz8=";
   };
 
   propagatedBuildInputs = [
@@ -42,12 +44,14 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  # example credentials aren't present
   disabledTestPaths = [
+    # example credentials aren't present
     "tests/unit/credentials_test.py"
   ];
 
-  pythonImportsCheck = [ "minio" ];
+  pythonImportsCheck = [
+    "minio"
+  ];
 
   meta = with lib; {
     description = "Simple APIs to access any Amazon S3 compatible object storage server";
diff --git a/pkgs/development/python-modules/mocket/default.nix b/pkgs/development/python-modules/mocket/default.nix
index 7225e695c87..9d6c64da215 100644
--- a/pkgs/development/python-modules/mocket/default.nix
+++ b/pkgs/development/python-modules/mocket/default.nix
@@ -19,12 +19,12 @@
 
 buildPythonPackage rec {
   pname = "mocket";
-  version = "3.10.1";
+  version = "3.10.2";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c77e75432c21108e5a28a529793eb2b82753b6f7050ac9f59fc5d7a72fa74c0f";
+    sha256 = "sha256-bb/Uf9xWKRNr27SHzTzI14a0At9Ua5xxBr7XN2d6qfQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/moinmoin/default.nix b/pkgs/development/python-modules/moinmoin/default.nix
deleted file mode 100644
index b4ecf28724a..00000000000
--- a/pkgs/development/python-modules/moinmoin/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, buildPythonPackage, fetchurl, isPy3k
-, pytest, werkzeug, pygments
-}:
-
-buildPythonPackage rec {
-  pname = "moinmoin";
-  version = "1.9.11";
-
-  # SyntaxError in setup.py
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "http://static.moinmo.in/files/moin-${version}.tar.gz";
-    sha256 = "sha256-Ar4x1V851P4MYlPfi0ngG3bQlWNMvRtW0YX2bh4MPPU=";
-  };
-
-  patches = [
-    # Recommended to install on their download page.
-    ./fix_tests.patch
-  ];
-
-  prePatch = ''
-    sed -i "s/\xfc/ü/" setup.cfg
-  '';
-
-  checkInputs = [ pytest werkzeug pygments ];
-
-  meta = with lib; {
-    description = "Advanced, easy to use and extensible WikiEngine";
-
-    homepage = "https://moinmo.in/";
-
-    license = licenses.gpl2Plus;
-  };
-}
diff --git a/pkgs/development/python-modules/moinmoin/fix_tests.patch b/pkgs/development/python-modules/moinmoin/fix_tests.patch
deleted file mode 100644
index e9856eeffca..00000000000
--- a/pkgs/development/python-modules/moinmoin/fix_tests.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -ru3 moin-1.9.9-old/MoinMoin/conftest.py moin-1.9.9-new/MoinMoin/conftest.py
---- moin-1.9.9-old/MoinMoin/conftest.py	2016-10-31 23:44:02.000000000 +0300
-+++ moin-1.9.9-new/MoinMoin/conftest.py	2018-02-18 12:13:19.551929093 +0300
-@@ -22,10 +22,11 @@
- 
- import atexit
- import sys
-+import os
- 
- import py
- 
--rootdir = py.magic.autopath().dirpath()
-+rootdir = os.path.abspath(os.path.dirname(__file__))
- moindir = rootdir.join("..")
- sys.path.insert(0, str(moindir))
- 
diff --git a/pkgs/development/python-modules/mozsvc/default.nix b/pkgs/development/python-modules/mozsvc/default.nix
deleted file mode 100644
index 0caa347edac..00000000000
--- a/pkgs/development/python-modules/mozsvc/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pyramid
-, simplejson
-, konfig
-}:
-
-buildPythonPackage rec {
-  pname = "mozsvc";
-  version = "0.10";
-
-  src = fetchFromGitHub {
-    owner = "mozilla-services";
-    repo = "mozservices";
-    rev = version;
-    sha256 = "0a0558g8j55pd1nnhnnf3k377jv6cah8lxb24v98rq8kxr5960cg";
-  };
-
-  doCheck = false; # too many dependencies and conflicting versions; I (nadrieril) gave up
-  propagatedBuildInputs = [ pyramid simplejson konfig ];
-
-  meta = with lib; {
-    homepage = "https://github.com/mozilla-services/mozservices";
-    description = "Various utilities for Mozilla apps";
-    license = licenses.mpl20;
-    maintainers = with maintainers; [ nadrieril ];
-  };
-}
diff --git a/pkgs/development/python-modules/mozterm/default.nix b/pkgs/development/python-modules/mozterm/default.nix
deleted file mode 100644
index c7f2b4cbc34..00000000000
--- a/pkgs/development/python-modules/mozterm/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, six }:
-
-buildPythonPackage rec {
-  pname = "mozterm";
-  version = "1.0.0";
-
-  # name 'unicode' is not defined
-  disabled = isPy3k;
-
-  propagatedBuildInputs = [six];
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "b1e91acec188de07c704dbb7b0100a7be5c1e06567b3beb67f6ea11d00a483a4";
-  };
-
-  meta = with lib; {
-    description = "Terminal abstractions built around the blessings module";
-    license = licenses.mpl20;
-  };
-}
diff --git a/pkgs/development/python-modules/mpd/default.nix b/pkgs/development/python-modules/mpd/default.nix
deleted file mode 100644
index b535144fac9..00000000000
--- a/pkgs/development/python-modules/mpd/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "python-mpd";
-  version = "0.3.0";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "02812eba1d2e0f46e37457f5a6fa23ba203622e4bcab0a19b265e66b08cd21b4";
-  };
-
-  meta = with lib; {
-    description = "An MPD (Music Player Daemon) client library written in pure Python";
-    homepage = "http://jatreuman.indefero.net/p/python-mpd/";
-    license = licenses.gpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/mrbob/default.nix b/pkgs/development/python-modules/mrbob/default.nix
deleted file mode 100644
index 8921719a3ae..00000000000
--- a/pkgs/development/python-modules/mrbob/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ buildPythonPackage, lib, glibcLocales, mock, nose, isPy3k, jinja2, six
-, fetchPypi
-}:
-
-buildPythonPackage rec {
-  pname = "mr-bob";
-  version = "0.1.2";
-
-  src = fetchPypi {
-    inherit version;
-    pname = "mr.bob";
-    sha256 = "6737eaf98aaeae85e07ebef844ee5156df2f06a8b28d7c3dcb056f811c588121";
-  };
-
-  disabled = isPy3k;
-
-  checkInputs = [ nose glibcLocales mock ];
-  checkPhase = ''
-    LC_ALL="en_US.UTF-8" nosetests
-  '';
-
-  propagatedBuildInputs = [ jinja2 six ];
-
-  meta = with lib; {
-    homepage = "https://github.com/domenkozar/mr.bob";
-    description = "A tool to generate code skeletons from templates";
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/msrplib/default.nix b/pkgs/development/python-modules/msrplib/default.nix
deleted file mode 100644
index e615b3e34e2..00000000000
--- a/pkgs/development/python-modules/msrplib/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchdarcs
-, eventlib
-, application
-, gnutls
-}:
-
-buildPythonPackage rec {
-  pname = "python-msrplib";
-  version = "0.19.2";
-
-  src = fetchdarcs {
-    url = "http://devel.ag-projects.com/repositories/${pname}";
-    rev = "release-${version}";
-    sha256 = "0d0krwv4hhspjgppnvh0iz51bvdbz23cjasgrppip7x8b00514gz";
-  };
-
-  propagatedBuildInputs = [ eventlib application gnutls ];
-
-  meta = with lib; {
-    homepage = "https://github.com/AGProjects/python-msrplib";
-    description = "Client library for MSRP protocol and its relay extension (RFC 4975 and RFC4976)";
-    license = licenses.lgpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/mutf8/default.nix b/pkgs/development/python-modules/mutf8/default.nix
index ce783bbb5ff..954cc663c2a 100644
--- a/pkgs/development/python-modules/mutf8/default.nix
+++ b/pkgs/development/python-modules/mutf8/default.nix
@@ -7,7 +7,8 @@
 
 buildPythonPackage rec {
   pname = "mutf8";
-  version = "1.0.5";
+  version = "1.0.6";
+  format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
@@ -15,7 +16,7 @@ buildPythonPackage rec {
     owner = "TkTech";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0blp6gb7q3f7if326xard8zlfg2rcmb3a7mxvaxgkvxigipjb9af";
+    hash = "sha256-4Ojn3t0EbOVdrYEiY8JegJuvW9sz8jt9tKFwOluiGQo=";
   };
 
   checkInputs = [
@@ -27,7 +28,9 @@ buildPythonPackage rec {
     pytest
   '';
 
-  pythonImportsCheck = [ "mutf8" ];
+  pythonImportsCheck = [
+    "mutf8"
+  ];
 
   meta = with lib; {
     description = "Fast MUTF-8 encoder & decoder";
diff --git a/pkgs/development/python-modules/muttils/default.nix b/pkgs/development/python-modules/muttils/default.nix
deleted file mode 100644
index 98f96d13212..00000000000
--- a/pkgs/development/python-modules/muttils/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, isPy3k
-}:
-
-buildPythonPackage {
-  pname = "muttils";
-  version = "1.3";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "https://www.blacktrash.org/hg/muttils/archive/8bb26094df06.tar.bz2";
-    sha256 = "1a4kxa0fpgg6rdj5p4kggfn8xpniqh8v5kbiaqc6wids02m7kag6";
-  };
-
-  # Tests don't work
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Utilities for use with console mail clients, like mutt";
-    homepage = "https://www.blacktrash.org/hg/muttils";
-    license = licenses.gpl2Plus;
-  };
-
-}
diff --git a/pkgs/development/python-modules/mwlib-ext/default.nix b/pkgs/development/python-modules/mwlib-ext/default.nix
deleted file mode 100644
index b9b18eaf9e5..00000000000
--- a/pkgs/development/python-modules/mwlib-ext/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  version = "0.13.2";
-  pname = "mwlib.ext";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    extension = "zip";
-    sha256 = "9229193ee719568d482192d9d913b3c4bb96af7c589d6c31ed4a62caf5054278";
-  };
-
-  meta = with lib; {
-    description = "Dependencies for mwlib markup";
-    homepage = "http://pediapress.com/code/";
-    license = licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/mwlib-rl/default.nix b/pkgs/development/python-modules/mwlib-rl/default.nix
deleted file mode 100644
index fdb70726eb6..00000000000
--- a/pkgs/development/python-modules/mwlib-rl/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mwlib
-, mwlib-ext
-, pygments
-}:
-
-buildPythonPackage rec {
-  version = "0.14.5";
-  pname = "mwlib.rl";
-
-  src = fetchPypi {
-    inherit pname version;
-    extension = "zip";
-    sha256 = "dddf9603ea0ca5aa87890217709eb5a5b16baeca547db3daad43c3ace73b6bc1";
-  };
-
-  buildInputs = [ mwlib mwlib-ext pygments ];
-
-  meta = with lib; {
-    description = "Generate pdfs from mediawiki markup";
-    homepage = "http://pediapress.com/code/";
-    license = licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/mwlib/default.nix b/pkgs/development/python-modules/mwlib/default.nix
deleted file mode 100644
index d9edb2ef3ba..00000000000
--- a/pkgs/development/python-modules/mwlib/default.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, apipkg
-, bottle
-, gevent
-, lxml
-, odfpy
-, pillow
-, py
-, pyPdf
-, pyparsing
-, qserve
-, roman
-, simplejson
-, sqlite3dbm
-, timelib
-, pytest
-}:
-
-buildPythonPackage rec {
-  version = "0.16.1";
-  pname = "mwlib";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1dnmnkc21zdfaypskbpvkwl0wpkpn0nagj1fc338w64mbxrk8ny7";
-  };
-
-  propagatedBuildInputs = [ apipkg bottle gevent lxml odfpy pillow py pyPdf pyparsing qserve roman simplejson sqlite3dbm timelib ];
-
-  checkInputs = [ pytest ];
-
-  postPatch = ''
-    sed -i "s/odfpy>=0.9, <0.10/odfpy/" setup.py
-    sed -i "s/pyparsing>=1.4.11,<1.6/pyparsing/" setup.py
-  '';
-
-  checkPhase = ''
-    py.test
-  '';
-
-  # Tests are in build directory but we need extension modules that are in $out
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Library for parsing MediaWiki articles and converting them to different output formats";
-    homepage = "http://pediapress.com/code/";
-    license = licenses.bsd3;
-    # broken = true; # Requires different versions of packages
-  };
-
-}
diff --git a/pkgs/development/python-modules/mypy/default.nix b/pkgs/development/python-modules/mypy/default.nix
index 99580e2de37..149aefb9a57 100644
--- a/pkgs/development/python-modules/mypy/default.nix
+++ b/pkgs/development/python-modules/mypy/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "mypy";
-  version = "unstable-2021-11-14";
+  version = "0.930";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "python";
     repo = "mypy";
-    rev = "053a1beb94ee4e5b3260725594315d1b6776e42f";
-    sha256 = "sha256-q2ntj3y3GgXrw4v+yMvcqWFv4y/6YwunIj3bNzU9CH0=";
+    rev = "v${version}";
+    sha256 = "sha256-0yo6f9hRYFfwdfukOGNNTgPCIFO2MZdfMvzbci7FWRs=";
   };
 
   patches = [
@@ -33,11 +33,6 @@ buildPythonPackage rec {
     })
   ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "tomli>=1.1.0,<1.2.0" "tomli"
-  '';
-
   buildInputs = [
     types-typed-ast
   ];
diff --git a/pkgs/development/python-modules/namebench/default.nix b/pkgs/development/python-modules/namebench/default.nix
deleted file mode 100644
index b7b542b8a7a..00000000000
--- a/pkgs/development/python-modules/namebench/default.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ lib
-, buildPythonPackage
-, isPy3k
-, isPyPy
-, fetchurl
-, tkinter
-}:
-
-buildPythonPackage rec {
-  pname = "namebench";
-  version = "1.3.1";
-  disabled = isPy3k || isPyPy;
-
-  src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/{pname}/${pname}-${version}-source.tgz";
-    sha256 = "09clbcd6wxgk4r6qw7hb78h818mvca7lijigy1mlq5y1f3lgkk1h";
-  };
-
-  # error: invalid command 'test'
-  doCheck = false;
-
-  propagatedBuildInputs = [ tkinter ];
-
-  # namebench expects to be run from its own source tree (it uses relative
-  # paths to various resources), make it work.
-  postInstall = ''
-    sed -i "s|import os|import os; os.chdir(\"$out/namebench\")|" "$out/bin/namebench.py"
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/google/namebench"; # Formerly https://code.google.com/archive/p/namebench/
-    description = "Find fastest DNS servers available";
-    license = with licenses; [
-      asl20
-      # third-party program licenses (embedded in the sources)
-      lgpl21 # Crystal_Clear
-      isc # dns
-      bsd3 # jinja2
-    ];
-    longDescription = ''
-      It hunts down the fastest DNS servers available for your computer to
-      use. namebench runs a fair and thorough benchmark using your web
-      browser history, tcpdump output, or standardized datasets in order
-      to provide an individualized recommendation. namebench is completely
-      free and does not modify your system in any way.
-    '';
-  };
-
-}
diff --git a/pkgs/development/python-modules/napari-console/default.nix b/pkgs/development/python-modules/napari-console/default.nix
new file mode 100644
index 00000000000..f809587f75f
--- /dev/null
+++ b/pkgs/development/python-modules/napari-console/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, pytestCheckHook
+, pytest
+, ipython
+, ipykernel
+, qtconsole
+, napari-plugin-engine
+, imageio
+}: buildPythonPackage rec {
+  pname = "napari-console";
+  version = "0.0.4";
+  src = fetchFromGitHub {
+    owner = "napari";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-aVdYOzkZ+dqB680oDjNCg6quXU+QgUZI09E/MSTagyA=";
+  };
+  nativeBuildInputs = [ setuptools-scm ];
+  # setup.py somehow requires pytest
+  propagatedBuildInputs = [ pytest ipython ipykernel napari-plugin-engine imageio qtconsole ];
+  chechInputs = [ pytestCheckHook ];
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  meta = with lib; {
+    description = "A plugin that adds a console to napari";
+    homepage = "https://github.com/napari/napari-console";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/napari-plugin-engine/default.nix b/pkgs/development/python-modules/napari-plugin-engine/default.nix
new file mode 100644
index 00000000000..802b25e8df1
--- /dev/null
+++ b/pkgs/development/python-modules/napari-plugin-engine/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, pytestCheckHook
+}: buildPythonPackage rec {
+  pname = "napari-plugin-engine";
+  version = "0.2.0";
+  src = fetchFromGitHub {
+    owner = "napari";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-cKpCAEYYRq3UPje7REjzhEe1J9mmrtXs8TBnxWukcNE=";
+  };
+  nativeBuildInputs = [ setuptools-scm ];
+  checkInputs = [ pytestCheckHook ];
+  doCheck = false;
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  meta = with lib; {
+    description = "A fork of pluggy for napari - plugin management package";
+    homepage = "https://github.com/napari/napari-plugin-engine";
+    license = licenses.mit;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/napari-svg/default.nix b/pkgs/development/python-modules/napari-svg/default.nix
new file mode 100644
index 00000000000..89101e82444
--- /dev/null
+++ b/pkgs/development/python-modules/napari-svg/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, pytestCheckHook
+, vispy
+, napari-plugin-engine
+, imageio
+}: buildPythonPackage rec {
+  pname = "napari-svg";
+  version = "0.1.5";
+  src = fetchFromGitHub {
+    owner = "napari";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-20NLi6JTugP+hxqF2AnhSkuvhkGGbeG+tT3M2SZbtRc=";
+  };
+  nativeBuildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [ vispy napari-plugin-engine imageio ];
+  checkInputs = [ pytestCheckHook ];
+  doCheck = false; # Circular dependency: napari
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  meta = with lib; {
+    description = "A plugin for writing svg files from napari";
+    homepage = "https://github.com/napari/napari-svg";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/napari/default.nix b/pkgs/development/python-modules/napari/default.nix
new file mode 100644
index 00000000000..74936da4f72
--- /dev/null
+++ b/pkgs/development/python-modules/napari/default.nix
@@ -0,0 +1,75 @@
+{ lib
+, mkDerivationWith
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, superqt
+, typing-extensions
+, tifffile
+, napari-plugin-engine
+, pint
+, pyyaml
+, numpydoc
+, dask
+, magicgui
+, docstring-parser
+, appdirs
+, imageio
+, pyopengl
+, cachey
+, napari-svg
+, psutil
+, napari-console
+, wrapt
+, pydantic
+, tqdm
+, jsonschema
+, scipy
+, wrapQtAppsHook
+}: mkDerivationWith buildPythonPackage rec {
+  pname = "napari";
+  version = "0.4.12";
+  src = fetchFromGitHub {
+    owner = "napari";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-0QSI0mgDjF70/X58fE7uWwlBUCGY5gsvbCm4oJkp2Yk=";
+  };
+  nativeBuildInputs = [ setuptools-scm wrapQtAppsHook ];
+  propagatedBuildInputs = [
+    napari-plugin-engine
+    cachey
+    napari-svg
+    napari-console
+    superqt
+    magicgui
+    typing-extensions
+    tifffile
+    pint
+    pyyaml
+    numpydoc
+    dask
+    docstring-parser
+    appdirs
+    imageio
+    pyopengl
+    psutil
+    wrapt
+    pydantic
+    tqdm
+    jsonschema
+    scipy
+  ];
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  dontUseSetuptoolsCheck = true;
+  postFixup = ''
+    wrapQtApp $out/bin/napari
+  '';
+
+  meta = with lib; {
+    description = "A fast, interactive, multi-dimensional image viewer for python";
+    homepage = "https://github.com/napari/napari";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/nbformat/2.nix b/pkgs/development/python-modules/nbformat/2.nix
deleted file mode 100644
index 06d02520b20..00000000000
--- a/pkgs/development/python-modules/nbformat/2.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pytest
-, glibcLocales
-, ipython_genutils
-, traitlets
-, testpath
-, jsonschema
-, jupyter_core
-}:
-
-buildPythonPackage rec {
-  pname = "nbformat";
-  version = "4.4.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "f7494ef0df60766b7cabe0a3651556345a963b74dbc16bc7c18479041170d402";
-  };
-
-  LC_ALL="en_US.utf8";
-
-  checkInputs = [ pytest glibcLocales ];
-  propagatedBuildInputs = [ ipython_genutils traitlets testpath jsonschema jupyter_core ];
-
-  preCheck = ''
-    mkdir tmp
-    export HOME=tmp
-  '';
-
-  # Some of the tests use localhost networking.
-  __darwinAllowLocalNetworking = true;
-
-  meta = {
-    description = "The Jupyter Notebook format";
-    homepage = "https://jupyter.org/";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ globin ];
-  };
-}
diff --git a/pkgs/development/python-modules/networkx/2.2.nix b/pkgs/development/python-modules/networkx/2.2.nix
deleted file mode 100644
index a4c66048953..00000000000
--- a/pkgs/development/python-modules/networkx/2.2.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, decorator
-, setuptools
-}:
-
-buildPythonPackage rec {
-  pname = "networkx";
-  # upgrade may break sage, please test the sage build or ping @timokau on upgrade
-  version = "2.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    extension = "zip";
-    sha256 = "12swxb15299v9vqjsq4z8rgh5sdhvpx497xwnhpnb0gynrx6zra5";
-  };
-
-  checkInputs = [ nose ];
-  propagatedBuildInputs = [ decorator setuptools ];
-
-  meta = {
-    homepage = "https://networkx.github.io/";
-    description = "Library for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks";
-    license = lib.licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/nix-prefetch-github/default.nix b/pkgs/development/python-modules/nix-prefetch-github/default.nix
index 0821e0b763d..6df6f15c068 100644
--- a/pkgs/development/python-modules/nix-prefetch-github/default.nix
+++ b/pkgs/development/python-modules/nix-prefetch-github/default.nix
@@ -1,18 +1,13 @@
 { fetchFromGitHub
 , lib
 , buildPythonPackage
-, attrs
-, click
-, effect
 , git
-, pytestCheckHook
-, pytest-cov
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "nix-prefetch-github";
-  version = "4.0.4";
+  version = "5.0.1";
 
   disabled = pythonOlder "3.7";
 
@@ -20,19 +15,16 @@ buildPythonPackage rec {
     owner = "seppeljordan";
     repo = "nix-prefetch-github";
     rev = "v${version}";
-    sha256 = "g5G818Gq5EGyRIyg/ZW7guxMS0IyJ4nYaRjG/CtGhuc=";
+    sha256 = "DOmFfUCLJ+rnS4PznQaQrDrqjUU4DXmOrC9BspqKZVM=";
   };
 
-  propagatedBuildInputs = [
-    attrs
-    click
-    effect
-  ];
-
-  checkInputs = [ pytestCheckHook pytest-cov git ];
+  checkInputs = [ git ];
 
+  checkPhase = ''
+    python -m unittest discover
+  '';
   # ignore tests which are impure
-  disabledTests = [ "network" "requires_nix_build" ];
+  DISABLED_TESTS = "network requires_nix_build";
 
   meta = with lib; {
     description = "Prefetch sources from github";
diff --git a/pkgs/development/python-modules/nltk/default.nix b/pkgs/development/python-modules/nltk/default.nix
index df49f1d0f57..27e17daa372 100644
--- a/pkgs/development/python-modules/nltk/default.nix
+++ b/pkgs/development/python-modules/nltk/default.nix
@@ -1,4 +1,4 @@
-{ fetchPypi, buildPythonPackage, lib, singledispatch ? null, isPy3k
+{ fetchPypi, buildPythonPackage, lib, isPy3k
 , click
 , joblib
 , regex
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "3.6.6";
+  version = "3.6.7";
   pname = "nltk";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0f8ff4e261c78605bca284e8d2025e562304766156af32a1731f56b396ee364b";
+    sha256 = "51bf1aef5304740a708be7c8e683f7798f03dc5c7a7e7feb758be9e95f4585e3";
   };
 
   propagatedBuildInputs = [
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     joblib
     regex
     tqdm
-  ] ++ lib.optional (!isPy3k) singledispatch;
+  ];
 
   # Tests require some data, the downloading of which is impure. It would
   # probably make sense to make the data another derivation, but then feeding
diff --git a/pkgs/development/python-modules/nose-focus/default.nix b/pkgs/development/python-modules/nose-focus/default.nix
deleted file mode 100644
index 2805dc4545a..00000000000
--- a/pkgs/development/python-modules/nose-focus/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub, six, nose, nose-of-yeti
-, nose-pattern-exclude, which }:
-
-buildPythonPackage rec {
-  pname = "nose-focus";
-  version = "0.1.3";
-
-  propagatedBuildInputs = [ six ];
-
-  checkInputs = [ nose nose-of-yeti nose-pattern-exclude which ];
-
-  # PyPI doesn't contain tests so let's use GitHub. See:
-  # https://github.com/delfick/nose-focus/issues/4
-  #
-  # However, the versions aren't tagged on GitHub so need to use a manually
-  # checked revision. See: https://github.com/delfick/nose-focus/issues/5
-  src = fetchFromGitHub {
-    owner = "delfick";
-    repo = pname;
-    rev = "4dac785ba07ed6e1df61b0fe2854685eef3bd115";
-    sha256 = "0gpd4j4433dc5ifh31w08c3bx862md0qm1ix6aam1rz4ayxpq51f";
-  };
-
-  checkPhase = ''
-    patchShebangs test.sh
-    ./test.sh
-  '';
-
-  meta = with lib; {
-    description = "Decorator and plugin to make nose focus on specific tests";
-    homepage = "https://nose-focus.readthedocs.io/en/latest/";
-    license = licenses.wtfpl;
-    maintainers = with maintainers; [ jluttine ];
-  };
-}
diff --git a/pkgs/development/python-modules/nose-of-yeti/default.nix b/pkgs/development/python-modules/nose-of-yeti/default.nix
deleted file mode 100644
index 16fb264b39a..00000000000
--- a/pkgs/development/python-modules/nose-of-yeti/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub, six, nose, fudge, should-dsl }:
-
-buildPythonPackage rec {
-  pname = "nose-of-yeti";
-  version = "1.8";
-
-  propagatedBuildInputs = [ six ];
-
-  checkInputs = [ nose fudge should-dsl ];
-
-  # PyPI doesn't contain tests so let's use GitHub.
-  src = fetchFromGitHub {
-    owner = "delfick";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "1pq9bf47k0csv41vdh2g6n336p3pd11q91hj5ypk0ls3nj756gbx";
-  };
-
-  checkPhase = ''
-    patchShebangs test.sh
-    ./test.sh
-  '';
-
-  meta = with lib; {
-    description = "Nose plugin providing BDD dsl for python";
-    homepage = "https://github.com/delfick/nose-of-yeti";
-    license = licenses.mit;
-    maintainers = with maintainers; [ jluttine ];
-  };
-}
diff --git a/pkgs/development/python-modules/notebook/2.nix b/pkgs/development/python-modules/notebook/2.nix
deleted file mode 100644
index aec27eab59a..00000000000
--- a/pkgs/development/python-modules/notebook/2.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-{ stdenv
-, lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, nose_warnings_filters
-, glibcLocales
-, isPy3k
-, mock
-, jinja2
-, tornado
-, ipython_genutils
-, traitlets
-, jupyter_core
-, jupyter-client
-, nbformat
-, nbconvert
-, ipykernel
-, terminado
-, requests
-, send2trash
-, pexpect
-, prometheus-client
-}:
-
-buildPythonPackage rec {
-  pname = "notebook";
-  version = "5.7.10";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "b10107e1438e7a564292aa32510e610c88844cae03c882fe5286b891792b5c11";
-  };
-
-  LC_ALL = "en_US.utf8";
-
-  checkInputs = [ nose glibcLocales ]
-    ++ (if isPy3k then [ nose_warnings_filters ] else [ mock ]);
-
-  propagatedBuildInputs = [
-    jinja2 tornado ipython_genutils traitlets jupyter_core send2trash
-    jupyter-client nbformat nbconvert ipykernel terminado requests pexpect
-    prometheus-client
-  ];
-
-  # disable warning_filters
-  preCheck = lib.optionalString (!isPy3k) ''
-    echo "" > setup.cfg
-  '';
-
-  postPatch = ''
-    # Remove selenium tests
-    rm -rf notebook/tests/selenium
-
-  '';
-
-  checkPhase = ''
-    runHook preCheck
-    mkdir tmp
-    HOME=tmp nosetests -v ${if (stdenv.isDarwin) then ''
-      --exclude test_delete \
-      --exclude test_checkpoints_follow_file
-    ''
-    else ""}
-  '';
-
-  # Some of the tests use localhost networking.
-  __darwinAllowLocalNetworking = true;
-
-  meta = {
-    description = "The Jupyter HTML notebook is a web-based notebook environment for interactive computing";
-    homepage = "https://jupyter.org/";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/notify/default.nix b/pkgs/development/python-modules/notify/default.nix
deleted file mode 100644
index 8aa70b43e66..00000000000
--- a/pkgs/development/python-modules/notify/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, stdenv
-, fetchurl
-, python
-, pygobject2
-, pygtk
-, pkgs
-}:
-
-stdenv.mkDerivation {
-  pname = "python-notify";
-  version = "0.1.1";
-
-  src = fetchurl {
-    url = "http://www.galago-project.org/files/releases/source/notify-python/notify-python-0.1.1.tar.bz2";
-    sha256 = "1kh4spwgqxm534qlzzf2ijchckvs0pwjxl1irhicjmlg7mybnfvx";
-  };
-
-  patches = lib.singleton (fetchurl {
-    name = "libnotify07.patch";
-    url = "https://src.fedoraproject.org/cgit/notify-python.git/plain/"
-        + "libnotify07.patch?id2=289573d50ae4838a1658d573d2c9f4c75e86db0c";
-    sha256 = "1lqdli13mfb59xxbq4rbq1f0znh6xr17ljjhwmzqb79jl3dig12z";
-  });
-
-  postPatch = ''
-    sed -i -e '/^PYGTK_CODEGEN/s|=.*|="${pygtk}/bin/pygtk-codegen-2.0"|' \
-      configure
-  '';
-
-  nativeBuildInputs = [ pkgs.pkg-config ];
-  buildInputs = [ python pygobject2 pygtk pkgs.libnotify pkgs.glib pkgs.gtk2 pkgs.dbus-glib ];
-
-  postInstall = "cd $out/lib/python*/site-packages && ln -s gtk-*/pynotify .";
-
-  meta = with lib; {
-    description = "Python bindings for libnotify";
-    homepage = "http://www.galago-project.org/";
-    license = licenses.lgpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/nwdiag/default.nix b/pkgs/development/python-modules/nwdiag/default.nix
index 637708e2c15..4579be5c3c1 100644
--- a/pkgs/development/python-modules/nwdiag/default.nix
+++ b/pkgs/development/python-modules/nwdiag/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "nwdiag";
-  version = "2.0.0";
+  version = "3.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "blockdiag";
     repo = pname;
     rev = version;
-    sha256 = "sha256-PWLFJhXQeuUQQpGkXN2pEJs/1WECpJpUqWbGH3150TI=";
+    sha256 = "sha256-uKrdkXpL5YBr953sRsHknYg+2/WwrZmyDf8BMA2+0tU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/nxt-python/default.nix b/pkgs/development/python-modules/nxt-python/default.nix
deleted file mode 100644
index 38920dc5542..00000000000
--- a/pkgs/development/python-modules/nxt-python/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchgit
-, isPy3k
-, pyusb
-, pybluez
-, pyfantom
-, git
-}:
-
-buildPythonPackage {
-  version = "unstable-20160819";
-  pname = "nxt-python";
-  disabled = isPy3k;
-
-  src = fetchgit {
-    url = "https://github.com/Eelviny/nxt-python";
-    rev = "479e20b7491b28567035f4cee294c4a2af629297";
-    sha256 = "0mcsajhgm2wy4iy2lhmyi3xibgmbixbchanzmlhsxk6qyjccn9r9";
-    branchName= "pyusb";
-  };
-
-  propagatedBuildInputs = [ pyusb pybluez pyfantom git ];
-
-  # Tests fail on Mac dependency
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Python driver/interface for Lego Mindstorms NXT robot";
-    homepage = "https://github.com/Eelviny/nxt-python";
-    license = licenses.gpl3;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ leenaars ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/oauthlib/3.1.nix b/pkgs/development/python-modules/oauthlib/3.1.nix
deleted file mode 100644
index 10757812037..00000000000
--- a/pkgs/development/python-modules/oauthlib/3.1.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mock
-, pytest
-, cryptography
-, blinker
-, pyjwt
-}:
-
-buildPythonPackage rec {
-  pname = "oauthlib";
-  version = "3.1.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "bee41cc35fcca6e988463cacc3bcb8a96224f470ca547e697b604cc697b2f889";
-  };
-
-  checkInputs = [ mock pytest ];
-  propagatedBuildInputs = [ cryptography blinker pyjwt ];
-
-  checkPhase = ''
-    py.test tests/
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/idan/oauthlib";
-    description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic";
-    maintainers = with maintainers; [ prikhi ];
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/objax/default.nix b/pkgs/development/python-modules/objax/default.nix
new file mode 100644
index 00000000000..fb48f9141e2
--- /dev/null
+++ b/pkgs/development/python-modules/objax/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, jax
+, jaxlib
+, numpy
+, parameterized
+, pillow
+, scipy
+, tensorflow-tensorboard_2 ? null
+}:
+
+buildPythonPackage rec {
+  pname = "objax";
+  version = "1.4.0";
+
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "objax";
+    rev = "v${version}";
+    sha256 = "09gm61ghn5mi92q5mhx22mcv6aa6z78jsrnfar1hd3nwwyn9dq42";
+  };
+
+  propagatedBuildInputs = [
+    jax
+    jaxlib
+    numpy
+    parameterized
+    pillow
+    scipy
+    tensorflow-tensorboard_2
+  ];
+
+  pythonImportsCheck = [
+    "objax"
+  ];
+
+  meta = with lib; {
+    description = "Objax is a machine learning framework that provides an Object Oriented layer for JAX.";
+    homepage = "https://github.com/google/objax";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ndl ];
+    # Darwin doesn't have `tensorflow-tensorboard_2` which is required by wheel deps.
+    platforms = [ "aarch64-linux" "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/development/python-modules/onnx/default.nix b/pkgs/development/python-modules/onnx/default.nix
index 6a682f44810..d32b82365dc 100644
--- a/pkgs/development/python-modules/onnx/default.nix
+++ b/pkgs/development/python-modules/onnx/default.nix
@@ -67,7 +67,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Open Neural Network Exchange";
-    homepage = "http://onnx.ai";
+    homepage = "https://onnx.ai";
     license = licenses.asl20;
     maintainers = with maintainers; [ acairncross ];
   };
diff --git a/pkgs/development/python-modules/openpyxl/2.nix b/pkgs/development/python-modules/openpyxl/2.nix
deleted file mode 100644
index 73300de645f..00000000000
--- a/pkgs/development/python-modules/openpyxl/2.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pytest
-, jdcal
-, et_xmlfile
-, lxml
-}:
-
-buildPythonPackage rec {
-  pname = "openpyxl";
-  version = "2.6.4";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1d53801678e18d7fe38c116f1ad0c2383a654670c4c8806105b611c92d92f2e3";
-  };
-
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ jdcal et_xmlfile lxml ];
-
-  postPatch = ''
-    # LICENSE.rst is missing, and setup.cfg currently doesn't contain anything useful anyway
-    # This should likely be removed in the next update
-    rm setup.cfg
-  '';
-
-  # Tests are not included in archive.
-  # https://bitbucket.org/openpyxl/openpyxl/issues/610
-  doCheck = false;
-
-  meta = {
-    description = "A Python library to read/write Excel 2007 xlsx/xlsm files";
-    homepage = "https://openpyxl.readthedocs.org";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ lihop sjourdois ];
-  };
-}
diff --git a/pkgs/development/python-modules/opt-einsum/2.nix b/pkgs/development/python-modules/opt-einsum/2.nix
deleted file mode 100644
index 41c4df89f4f..00000000000
--- a/pkgs/development/python-modules/opt-einsum/2.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ buildPythonPackage, fetchPypi, lib, numpy, pytest_4 }:
-
-buildPythonPackage rec {
-  version = "2.3.2";
-  pname = "opt_einsum";
-
-  src = fetchPypi {
-    inherit version pname;
-    sha256 = "0ny3v8x83mzpwmqjdzqhzy2pzwyy4wx01r1h9i29xw3yvas69m6k";
-  };
-
-  checkInputs = [
-    pytest_4
-  ];
-
-  checkPhase = ''
-    pytest
-  '';
-
-  propagatedBuildInputs = [
-    numpy
-  ];
-
-  meta = {
-    description = "Optimizing NumPy's einsum function with order optimization and GPU support.";
-    homepage = "https://optimized-einsum.readthedocs.io";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ teh ];
-  };
-}
diff --git a/pkgs/development/python-modules/ormar/default.nix b/pkgs/development/python-modules/ormar/default.nix
new file mode 100644
index 00000000000..fee9af14715
--- /dev/null
+++ b/pkgs/development/python-modules/ormar/default.nix
@@ -0,0 +1,80 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, poetry-core
+, databases
+, pydantic
+, sqlalchemy
+, asyncpg
+, psycopg2
+, aiomysql
+, aiosqlite
+, cryptography
+, orjson
+, typing-extensions
+, importlib-metadata
+, aiopg
+, mysqlclient
+, pymysql
+, pytestCheckHook
+, pytest-asyncio
+, fastapi
+}:
+
+buildPythonPackage rec {
+  pname = "ormar";
+  version = "0.10.23";
+  format = "pyproject";
+  disabled = pythonOlder "3.7";
+  src = fetchFromGitHub {
+    owner = "collerek";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-ILJvJyd56lqlKq7+mUz26LvusYb5AOOfoA7OgNq2fT0=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    databases
+    pydantic
+    sqlalchemy
+    asyncpg
+    psycopg2
+    aiomysql
+    aiosqlite
+    cryptography
+
+    orjson
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
+    importlib-metadata
+  ];
+
+  checkInputs = [
+    aiomysql
+    aiosqlite
+    aiopg
+    asyncpg
+
+    psycopg2
+    mysqlclient
+    pymysql
+
+    pytestCheckHook
+    pytest-asyncio
+    fastapi
+  ];
+
+  pythonImportsCheck = [ "ormar" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/collerek/ormar";
+    description = "A simple async ORM with fastapi in mind and pydantic validation.";
+    license = licenses.mit;
+    maintainers = with maintainers; [ andreasfelix ];
+  };
+}
diff --git a/pkgs/development/python-modules/p1monitor/default.nix b/pkgs/development/python-modules/p1monitor/default.nix
index 77a9b8ba512..d1530c79719 100644
--- a/pkgs/development/python-modules/p1monitor/default.nix
+++ b/pkgs/development/python-modules/p1monitor/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "p1monitor";
-  version = "1.0.0";
+  version = "1.1.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "klaasnicolaas";
     repo = "python-p1monitor";
     rev = "v${version}";
-    sha256 = "1xfr097hmjppp6cfdvfjypxmr1sb9dasq1s3np2vd5d93w0p5123";
+    sha256 = "1ciaclgq4aknldjqlqa08jcab28sbqrjxy5nqqwlnb2wlprg5ijz";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/packbits/default.nix b/pkgs/development/python-modules/packbits/default.nix
new file mode 100644
index 00000000000..561903e8f5f
--- /dev/null
+++ b/pkgs/development/python-modules/packbits/default.nix
@@ -0,0 +1,26 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+, pyparsing
+, six
+, pytest
+, pretend
+, lib
+}:
+
+buildPythonPackage rec {
+  pname = "packbits";
+  version = "0.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "bc6b370bb34e04ac8cfa835e06c0484380affc6d593adb8009dd6c0f7bfff034";
+  };
+
+  meta = with lib; {
+    description = "PackBits encoder/decoder for Python";
+    homepage = "https://github.com/psd-tools/packbits";
+    license = [ licenses.mit ];
+    maintainers = with maintainers; [ grahamc ];
+  };
+}
diff --git a/pkgs/development/python-modules/pagerduty/default.nix b/pkgs/development/python-modules/pagerduty/default.nix
deleted file mode 100644
index 8390cceb2fc..00000000000
--- a/pkgs/development/python-modules/pagerduty/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "pagerduty";
-  version = "0.2.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "e8c237239d3ffb061069aa04fc5b3d8ae4fb0af16a9713fe0977f02261d323e9";
-  };
-
-  meta = with lib; {
-    homepage = "https://github.com/samuel/python-pagerduty";
-    description = "Library for the PagerDuty service API";
-    license = licenses.bsd0;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pandas/2.nix b/pkgs/development/python-modules/pandas/2.nix
deleted file mode 100644
index 9b29a844269..00000000000
--- a/pkgs/development/python-modules/pandas/2.nix
+++ /dev/null
@@ -1,119 +0,0 @@
-# Python 2 expression
-
-{ lib
-, buildPythonPackage
-, fetchPypi
-, python
-, stdenv
-, pytest
-, glibcLocales
-, cython
-, python-dateutil
-, scipy
-, moto
-, numexpr
-, pytz
-, xlrd
-, bottleneck
-, sqlalchemy
-, lxml
-, html5lib
-, beautifulsoup4
-, hypothesis
-, openpyxl
-, tables
-, xlwt
-, runtimeShell
-, libcxx ? null
-}:
-
-buildPythonPackage rec {
-  pname = "pandas";
-  version = "0.24.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "18imlm8xbhcbwy4wa957a1fkamrcb0z988z006jpfda3ki09z4ag";
-  };
-
-  checkInputs = [ pytest glibcLocales moto hypothesis ];
-
-  nativeBuildInputs = [ cython ];
-  buildInputs = lib.optional stdenv.isDarwin libcxx;
-  propagatedBuildInputs = [
-    python-dateutil
-    scipy
-    numexpr
-    pytz
-    xlrd
-    bottleneck
-    sqlalchemy
-    lxml
-    html5lib
-    beautifulsoup4
-    openpyxl
-    tables
-    xlwt
-  ];
-
-  # For OSX, we need to add a dependency on libcxx, which provides
-  # `complex.h` and other libraries that pandas depends on to build.
-  postPatch = lib.optionalString stdenv.isDarwin ''
-    cpp_sdk="${lib.getDev libcxx}/include/c++/v1";
-    echo "Adding $cpp_sdk to the setup.py common_include variable"
-    substituteInPlace setup.py \
-      --replace "['pandas/src/klib', 'pandas/src']" \
-                "['pandas/src/klib', 'pandas/src', '$cpp_sdk']"
-  '';
-
-
-  disabledTests = lib.concatMapStringsSep " and " (s: "not " + s) ([
-    # since python-dateutil 0.6.0 the following fails: test_fallback_plural, test_ambiguous_flags, test_ambiguous_compat
-    # was supposed to be solved by https://github.com/dateutil/dateutil/issues/321, but is not the case
-    "test_fallback_plural"
-    "test_ambiguous_flags"
-    "test_ambiguous_compat"
-    # Locale-related
-    "test_names"
-    "test_dt_accessor_datetime_name_accessors"
-    "test_datetime_name_accessors"
-    # Can't import from test folder
-    "test_oo_optimizable"
-    # Disable IO related tests because IO data is no longer distributed
-    "io"
-    # KeyError Timestamp
-    "test_to_excel"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "test_locale"
-    "test_clipboard"
-  ]);
-
-  doCheck = !stdenv.isAarch64; # upstream doesn't test this architecture
-
-  checkPhase = ''
-    runHook preCheck
-  ''
-  # TODO: Get locale and clipboard support working on darwin.
-  #       Until then we disable the tests.
-  + lib.optionalString stdenv.isDarwin ''
-    # Fake the impure dependencies pbpaste and pbcopy
-    echo "#!${runtimeShell}" > pbcopy
-    echo "#!${runtimeShell}" > pbpaste
-    chmod a+x pbcopy pbpaste
-    export PATH=$(pwd):$PATH
-  '' + ''
-    LC_ALL="en_US.UTF-8" py.test $out/${python.sitePackages}/pandas --skip-slow --skip-network -k "$disabledTests"
-    runHook postCheck
-  '';
-
-  meta = with lib; {
-    # https://github.com/pandas-dev/pandas/issues/14866
-    # pandas devs are no longer testing i686 so safer to assume it's broken
-    broken = stdenv.isi686;
-    homepage = "https://pandas.pydata.org/";
-    description = "Python Data Analysis Library";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ raskin knedlsepp ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/python-modules/path.py/2.nix b/pkgs/development/python-modules/path.py/2.nix
deleted file mode 100644
index d7c635c2fe4..00000000000
--- a/pkgs/development/python-modules/path.py/2.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools-scm
-, pytest
-, pytest-flake8
-, glibcLocales
-, packaging
-, isPy27
-, backports_os
-, importlib-metadata
-}:
-
-buildPythonPackage rec {
-  pname = "path.py";
-  version = "11.5.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "de7cd643affbc23e56533a6e8d551ecdee4983501a08c24e4e71565202d8cdaa";
-  };
-
-  checkInputs = [ pytest pytest-flake8 glibcLocales packaging ];
-  buildInputs = [ setuptools-scm ];
-  propagatedBuildInputs = [
-    importlib-metadata
-  ] ++ lib.optional isPy27 backports_os
-  ;
-
-  LC_ALL = "en_US.UTF-8";
-
-  meta = {
-    description = "A module wrapper for os.path";
-    homepage = "https://github.com/jaraco/path.py";
-    license = lib.licenses.mit;
-  };
-
-  checkPhase = ''
-    # ignore performance test which may fail when the system is under load
-    py.test -v -k 'not TestPerformance'
-  '';
-}
diff --git a/pkgs/development/python-modules/pecan/default.nix b/pkgs/development/python-modules/pecan/default.nix
index d610561b3e6..a488f15fbed 100644
--- a/pkgs/development/python-modules/pecan/default.nix
+++ b/pkgs/development/python-modules/pecan/default.nix
@@ -6,7 +6,6 @@
 # Python deps
 , logutils
 , Mako
-, singledispatch ? null
 , six
 , webtest
 # Test Inputs
@@ -40,7 +39,6 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     logutils
     Mako
-    singledispatch
     six
     webtest
   ];
diff --git a/pkgs/development/python-modules/pg8000/1_12.nix b/pkgs/development/python-modules/pg8000/1_12.nix
deleted file mode 100644
index e53817b3911..00000000000
--- a/pkgs/development/python-modules/pg8000/1_12.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pytz
-, six
-}:
-
-buildPythonPackage rec {
-  pname = "pg8000";
-  version = "1.12.5";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1yc3knh28cx3rjb2ifg5kmqqa78yyyw2gzzslbm9fj0mzh5aq1sx";
-  };
-
-  propagatedBuildInputs = [ pytz six ];
-
-  meta = with lib; {
-    homepage = "https://github.com/tlocke/pg8000";
-    description = "PostgreSQL interface library, for asyncio";
-    maintainers = with maintainers; [ domenkozar ];
-    platforms = platforms.unix;
-  };
-
-}
-
diff --git a/pkgs/development/python-modules/pglast/default.nix b/pkgs/development/python-modules/pglast/default.nix
index c3b34b1fc19..673b3c8ffe8 100644
--- a/pkgs/development/python-modules/pglast/default.nix
+++ b/pkgs/development/python-modules/pglast/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "pglast";
-  version = "3.7";
+  version = "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3f0f36cebdb68d5b3aaacb11cbf09db44250194845fbf3b49b0aef93c30991bf";
+    sha256 = "31ad29b6a27048b1a26c072992fc5213d2eaf366854679e6c97111e300e0ef01";
   };
 
   disabled = !isPy3k;
diff --git a/pkgs/development/python-modules/pgpy/default.nix b/pkgs/development/python-modules/pgpy/default.nix
index a79c65f4059..3c2e2c22a88 100644
--- a/pkgs/development/python-modules/pgpy/default.nix
+++ b/pkgs/development/python-modules/pgpy/default.nix
@@ -1,5 +1,5 @@
 { lib, pythonOlder, fetchFromGitHub, buildPythonPackage
-, six, enum34, pyasn1, cryptography, singledispatch ? null
+, six, enum34, pyasn1, cryptography
 , pytestCheckHook }:
 
 buildPythonPackage rec {
@@ -18,7 +18,6 @@ buildPythonPackage rec {
     pyasn1
     cryptography
   ] ++ lib.optionals (pythonOlder "3.4") [
-    singledispatch
     enum34
   ];
 
diff --git a/pkgs/development/python-modules/pikepdf/default.nix b/pkgs/development/python-modules/pikepdf/default.nix
index feea54a77b2..6f0f733c472 100644
--- a/pkgs/development/python-modules/pikepdf/default.nix
+++ b/pkgs/development/python-modules/pikepdf/default.nix
@@ -8,6 +8,7 @@
 , jbig2dec
 , lxml
 , mupdf
+, packaging
 , pillow
 , psutil
 , pybind11
@@ -24,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "pikepdf";
-  version = "4.2.0";
+  version = "4.3.0";
   disabled = ! isPy3k;
 
   src = fetchFromGitHub {
@@ -37,7 +38,7 @@ buildPythonPackage rec {
     extraPostFetch = ''
       rm "$out/.git_archival.txt"
     '';
-    sha256 = "sha256-8ForstZzRpr2TnOgK/+y4aF3R7XMEYfcSQhntA765Co=";
+    hash = "sha256-9dSJ6+rZd49rFSQExYnFBGQGZ8MnFM+z/0Iz/nYkW4E=";
   };
 
   patches = [
@@ -73,6 +74,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     defusedxml
     lxml
+    packaging
     pillow
     setuptools
   ];
diff --git a/pkgs/development/python-modules/platformdirs/2.nix b/pkgs/development/python-modules/platformdirs/2.nix
deleted file mode 100644
index 6fe2bcbde60..00000000000
--- a/pkgs/development/python-modules/platformdirs/2.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, appdirs
-, buildPythonPackage
-, fetchFromGitHub
-, platformdirs
-, pytest-mock
-, pytestCheckHook
-, pythonOlder
-, setuptools-scm
-}:
-
-buildPythonPackage rec {
-  pname = "platformdirs";
-  version = "2.0.2";
-
-  src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
-    rev = version;
-    sha256 = "sha256-yCvfOPuX9hbQO9gbFHfeu+dGH+Vb9FM7wng1XU2D8hE=";
-  };
-
-  SETUPTOOLS_SCM_PRETEND_VERSION = version;
-
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
-
-  checkInputs = [
-    appdirs
-    pytest-mock
-    pytestCheckHook
-  ];
-
- pythonImportsCheck = [ "platformdirs" ];
-
-  meta = with lib; {
-    description = "Python module for determining appropriate platform-specific directories";
-    homepage = "https://platformdirs.readthedocs.io/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ fab ];
-  };
-}
diff --git a/pkgs/development/python-modules/plumbum/default.nix b/pkgs/development/python-modules/plumbum/default.nix
index a99591c259d..e571f276f28 100644
--- a/pkgs/development/python-modules/plumbum/default.nix
+++ b/pkgs/development/python-modules/plumbum/default.nix
@@ -5,7 +5,7 @@
 
 buildPythonPackage rec {
   pname = "plumbum";
-  version = "1.7.1";
+  version = "1.7.2";
 
   checkInputs = [ pytest ];
 
@@ -14,6 +14,6 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3c0ac8c4ee57b2adddc82909d3c738a62ef5f77faf24ec7cb6f0a117e1679740";
+    sha256 = "0d1bf908076bbd0484d16412479cb97d6843069ee19f99e267e11dd980040523";
   };
 }
diff --git a/pkgs/development/python-modules/plyvel/default.nix b/pkgs/development/python-modules/plyvel/default.nix
index aa247c8e426..d47805bb643 100644
--- a/pkgs/development/python-modules/plyvel/default.nix
+++ b/pkgs/development/python-modules/plyvel/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "plyvel";
-  version = "1.3.0";
+  version = "1.4.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a7a09033a0fd33ca47094e8bbe01714abfcf644f4b7a337d3970e91a2599e2c4";
+    sha256 = "4ea98bea04ebf0f44747bacdfafefc8827787106fbb787f0aedc46482b2dfd53";
   };
 
   buildInputs = [ pkgs.leveldb ] ++ lib.optional isPy3k pytest;
diff --git a/pkgs/development/python-modules/praw/6.3.nix b/pkgs/development/python-modules/praw/6.3.nix
deleted file mode 100644
index 13ecab806c4..00000000000
--- a/pkgs/development/python-modules/praw/6.3.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, betamax
-, betamax-serializers
-, betamax-matchers
-, mock
-, six
-, pytest-runner
-, prawcore
-, pytest
-, requests-toolbelt
-, update_checker
-, websocket-client
-}:
-
-buildPythonPackage rec {
-  pname = "praw";
-  version = "6.3.1";
-
-  src = fetchFromGitHub {
-    owner = "praw-dev";
-    repo = "praw";
-    rev = "v${version}";
-    sha256 = "0by89aw7m803dvjcc33m9390msjm6v5v8g3k8ink9gfm421lw8ky";
-  };
-
-  nativeBuildInputs = [
-    pytest-runner
-  ];
-
-  propagatedBuildInputs = [
-    mock
-    prawcore
-    update_checker
-    websocket-client
-  ];
-
-  checkInputs = [
-    betamax
-    betamax-serializers
-    betamax-matchers
-    mock
-    pytest
-    requests-toolbelt
-    six
-  ];
-
-  meta = with lib; {
-    description = "Python Reddit API wrapper";
-    homepage = "https://praw.readthedocs.org/";
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/pre-commit-hooks/default.nix b/pkgs/development/python-modules/pre-commit-hooks/default.nix
index 1e573a70382..eae35b5bac6 100644
--- a/pkgs/development/python-modules/pre-commit-hooks/default.nix
+++ b/pkgs/development/python-modules/pre-commit-hooks/default.nix
@@ -1,24 +1,26 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchFromGitHub
 , git
-, pythonOlder
 , pytestCheckHook
+, pythonOlder
 , ruamel-yaml
-, stdenv
 , toml
 }:
 
 buildPythonPackage rec {
   pname = "pre-commit-hooks";
-  version = "4.0.1";
+  version = "4.1.0";
+  format = "setuptools";
+
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "pre-commit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Rg2I79r0Pp3AUgT6mD+kEdm+5CEGgdmFn6G3xcU6fnk=";
+    sha256 = "sha256-nxJp7LkCUkJj77RCeWedBusue3x0lZYatSidbueZqfo=";
   };
 
   propagatedBuildInputs = [
@@ -42,9 +44,12 @@ buildPythonPackage rec {
 
     git config --global user.name "Nix Builder"
     git config --global user.email "nix-builder@nixos.org"
+    git init .
   '';
 
-  pythonImportsCheck = [ "pre_commit_hooks" ];
+  pythonImportsCheck = [
+    "pre_commit_hooks"
+  ];
 
   meta = with lib; {
     description = "Some out-of-the-box hooks for pre-commit";
diff --git a/pkgs/development/python-modules/progressbar231/default.nix b/pkgs/development/python-modules/progressbar231/default.nix
deleted file mode 100644
index d421efde8aa..00000000000
--- a/pkgs/development/python-modules/progressbar231/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k }:
-
-buildPythonPackage rec {
-  pname = "progressbar231";
-  version = "2.3.1";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0j0ifxk87xz3wkyacxaiqygghn27wwz6y5pj9k8j2yq7n33fbdam";
-  };
-
-  # no tests implemented
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://pypi.python.org/pypi/progressbar231";
-    description = "Text progressbar library for python";
-    license = licenses.lgpl3Plus;
-    maintainers = with maintainers; [ twey ];
-  };
-}
diff --git a/pkgs/development/python-modules/prometheus-client/default.nix b/pkgs/development/python-modules/prometheus-client/default.nix
index 6c7cede280c..7af4e2b02fa 100644
--- a/pkgs/development/python-modules/prometheus-client/default.nix
+++ b/pkgs/development/python-modules/prometheus-client/default.nix
@@ -2,11 +2,15 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "prometheus-client";
   version = "0.12.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "prometheus";
@@ -19,11 +23,14 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "prometheus_client" ];
+  pythonImportsCheck = [
+    "prometheus_client"
+  ];
 
   meta = with lib; {
     description = "Prometheus instrumentation library for Python applications";
     homepage = "https://github.com/prometheus/client_python";
     license = licenses.asl20;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/psygnal/default.nix b/pkgs/development/python-modules/psygnal/default.nix
new file mode 100644
index 00000000000..6ac20798e0c
--- /dev/null
+++ b/pkgs/development/python-modules/psygnal/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, wheel
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pytest-mypy-plugins
+, pytest-cov
+, pytest
+, mypy
+, typing-extensions
+}: buildPythonPackage rec
+{
+  pname = "psygnal";
+  version = "0.2.0";
+  src = fetchFromGitHub {
+    owner = "tlambert03";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-SiG2ywNEw3aNrRXyEMFTnvHKtKowO8yqoCaNI8PT4/Y=";
+  };
+  buildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [ typing-extensions ];
+  checkInputs = [ pytestCheckHook pytest-cov pytest-mypy-plugins ];
+  doCheck = false;  # mypy checks are failing
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  meta = with lib; {
+    description = "Pure python implementation of Qt Signals";
+    homepage = "https://github.com/tlambert03/psygnal";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/pvo/default.nix b/pkgs/development/python-modules/pvo/default.nix
index 84d6918199c..55802290c15 100644
--- a/pkgs/development/python-modules/pvo/default.nix
+++ b/pkgs/development/python-modules/pvo/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "pvo";
-  version = "0.1.0";
+  version = "0.2.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "frenck";
     repo = "python-pvoutput";
     rev = "v${version}";
-    sha256 = "sha256-m+6fCBPN0LG6HoRwefVVOGEjccoB8mCWJOlSNHxEErM=";
+    sha256 = "sha256-liV5Ae3Bz6MZT3KQ/1aNt6P4Wsg4SOfAMQKI0Qpxvao=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pyamf/default.nix b/pkgs/development/python-modules/pyamf/default.nix
deleted file mode 100644
index cebb1cc3f0b..00000000000
--- a/pkgs/development/python-modules/pyamf/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ lib, fetchPypi, buildPythonPackage, isPy3k, defusedxml }:
-
-buildPythonPackage rec {
-  pname = "PyAMF";
-  version = "0.8.0";
-
-  # according to setup.py
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1r3lp9gkph48g9lijby5rs5daa3lhxs204r14zw4kvp3hf4xcm84";
-  };
-
-  propagatedBuildInputs = [ defusedxml ];
-
-  meta = with lib; {
-    description = "AMF (Action Message Format) support for Python";
-    homepage = "https://pypi.python.org/pypi/PyAMF";
-    license = licenses.mit;
-  };
-}
diff --git a/pkgs/development/python-modules/pyblosxom/default.nix b/pkgs/development/python-modules/pyblosxom/default.nix
deleted file mode 100644
index 77e47eb9836..00000000000
--- a/pkgs/development/python-modules/pyblosxom/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, pygments
-, markdown
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "pyblosxom";
-  version = "1.5.3";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "https://github.com/pyblosxom/pyblosxom/archive/v${version}.tar.gz";
-    sha256 = "0de9a7418f4e6d1c45acecf1e77f61c8f96f036ce034493ac67124626fd0d885";
-  };
-
-  propagatedBuildInputs = [ pygments markdown ];
-
-  # FAIL:test_generate_entry and test_time
-  # both tests fail due to time issue that doesn't seem to matter in practice
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "http://pyblosxom.github.io";
-    description = "File-based blogging engine";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pycarddav/default.nix b/pkgs/development/python-modules/pycarddav/default.nix
deleted file mode 100644
index b3479695a89..00000000000
--- a/pkgs/development/python-modules/pycarddav/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, isPyPy
-, vobject
-, lxml
-, requests
-, urwid
-, pyxdg
-}:
-
-buildPythonPackage rec {
-  version = "0.7.0";
-  pname = "pycarddav";
-  disabled = isPy3k || isPyPy;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0avkrcpisfvhz103v7vmq2jd83hvmpqrb4mlbx6ikkk1wcvclsx8";
-  };
-
-  propagatedBuildInputs = [ vobject lxml requests urwid pyxdg ];
-
-  meta = with lib; {
-    description = "Command-line interface carddav client";
-    homepage = "http://lostpackets.de/pycarddav";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pycassa/default.nix b/pkgs/development/python-modules/pycassa/default.nix
deleted file mode 100644
index 0e07d8d436f..00000000000
--- a/pkgs/development/python-modules/pycassa/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, thrift, isPy3k }:
-
-let
-
-  thrift' = thrift.overridePythonAttrs (old: rec {
-    version = "0.9.3";
-    src= fetchPypi {
-      inherit (old) pname;
-      inherit version;
-      sha256 = "0zl7cgckqy9j5vq8wyfzw82q1blkdpsblnmhv8c6ffcxs4xkvg6z";
-    };
-  });
-
-in
-
-buildPythonPackage rec {
-  pname = "pycassa";
-  version = "1.11.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1nsqjzgn6v0rya60dihvbnrnq1zwaxl2qwf0sr08q9qlkr334hr6";
-  };
-
-  disabled = isPy3k;
-
-  # Tests are not executed since they require a cassandra up and
-  # running
-  doCheck = false;
-
-  propagatedBuildInputs = [ thrift' ];
-
-  meta = with lib; {
-    description = "A python client library for Apache Cassandra";
-    homepage = "https://github.com/pycassa/pycassa";
-    license = licenses.mit;
-  };
-}
diff --git a/pkgs/development/python-modules/pychromecast/default.nix b/pkgs/development/python-modules/pychromecast/default.nix
index 49eba4812c2..f9a4b24ffcd 100644
--- a/pkgs/development/python-modules/pychromecast/default.nix
+++ b/pkgs/development/python-modules/pychromecast/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "pychromecast";
-  version = "10.2.1";
+  version = "10.2.2";
   format = "setuptools";
 
   disabled = !isPy3k;
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "PyChromecast";
     inherit version;
-    sha256 = "1b5f0ce62374d01f7eef027adcc87f87e7c519b1ef2f7168e28be9c2adff5153";
+    sha256 = "bd1dbb9383ed549d42d12f337a6c664a9088b4910ebb3f11de6fe15f397e7efd";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pycryptopp/default.nix b/pkgs/development/python-modules/pycryptopp/default.nix
deleted file mode 100644
index 7079cde0d59..00000000000
--- a/pkgs/development/python-modules/pycryptopp/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, fetchpatch
-, isPy3k
-, setuptoolsDarcs
-, darcsver
-, pkgs
-}:
-
-buildPythonPackage rec {
-  pname = "pycryptopp";
-  version = "0.7.1.869544967005693312591928092448767568728501330214";
-  disabled = isPy3k;  # see https://bitbucket.org/pypy/pypy/issue/1190/
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "17v98bhh3nd6rkw0kk1xmnc9vm5ql0fji4in2wyd4zlvlfhmgb88";
-  };
-
-  patches = [
-    (fetchpatch {
-      name = "pycryptopp-cryptopp_6.patch";
-      url = "https://aur.archlinux.org/cgit/aur.git/plain/api_change.patch?h=pycryptopp&id=55f2973d6ca5e9e70438f2eadb7fb575b1a5048d";
-      sha256 = "0lvl2d32d2vkb0v6d39p9whda5bdrmlsjd41zy0x0znqm53a9i99";
-      stripLen = 1;
-      extraPrefix = "src/";
-    })
-  ];
-
-  # Prefer crypto++ library from the Nix store over the one that's included
-  # in the pycryptopp distribution.
-  preConfigure = "export PYCRYPTOPP_DISABLE_EMBEDDED_CRYPTOPP=1";
-
-  buildInputs = [ setuptoolsDarcs darcsver pkgs.cryptopp ];
-
-  meta = with lib; {
-    homepage = "https://tahoe-lafs.org/trac/pycryptopp";
-    description = "Python wrappers for the Crypto++ library";
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pycurl2/default.nix b/pkgs/development/python-modules/pycurl2/default.nix
deleted file mode 100644
index 1cdfb6c4413..00000000000
--- a/pkgs/development/python-modules/pycurl2/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, isPy3k
-, simplejson
-, unittest2
-, nose
-, pkgs
-}:
-
-buildPythonPackage {
-  pname = "pycurl2";
-  version = "7.20.0";
-  disabled = isPy3k;
-
-  src = fetchFromGitHub {
-    owner = "Lispython";
-    repo = "pycurl";
-    rev = "0f00109950b883d680bd85dc6e8a9c731a7d0d13";
-    sha256 = "1qmw3cm93kxj94s71a8db9lwv2cxmr2wjv7kp1r8zildwdzhaw7j";
-  };
-
-  # error: (6, "Couldn't resolve host 'h.wrttn.me'")
-  doCheck = false;
-
-  nativeBuildInputs = [ pkgs.curl.dev ];
-  buildInputs = [ simplejson unittest2 nose ];
-
-  meta = with lib; {
-    homepage = "https://pypi.python.org/pypi/pycurl2";
-    description = "A fork from original PycURL library that no maintained from 7.19.0";
-    license = licenses.mit;
-    platforms = platforms.linux;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pydns/default.nix b/pkgs/development/python-modules/pydns/default.nix
deleted file mode 100644
index a6fb07c1520..00000000000
--- a/pkgs/development/python-modules/pydns/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-}:
-
-buildPythonPackage rec {
-  pname = "pydns";
-  version = "2.3.6";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0qnv7i9824nb5h9psj0rwzjyprwgfiwh5s5raa9avbqazy5hv5pi";
-  };
-
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Python DNS library";
-    homepage = "http://pydns.sourceforge.net/";
-    license = licenses.psfl;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pyenvisalink/default.nix b/pkgs/development/python-modules/pyenvisalink/default.nix
index 54a552f88fe..cfef4ee879a 100644
--- a/pkgs/development/python-modules/pyenvisalink/default.nix
+++ b/pkgs/development/python-modules/pyenvisalink/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "pyenvisalink";
-  version = "4.1";
+  version = "4.2";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1h30gmmynihmjkd107skk2gpi210b6gfdahwqmydyj5isxrvzmq2";
+    sha256 = "64f128212ba0257ae8e47612891a2dae7de2c155c81326257582d565f53778ad";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyexcelerator/default.nix b/pkgs/development/python-modules/pyexcelerator/default.nix
deleted file mode 100644
index b3a376616d3..00000000000
--- a/pkgs/development/python-modules/pyexcelerator/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "pyexcelerator";
-  version = "0.6.4.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "18rcnc9f71lj06h8nppnv6idzb7xfmh2rp1zfqayskcg686lilrb";
-  };
-
-  disabled = isPy3k;
-
-  # No tests are included in archive
-  doCheck = false;
-
-  meta = with lib; {
-    description = "library for generating Excel 97/2000/XP/2003 and OpenOffice Calc compatible spreadsheets.";
-    homepage = "https://sourceforge.net/projects/pyexcelerator";
-    license = licenses.bsdOriginal;
-    maintainers = with maintainers; [ womfoo ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/pyexiv2/default.nix b/pkgs/development/python-modules/pyexiv2/default.nix
deleted file mode 100644
index bf7afdf79e2..00000000000
--- a/pkgs/development/python-modules/pyexiv2/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib, buildPythonPackage, fetchurl, python, exiv2, scons, boost }:
-
-buildPythonPackage rec {
-  pname = "pyexiv2";
-  version = "0.3.2";
-  format = "other";
-
-  src = fetchurl {
-    url = "https://launchpad.net/pyexiv2/0.3.x/0.3.2/+download/${pname}-${version}.tar.bz2";
-    sha256 = "09r1ga6kj5cnmrldpkqzvdhh7xi7aad9g4fbcr1gawgsd9y13g0a";
-  };
-
-  preBuild = ''
-    sed -i -e "s@env = Environment()@env = Environment( ENV = os.environ )@" src/SConscript
-  '';
-
-  preInstall = ''
-    sed -i -e "s@    python_lib_path = get_python_lib(plat_specific=True)@    python_lib_path = \'/lib/python2.7/site-packages\'@" src/SConscript
-  '';
-
-  buildInputs = [ python exiv2 scons boost ];
-
-  meta = with lib; {
-    platforms = platforms.linux;
-    # Likely needs an older boost which does not have `boost_pythonXY` but `boost_python`.
-    broken = true; # 2018-06-23
-  };
-}
diff --git a/pkgs/development/python-modules/pygtksourceview/codegendir.patch b/pkgs/development/python-modules/pygtksourceview/codegendir.patch
deleted file mode 100644
index 783c5e2d467..00000000000
--- a/pkgs/development/python-modules/pygtksourceview/codegendir.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -Nur pygtksourceview-2.10.1-orig/configure pygtksourceview-2.10.1/configure
---- pygtksourceview-2.10.1-orig/configure	2010-04-18 15:29:55.000000000 +0200
-+++ pygtksourceview-2.10.1/configure	2015-01-30 20:36:31.784541887 +0100
-@@ -12950,7 +12950,7 @@
- 
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pygtk codegen" >&5
- $as_echo_n "checking for pygtk codegen... " >&6; }
--CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygtk-2.0`
-+CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygobject-2.0`
- echo $CODEGENDIR
- if test -f $CODEGENDIR/codegen.py; then
- 	CODEGEN=$CODEGENDIR/codegen.py
-diff -Nur pygtksourceview-2.10.1-orig/configure.ac pygtksourceview-2.10.1/configure.ac
---- pygtksourceview-2.10.1-orig/configure.ac	2010-04-18 15:28:39.000000000 +0200
-+++ pygtksourceview-2.10.1/configure.ac	2015-01-30 20:36:42.781648830 +0100
-@@ -116,7 +116,7 @@
- 
- dnl codegen
- AC_MSG_CHECKING(for pygtk codegen)
--CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygtk-2.0`
-+CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygobject-2.0`
- echo $CODEGENDIR
- if test -f $CODEGENDIR/codegen.py; then
- 	CODEGEN=$CODEGENDIR/codegen.py
-
diff --git a/pkgs/development/python-modules/pygtksourceview/default.nix b/pkgs/development/python-modules/pygtksourceview/default.nix
deleted file mode 100644
index 57a21f1e178..00000000000
--- a/pkgs/development/python-modules/pygtksourceview/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib, fetchurl, python, buildPythonPackage, pkg-config, pygobject2, glib, pygtk, gnome2 }:
-
-buildPythonPackage rec {
-  pname = "pygtksourceview";
-  format = "other";
-  version = "2.10.1";
-
-  src = fetchurl {
-    url = "http://ftp.gnome.org/pub/gnome/sources/pygtksourceview/2.10/pygtksourceview-${version}.tar.bz2";
-    sha256 = "0x2r9k547ad68sfddr5am341ap6zvy8k0rh3rd0n38k7xdd7rd5l";
-  };
-
-  patches = [ ./codegendir.patch ];
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ python pygobject2 glib pygtk gnome2.gtksourceview ];
-
-  meta = {
-    platforms = lib.platforms.unix;
-  };
-}
diff --git a/pkgs/development/python-modules/pyhamcrest/1.nix b/pkgs/development/python-modules/pyhamcrest/1.nix
deleted file mode 100644
index 4c2ec4df681..00000000000
--- a/pkgs/development/python-modules/pyhamcrest/1.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi
-, mock, pytest
-, six
-}:
-buildPythonPackage rec {
-  pname = "PyHamcrest";
-  version = "1.10.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0x08lfcnsak7pkym32xrdn0sn3wcf26n1jff3d11mwbizpfikbpp";
-  };
-
-  checkInputs = [ mock pytest ];
-  propagatedBuildInputs = [ six ];
-
-  doCheck = false;  # pypi tarball does not include tests
-
-  meta = with lib; {
-    homepage = "https://github.com/hamcrest/PyHamcrest";
-    description = "Hamcrest framework for matcher objects";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [
-      alunduil
-    ];
-  };
-}
diff --git a/pkgs/development/python-modules/pykeyatome/default.nix b/pkgs/development/python-modules/pykeyatome/default.nix
index b1890388faf..b27ee6b2ece 100644
--- a/pkgs/development/python-modules/pykeyatome/default.nix
+++ b/pkgs/development/python-modules/pykeyatome/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "pykeyatome";
-  version = "1.2.0";
+  version = "1.3.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "jugla";
     repo = "pyKeyAtome";
     rev = "V${version}";
-    sha256 = "173bf4nrj4jqp2119gfmbra7rhbr30bkjkd44rw9450nmpfmh7pk";
+    sha256 = "1brcfgqj0bana6yii4083kppz822fgk9xf4mg141b0zfvx2gyjw9";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pykickstart/default.nix b/pkgs/development/python-modules/pykickstart/default.nix
deleted file mode 100644
index 8b1eefdafed..00000000000
--- a/pkgs/development/python-modules/pykickstart/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, urlgrabber
-, python
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "pykickstart";
-  version = "1.99.39";
-  md5_path = "d249f60aa89b1b4facd63f776925116d";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "https://src.fedoraproject.org/repo/pkgs/pykickstart/"
-    + "${pname}-${version}.tar.gz/${md5_path}/${pname}-${version}.tar.gz";
-    sha256 = "e0d0f98ac4c5607e6a48d5c1fba2d50cc804de1081043f9da68cbfc69cad957a";
-  };
-
-  postPatch = ''
-    sed -i -e "s/for tst in tstList/for tst in sorted(tstList, \
-               key=lambda m: m.__name__)/" tests/baseclass.py
-  '';
-
-  propagatedBuildInputs = [ urlgrabber ];
-
-  checkPhase = ''
-    ${python.interpreter} tests/baseclass.py -vv
-  '';
-
-  meta = with lib; {
-    homepage = "http://fedoraproject.org/wiki/Pykickstart";
-    description = "Read and write Fedora kickstart files";
-    license = licenses.gpl2Plus;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pylama/default.nix b/pkgs/development/python-modules/pylama/default.nix
index 12378cfd72d..3f93aef0a3f 100644
--- a/pkgs/development/python-modules/pylama/default.nix
+++ b/pkgs/development/python-modules/pylama/default.nix
@@ -15,15 +15,16 @@
 
 buildPythonPackage rec {
   pname = "pylama";
-  version = "8.0.6";
+  version = "8.3.6";
 
   format = "setuptools";
 
   src = fetchFromGitHub {
+    name = "${pname}-${version}-source";
     owner = "klen";
     repo = "pylama";
     rev = version;
-    sha256 = "sha256-Olq/CZ/t1wqACoknAKsvdDKnyLZkxRtHokpu33I3trg=";
+    hash = "sha256-KU/G+2Fm4G/dUuNhhk8xM0Y8+7YOUUgREONM8CQGugw=";
   };
 
   patches = [
@@ -51,6 +52,7 @@ buildPythonPackage rec {
     "test_pylint" # infinite recursion
     "test_quotes" # FIXME package pylama-quotes
     "test_radon" # FIXME package radon
+    "test_sort"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/pylibacl/0.5.nix b/pkgs/development/python-modules/pylibacl/0.5.nix
deleted file mode 100644
index 284a795b4c2..00000000000
--- a/pkgs/development/python-modules/pylibacl/0.5.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pkgs
-}:
-
-buildPythonPackage rec {
-  pname = "pylibacl";
-  version = "0.5.4";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0drvxb21y7p0aikcv3jx90vdcjk96kibf9x8qgxic2prxxd3f3q6";
-  };
-
-  # ERROR: testExtended (tests.test_acls.AclExtensions)
-  # IOError: [Errno 0] Error
-  doCheck = false;
-
-  buildInputs = with pkgs; [ acl ];
-
-  meta = {
-    description = "A Python extension module for POSIX ACLs, it can be used to query, list, add, and remove ACLs from files and directories under operating systems that support them";
-    license = lib.licenses.lgpl21Plus;
-  };
-}
diff --git a/pkgs/development/python-modules/pylint/1.9.nix b/pkgs/development/python-modules/pylint/1.9.nix
deleted file mode 100644
index 5dbb3d6750f..00000000000
--- a/pkgs/development/python-modules/pylint/1.9.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ stdenv, lib, buildPythonPackage, fetchPypi, astroid, six, isort,
-  mccabe, configparser, backports_functools_lru_cache, singledispatch,
-  pytest, pytest-runner, setuptools }:
-
-buildPythonPackage rec {
-  pname = "pylint";
-  version = "1.9.5";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "004kfapkqxqy2s85pmddqv0fabxdxywxrlbi549p0v237pr2v94p";
-  };
-
-  checkInputs = [ pytest pytest-runner ];
-
-  propagatedBuildInputs = [ astroid six isort mccabe configparser backports_functools_lru_cache singledispatch setuptools ];
-
-  postPatch = lib.optionalString stdenv.isDarwin ''
-    # Remove broken darwin test
-    rm -vf pylint/test/test_functional.py
-  '';
-
-  checkPhase = ''
-    pytest pylint/test -k "not ${lib.concatStringsSep " and not " (
-      [ # Broken test
-        "test_good_comprehension_checks"
-        # requires setuptools
-        "test_pkginfo"
-        # See PyCQA/pylint#2535
-        "test_libmodule" ] ++
-      # Disable broken darwin tests
-      lib.optionals stdenv.isDarwin [
-        "test_parallel_execution"
-        "test_py3k_jobs_option"
-      ]
-    )}"
-  '';
-
-  postInstall = ''
-    mkdir -p $out/share/emacs/site-lisp
-    cp "elisp/"*.el $out/share/emacs/site-lisp/
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/PyCQA/pylint";
-    description = "A bug and style checker for Python";
-    platforms = platforms.all;
-    license = licenses.gpl1Plus;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/pylutron-caseta/default.nix b/pkgs/development/python-modules/pylutron-caseta/default.nix
index f71f2f4d52a..c9cc9246746 100644
--- a/pkgs/development/python-modules/pylutron-caseta/default.nix
+++ b/pkgs/development/python-modules/pylutron-caseta/default.nix
@@ -11,14 +11,16 @@
 
 buildPythonPackage rec {
   pname = "pylutron-caseta";
-  version = "0.11.0";
-  disabled = pythonOlder "3.5";
+  version = "0.13.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "gurumitts";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-2w8kRSZK9Bq3O6r6i0CJgxEXGo8KsWah9bMLlDNzMGk=";
+    sha256 = "sha256-pVBFlGguVN6b3YY2lFF8KG83tBuotLmWLq/dKjRKAUQ=";
   };
 
   propagatedBuildInputs = [
@@ -32,7 +34,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "pylutron_caseta" ];
+  pythonImportsCheck = [
+    "pylutron_caseta"
+  ];
 
   meta = with lib; {
     description = "Python module o control Lutron Caseta devices";
diff --git a/pkgs/development/python-modules/pymelcloud/default.nix b/pkgs/development/python-modules/pymelcloud/default.nix
new file mode 100644
index 00000000000..d747af697bc
--- /dev/null
+++ b/pkgs/development/python-modules/pymelcloud/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, aiohttp
+, asynctest
+, buildPythonPackage
+, fetchFromGitHub
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pymelcloud";
+  version = "2.5.6";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "vilppuvuorinen";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-QXOL3MftNibo1wUjz/KTQLNDk7pWL9VH/wd7LpEJOmE=";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  checkInputs = [
+    asynctest
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "pymelcloud"
+  ];
+
+  meta = with lib; {
+    description = "Python module for interacting with MELCloud";
+    homepage = "https://github.com/vilppuvuorinen/pymelcloud";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/pynetdicom/default.nix b/pkgs/development/python-modules/pynetdicom/default.nix
index 49068fec5d5..3afa8fcf865 100644
--- a/pkgs/development/python-modules/pynetdicom/default.nix
+++ b/pkgs/development/python-modules/pynetdicom/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pynetdicom";
-  version = "2.0.0";
+  version = "2.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "pydicom";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Kfcfk76au2ymbX+nl0PhuuCd+t6dYRbTurGlW6msv3Y=";
+    sha256 = "sha256-28SoOdS6sAj3KrfJT8PR2k8XLEY2zh0k9w1eq1y7V8M=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pynput/default.nix b/pkgs/development/python-modules/pynput/default.nix
index 7bfa96870ea..87e769a9f92 100644
--- a/pkgs/development/python-modules/pynput/default.nix
+++ b/pkgs/development/python-modules/pynput/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pynput";
-  version = "1.7.5";
+  version = "1.7.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e6b7926dd162a883ff16f38e01720a930bbf2509146c9f1cdcecddd25288fb6e";
+    sha256 = "3a5726546da54116b687785d38b1db56997ce1d28e53e8d22fc656d8b92e533c";
   };
 
   nativeBuildInputs = [ sphinx ];
diff --git a/pkgs/development/python-modules/pyobjc/default.nix b/pkgs/development/python-modules/pyobjc/default.nix
deleted file mode 100644
index 6aa0d733049..00000000000
--- a/pkgs/development/python-modules/pyobjc/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ lib, fetchPypi, isPy3k, buildPythonPackage }:
-
-buildPythonPackage rec {
-  pname = "pyobjc";
-  version = "7.3";
-
-  # Gives "No matching distribution found for
-  # pyobjc-framework-Collaboration==4.0b1 (from pyobjc==4.0b1)"
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "322b07420f91b2dd7f624823e53046b922cab4aad28baab01a62463728b7e0c5";
-  };
-
-  meta = with lib; {
-    description = "A bridge between the Python and Objective-C programming languages";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
-    homepage = "https://pythonhosted.org/pyobjc/";
-  };
-}
diff --git a/pkgs/development/python-modules/pypdf/default.nix b/pkgs/development/python-modules/pypdf/default.nix
deleted file mode 100644
index 1244f374b44..00000000000
--- a/pkgs/development/python-modules/pypdf/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "pyPdf";
-  version = "1.13";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "3aede4c3c9c6ad07c98f059f90db0b09ed383f7c791c46100f649e1cabda0e3b";
-  };
-
-  # Not supported. Package is no longer maintained.
-  disabled = isPy3k;
-
-  meta = with lib; {
-    description = "Pure-Python PDF toolkit";
-    homepage = "http://pybrary.net/pyPdf/";
-    license = licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pypoppler/default.nix b/pkgs/development/python-modules/pypoppler/default.nix
deleted file mode 100644
index d325c170dc6..00000000000
--- a/pkgs/development/python-modules/pypoppler/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, pycairo
-, pygobject2
-, pkgs
-}:
-
-buildPythonPackage rec {
-  pname = "pypoppler";
-  version = "0.12.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "47e6ac99e5b114b9abf2d1dd1bca06f22c028d025432512989f659142470810f";
-  };
-
-  NIX_CFLAGS_COMPILE="-I${pkgs.poppler.dev}/include/poppler/";
-  nativeBuildInputs = [ pkgs.pkg-config ];
-  buildInputs = [ pkgs.poppler.dev ];
-  propagatedBuildInputs = [ pycairo pygobject2 ];
-
-  patches = [
-    ./pypoppler-0.39.0.patch
-    ./pypoppler-poppler.c.patch
-  ];
-
-  # Not supported.
-  disabled = isPy3k;
-
-  # No tests in archive
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://code.launchpad.net/~mriedesel/poppler-python/main";
-    description = "Python bindings for poppler-glib, unofficial branch including bug fixes, and removal of gtk dependencies";
-    license = licenses.gpl2;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pypoppler/pypoppler-0.39.0.patch b/pkgs/development/python-modules/pypoppler/pypoppler-0.39.0.patch
deleted file mode 100644
index b9e02242e00..00000000000
--- a/pkgs/development/python-modules/pypoppler/pypoppler-0.39.0.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/poppler.defs b/poppler.defs
-index 8b12e03..2b8fc16 100644
---- a/poppler.defs
-+++ b/poppler.defs
-@@ -570,18 +570,6 @@
-   )
- )
- 
--(define-enum Orientation
--  (in-module "Poppler")
--  (c-name "PopplerOrientation")
--  (gtype-id "POPPLER_TYPE_ORIENTATION")
--  (values
--    '("portrait" "POPPLER_ORIENTATION_PORTRAIT")
--    '("landscape" "POPPLER_ORIENTATION_LANDSCAPE")
--    '("upsidedown" "POPPLER_ORIENTATION_UPSIDEDOWN")
--    '("seascape" "POPPLER_ORIENTATION_SEASCAPE")
--  )
--)
--
- (define-enum PageTransitionType
-   (in-module "Poppler")
-   (c-name "PopplerPageTransitionType")
diff --git a/pkgs/development/python-modules/pypoppler/pypoppler-poppler.c.patch b/pkgs/development/python-modules/pypoppler/pypoppler-poppler.c.patch
deleted file mode 100644
index 1104097cd3e..00000000000
--- a/pkgs/development/python-modules/pypoppler/pypoppler-poppler.c.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/poppler.c b/poppler.c
-index 31b4489..16d0838 100644
---- a/poppler.c
-+++ b/poppler.c
-@@ -4501,7 +4501,6 @@ py_poppler_add_constants(PyObject *module, const gchar *strip_prefix)
-   pyg_enum_add(module, "FormTextType", strip_prefix, POPPLER_TYPE_FORM_TEXT_TYPE);
-   pyg_enum_add(module, "FormChoiceType", strip_prefix, POPPLER_TYPE_FORM_CHOICE_TYPE);
-   pyg_enum_add(module, "Error", strip_prefix, POPPLER_TYPE_ERROR);
--  pyg_enum_add(module, "Orientation", strip_prefix, POPPLER_TYPE_ORIENTATION);
-   pyg_enum_add(module, "PageTransitionType", strip_prefix, POPPLER_TYPE_PAGE_TRANSITION_TYPE);
-   pyg_enum_add(module, "PageTransitionAlignment", strip_prefix, POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT);
-   pyg_enum_add(module, "PageTransitionDirection", strip_prefix, POPPLER_TYPE_PAGE_TRANSITION_DIRECTION);
diff --git a/pkgs/development/python-modules/pyproj/default.nix b/pkgs/development/python-modules/pyproj/default.nix
index 9632fc5cb40..815f0fb84c9 100644
--- a/pkgs/development/python-modules/pyproj/default.nix
+++ b/pkgs/development/python-modules/pyproj/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "pyproj";
-  version = "3.2.1";
+  version = "3.3.0";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "pyproj4";
     repo = "pyproj";
     rev = version;
-    sha256 = "sha256-r343TvXpSr+EMAbvzSUpsfipwP8TFmitOfT0gjgoO00=";
+    hash = "sha256-crLYNACS9I0WGOdkYCJNoyxeAYsR41ZszzKRZsYHCLY=";
   };
 
   # force pyproj to use ${proj}
diff --git a/pkgs/development/python-modules/pyreport/default.nix b/pkgs/development/python-modules/pyreport/default.nix
deleted file mode 100644
index 6b9649699ba..00000000000
--- a/pkgs/development/python-modules/pyreport/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "pyreport";
-  version = "0.3.4c";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1584607596b7b310bf0b6ce79f424bd44238a017fd870aede11cd6732dbe0d4d";
-  };
-
-  # error: invalid command 'test'
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://pypi.python.org/pypi/pyreport";
-    license = licenses.bsd0;
-    description = "Pyreport makes notes out of a python script";
-  };
-
-}
diff --git a/pkgs/development/python-modules/pyside/apiextractor.nix b/pkgs/development/python-modules/pyside/apiextractor.nix
index ab8c6eb7840..05841474744 100644
--- a/pkgs/development/python-modules/pyside/apiextractor.nix
+++ b/pkgs/development/python-modules/pyside/apiextractor.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, cmake, libxml2, libxslt, python3, qt4 }:
+{ lib, stdenv, fetchFromGitHub, cmake, libxml2, libxslt, python3, qt4 }:
 
 # This derivation does not provide any Python module and should therefore be called via `all-packages.nix`.
 let
@@ -8,9 +8,11 @@ stdenv.mkDerivation rec {
   pname = "pyside-apiextractor";
   version = "0.10.10";
 
-  src = fetchurl {
-    url = "https://github.com/PySide/Apiextractor/archive/${version}.tar.gz";
-    sha256 = "1zj8yrxy08iv1pk38djxw3faimm226w6wmi0gm32w4yczblylwz3";
+  src = fetchFromGitHub {
+    owner = "PySide";
+    repo = "Apiextractor";
+    rev = version;
+    sha256 = "sha256-YH8aYyzv59xiIglZbdNgOPnmEQwNE2GmotAFFfFdMlg=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/python-modules/pyside/generatorrunner.nix b/pkgs/development/python-modules/pyside/generatorrunner.nix
index 532ee6b2b24..f1e002daf4c 100644
--- a/pkgs/development/python-modules/pyside/generatorrunner.nix
+++ b/pkgs/development/python-modules/pyside/generatorrunner.nix
@@ -1,16 +1,17 @@
-{ lib, stdenv, fetchurl, cmake, pysideApiextractor, python3, qt4 }:
+{ lib, stdenv, fetchFromGitHub, cmake, pysideApiextractor, python3, qt4 }:
 
 # This derivation does not provide any Python module and should therefore be called via `all-packages.nix`.
 let
   pythonEnv = python3.withPackages(ps: with ps; [ sphinx ]);
+in stdenv.mkDerivation rec {
   pname = "pyside-generatorrunner";
   version = "0.6.16";
-in stdenv.mkDerivation {
-  name = "${pname}-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/PySide/Generatorrunner/archive/0.6.16.tar.gz";
-    sha256 = "0vzk3cp0pfbhd921r8f1xkcz96znla39dhj074k623x9k26lj2sj";
+  src = fetchFromGitHub {
+    owner = "PySide";
+    repo = "Generatorrunner";
+    rev = version;
+    sha256 = "sha256-JAghKY033RTD5b2elitzVQbbN3PMmT3BHwpqx8N5EYg=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/python-modules/pysimplegui/default.nix b/pkgs/development/python-modules/pysimplegui/default.nix
new file mode 100644
index 00000000000..9542ffe1b3b
--- /dev/null
+++ b/pkgs/development/python-modules/pysimplegui/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, tkinter
+}:
+buildPythonPackage rec {
+  pname = "PySimpleGUI";
+  version = "4.55.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-nUDAoMK0w9Luk1hU5I1yT1CK5oEj9LrIByYS3Z5wfew=";
+  };
+
+  pythonImportsCheck = [ "PySimpleGUI" ];
+
+  propagatedBuildInputs = [
+    tkinter
+  ];
+
+  meta = with lib; {
+    description = "Python GUIs for Humans.";
+    homepage = "https://github.com/PySimpleGUI/PySimpleGUI";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ lucasew ];
+  };
+}
diff --git a/pkgs/development/python-modules/pystray/default.nix b/pkgs/development/python-modules/pystray/default.nix
index 7b394a21b52..c3cf0a9841f 100644
--- a/pkgs/development/python-modules/pystray/default.nix
+++ b/pkgs/development/python-modules/pystray/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "pystray";
-  version = "0.19.1";
+  version = "0.19.2";
 
   src = fetchFromGitHub {
     owner = "moses-palmer";
     repo = "pystray";
     rev = "v${version}";
-    sha256 = "sha256-7w3odneRfDQ7K965ffJ+xSaGvg/KM0vTrSIj0ee13Uk=";
+    sha256 = "sha256-8B178MSe4ujlnGBmQhIu+BoAh1doP9V5cL0ermLQTvs=";
   };
 
   nativeBuildInputs = [ sphinx ];
diff --git a/pkgs/development/python-modules/pytap2/default.nix b/pkgs/development/python-modules/pytap2/default.nix
new file mode 100644
index 00000000000..3823f027038
--- /dev/null
+++ b/pkgs/development/python-modules/pytap2/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, nettools
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pytap2";
+  version = "2.2.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "johnthagen";
+    repo = "pytap2";
+    rev = "v${version}";
+    hash = "sha256-/t0Seg+8ZrOWOHBu9ftE1xkrnDeoYdHopXBvJTMGYRI=";
+  };
+
+  propagatedBuildInputs = [
+    nettools
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "pytap2"
+  ];
+
+  meta = with lib; {
+    description = "Object-oriented wrapper around the Linux Tun/Tap device";
+    homepage = "https://github.com/johnthagen/pytap2";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-aio/default.nix b/pkgs/development/python-modules/pytest-aio/default.nix
index b6ecc9eb882..09c278a70e1 100644
--- a/pkgs/development/python-modules/pytest-aio/default.nix
+++ b/pkgs/development/python-modules/pytest-aio/default.nix
@@ -1,11 +1,15 @@
 { lib
+, anyio
 , buildPythonPackage
-, fetchPypi
+, curio
+, fetchFromGitHub
+, hypothesis
 , pytest
-, pytest-mypy
 , pytestCheckHook
 , pythonOlder
-, types-setuptools
+, sniffio
+, trio
+, trio-asyncio
 }:
 
 buildPythonPackage rec {
@@ -15,19 +19,29 @@ buildPythonPackage rec {
 
   disabled = pythonOlder "3.7";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "ZPG6k+ZNi6FQftIVwr/Lux5rJlo284V/mjtYepNScdQ=";
+  src = fetchFromGitHub {
+    owner = "klen";
+    repo = "pytest-aio";
+    rev = version;
+    sha256 = "pLH0yXe/KS9ohI8+hWSprP1OA3Qjki2BPqeApMPMGDs=";
   };
 
+  postPatch = ''
+    sed -i '/addopts/d' setup.cfg
+  '';
+
   buildInputs = [
     pytest
   ];
 
   checkInputs = [
-    pytest-mypy
+    anyio
+    curio
+    hypothesis
     pytestCheckHook
-    types-setuptools
+    sniffio
+    trio
+    trio-asyncio
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/pytest-helpers-namespace/default.nix b/pkgs/development/python-modules/pytest-helpers-namespace/default.nix
index eac8cf6377d..f7d6ce31264 100644
--- a/pkgs/development/python-modules/pytest-helpers-namespace/default.nix
+++ b/pkgs/development/python-modules/pytest-helpers-namespace/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "pytest-helpers-namespace";
-  version = "2021.4.29";
+  version = "2021.12.29";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "183524e3db4e2a1fea92e0ca3662a624ba44c9f3568da15679d7535ba6838a6a";
+    sha256 = "792038247e0021beb966a7ea6e3a70ff5fcfba77eb72c6ec8fd6287af871c35b";
   };
 
   nativeBuildInputs = [ setuptools setuptools-declarative-requirements setuptools-scm ];
diff --git a/pkgs/development/python-modules/pytest-mock/2.nix b/pkgs/development/python-modules/pytest-mock/2.nix
deleted file mode 100644
index 3ccaa7481d7..00000000000
--- a/pkgs/development/python-modules/pytest-mock/2.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, pytest
-, mock
-, setuptools-scm
-}:
-
-buildPythonPackage rec {
-  pname = "pytest-mock";
-  version = "2.0.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "b35eb281e93aafed138db25c8772b95d3756108b601947f89af503f8c629413f";
-  };
-
-  propagatedBuildInputs = lib.optional (!isPy3k) mock;
-
-  nativeBuildInputs = [
-   setuptools-scm
-  ];
-
-  checkInputs = [
-    pytest
-  ];
-
-  checkPhase = ''
-    pytest
-  '';
-
-  meta = with lib; {
-    description = "Thin-wrapper around the mock package for easier use with py.test.";
-    homepage    = "https://github.com/pytest-dev/pytest-mock";
-    license     = licenses.mit;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/pytest-mypy-plugins/default.nix b/pkgs/development/python-modules/pytest-mypy-plugins/default.nix
new file mode 100644
index 00000000000..38b2168e13f
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-mypy-plugins/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, chevron
+, pyyaml
+, mypy
+, pytest
+, decorator
+, regex
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-mypy-plugins";
+  version = "1.9.2";
+  src = fetchFromGitHub {
+    owner = "typeddjango";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-Me5P4Q2M+gGEWlUVgQ0L048rVUOlUzVMgZZcqZPeE4Q=";
+  };
+  propagatedBuildInputs = [ chevron pyyaml mypy pytest decorator regex ];
+
+  meta = with lib; {
+    description = "pytest plugin for testing mypy types, stubs, and plugins";
+    homepage = "https://github.com/TypedDjango/pytest-mypy-plugins";
+    license = licenses.mit;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-services/default.nix b/pkgs/development/python-modules/pytest-services/default.nix
index 4f2a577bb4d..41890215025 100644
--- a/pkgs/development/python-modules/pytest-services/default.nix
+++ b/pkgs/development/python-modules/pytest-services/default.nix
@@ -6,7 +6,6 @@
 , psutil
 , pytest
 , setuptools-scm
-, subprocess32 ? null
 , toml
 , zc_lockfile
 }:
@@ -31,7 +30,7 @@ buildPythonPackage rec {
     requests
     psutil
     zc_lockfile
-  ] ++ lib.optional (!isPy3k) subprocess32;
+  ];
 
   # no tests in PyPI tarball
   doCheck = false;
diff --git a/pkgs/development/python-modules/python-codon-tables/default.nix b/pkgs/development/python-modules/python-codon-tables/default.nix
index 4c1ec6a3a20..7c4551a9d67 100644
--- a/pkgs/development/python-modules/python-codon-tables/default.nix
+++ b/pkgs/development/python-modules/python-codon-tables/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "python-codon-tables";
-  version = "0.1.10";
+  version = "0.1.11";
 
   src = fetchPypi {
     pname = "python_codon_tables";
     inherit version;
-    sha256 = "265beac928cbb77c6745bc728471adc7ffef933b794be303d272ecb9ad37d3d4";
+    sha256 = "ba590fcfb1988f9674c8627464caeb3ea0797d970872a2c27ea09906acd24110";
   };
 
   # no tests in tarball
diff --git a/pkgs/development/python-modules/python-izone/default.nix b/pkgs/development/python-modules/python-izone/default.nix
index 22f541d6712..1d1eb5ac54e 100644
--- a/pkgs/development/python-modules/python-izone/default.nix
+++ b/pkgs/development/python-modules/python-izone/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "python-izone";
-  version = "1.1.8";
+  version = "1.2.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Swamp-Ig";
     repo = "pizone";
     rev = "v${version}";
-    sha256 = "sha256-/qPWSTO0PV4lEgwWpgcoBnbUtDUrEVItb4NF9TV2QJU=";
+    hash = "sha256-WF37t9vCEIyQMeN3/CWAiiZ5zsMRMFQ5UvMUqfoGM9I=";
   };
 
   propagatedBuildInputs = [
@@ -34,10 +34,7 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  disabledTestPaths = [
-    # Test are blocking
-    "tests/test_fullstack.py"
-  ];
+  doCheck = false; # most tests access network
 
   pythonImportsCheck = [
     "pizone"
diff --git a/pkgs/development/python-modules/python-lsp-server/default.nix b/pkgs/development/python-modules/python-lsp-server/default.nix
index 4aa8d853ebd..b000379dd1b 100644
--- a/pkgs/development/python-modules/python-lsp-server/default.nix
+++ b/pkgs/development/python-modules/python-lsp-server/default.nix
@@ -35,14 +35,15 @@
 
 buildPythonPackage rec {
   pname = "python-lsp-server";
-  version = "1.3.1";
-  disabled = pythonOlder "3.6";
+  version = "1.3.3";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "python-lsp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "067dlhwwv4mkrirnmqinrvkbfx59hf7fiah081d62a46vxvpnv9s";
+    sha256 = "sha256-F8f9NAjPWkm01D/KwFH0oA6nQ3EF4ZVCCckZTL4A35Y=";
   };
 
   postPatch = ''
@@ -96,7 +97,9 @@ buildPythonPackage rec {
     export HOME=$(mktemp -d);
   '';
 
-  pythonImportsCheck = [ "pylsp" ];
+  pythonImportsCheck = [
+    "pylsp"
+  ];
 
   meta = with lib; {
     description = "Python implementation of the Language Server Protocol";
diff --git a/pkgs/development/python-modules/python-lzo/default.nix b/pkgs/development/python-modules/python-lzo/default.nix
index 5025b86361a..dcf55e8e32b 100644
--- a/pkgs/development/python-modules/python-lzo/default.nix
+++ b/pkgs/development/python-modules/python-lzo/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "python-lzo";
-  version = "1.12";
+  version = "1.14";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0iakqgd51n1cd7r3lpdylm2rgbmd16y74cra9kcapwg84mlf9a4p";
+    sha256 = "83cbd8ecaae284735250e31d6c0ecc18ac08763fab2a8c910dc5a6910db6250c";
   };
 
   buildInputs = [ lzo ];
diff --git a/pkgs/development/python-modules/python-otr/default.nix b/pkgs/development/python-modules/python-otr/default.nix
deleted file mode 100644
index 6b657dba78d..00000000000
--- a/pkgs/development/python-modules/python-otr/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, isPy3k
-, zope_interface
-, cryptography
-, application
-, gmpy2
-}:
-
-buildPythonPackage rec {
-  pname = "python-otr";
-  version = "1.2.0";
-  disabled = isPy3k;
-
-  src = fetchFromGitHub {
-    owner = "AGProjects";
-    repo = pname;
-    rev = "release-${version}";
-    sha256 = "0p3b1n8jlxwd65gbk2k5007fkhdyjwcvr4982s42hncivxvabzzy";
-  };
-
-  propagatedBuildInputs = [ zope_interface cryptography application gmpy2 ];
-
-  meta = with lib; {
-    description = "A pure python implementation of OTR";
-    homepage = "https://github.com/AGProjects/python-otr";
-    license = licenses.lgpl21Plus;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ edwtjo ];
-    # The package itself does not support python3, and its transitive
-    # dependencies rely on namespace package support that does not work in
-    # Nix's python2 infra. See #74619 for details.
-    broken = true;
-  };
-}
diff --git a/pkgs/development/python-modules/python-utils/default.nix b/pkgs/development/python-modules/python-utils/default.nix
index f11ce745fed..d79f357e50e 100644
--- a/pkgs/development/python-modules/python-utils/default.nix
+++ b/pkgs/development/python-modules/python-utils/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "python-utils";
-  version = "2.5.6";
+  version = "2.7.0";
 
   src = fetchFromGitHub {
     owner = "WoLpH";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0gd2jana5w6bn7z58di4a8dwcxvc8rx282jawbw7ws7qm2a5klz3";
+    sha256 = "0gns9v5144cj03p7qbb3822scb6pwrlgr6niixpkynwqkcwjfg4c";
   };
 
   # disable coverage and linting
diff --git a/pkgs/development/python-modules/python2-pythondialog/default.nix b/pkgs/development/python-modules/python2-pythondialog/default.nix
deleted file mode 100644
index 78378a738db..00000000000
--- a/pkgs/development/python-modules/python2-pythondialog/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "python2-pythondialog";
-  version = "3.5.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "ad159c7b455d9cb2a5173590656d19a26e9cc208264cfab755f5827070d18613";
-  };
-
-  patchPhase = ''
-    substituteInPlace dialog.py --replace ":/bin:/usr/bin" ":$out/bin"
-  '';
-
-  meta = with lib; {
-    description = "A Python interface to the UNIX dialog utility and mostly-compatible programs (Python 2 backport)";
-    homepage = "http://pythondialog.sourceforge.net/";
-    license = licenses.lgpl3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/python_statsd/default.nix b/pkgs/development/python-modules/python_statsd/default.nix
deleted file mode 100644
index 2aabaec2e14..00000000000
--- a/pkgs/development/python-modules/python_statsd/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, mock
-, nose
-, coverage
-}:
-
-buildPythonPackage rec {
-  pname = "python-statsd";
-  version = "2.1.0";
-  disabled = isPy3k;  # next release will be py3k compatible
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d2c573d325d0f015b4d79f0d0f8c88dd8413d7b9ef890c09076a9b6089ab301c";
-  };
-
-  buildInputs = [ mock nose coverage ];
-
-  meta = with lib; {
-    description = "A client for Etsy's node-js statsd server";
-    homepage = "https://github.com/WoLpH/python-statsd";
-    license = licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/pythonirclib/default.nix b/pkgs/development/python-modules/pythonirclib/default.nix
deleted file mode 100644
index 54c84fe6ef5..00000000000
--- a/pkgs/development/python-modules/pythonirclib/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, paver
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "irclib";
-  version = "0.4.8";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "mirror://sourceforge/python-irclib/python-irclib-${version}.tar.gz";
-    sha256 = "1x5456y4rbxmnw4yblhb4as5791glcw394bm36px3x6l05j3mvl1";
-  };
-
-  patches = [(fetchurl {
-    url = "http://trac.uwc.ac.za/trac/python_tools/browser/xmpp/resources/irc-transport/irclib.py.diff?rev=387&format=raw";
-    name = "irclib.py.diff";
-    sha256 = "5fb8d95d6c95c93eaa400b38447c63e7a176b9502bc49b2f9b788c9905f4ec5e";
-  })];
-
-  patchFlags = [ "irclib.py" ];
-
-  propagatedBuildInputs = [ paver ];
-
-  meta = with lib; {
-    description = "Python IRC library";
-    homepage = "https://github.com/jaraco/irc";
-    license = with licenses; [ lgpl21 ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/pythonmagick/default.nix b/pkgs/development/python-modules/pythonmagick/default.nix
deleted file mode 100644
index a647fa1005b..00000000000
--- a/pkgs/development/python-modules/pythonmagick/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, python
-, pkg-config
-, imagemagick
-, autoreconfHook
-, boost
-, isPy3k
-, pythonImportsCheckHook
-}:
-
-buildPythonPackage rec {
-  pname = "pythonmagick";
-  version = "0.9.16";
-  format = "other";
-
-  src = fetchurl {
-    url = "mirror://imagemagick/python/releases/PythonMagick-${version}.tar.xz";
-    sha256 = "137278mfb5079lns2mmw73x8dhpzgwha53dyl00mmhj2z25varpn";
-  };
-
-  postPatch = ''
-    rm configure
-  '';
-
-  configureFlags = [ "--with-boost=${boost}" ];
-
-  nativeBuildInputs = [ pkg-config autoreconfHook pythonImportsCheckHook ];
-  buildInputs = [ python boost imagemagick ];
-
-  pythonImportsCheck = [
-    "PythonMagick"
-  ];
-
-  disabled = isPy3k;
-
-  meta = with lib; {
-    homepage = "http://www.imagemagick.org/script/api.php";
-    license = licenses.imagemagick;
-    description = "PythonMagick provides object oriented bindings for the ImageMagick Library.";
-  };
-}
diff --git a/pkgs/development/python-modules/pytradfri/default.nix b/pkgs/development/python-modules/pytradfri/default.nix
index 98bf1b1da4e..3e50debd835 100644
--- a/pkgs/development/python-modules/pytradfri/default.nix
+++ b/pkgs/development/python-modules/pytradfri/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pytradfri";
-  version = "7.2.1";
+  version = "8.0.0";
 
   disabled = pythonOlder "3.7";
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "home-assistant-libs";
     repo = "pytradfri";
     rev = version;
-    sha256 = "sha256-4+QdMuwDMLhIIzffHXG+LehuwR9QMcI/CeL5g8wOQfU=";
+    hash = "sha256-YnQUZcqSldtRqzMac5sPoSNDT+ifs3Jqek2CoDeobe8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyupgrade/default.nix b/pkgs/development/python-modules/pyupgrade/default.nix
index 46764be0276..8d815ee1ce9 100644
--- a/pkgs/development/python-modules/pyupgrade/default.nix
+++ b/pkgs/development/python-modules/pyupgrade/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "pyupgrade";
-  version = "2.30.0";
+  version = "2.31.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "asottile";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Fku95ar5i+QV21GhomO6/ivlJcnOhPyximyPsh2/dc0=";
+    sha256 = "sha256-nuYWJ4nilbXa/1KOuGhc6rB7uXDE4+lcESNud4Ug+3Y=";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/pywbem/default.nix b/pkgs/development/python-modules/pywbem/default.nix
index 3e1f37d26b0..db7bd82b652 100644
--- a/pkgs/development/python-modules/pywbem/default.nix
+++ b/pkgs/development/python-modules/pywbem/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "pywbem";
-  version = "1.3.0";
+  version = "1.4.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5df0af28f81891a3914a12f3a30b11b1981f7b30e09c5a42c011797e7fce9b6a";
+    sha256 = "52f668f7ee1f03bdd80485692b648588b3e1909e2dc0754dceca497f5e9cf059";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyweatherflowrest/default.nix b/pkgs/development/python-modules/pyweatherflowrest/default.nix
index d6f27f2c320..32a5c5d8abc 100644
--- a/pkgs/development/python-modules/pyweatherflowrest/default.nix
+++ b/pkgs/development/python-modules/pyweatherflowrest/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyweatherflowrest";
-  version = "0.1.23";
+  version = "1.0.7";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "briis";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-VeLkQmH9h41upATWEWwKjf2GCXjltBnHHauGB76ViBc=";
+    sha256 = "17zas565jqvp0qrs8l589rm4f9xpyynhqk8lrqcx089w3rv0hh2p";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pywebdav/default.nix b/pkgs/development/python-modules/pywebdav/default.nix
deleted file mode 100644
index 2f6bb8553a4..00000000000
--- a/pkgs/development/python-modules/pywebdav/default.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ lib, fetchPypi, buildPythonPackage, isPy3k }:
-
-buildPythonPackage rec {
-  pname = "PyWebDAV";
-  version = "0.9.8";
-  disabled = isPy3k;
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1v10vg79h85milnq8w7yd75qq5z6297ywkn9b2kxajldzwqxn3ji";
-  };
-  meta = with lib; {
-    homepage = "http://code.google.com/p/pywebdav/";
-    description = "WebDAV library including a standalone server for python";
-    maintainers = with maintainers; [ johbo ];
-    license = licenses.gpl2Plus;
-  };
-}
diff --git a/pkgs/development/python-modules/pyxml/default.nix b/pkgs/development/python-modules/pyxml/default.nix
deleted file mode 100644
index 49796054b56..00000000000
--- a/pkgs/development/python-modules/pyxml/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{fetchurl, python, buildPythonPackage, makeWrapper}:
-
-buildPythonPackage rec {
-  pname = "PyXML";
-  version = "0.8.4";
-
-  format = "other";
-  src = fetchurl {
-    url = "mirror://sourceforge/pyxml/${pname}-${pname}.tar.gz";
-    sha256 = "04wc8i7cdkibhrldy6j65qp5l75zjxf5lx6qxdxfdf2gb3wndawz";
-  };
-
-  nativeBuildInputs = [ makeWrapper ];
-  buildPhase = "${python.interpreter} ./setup.py build";
-  installPhase = ''
-    ${python.interpreter} ./setup.py install --prefix="$out" || exit 1
-
-    for i in "$out/bin/"*
-    do
-      wrapProgram "$i" --prefix PYTHONPATH :  \
-       "$out/${python.sitePackages}" ||  \
-        exit 2
-    done
-  '';
-
-  meta = {
-    description = "A collection of libraries to process XML with Python";
-    homepage = "http://pyxml.sourceforge.net/";
-  };
-}
diff --git a/pkgs/development/python-modules/qpid-python/default.nix b/pkgs/development/python-modules/qpid-python/default.nix
index 24c90d072a2..e22b3215e81 100644
--- a/pkgs/development/python-modules/qpid-python/default.nix
+++ b/pkgs/development/python-modules/qpid-python/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    homepage = "http://qpid.apache.org/";
+    homepage = "https://qpid.apache.org/";
     description = "Python client implementation and AMQP conformance tests for Apache Qpid";
     license = licenses.asl20;
   };
diff --git a/pkgs/development/python-modules/qserve/default.nix b/pkgs/development/python-modules/qserve/default.nix
deleted file mode 100644
index f316e3fb65c..00000000000
--- a/pkgs/development/python-modules/qserve/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "qserve";
-  version = "0.3.0";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    extension = "zip";
-    sha256 = "dac1ee4ec60af6beb9af8f3f02d08d6db4cc9868b0915d626cb900a50d003ed4";
-  };
-
-  meta = with lib; {
-    description = "Job queue server";
-    homepage = "https://github.com/pediapress/qserve";
-    license = licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/qtconsole/default.nix b/pkgs/development/python-modules/qtconsole/default.nix
index b56e80eb80c..4cf9bd022da 100644
--- a/pkgs/development/python-modules/qtconsole/default.nix
+++ b/pkgs/development/python-modules/qtconsole/default.nix
@@ -15,11 +15,11 @@
 
 buildPythonPackage rec {
   pname = "qtconsole";
-  version = "5.2.1";
+  version = "5.2.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "bb3b9f0d674055e627c1097779c0d5e028176706d3b6be39cf52235f6ddcc88e";
+    sha256 = "8f9db97b27782184efd0a0f2d57ea3bd852d053747a2e442a9011329c082976d";
   };
 
   checkInputs = [ nose ] ++ lib.optionals isPy27 [mock];
diff --git a/pkgs/development/python-modules/questionary/default.nix b/pkgs/development/python-modules/questionary/default.nix
index 27619b78545..29ceff5e2ac 100644
--- a/pkgs/development/python-modules/questionary/default.nix
+++ b/pkgs/development/python-modules/questionary/default.nix
@@ -1,10 +1,10 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, poetry
+, poetry-core
 , prompt-toolkit
-, pytest-cov
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
@@ -12,6 +12,8 @@ buildPythonPackage rec {
   version = "1.10.0";
   format = "pyproject";
 
+  disabled = pythonOlder "3.6";
+
   src = fetchFromGitHub {
     owner = "tmbo";
     repo = pname;
@@ -20,7 +22,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    poetry
+    poetry-core
   ];
 
   propagatedBuildInputs = [
@@ -28,11 +30,17 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytest-cov
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "questionary" ];
+  disabledTests = [
+    # TypeError: <lambda>() missing 1 required...
+    "test_print_with_style"
+  ];
+
+  pythonImportsCheck = [
+    "questionary"
+  ];
 
   meta = with lib; {
     description = "Python library to build command line user prompts";
diff --git a/pkgs/development/python-modules/remotecv/default.nix b/pkgs/development/python-modules/remotecv/default.nix
deleted file mode 100644
index 078e431f3ba..00000000000
--- a/pkgs/development/python-modules/remotecv/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pillow, pyres, nose
-, preggy, numpy, yanc, nose-focus, mock, opencv }:
-
-buildPythonPackage rec {
-  pname = "remotecv";
-  version = "2.2.2";
-
-  propagatedBuildInputs = [ pillow pyres ];
-
-  checkInputs = [ nose preggy numpy yanc nose-focus mock opencv ];
-
-  # PyPI tarball doesn't contain tests so let's use GitHub
-  src = fetchFromGitHub {
-    owner = "thumbor";
-    repo = pname;
-    rev = version;
-    sha256 = "0slalp1x626ajy2cbdfifhxf0ffzckqdz6siqsqr6s03hrl877hy";
-  };
-
-  # Remove unnecessary argparse dependency and some seemingly unnecessary
-  # version upper bounds because nixpkgs contains (or could contain) newer
-  # versions.
-  # See: https://github.com/thumbor/remotecv/issues/15
-  patches = [
-    ./install_requires.patch
-  ];
-
-  checkPhase = ''
-    nosetests --with-yanc -s tests/
-  '';
-
-  meta = with lib; {
-    description = "OpenCV worker for facial and feature recognition";
-    homepage = "https://github.com/thumbor/remotecv/wiki";
-    license = licenses.mit;
-    maintainers = with maintainers; [ jluttine ];
-    broken = true; # no longer compatible with latest pillow
-  };
-}
diff --git a/pkgs/development/python-modules/remotecv/install_requires.patch b/pkgs/development/python-modules/remotecv/install_requires.patch
deleted file mode 100644
index 37203128486..00000000000
--- a/pkgs/development/python-modules/remotecv/install_requires.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 70f765c..8003cda 100644
---- a/setup.py
-+++ b/setup.py
-@@ -53,9 +53,8 @@ remotecv is an OpenCV worker for facial and feature recognition
-     },
- 
-     install_requires=[
--        "argparse>=1.2.1,<1.3.0",
--        "pyres>=1.5,<1.6",
--        "Pillow>=4.3.0,<5.2.0",
-+        "pyres>=1.5",
-+        "Pillow>=4.3.0",
-     ],
- 
-     entry_points={
diff --git a/pkgs/development/python-modules/renault-api/default.nix b/pkgs/development/python-modules/renault-api/default.nix
index cf7bed958ed..eef2459c259 100644
--- a/pkgs/development/python-modules/renault-api/default.nix
+++ b/pkgs/development/python-modules/renault-api/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "renault-api";
-  version = "0.1.5";
+  version = "0.1.6";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "hacf-fr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-b3oHpERUqeIw0yOxZytQuRE4jVUcahWlMQ+7ZBX0KL8=";
+    sha256 = "0v9a8p0ynikqzg7vvinvik5gjvsc5nrfqkq528mhcw7y4hmj8ndm";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/requests-cache/default.nix b/pkgs/development/python-modules/requests-cache/default.nix
index 21732ed3a95..f095cf00a28 100644
--- a/pkgs/development/python-modules/requests-cache/default.nix
+++ b/pkgs/development/python-modules/requests-cache/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "requests-cache";
-  version = "0.8.1";
+  version = "0.9.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "reclosedev";
     repo = "requests-cache";
     rev = "v${version}";
-    sha256 = "sha256-HzOcPWmvUhqPtb/7Mnw6wWY7a4CwGRwPgq+7QoHJAc8=";
+    sha256 = "0gz6fyc6lgbab9k92cihrp3711r1wcp4xhs25qp176zbzgccbj43";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/restview/default.nix b/pkgs/development/python-modules/restview/default.nix
index b2fc2d9beae..b25b28eca94 100644
--- a/pkgs/development/python-modules/restview/default.nix
+++ b/pkgs/development/python-modules/restview/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, fetchpatch
 , docutils
 , readme_renderer
 , packaging
@@ -12,22 +11,29 @@
 
 buildPythonPackage rec {
   pname = "restview";
-  version = "2.9.2";
+  version = "2.9.3";
+  format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1p1jgdvc04ws8kga3r0vrq3m0b52qw3clwyydl96a13wb3mrf03r";
+    sha256 = "sha256-WVGqIYLnqao6uQbb0PDTPfj+k+ZjGKholknBIorXTNg=";
   };
 
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/mgedmin/restview/commit/a1ded30a87c65f3ce59a18497a7fc5099317c2be.patch";
-      sha256 = "1ax7pih456a3nbj8qrrq7hqigbyag4ihzpn6bm0z4y74d0r3v8a5";
-    })
+  propagatedBuildInputs = [
+    docutils
+    readme_renderer
+    packaging
+    pygments
   ];
 
-  propagatedBuildInputs = [ docutils readme_renderer packaging pygments ];
-  checkInputs = [ mock pytestCheckHook ];
+  checkInputs = [
+    mock
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "restview"
+  ];
 
   meta = {
     description = "ReStructuredText viewer";
diff --git a/pkgs/development/python-modules/rhpl/builder.sh b/pkgs/development/python-modules/rhpl/builder.sh
deleted file mode 100644
index 15e05a73f93..00000000000
--- a/pkgs/development/python-modules/rhpl/builder.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-source $stdenv/setup
-
-rpmextract $src
-tar xfvj rhpl-*.tar.bz2
-rm rhpl-*.tar.bz2
-cd rhpl-*
-incl=$(echo $python/include/python2.*)
-sed -i -e "s@/usr/include/\$(PYTHON)@$incl@" \
-       -e "s@PYTHONLIBDIR = /usr/\$(LIBDIR)/\$(PYTHON)/site-packages@PYTHONLIBDIR = $(toPythonPath $out)@" Makefile.inc
-sed -i -e "s@/usr/bin/install@install@g" \
-       -e "s@\$(DESTDIR)/usr/share/locale@$out/share/locale@" po/Makefile
-make PREFIX=$out
-make PREFIX=$out install
diff --git a/pkgs/development/python-modules/rhpl/default.nix b/pkgs/development/python-modules/rhpl/default.nix
deleted file mode 100644
index bfc53910b29..00000000000
--- a/pkgs/development/python-modules/rhpl/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{buildPythonPackage, fetchurl, rpmextract, python, wirelesstools, gettext}:
-
-buildPythonPackage {
-  pname = "rhpl";
-  version = "0.218";
-  format = "other";
-
-  src = fetchurl {
-    url = "http://ftp-stud.hs-esslingen.de/pub/Mirrors/archive.fedoraproject.org/fedora/linux/releases/10/Everything/source/SRPMS//rhpl-0.218-1.src.rpm";
-    sha256 = "0c3sc74cjzz5dmpr2gi5naxcc5p2qmzagz7k561xj07njn0ddg16";
-  };
-
-  inherit python;
-
-  builder = ./builder.sh;
-
-  nativeBuildInputs = [ rpmextract  gettext ];
-  buildInputs = [ wirelesstools ];
-}
diff --git a/pkgs/development/python-modules/robotframework-ride/default.nix b/pkgs/development/python-modules/robotframework-ride/default.nix
deleted file mode 100644
index bc9e0873fe5..00000000000
--- a/pkgs/development/python-modules/robotframework-ride/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, fetchurl, buildPythonPackage, isPy3k, pygments, wxPython }:
-
-buildPythonPackage rec {
-  version = "1.2.3";
-  pname = "robotframework-ride";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "https://robotframework-ride.googlecode.com/files/${pname}-${version}.tar.gz";
-    sha256 = "1lf5f4x80f7d983bmkx12sxcizzii21kghs8kf63a1mj022a5x5j";
-  };
-
-  propagatedBuildInputs = [ pygments wxPython ];
-
-  # ride_postinstall.py checks that needed deps are installed and creates a
-  # desktop shortcut. We don't really need it and it clutters up bin/ so
-  # remove it.
-  postInstall = ''
-    rm -f "$out/bin/ride_postinstall.py"
-  '';
-
-  # error: invalid command 'test'
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Light-weight and intuitive editor for Robot Framework test case files";
-    homepage = "https://code.google.com/p/robotframework-ride/";
-    license = licenses.asl20;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ bjornfor ];
-  };
-}
diff --git a/pkgs/development/python-modules/rpkg/default.nix b/pkgs/development/python-modules/rpkg/default.nix
deleted file mode 100644
index 5f1cfc622c9..00000000000
--- a/pkgs/development/python-modules/rpkg/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, buildPythonPackage, isPy3k, fetchurl, six, pycurl, cccolutils
-, koji, rpmfluff }:
-
-buildPythonPackage rec {
-  pname = "rpkg";
-  version = "1.50";
-
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "https://releases.pagure.org/rpkg/${pname}-${version}.tar.gz";
-    sha256 = "0j83bnm9snr3m1mabw2cvd2r7d6kcnkzyz7b9p65fhcc3c7s3rvv";
-  };
-
-
-  propagatedBuildInputs = [ pycurl koji cccolutils six rpmfluff ];
-
-  doCheck = false; # needs /var/lib/rpm database to run tests
-
-  meta = with lib; {
-    description = "Python library for dealing with rpm packaging";
-    homepage = "https://pagure.io/fedpkg";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/rpy2/2.nix b/pkgs/development/python-modules/rpy2/2.nix
deleted file mode 100644
index 3108861e9ce..00000000000
--- a/pkgs/development/python-modules/rpy2/2.nix
+++ /dev/null
@@ -1,108 +0,0 @@
-{ lib
-, python
-, buildPythonPackage
-, fetchPypi
-, isPyPy
-, isPy27
-, readline
-, R
-, rWrapper
-, rPackages
-, pcre
-, xz
-, bzip2
-, zlib
-, icu
-, singledispatch
-, six
-, jinja2
-, pytz
-, numpy
-, pytest
-, mock
-, extraRPackages ? []
-}:
-
-buildPythonPackage rec {
-    version = "2.8.6"; # python2 support dropped in 2.9.x
-    pname = "rpy2";
-    disabled = isPyPy;
-    src = fetchPypi {
-      inherit version pname;
-      sha256 = "162zki5c1apgv6qbafi7n66y4hgpgp43xag7q75qb6kv99ri6k80";
-    };
-    buildInputs = [
-      readline
-      R
-      pcre
-      xz
-      bzip2
-      zlib
-      icu
-    ] ++ (with rPackages; [
-      # packages expected by the test framework
-      ggplot2
-      dplyr
-      RSQLite
-      broom
-      DBI
-      dbplyr
-      hexbin
-      lme4
-      tidyr
-
-      # is in upstream's `requires` although it shouldn't be -- this is easier than patching it away
-      pytest
-    ]) ++ extraRPackages ++ rWrapper.recommendedPackages;
-
-    nativeBuildInputs = [
-      R # needed at setup time to detect R_HOME (alternatively set R_HOME explicitly)
-    ];
-
-    patches = [
-      # R_LIBS_SITE is used by the nix r package to point to the installed R libraries.
-      # This patch sets R_LIBS_SITE when rpy2 is imported.
-      ./r-libs-site.patch
-    ];
-    postPatch = ''
-      substituteInPlace ${ if isPy27 then "rpy/rinterface/__init__.py" else "rpy2/rinterface_lib/embedded.py" } --replace '@NIX_R_LIBS_SITE@' "$R_LIBS_SITE"
-    '';
-
-    doPatchelf = false; # fails because of "missing filename"
-    patchelfPhase = "";
-
-    propagatedBuildInputs = [
-      singledispatch
-      six
-      jinja2
-      pytz
-      numpy
-    ];
-
-    checkInputs = [
-      pytest
-      mock
-    ];
-    # One remaining test failure caused by different unicode encoding.
-    # https://bitbucket.org/rpy2/rpy2/issues/488
-    doCheck = false;
-    checkPhase = ''
-      ${python.interpreter} -m 'rpy2'
-    '';
-
-    # For some reason libreadline.so is not found. Curiously `ldd _rinterface.so | grep readline` shows two readline entries:
-    # libreadline.so.6 => not found
-    # libreadline.so.6 => /nix/store/z2zhmrg6jcrn5iq2779mav0nnq4vm2q6-readline-6.3p08/lib/libreadline.so.6 (0x00007f333ac43000)
-    # There must be a better way to fix this, but I don't know it.
-    postFixup = ''
-      patchelf --add-needed ${readline}/lib/libreadline.so "$out/${python.sitePackages}/rpy2/rinterface/"_rinterface*.so
-    '';
-
-    meta = {
-      homepage = "http://rpy.sourceforge.net/rpy2";
-      description = "Python interface to R";
-      license = lib.licenses.gpl2Plus;
-      platforms = lib.platforms.unix;
-      maintainers = with lib.maintainers; [ joelmo ];
-    };
-  }
diff --git a/pkgs/development/python-modules/rpy2/r-libs-site.patch b/pkgs/development/python-modules/rpy2/r-libs-site.patch
deleted file mode 100644
index a55b6038bb4..00000000000
--- a/pkgs/development/python-modules/rpy2/r-libs-site.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/rpy/rinterface/__init__.py b/rpy/rinterface/__init__.py
-index 9362e57..1af258e 100644
---- a/rpy/rinterface/__init__.py
-+++ b/rpy/rinterface/__init__.py
-@@ -43,6 +43,15 @@ if not R_HOME:
- if not os.environ.get("R_HOME"):
-     os.environ['R_HOME'] = R_HOME
- 
-+# path to libraries
-+existing = os.environ.get('R_LIBS_SITE')
-+if existing is not None:
-+    prefix = existing + ':'
-+else:
-+    prefix = ''
-+additional = '@NIX_R_LIBS_SITE@'
-+os.environ['R_LIBS_SITE'] = prefix + additional
-+
- if sys.platform == 'win32':
-     _load_r_dll(R_HOME)
- 
diff --git a/pkgs/development/python-modules/rsa/4_0.nix b/pkgs/development/python-modules/rsa/4_0.nix
deleted file mode 100644
index 1a9ad2171a0..00000000000
--- a/pkgs/development/python-modules/rsa/4_0.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, unittest2
-, pyasn1
-, mock
-, isPy3k
-, pythonOlder
-}:
-
-buildPythonPackage rec {
-  pname = "rsa";
-  version = "4.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487";
-  };
-
-  checkInputs = [ unittest2 mock ];
-  propagatedBuildInputs = [ pyasn1 ];
-
-  preConfigure = lib.optionalString (isPy3k && pythonOlder "3.7") ''
-    substituteInPlace setup.py --replace "open('README.md')" "open('README.md',encoding='utf-8')"
-  '';
-
-  meta = with lib; {
-    homepage = "https://stuvel.eu/rsa";
-    license = licenses.asl20;
-    description = "A pure-Python RSA implementation";
-  };
-
-}
diff --git a/pkgs/development/python-modules/ruamel-ordereddict/default.nix b/pkgs/development/python-modules/ruamel-ordereddict/default.nix
deleted file mode 100644
index 987680ad596..00000000000
--- a/pkgs/development/python-modules/ruamel-ordereddict/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, isPyPy
-}:
-
-buildPythonPackage rec {
-  pname = "ruamel-ordereddict";
-  version = "0.4.15";
-  disabled = isPy3k || isPyPy;
-
-  src = fetchPypi {
-    pname = "ruamel.ordereddict";
-    inherit version;
-    sha256 = "d7d9cf8b11e7662deb460260cf062980cd84b87a1d0457132060ab9d44e0a5f4";
-  };
-
-  meta = with lib; {
-    description = "A version of dict that keeps keys in insertion resp. sorted order";
-    homepage = "https://sourceforge.net/projects/ruamel-ordereddict/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ SuperSandro2000 ];
-  };
-}
diff --git a/pkgs/development/python-modules/ruamel-yaml/0.16.nix b/pkgs/development/python-modules/ruamel-yaml/0.16.nix
deleted file mode 100644
index 0d9b1b4a163..00000000000
--- a/pkgs/development/python-modules/ruamel-yaml/0.16.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, ruamel-base
-, ruamel-ordereddict
-, ruamel-yaml-clib ? null
-, isPy27
-, isPyPy
-}:
-
-buildPythonPackage rec {
-  pname = "ruamel-yaml";
-  version = "0.16.13";
-
-  src = fetchPypi {
-    pname = "ruamel.yaml";
-    inherit version;
-    sha256 = "0hm9yg785f46bkrgqknd6fdvmkby9dpzjnm0b63qf0i748acaj5v";
-  };
-
-  # Tests use relative paths
-  doCheck = false;
-
-  propagatedBuildInputs = [ ruamel-base ]
-    ++ lib.optional isPy27 ruamel-ordereddict
-    ++ lib.optional (!isPyPy) ruamel-yaml-clib;
-
-  # causes namespace clash on py27
-  dontUsePythonImportsCheck = isPy27;
-  pythonImportsCheck = [ "ruamel.yaml" ];
-
-  meta = with lib; {
-    description = "YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order";
-    homepage = "https://sourceforge.net/projects/ruamel-yaml/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ SuperSandro2000 ];
-  };
-}
diff --git a/pkgs/development/python-modules/runsnakerun/default.nix b/pkgs/development/python-modules/runsnakerun/default.nix
deleted file mode 100644
index ace9b8269c5..00000000000
--- a/pkgs/development/python-modules/runsnakerun/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, squaremap
-, wxPython
-}:
-
-buildPythonPackage rec {
-  pname = "runsnakerun";
-  version = "2.0.5";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "a66a0cdf0333dc3c0830c18e2f3d62f741dea197cd01a7e0059da4886a3a123f";
-  };
-
-  propagatedBuildInputs = [ squaremap wxPython ];
-
-  meta = with lib; {
-    description = "GUI Viewer for Python profiling runs";
-    homepage = "http://www.vrplumber.com/programming/runsnakerun/";
-    license = licenses.bsd3;
-  };
-
-}
diff --git a/pkgs/development/python-modules/sandboxlib/default.nix b/pkgs/development/python-modules/sandboxlib/default.nix
deleted file mode 100644
index 1be4c485b80..00000000000
--- a/pkgs/development/python-modules/sandboxlib/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pbr
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "sandboxlib";
-  version = "0.31";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0csj8hbpylqdkxcpqkcfs73dfvdqkyj23axi8m9drqdi4dhxb41h";
-  };
-
-  buildInputs = [ pbr ];
-
-  meta = with lib; {
-    description = "Sandboxing Library for Python";
-    homepage = "https://pypi.python.org/pypi/sandboxlib/0.3.1";
-    license = licenses.gpl2;
-  };
-
-}
diff --git a/pkgs/development/python-modules/scikit-learn/0.20.nix b/pkgs/development/python-modules/scikit-learn/0.20.nix
deleted file mode 100644
index 0ed86375589..00000000000
--- a/pkgs/development/python-modules/scikit-learn/0.20.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi
-, gfortran, glibcLocales
-, numpy, scipy, pytest, pillow
-}:
-
-# 0.20.x is the last version that maintains python2 compatibility
-
-buildPythonPackage rec {
-  pname = "scikit-learn";
-  version = "0.20.4";
-  # UnboundLocalError: local variable 'message' referenced before assignment
-  disabled = stdenv.isi686;  # https://github.com/scikit-learn/scikit-learn/issues/5534
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1z3w2c50dwwa297j88pr16pyrjysagsvdj7vrlq40q8777rs7a6z";
-  };
-
-  nativeBuildInputs = [ gfortran ];
-  buildInputs = [ pillow glibcLocales ];
-  propagatedBuildInputs = [ numpy scipy numpy.blas ];
-  checkInputs = [ pytest ];
-
-  LC_ALL="en_US.UTF-8";
-
-  doCheck = !stdenv.isAarch64;
-  # Skip test_feature_importance_regression - does web fetch
-  checkPhase = ''
-    cd $TMPDIR
-    HOME=$TMPDIR OMP_NUM_THREADS=1 pytest -k "not test_feature_importance_regression" --pyargs sklearn
-  '';
-
-  meta = with lib; {
-    description = "A set of python modules for machine learning and data mining";
-    homepage = "https://scikit-learn.org";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/seaborn/0.9.1.nix b/pkgs/development/python-modules/seaborn/0.9.1.nix
deleted file mode 100644
index 79361a49169..00000000000
--- a/pkgs/development/python-modules/seaborn/0.9.1.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, pandas
-, matplotlib
-}:
-
-buildPythonPackage rec {
-  pname = "seaborn";
-  version = "0.9.1";
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "da33aa8c20a9a342ce73831d02831a10413f54a05471c7f31edf34f225d456ae";
-  };
-
-  checkInputs = [ nose ];
-  propagatedBuildInputs = [ pandas matplotlib ];
-
-  checkPhase = ''
-    nosetests -v
-  '';
-
-  # Computationally very demanding tests
-  doCheck = false;
-
-  meta = {
-    description = "Statisitical data visualization";
-    homepage = "https://seaborn.pydata.org/";
-    license = with lib.licenses; [ bsd3 ];
-    maintainers = [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/seahub/default.nix b/pkgs/development/python-modules/seahub/default.nix
deleted file mode 100644
index 81728dfe786..00000000000
--- a/pkgs/development/python-modules/seahub/default.nix
+++ /dev/null
@@ -1,56 +0,0 @@
-{ lib, fetchFromGitHub, python3Packages, makeWrapper }:
-
-python3Packages.buildPythonPackage rec {
-  pname = "seahub";
-  version = "8.0.7";
-
-  src = fetchFromGitHub {
-    owner = "haiwen";
-    repo = "seahub";
-    rev = "4f7bb3f617dd847cf0a6b33c0bfb567b44c06059"; # using a fixed revision because upstream may re-tag releases :/
-    sha256 = "09d05sxly1bljxxzm77limhwsbg8c4b54fzv3kmaih59pjnjyr03";
-  };
-
-  dontBuild = true;
-  doCheck = false; # disabled because it requires a ccnet environment
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  propagatedBuildInputs = with python3Packages; [
-    django
-    future
-    django-statici18n
-    django-webpack-loader
-    django-simple-captcha
-    django-picklefield
-    django-formtools
-    mysqlclient
-    pillow
-    python-dateutil
-    django_compressor
-    djangorestframework
-    openpyxl
-    requests
-    requests_oauthlib
-    pyjwt
-    pycryptodome
-    qrcode
-    pysearpc
-    seaserv
-  ];
-
-  installPhase = ''
-    cp -dr --no-preserve='ownership' . $out/
-    wrapProgram $out/manage.py \
-      --prefix PYTHONPATH : "$PYTHONPATH:$out/thirdpart:" \
-      --prefix PATH : "${python3Packages.python}/bin"
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/haiwen/seahub";
-    description = "The web end of seafile server";
-    license = licenses.asl20;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ greizgh schmittlauch ];
-  };
-}
diff --git a/pkgs/development/python-modules/semantic/default.nix b/pkgs/development/python-modules/semantic/default.nix
deleted file mode 100644
index 518b7637ad7..00000000000
--- a/pkgs/development/python-modules/semantic/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, quantities
-, numpy
-}:
-
-buildPythonPackage rec {
-  pname = "semantic";
-  version = "1.0.3";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "bbc47dad03dddb1ba5895612fdfa1e43cfb3c497534976cebacd4f3684b505b4";
-  };
-
-  propagatedBuildInputs = [ quantities numpy ];
-
-  # strange setuptools error (can not import semantic.test)
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Common Natural Language Processing Tasks for Python";
-    homepage = "https://github.com/crm416/semantic";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/serversyncstorage/default.nix b/pkgs/development/python-modules/serversyncstorage/default.nix
deleted file mode 100644
index a409d48837e..00000000000
--- a/pkgs/development/python-modules/serversyncstorage/default.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, isPy27
-, testfixtures
-, unittest2
-, webtest
-, pyramid
-, sqlalchemy
-, simplejson
-, mozsvc
-, cornice
-, pyramid_hawkauth
-, pymysql
-, pymysqlsa
-, umemcache
-, WSGIProxy
-, requests
-, pybrowserid
-}:
-
-buildPythonPackage rec {
-  pname = "serversyncstorage";
-  version = "1.6.14";
-  disabled = !isPy27;
-
-  src = fetchFromGitHub {
-    owner = "mozilla-services";
-    repo = "server-syncstorage";
-    rev = version;
-    sha256 = "08xclxj38rav8yay9cijiavv35jbyf6a9jzr24vgcna8pjjnbbmh";
-  };
-
-  checkInputs = [ testfixtures unittest2 webtest ];
-  propagatedBuildInputs = [
-    pyramid sqlalchemy simplejson mozsvc cornice pyramid_hawkauth pymysql
-    pymysqlsa umemcache WSGIProxy requests pybrowserid
-  ];
-
-  meta = with lib; {
-    broken = cornice.version != "0.17";
-    description = "The SyncServer server software, as used by Firefox Sync";
-    homepage = "https://github.com/mozilla-services/server-syncstorage";
-    license = licenses.mpl20;
-    maintainers = with maintainers; [ nadrieril ];
-  };
-}
diff --git a/pkgs/development/python-modules/setuptoolsdarcs/default.nix b/pkgs/development/python-modules/setuptoolsdarcs/default.nix
deleted file mode 100644
index 41fe5043ea8..00000000000
--- a/pkgs/development/python-modules/setuptoolsdarcs/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, darcsver
-}:
-
-buildPythonPackage rec {
-  pname = "setuptools_darcs";
-  version = "1.2.11";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1wsh0g1fn10msqk87l5jrvzs0yj5mp6q9ld3gghz6zrhl9kqzdn1";
-  };
-
-  # In order to break the dependency on darcs -> ghc, we don't add
-  # darcs as a propagated build input.
-  propagatedBuildInputs = [ darcsver ];
-
-  # ugly hack to specify version that should otherwise come from darcs
-  patchPhase = ''
-    substituteInPlace setup.py --replace "name=PKG" "name=PKG, version='${version}'"
-  '';
-
-  meta = with lib; {
-    description = "Setuptools plugin for the Darcs version control system";
-    homepage = "http://allmydata.org/trac/setuptools_darcs";
-    license = licenses.bsd0;
-  };
-}
diff --git a/pkgs/development/python-modules/simpleai/default.nix b/pkgs/development/python-modules/simpleai/default.nix
deleted file mode 100644
index 9dbf40a5470..00000000000
--- a/pkgs/development/python-modules/simpleai/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, numpy
-, isPy3k
-}:
-
-buildPythonPackage rec {
-   version = "0.8.3";
-   pname = "simpleai";
-   disabled = isPy3k;
-
-   src = fetchPypi {
-     inherit pname version;
-     sha256 = "1d5be7a00f1f42ed86683019262acbb14e6eca1ed92ce7d7fdf932838d3742e5";
-   };
-
-   propagatedBuildInputs = [ numpy ];
-
-   #No tests in archive
-   doCheck = false;
-
-   meta = with lib; {
-     homepage = "https://github.com/simpleai-team/simpleai";
-     description = "This lib implements many of the artificial intelligence algorithms described on the book 'Artificial Intelligence, a Modern Approach'";
-     maintainers = with maintainers; [ NikolaMandic ];
-   };
-
-}
diff --git a/pkgs/development/python-modules/simpleparse/default.nix b/pkgs/development/python-modules/simpleparse/default.nix
deleted file mode 100644
index e81a7d41b7a..00000000000
--- a/pkgs/development/python-modules/simpleparse/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, isPyPy
-}:
-
-buildPythonPackage rec {
-  version = "2.2.2";
-  pname = "simpleparse";
-  disabled = isPy3k || isPyPy;
-
-  src = fetchPypi {
-    pname = "SimpleParse";
-    inherit version;
-    sha256 = "010szm4mbqgfdksa2n4l9avj617rb0gkwrryc70mfjmyww0bd1m6";
-  };
-
-  doCheck = false;  # weird error
-
-  meta = with lib; {
-    description = "A Parser Generator for Python";
-    homepage = "https://pypi.python.org/pypi/SimpleParse";
-    license = licenses.bsd0;
-  };
-
-}
diff --git a/pkgs/development/python-modules/singledispatch/default.nix b/pkgs/development/python-modules/singledispatch/default.nix
deleted file mode 100644
index 837271b4d57..00000000000
--- a/pkgs/development/python-modules/singledispatch/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, six
-, setuptools-scm
-, toml
-}:
-
-buildPythonPackage rec {
-  pname = "singledispatch";
-  version = "3.7.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "c1a4d5c1da310c3fd8fccfb8d4e1cb7df076148fd5d858a819e37fffe44f3092";
-  };
-
-  nativeBuildInputs = [
-    setuptools-scm
-    toml
-  ];
-
-  propagatedBuildInputs = [ six ];
-
-  # pypi singledispatch tarbal does not contain tests
-  doCheck = false;
-
-  meta = {
-    description = "This library brings functools.singledispatch from Python 3.4 to Python 2.6-3.3.";
-    homepage = "https://docs.python.org/3/library/functools.html";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ costrouc ];
-  };
-}
diff --git a/pkgs/development/python-modules/sipsimple/default.nix b/pkgs/development/python-modules/sipsimple/default.nix
deleted file mode 100644
index 34b95fe781d..00000000000
--- a/pkgs/development/python-modules/sipsimple/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, isPy3k
-, pkgs
-, cython
-, dnspython
-, python-dateutil
-, xcaplib
-, msrplib
-, lxml
-, python-otr
-}:
-
-buildPythonPackage rec {
-  pname = "sipsimple";
-  version = "3.4.2";
-  disabled = isPy3k;
-
-  src = fetchFromGitHub {
-    owner = "AGProjects";
-    repo = "python-sipsimple";
-    rev = "release-${version}";
-    sha256 = "094xf343d6zjhg9jwbm3dr74zq264cyqnn22byvm2m88lnagmhmr";
-  };
-
-  preConfigure = ''
-    # TODO: Executable bits are set by upstream with the next release
-    # see AGProjects/python-sipsimple/commit/a36d66cf758afb43c59f7ac48b193c4148eb1848
-    chmod +x ./deps/pjsip/configure ./deps/pjsip/aconfigure
-
-    export LD=$CC
-  '';
-
-  nativeBuildInputs = [ pkgs.pkg-config ];
-  buildInputs = with pkgs; [ alsa-lib ffmpeg_3 libv4l sqlite libvpx ];
-  propagatedBuildInputs = [ cython pkgs.openssl dnspython python-dateutil xcaplib msrplib lxml python-otr ];
-
-  meta = with lib; {
-    description = "SIP SIMPLE implementation for Python";
-    homepage = "https://sipsimpleclient.org/";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ pSub ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/slowaes/default.nix b/pkgs/development/python-modules/slowaes/default.nix
deleted file mode 100644
index ddca8509744..00000000000
--- a/pkgs/development/python-modules/slowaes/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "slowaes";
-  version = "0.1a1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "83658ae54cc116b96f7fdb12fdd0efac3a4e8c7c7064e3fac3f4a881aa54bf09";
-  };
-
-  disabled = isPy3k;
-
-  meta = with lib; {
-    homepage = "http://code.google.com/p/slowaes/";
-    description = "AES implemented in pure python";
-    license = with licenses; [ asl20 ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/smartdc/default.nix b/pkgs/development/python-modules/smartdc/default.nix
deleted file mode 100644
index ceba9eae9e4..00000000000
--- a/pkgs/development/python-modules/smartdc/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, requests
-, http_signature
-}:
-
-buildPythonPackage rec {
-  pname = "smartdc";
-  version = "0.2.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "6ffd866fb98386324e189e24d4f7532f66c1b20eece35ca1a6cb4b2a2639fc85";
-  };
-
-  propagatedBuildInputs = [ requests http_signature ];
-
-  meta = with lib; {
-    description = "Joyent SmartDataCenter CloudAPI connector using http-signature authentication via Requests";
-    homepage = "https://github.com/atl/py-smartdc";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/snug/default.nix b/pkgs/development/python-modules/snug/default.nix
deleted file mode 100644
index 08896467b4e..00000000000
--- a/pkgs/development/python-modules/snug/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ buildPythonPackage, lib, fetchFromGitHub, glibcLocales
-, pytest, pytest-mock, gentools
-, typing, singledispatch, pythonOlder
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "snug";
-  version = "1.3.4";
-  disabled = isPy3k;
-
-  # Pypi doesn't ship the tests, so we fetch directly from GitHub
-  src = fetchFromGitHub {
-    owner = "ariebovenberg";
-    repo = "snug";
-    rev = "v${version}";
-    sha256 = "0jmg0sivz9ljazlnsrrqaizrb3r7asy5pa0dj3idx49gbig4589i";
-  };
-
-  # Prevent unicode decoding error in setup.py
-  # while reading README.rst and HISTORY.rst
-  buildInputs = [ glibcLocales ];
-  LC_ALL = "en_US.UTF-8";
-
-  propagatedBuildInputs =
-    lib.optionals (pythonOlder "3.4") [ singledispatch ] ++
-    lib.optionals (pythonOlder "3.5") [ typing ];
-
-  checkInputs = [ pytest pytest-mock gentools ];
-  checkPhase = "pytest";
-
-  meta = with lib; {
-    description = "Tiny toolkit for writing reusable interactions with web APIs";
-    license = licenses.mit;
-    homepage = "https://snug.readthedocs.io/en/latest/";
-    maintainers = with maintainers; [ mredaelli ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/socid-extractor/default.nix b/pkgs/development/python-modules/socid-extractor/default.nix
index 34c0c20e075..38b1de48b2f 100644
--- a/pkgs/development/python-modules/socid-extractor/default.nix
+++ b/pkgs/development/python-modules/socid-extractor/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "socid-extractor";
-  version = "0.0.22";
+  version = "0.0.23";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "soxoj";
     repo = pname;
     rev = "v${version}";
-    sha256 = "kHF9CBlUKrD/DRVwJveenpFMr7pIrxEBNkFHHLa46KQ=";
+    sha256 = "0vdcxinpnl3vn2l4dybbyggdzm5mpmi3qbpars7lrg5m0mib0cml";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/sopel/default.nix b/pkgs/development/python-modules/sopel/default.nix
index 4f9fe7c39e1..743bd4d83c8 100644
--- a/pkgs/development/python-modules/sopel/default.nix
+++ b/pkgs/development/python-modules/sopel/default.nix
@@ -56,7 +56,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Simple and extensible IRC bot";
-    homepage = "http://sopel.chat";
+    homepage = "https://sopel.chat";
     license = licenses.efl20;
     maintainers = with maintainers; [ mog ];
   };
diff --git a/pkgs/development/python-modules/soupsieve/1.nix b/pkgs/development/python-modules/soupsieve/1.nix
deleted file mode 100644
index bb5ecbc839c..00000000000
--- a/pkgs/development/python-modules/soupsieve/1.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pytest
-, beautifulsoup4
-, isPy3k
-, backports_functools_lru_cache
-}:
-
-buildPythonPackage rec {
-  pname = "soupsieve";
-  version = "1.9.6";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "7985bacc98c34923a439967c1a602dc4f1e15f923b6fcf02344184f86cc7efaa";
-  };
-
-  checkPhase = ''
-    py.test
-  '';
-
-  checkInputs = [ pytest beautifulsoup4 ];
-
-  propagatedBuildInputs = lib.optional (!isPy3k) backports_functools_lru_cache;
-
-  # Circular test dependency on beautifulsoup4
-  doCheck = false;
-
-  meta = {
-    description = "A CSS4 selector implementation for Beautiful Soup";
-    license = lib.licenses.mit;
-    homepage = "https://github.com/facelessuser/soupsieve";
-  };
-
-}
diff --git a/pkgs/development/python-modules/spambayes/default.nix b/pkgs/development/python-modules/spambayes/default.nix
deleted file mode 100644
index f33748379d1..00000000000
--- a/pkgs/development/python-modules/spambayes/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ buildPythonPackage, isPy3k, fetchPypi, bsddb3, pydns, lockfile }:
-
-buildPythonPackage rec {
-  pname = "spambayes";
-  version = "1.1b3";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "016r3g43ja73rls1nh1dl82d75lgsjdl4cv2r5s7zcihm47nb38q";
-  };
-
-  propagatedBuildInputs = [ bsddb3 pydns lockfile ];
-
-  meta = {
-    description = "Statistical anti-spam filter, initially based on the work of Paul Graham";
-    homepage = "http://spambayes.sourceforge.net/";
-  };
-}
diff --git a/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix b/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
index 1bddf737335..6239ba0bc83 100644
--- a/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   pname = "sphinxcontrib-spelling";
-  version = "7.3.0";
+  version = "7.3.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a11799366f02fbd3390abf6aa2d4f0fe34df9be6e5ac0b1c8139dbd6c7fb0c99";
+    sha256 = "9d66dc4990749c5ac52e7eaf17e82f4dc6b4aff6515d26bbf48821829d41bd02";
   };
 
   propagatedBuildInputs = [ sphinx pyenchant pbr ]
diff --git a/pkgs/development/python-modules/sqlite3dbm/default.nix b/pkgs/development/python-modules/sqlite3dbm/default.nix
deleted file mode 100644
index 3057f89adf4..00000000000
--- a/pkgs/development/python-modules/sqlite3dbm/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "sqlite3dbm";
-  version = "0.1.4";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "4721607e0b817b89efdba7e79cab881a03164b94777f4cf796ad5dd59a7612c5";
-  };
-
-  meta = with lib; {
-    description = "sqlite-backed dictionary";
-    homepage = "https://github.com/Yelp/sqlite3dbm";
-    license = licenses.asl20;
-  };
-
-}
diff --git a/pkgs/development/python-modules/sqlmap/default.nix b/pkgs/development/python-modules/sqlmap/default.nix
index 429ebc9e0d6..5d1d90b372a 100644
--- a/pkgs/development/python-modules/sqlmap/default.nix
+++ b/pkgs/development/python-modules/sqlmap/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Automatic SQL injection and database takeover tool";
-    homepage = "http://sqlmap.org";
+    homepage = "https://sqlmap.org";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ bennofs ];
   };
diff --git a/pkgs/development/python-modules/squaremap/default.nix b/pkgs/development/python-modules/squaremap/default.nix
deleted file mode 100644
index bab9e2f99f2..00000000000
--- a/pkgs/development/python-modules/squaremap/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, isPy3k
-, fetchPypi
-, six
-, wxPython
-}:
-
-buildPythonPackage rec {
-  pname = "squaremap";
-  version = "1.0.5";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    pname = "SquareMap";
-    inherit version;
-    sha256 = "1a79jm7mp0pvi3a19za5c3idavnj7hlral01hhr3x9mz1jayav5i";
-  };
-
-  propagatedBuildInputs = [ six wxPython ];
-
-  meta = with lib; {
-    description = "Hierarchic visualization control for wxPython";
-    homepage = "https://launchpad.net/squaremap";
-    license = licenses.bsd3;
-    broken = true; # wxPython doesn't seem to be able to be detected by pip
-  };
-
-}
diff --git a/pkgs/development/python-modules/srsly/default.nix b/pkgs/development/python-modules/srsly/default.nix
index 86550f99873..18771886b0f 100644
--- a/pkgs/development/python-modules/srsly/default.nix
+++ b/pkgs/development/python-modules/srsly/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "srsly";
-  version = "2.4.1";
+  version = "2.4.2";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sPKuwKMp5ufnQqCmDpmnSWjKKb5x81xcTeIh4ygXaSY=";
+    hash = "sha256-KrolIpJ2eHUIat9OQ4DiewJNc2VUVveW+OB+s6TfrMA=";
   };
 
   nativeBuildInputs = [ cython ];
diff --git a/pkgs/development/python-modules/starlette/default.nix b/pkgs/development/python-modules/starlette/default.nix
index a9fbc74f447..9612ac999cc 100644
--- a/pkgs/development/python-modules/starlette/default.nix
+++ b/pkgs/development/python-modules/starlette/default.nix
@@ -5,7 +5,6 @@
 , aiofiles
 , anyio
 , contextlib2
-, graphene
 , itsdangerous
 , jinja2
 , python-multipart
@@ -23,14 +22,16 @@
 
 buildPythonPackage rec {
   pname = "starlette";
-  version = "0.16.0";
+  version = "0.17.1";
+  format = "setuptools";
+
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "sha256-/NYhRRZdi6I7CtLCohAqK4prsSUayOxa6sBKIJhPv+w=";
+    sha256 = "sha256-qT/w7r8PsrauLoBolwCGpxiwhDZo3z6hIqKVXeY5yqA=";
   };
 
   postPatch = ''
@@ -41,7 +42,6 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     aiofiles
     anyio
-    graphene
     itsdangerous
     jinja2
     python-multipart
@@ -64,19 +64,15 @@ buildPythonPackage rec {
     typing-extensions
   ];
 
-  disabledTestPaths = [
-    # fails to import graphql, but integrated graphql support is about to
-    # be removed in 0.15, see https://github.com/encode/starlette/pull/1135.
-    "tests/test_graphql.py"
-  ];
-
   disabledTests = [
     # asserts fail due to inclusion of br in Accept-Encoding
     "test_websocket_headers"
     "test_request_headers"
   ];
 
-  pythonImportsCheck = [ "starlette" ];
+  pythonImportsCheck = [
+    "starlette"
+  ];
 
   meta = with lib; {
     homepage = "https://www.starlette.io/";
diff --git a/pkgs/development/python-modules/stompclient/default.nix b/pkgs/development/python-modules/stompclient/default.nix
deleted file mode 100644
index 149be55da58..00000000000
--- a/pkgs/development/python-modules/stompclient/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, mock
-, nose
-}:
-
-buildPythonPackage rec {
-  pname = "stompclient";
-  version = "0.3.2";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "95a4e98dd0bba348714439ea11a25ee8a74acb8953f95a683924b5bf2a527e4e";
-  };
-
-  buildInputs = [ mock nose ];
-
-  # XXX: Ran 0 tests in 0.217s
-
-  meta = with lib; {
-    description = "Lightweight and extensible STOMP messaging client";
-    homepage = "https://bitbucket.org/hozn/stompclient";
-    license = licenses.asl20;
-  };
-
-}
diff --git a/pkgs/development/python-modules/stringtemplate/default.nix b/pkgs/development/python-modules/stringtemplate/default.nix
deleted file mode 100644
index 336a371c071..00000000000
--- a/pkgs/development/python-modules/stringtemplate/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib, fetchurl, buildPythonPackage, antlr2, isPy3k }:
-
-buildPythonPackage rec {
-  pname = "PyStringTemplate";
-  version = "3.2b1";
-
-  src = fetchurl {
-    url = "https://www.stringtemplate.org/download/${pname}-${version}.tar.gz";
-    sha256 = "0lbib0l8c1q7i1j610rwcdagymr1idahrql4dkgnm5rzyg2vk3ml";
-  };
-
-  propagatedBuildInputs = [ antlr2 ];
-
-  disabled = isPy3k;
-
-  # No tests included in archive
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://www.stringtemplate.org/";
-    description = "Text Templating Library";
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/python-modules/stumpy/default.nix b/pkgs/development/python-modules/stumpy/default.nix
index a1cdd5b84e0..00e8306a25d 100644
--- a/pkgs/development/python-modules/stumpy/default.nix
+++ b/pkgs/development/python-modules/stumpy/default.nix
@@ -16,13 +16,13 @@
 
 buildPythonPackage rec {
   pname = "stumpy";
-  version = "1.10.0";
+  version = "1.10.2";
 
   src = fetchFromGitHub {
     owner = "TDAmeritrade";
     repo = "stumpy";
     rev = "v${version}";
-    sha256 = "1h3mqz570s9rc45d217xrykcy8f4fnpyk178smam2fzynlr90gd8";
+    sha256 = "1v17lxqgvkd3n33c2y1j1zy74xy92vsx2l89yhan89msnnb7aafr";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/subprocess32/default.nix b/pkgs/development/python-modules/subprocess32/default.nix
deleted file mode 100644
index 3fc4378fc34..00000000000
--- a/pkgs/development/python-modules/subprocess32/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, isPyPy
-, bash
-, python
-}:
-
-buildPythonPackage rec {
-  pname = "subprocess32";
-  version = "3.5.4";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "eb2937c80497978d181efa1b839ec2d9622cf9600a039a79d0e108d1f9aec79d";
-  };
-
-  buildInputs = [ bash ];
-
-  preConfigure = ''
-    substituteInPlace test_subprocess32.py \
-      --replace '/usr/' '${bash}/'
-  '';
-
-  doCheck = !isPyPy;
-  checkPhase = ''
-    ${python.interpreter} test_subprocess32.py
-  '';
-
-  meta = {
-    homepage = "https://pypi.python.org/pypi/subprocess32";
-    description = "Backport of the subprocess module from Python 3.2.5 for use on 2.x";
-    maintainers = with lib.maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/suds/default.nix b/pkgs/development/python-modules/suds/default.nix
deleted file mode 100644
index 1a96df26da1..00000000000
--- a/pkgs/development/python-modules/suds/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "suds";
-  version = "0.4";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1w4s9051iv90c0gs73k80c3d51y2wbx1xgfdgg2hk7mv4gjlllnm";
-  };
-
-  patches = [ ./suds-0.4-CVE-2013-2217.patch ];
-
-  meta = with lib; {
-    # Broken for security issues:
-    # - https://github.com/NixOS/nixpkgs/issues/19678
-    # - https://lwn.net/Vulnerabilities/559200/
-    broken = true;
-    description = "Lightweight SOAP client";
-    homepage = "https://fedorahosted.org/suds";
-    license = licenses.lgpl3Plus;
-  };
-
-}
diff --git a/pkgs/development/python-modules/suds/suds-0.4-CVE-2013-2217.patch b/pkgs/development/python-modules/suds/suds-0.4-CVE-2013-2217.patch
deleted file mode 100644
index 235fc1f928c..00000000000
--- a/pkgs/development/python-modules/suds/suds-0.4-CVE-2013-2217.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- suds.orig/suds/cache.py	2013-06-29 16:26:16.930326017 +0200
-+++ suds.orig/suds/cache.py	2013-06-29 16:02:15.000000000 +0200
-@@ -19,6 +19,7 @@ 
- """
- 
- import os
-+import tempfile
- import suds
- from tempfile import gettempdir as tmp
- from suds.transport import *
-@@ -138,7 +139,7 @@ 
-         @type duration: {unit:value}
-         """
-         if location is None:
--            location = os.path.join(tmp(), 'suds')
-+            location = tempfile.mkdtemp()
-         self.location = location
-         self.duration = (None, 0)
-         self.setduration(**duration)
diff --git a/pkgs/development/python-modules/superqt/default.nix b/pkgs/development/python-modules/superqt/default.nix
new file mode 100644
index 00000000000..9890a7000a9
--- /dev/null
+++ b/pkgs/development/python-modules/superqt/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, pyqt5
+, typing-extensions
+, pytest
+, pytestCheckHook
+}: buildPythonPackage rec {
+  pname = "superqt";
+  version = "0.2.5-1";
+  src = fetchFromGitHub {
+    owner = "napari";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-rkTiCJ8mIogS9SDmLPiaAyhhuBx3kk6rXjCc19zbwiM=";
+  };
+  format = "pyproject";
+  nativeBuildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [ pyqt5 typing-extensions ];
+  checkInputs = [ pytestCheckHook pytest ];
+  doCheck = false; # Segfaults...
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  meta = with lib; {
+    description = "Missing widgets and components for Qt-python (napari/superqt)";
+    homepage = "https://github.com/napari/superqt";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ SomeoneSerge ];
+  };
+}
diff --git a/pkgs/development/python-modules/supervisor/default.nix b/pkgs/development/python-modules/supervisor/default.nix
index dc722e947d0..9af3db2de49 100644
--- a/pkgs/development/python-modules/supervisor/default.nix
+++ b/pkgs/development/python-modules/supervisor/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "supervisor";
-  version = "4.2.2";
+  version = "4.2.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5b2b8882ec8a3c3733cce6965cc098b6d80b417f21229ab90b18fe551d619f90";
+    sha256 = "40dc582ce1eec631c3df79420b187a6da276bbd68a4ec0a8f1f123ea616b97a2";
   };
 
   # wants to write to /tmp/foo which is likely already owned by another
diff --git a/pkgs/development/python-modules/sure/default.nix b/pkgs/development/python-modules/sure/default.nix
index b8bb9a36586..84cc78e8a4a 100644
--- a/pkgs/development/python-modules/sure/default.nix
+++ b/pkgs/development/python-modules/sure/default.nix
@@ -5,6 +5,7 @@
 , six
 , mock
 , isPyPy
+, fetchpatch
 }:
 
 buildPythonPackage rec {
@@ -17,6 +18,14 @@ buildPythonPackage rec {
     sha256 = "34ae88c846046742ef074036bf311dc90ab152b7bc09c342b281cebf676727a2";
   };
 
+  patches = [
+    # https://github.com/gabrielfalcao/sure/issues/169
+    (fetchpatch {
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/055baa81cd987e566de62a5657513937521a90d4/trunk/python310.diff";
+      sha256 = "sha256-BKylV8xpTOuO/X4hzZKpoIcAQcdAK0kXYENRad7AGPc=";
+    })
+  ];
+
   buildInputs = [ rednose ];
   propagatedBuildInputs = [ six mock ];
 
diff --git a/pkgs/development/python-modules/sybase/default.nix b/pkgs/development/python-modules/sybase/default.nix
deleted file mode 100644
index 5a14e7e7f40..00000000000
--- a/pkgs/development/python-modules/sybase/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, isPy3k
-, freetds
-}:
-
-buildPythonPackage rec {
-  pname = "python-sybase";
-  version = "0.40pre2";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "https://sourceforge.net/projects/python-sybase/files/python-sybase/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "0pm88hyn18dy7ljam4mdx9qqgmgraf2zy2wl02g5vsjl4ncvq90j";
-  };
-
-  propagatedBuildInputs = [ freetds ];
-
-  SYBASE = freetds;
-  setupPyBuildFlags = [ "-DHAVE_FREETDS" "-UWANT_BULKCOPY" ];
-
-  meta = with lib; {
-    description = "The Sybase module provides a Python interface to the Sybase relational database system";
-    homepage    = "http://python-sybase.sourceforge.net";
-    license     = licenses.bsd3;
-    maintainers = with maintainers; [ veprbl ];
-    platforms   = platforms.unix;
-  };
-}
diff --git a/pkgs/development/python-modules/sympy/1_5.nix b/pkgs/development/python-modules/sympy/1_5.nix
deleted file mode 100644
index 59c9ab87855..00000000000
--- a/pkgs/development/python-modules/sympy/1_5.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, glibcLocales
-, mpmath
-}:
-
-buildPythonPackage rec {
-  pname = "sympy";
-  version = "1.5.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d77901d748287d15281f5ffe5b0fef62dd38f357c2b827c44ff07f35695f4e7e";
-  };
-
-  checkInputs = [ glibcLocales ];
-
-  propagatedBuildInputs = [ mpmath ];
-
-  # tests take ~1h
-  doCheck = false;
-  pythonImportsCheck = [ "sympy" ];
-
-  preCheck = ''
-    export LANG="en_US.UTF-8"
-  '';
-
-  meta = with lib; {
-    description = "A Python library for symbolic mathematics";
-    homepage    = "https://www.sympy.org/";
-    license     = licenses.bsd3;
-    maintainers = with maintainers; [ lovek323 ] ++ teams.sage.members;
-  };
-}
diff --git a/pkgs/development/python-modules/tables/3.5.nix b/pkgs/development/python-modules/tables/3.5.nix
deleted file mode 100644
index efc47a1ad3f..00000000000
--- a/pkgs/development/python-modules/tables/3.5.nix
+++ /dev/null
@@ -1,56 +0,0 @@
-{ lib, fetchPypi, python, buildPythonPackage
-, cython, bzip2, lzo, numpy, numexpr, hdf5, six, c-blosc, mock }:
-
-buildPythonPackage rec {
-  version = "3.5.2";
-  pname = "tables";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1hikrki0hx94ass31pn0jyz9iy0zhnkjacfk86m21cxsc8if685j";
-  };
-
-  buildInputs = [ hdf5 cython bzip2 lzo c-blosc ];
-  propagatedBuildInputs = [ numpy numexpr six mock ];
-
-  # The setup script complains about missing run-paths, but they are
-  # actually set.
-  setupPyBuildFlags = [
-    "--hdf5=${lib.getDev hdf5}"
-    "--lzo=${lib.getDev lzo}"
-    "--bzip2=${lib.getDev bzip2}"
-    "--blosc=${lib.getDev c-blosc}"
-  ];
-  # Run the test suite.
-  # It requires the build path to be in the python search path.
-  # These tests take quite some time.
-  # If the hdf5 library is built with zlib then there is only one
-  # test-failure. That is the same failure as described in the following
-  # github issue:
-  #     https://github.com/PyTables/PyTables/issues/269
-  checkPhase = ''
-    ${python.interpreter} <<EOF
-    import sysconfig
-    import sys
-    import os
-    f = "lib.{platform}-{version[0]}.{version[1]}"
-    lib = f.format(platform=sysconfig.get_platform(),
-                   version=sys.version_info)
-    build = os.path.join(os.getcwd(), 'build', lib)
-    sys.path.insert(0, build)
-    import tables
-    r = tables.test()
-    if not r.wasSuccessful():
-        sys.exit(1)
-    EOF
-  '';
-
-  # Disable tests until the failure described above is fixed.
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Hierarchical datasets for Python";
-    homepage = "http://www.pytables.org/";
-    license = licenses.bsd2;
-  };
-}
diff --git a/pkgs/development/python-modules/tarman/default.nix b/pkgs/development/python-modules/tarman/default.nix
deleted file mode 100644
index c2a2c4405e2..00000000000
--- a/pkgs/development/python-modules/tarman/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-, unittest2
-, nose
-, mock
-, libarchive
-}:
-
-buildPythonPackage rec {
-  version = "0.1.3";
-  pname = "tarman";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0ri6gj883k042xaxa2d5ymmhbw2bfcxdzhh4bz7700ibxwxxj62h";
-  };
-
-  buildInputs = [ unittest2 nose mock ];
-  propagatedBuildInputs = [ libarchive ];
-
-  # tests are still failing
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://github.com/matejc/tarman";
-    description = "Archive manager with curses interface";
-    license = licenses.bsd0;
-  };
-
-}
diff --git a/pkgs/development/python-modules/tensorboardx/default.nix b/pkgs/development/python-modules/tensorboardx/default.nix
index 603d2a1cc2b..2127d227567 100644
--- a/pkgs/development/python-modules/tensorboardx/default.nix
+++ b/pkgs/development/python-modules/tensorboardx/default.nix
@@ -63,6 +63,9 @@ buildPythonPackage rec {
   disabledTestPaths = [
     # we are not interested in linting errors
     "tests/test_lint.py"
+    # breaks with `RuntimeError: cannot schedule new futures after interpreter shutdown`
+    # Upstream tracking bug: https://github.com/lanpa/tensorboardX/issues/652
+    "tests/test_pr_curve.py"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/tern/default.nix b/pkgs/development/python-modules/tern/default.nix
index 2517c49ce2d..e49ff640145 100644
--- a/pkgs/development/python-modules/tern/default.nix
+++ b/pkgs/development/python-modules/tern/default.nix
@@ -17,11 +17,11 @@
 
 buildPythonPackage rec {
   pname = "tern";
-  version = "2.8.0";
+  version = "2.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "dd7d8ad929ffe951b1f7f86310b9d5ba749b4306132c3611ff1d5a2c4d79d2bd";
+    sha256 = "9cb509dba91718feecefd302388a89d4782454f6613e8f931ec8de87a6594de0";
   };
 
   preBuild = ''
diff --git a/pkgs/development/python-modules/thumbor/0001-Don-t-use-which-implementation-to-find-required-exec.patch b/pkgs/development/python-modules/thumbor/0001-Don-t-use-which-implementation-to-find-required-exec.patch
deleted file mode 100644
index 4a2d9df0618..00000000000
--- a/pkgs/development/python-modules/thumbor/0001-Don-t-use-which-implementation-to-find-required-exec.patch
+++ /dev/null
@@ -1,277 +0,0 @@
-From bd5a5b58b438ff34d27781e28cd7fab93bfc9f3f Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Sat, 9 Mar 2019 23:26:30 +0100
-Subject: [PATCH] Don't use `which` implementation to find required executables
-
-Nix specific patch.
-
-Rather than relying on a global state, we set an absolute store path for
-all external dependencies to ensure their functionality.
----
- integration_tests/__init__.py       |  4 ++--
- tests/engines/test_gif.py           |  2 +-
- tests/handlers/test_base_handler.py | 30 ++++++++++++++---------------
- tests/optimizers/test_gifv.py       |  2 +-
- tests/test_server.py                |  4 ++++
- tests/test_utils.py                 |  3 +++
- thumbor/server.py                   |  7 +------
- 7 files changed, 26 insertions(+), 26 deletions(-)
-
-diff --git a/integration_tests/__init__.py b/integration_tests/__init__.py
-index 9bdd0a3..7d9de8f 100644
---- a/integration_tests/__init__.py
-+++ b/integration_tests/__init__.py
-@@ -15,7 +15,7 @@ class EngineCase(AsyncHTTPTestCase):
-     def get_app(self):
-         cfg = Config(SECURITY_KEY='ACME-SEC')
-         server_params = ServerParameters(None, None, None, None, None, None)
--        server_params.gifsicle_path = which('gifsicle')
-+        server_params.gifsicle_path = '@gifsicle@'
- 
-         cfg.DETECTORS = [
-             'thumbor.detectors.face_detector',
-@@ -28,7 +28,7 @@ class EngineCase(AsyncHTTPTestCase):
-         cfg.FILE_LOADER_ROOT_PATH = os.path.join(os.path.dirname(__file__), 'imgs')
-         cfg.ENGINE = getattr(self, 'engine', None)
-         cfg.USE_GIFSICLE_ENGINE = True
--        cfg.FFMPEG_PATH = which('ffmpeg')
-+        cfg.FFMPEG_PATH = '@ffmpeg@'
-         cfg.ENGINE_THREADPOOL_SIZE = 10
-         cfg.OPTIMIZERS = [
-             'thumbor.optimizers.gifv',
-diff --git a/tests/engines/test_gif.py b/tests/engines/test_gif.py
-index c0c8430..ce0cc51 100644
---- a/tests/engines/test_gif.py
-+++ b/tests/engines/test_gif.py
-@@ -44,7 +44,7 @@ class GitEngineTestCase(TestCase):
-     def get_server(self):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
--        server.gifsicle_path = which('gifsicle')
-+        server.gifsicle_path = '@gifsicle@'
-         return server
- 
-     def get_context(self, *args, **kwargs):
-diff --git a/tests/handlers/test_base_handler.py b/tests/handlers/test_base_handler.py
-index 69dc110..4493abe 100644
---- a/tests/handlers/test_base_handler.py
-+++ b/tests/handlers/test_base_handler.py
-@@ -557,7 +557,7 @@ class ImageOperationsWithAutoWebPTestCase(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
-         return ctx
- 
-     def get_as_webp(self, url):
-@@ -657,7 +657,7 @@ class ImageOperationsWithAutoWebPWithResultStorageTestCase(BaseImagingTestCase):
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
-         ctx.request = self.get_request()
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
-         return ctx
- 
-     @property
-@@ -783,7 +783,7 @@ class ImageOperationsWithGifVTestCase(BaseImagingTestCase):
-         cfg = Config(SECURITY_KEY='ACME-SEC')
-         cfg.LOADER = "thumbor.loaders.file_loader"
-         cfg.FILE_LOADER_ROOT_PATH = self.loader_path
--        cfg.FFMPEG_PATH = which('ffmpeg')
-+        cfg.FFMPEG_PATH = '@ffmpeg@'
-         cfg.OPTIMIZERS = [
-             'thumbor.optimizers.gifv',
-         ]
-@@ -793,7 +793,7 @@ class ImageOperationsWithGifVTestCase(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
-         return ctx
- 
-     def test_should_convert_animated_gif_to_mp4_when_filter_without_params(self):
-@@ -828,7 +828,7 @@ class ImageOperationsImageCoverTestCase(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
-         return ctx
- 
-     def test_can_get_image_cover(self):
-@@ -849,7 +849,7 @@ class ImageOperationsWithResultStorageTestCase(BaseImagingTestCase):
-         cfg.RESULT_STORAGE_FILE_STORAGE_ROOT_PATH = self.root_path
- 
-         cfg.USE_GIFSICLE_ENGINE = True
--        cfg.FFMPEG_PATH = which('ffmpeg')
-+        cfg.FFMPEG_PATH = '@ffmpeg@'
-         cfg.AUTO_WEBP = True
-         cfg.OPTIMIZERS = [
-             'thumbor.optimizers.gifv',
-@@ -860,7 +860,7 @@ class ImageOperationsWithResultStorageTestCase(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
- 
-         return ctx
- 
-@@ -891,7 +891,7 @@ class ImageOperationsResultStorageOnlyTestCase(BaseImagingTestCase):
-         cfg.RESULT_STORAGE = 'thumbor.result_storages.file_storage'
-         cfg.RESULT_STORAGE_EXPIRATION_SECONDS = 60
-         cfg.RESULT_STORAGE_FILE_STORAGE_ROOT_PATH = self.root_path
--        cfg.FFMPEG_PATH = which('ffmpeg')
-+        cfg.FFMPEG_PATH = '@ffmpeg@'
- 
-         cfg.USE_GIFSICLE_ENGINE = True
-         cfg.AUTO_WEBP = True
-@@ -904,7 +904,7 @@ class ImageOperationsResultStorageOnlyTestCase(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
- 
-         return ctx
- 
-@@ -1040,7 +1040,7 @@ class ImageOperationsWithMaxPixels(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
-         return ctx
- 
-     def test_should_error(self):
-@@ -1061,7 +1061,7 @@ class ImageOperationsWithRespectOrientation(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         self.context = Context(server, cfg, importer)
--        self.context.server.gifsicle_path = which('gifsicle')
-+        self.context.server.gifsicle_path = '@gifsicle@'
-         return self.context
- 
-     def test_should_be_ok_when_orientation_exif(self):
-@@ -1153,7 +1153,7 @@ class ImageOperationsWithJpegtranTestCase(BaseImagingTestCase):
-         cfg = Config(SECURITY_KEY='ACME-SEC')
-         cfg.LOADER = "thumbor.loaders.file_loader"
-         cfg.FILE_LOADER_ROOT_PATH = self.loader_path
--        cfg.JPEGTRAN_PATH = which('jpegtran')
-+        cfg.JPEGTRAN_PATH = '@jpegtran@'
-         cfg.PROGRESSIVE_JPEG = True,
-         cfg.RESULT_STORAGE_STORES_UNSAFE = True,
-         cfg.OPTIMIZERS = [
-@@ -1175,9 +1175,7 @@ class ImageOperationsWithJpegtranTestCase(BaseImagingTestCase):
-         f.write(response.body)
-         f.close()
- 
--        exiftool = which('exiftool')
--        if not exiftool:
--            raise AssertionError('exiftool was not found. Please install it to run thumbor\'s tests.')
-+        exiftool = '@exiftool@'
- 
-         command = [
-             exiftool,
-@@ -1221,7 +1219,7 @@ class ImageOperationsWithoutStorage(BaseImagingTestCase):
-         server = ServerParameters(8889, 'localhost', 'thumbor.conf', None, 'info', None)
-         server.security_key = 'ACME-SEC'
-         ctx = Context(server, cfg, importer)
--        ctx.server.gifsicle_path = which('gifsicle')
-+        ctx.server.gifsicle_path = '@gifsicle@'
-         return ctx
- 
-     def test_meta(self):
-diff --git a/tests/optimizers/test_gifv.py b/tests/optimizers/test_gifv.py
-index 229e9cd..066f2d5 100644
---- a/tests/optimizers/test_gifv.py
-+++ b/tests/optimizers/test_gifv.py
-@@ -31,7 +31,7 @@ class GifvOptimizerTest(TestCase):
-     def get_context(self):
-         conf = Config()
-         conf.STATSD_HOST = ''
--        conf.FFMPEG_PATH = which('ffmpeg')
-+        conf.FFMPEG_PATH = '@ffmpeg@'
-         ctx = Context(config=conf)
-         ctx.request = RequestParameters()
-         ctx.request.filters.append('gifv')
-diff --git a/tests/test_server.py b/tests/test_server.py
-index 5b31750..c2a65dc 100644
---- a/tests/test_server.py
-+++ b/tests/test_server.py
-@@ -11,6 +11,8 @@
- from unittest import TestCase
- import mock
- 
-+from nose.tools import nottest
-+
- from preggy import expect
- 
- from thumbor.app import ThumborServiceApp
-@@ -118,6 +120,7 @@ class ServerTestCase(TestCase):
-         expect(server_parameters.security_key).to_equal('something')
- 
-     @mock.patch.object(thumbor.server, 'which')
-+    @nottest
-     def test_validate_gifsicle_path(self, which_mock):
-         server_parameters = mock.Mock(security_key=None)
-         conf = Config(SECURITY_KEY='test', USE_GIFSICLE_ENGINE=True)
-@@ -128,6 +131,7 @@ class ServerTestCase(TestCase):
-         expect(server_parameters.gifsicle_path).to_equal('/usr/bin/gifsicle')
- 
-     @mock.patch.object(thumbor.server, 'which')
-+    @nottest
-     def test_validate_null_gifsicle_path(self, which_mock):
-         server_parameters = mock.Mock(security_key=None)
-         conf = Config(SECURITY_KEY='test', USE_GIFSICLE_ENGINE=True)
-diff --git a/tests/test_utils.py b/tests/test_utils.py
-index 38cd51b..7dd0b3e 100644
---- a/tests/test_utils.py
-+++ b/tests/test_utils.py
-@@ -10,6 +10,7 @@
- 
- from mock import Mock, patch
- from unittest import TestCase
-+from nose.tools import nottest
- import logging
- 
- from preggy import expect
-@@ -112,6 +113,7 @@ class UtilsTestCase(TestCase):
-             test_func()
-             mock_warn.assert_called_once_with('Deprecated function test_func: func2')
- 
-+    @nottest
-     def test_can_which_by_path(self):
-         result = which('/bin/ls')
-         expect(result).to_equal('/bin/ls')
-@@ -119,6 +121,7 @@ class UtilsTestCase(TestCase):
-         result = which('/tmp')
-         expect(result).to_be_null()
- 
-+    @nottest
-     def test_can_which_by_env(self):
-         result = which('ls')
-         expect(result).to_equal('/bin/ls')
-diff --git a/thumbor/server.py b/thumbor/server.py
-index c75a769..821163b 100644
---- a/thumbor/server.py
-+++ b/thumbor/server.py
-@@ -89,12 +89,7 @@ def validate_config(config, server_parameters):
-         warnings.simplefilter('error', Image.DecompressionBombWarning)
- 
-     if config.USE_GIFSICLE_ENGINE:
--        server_parameters.gifsicle_path = which('gifsicle')
--        if server_parameters.gifsicle_path is None:
--            raise RuntimeError(
--                'If using USE_GIFSICLE_ENGINE configuration to True, the `gifsicle` binary must be in the PATH '
--                'and must be an executable.'
--            )
-+        server_parameters.gifsicle_path = '@gifsicle@'
- 
- 
- def get_context(server_parameters, config, importer):
--- 
-2.18.1
-
diff --git a/pkgs/development/python-modules/thumbor/default.nix b/pkgs/development/python-modules/thumbor/default.nix
deleted file mode 100644
index 86a2dd20011..00000000000
--- a/pkgs/development/python-modules/thumbor/default.nix
+++ /dev/null
@@ -1,90 +0,0 @@
-{ buildPythonPackage, python, tornado, pycrypto, pycurl, pytz
-, pillow, derpconf, python_magic, libthumbor, webcolors
-, piexif, futures, statsd, thumborPexif, fetchFromGitHub, isPy3k, lib
-, mock, raven, nose, yanc, remotecv, pyssim, cairosvg, preggy, opencv3
-, pkgs, coreutils, substituteAll
-}:
-
-buildPythonPackage rec {
-  pname = "thumbor";
-  version = "6.7.0";
-
-  disabled = isPy3k; # see https://github.com/thumbor/thumbor/issues/1004
-
-  # Tests aren't included in PyPI tarball so use GitHub instead
-  src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
-    rev = version;
-    sha256 = "1qv02jz7ivn38dsywp7nxrlflly86x9pm2pk3yqi8m8myhc7lipg";
-  };
-
-  patches = [
-    (substituteAll {
-      src = ./0001-Don-t-use-which-implementation-to-find-required-exec.patch;
-      gifsicle = "${pkgs.gifsicle}/bin/gifsicle";
-      exiftool = "${pkgs.exiftool}/bin/exiftool";
-      jpegtran = "${pkgs.libjpeg}/bin/jpegtran";
-      ffmpeg = "${pkgs.ffmpeg_3}/bin/ffmpeg";
-    })
-  ];
-
-  postPatch = ''
-    substituteInPlace "setup.py" \
-      --replace '"argparse",' "" ${lib.optionalString isPy3k ''--replace '"futures",' ""''}
-    sed -i setup.py \
-        -e 's/piexif[^"]*/piexif/;s/Pillow[^"]*/Pillow/'
-    substituteInPlace "tests/test_utils.py" \
-      --replace "/bin/ls" "${coreutils}/bin/ls"
-    substituteInPlace "tests/detectors/test_face_detector.py" \
-      --replace "./thumbor" "$out/lib/${python.libPrefix}/site-packages/thumbor"
-    substituteInPlace "tests/detectors/test_glasses_detector.py" \
-      --replace "./thumbor" "$out/lib/${python.libPrefix}/site-packages/thumbor"
-  '';
-
-  checkInputs = [
-    nose
-    pyssim
-    preggy
-    mock
-    yanc
-    remotecv
-    raven
-    pkgs.redis
-    pkgs.glibcLocales
-    pkgs.gifsicle
-  ];
-
-  propagatedBuildInputs = [
-    tornado
-    pycrypto
-    pycurl
-    pytz
-    pillow
-    derpconf
-    python_magic
-    libthumbor
-    opencv3
-    webcolors
-    piexif
-    statsd
-    cairosvg
-  ] ++ lib.optionals (!isPy3k) [ futures thumborPexif ];
-
-  # Remove the source tree before running nosetests because otherwise nosetests
-  # uses that instead of the installed package. Is there some other way to
-  # achieve this?
-  checkPhase = ''
-    redis-server --port 6668 --requirepass hey_you &
-    rm -r thumbor
-    export LC_ALL="en_US.UTF-8"
-    nosetests -v --with-yanc -s tests/ -e test_redeye_applied
-  '';
-
-  meta = with lib; {
-    description = "A smart imaging service";
-    homepage = "https://github.com/thumbor/thumbor/wiki";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/time-machine/default.nix b/pkgs/development/python-modules/time-machine/default.nix
index 43af91e89e6..240a8ac0c37 100644
--- a/pkgs/development/python-modules/time-machine/default.nix
+++ b/pkgs/development/python-modules/time-machine/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "time-machine";
-  version = "2.4.1";
+  version = "2.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "adamchainz";
     repo = pname;
     rev = version;
-    sha256 = "sha256-+BQRDnxNW4PMCRsOa3pmsbM7yX0KYc5DqsPMA9mV/Eo=";
+    sha256 = "sha256-U/OgkwRgZMdEkMIQuN9bWXWeeMHiduy1C1xOBUl8NsQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/tmdb3/default.nix b/pkgs/development/python-modules/tmdb3/default.nix
deleted file mode 100644
index 36a88ea22e4..00000000000
--- a/pkgs/development/python-modules/tmdb3/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k }:
-
-buildPythonPackage rec {
-  pname = "tmdb3";
-  version = "0.7.2";
-  disabled = isPy3k; # Upstream has not received any updates since 2015, and importing from python3 does not work.
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "9b6e043b8a65d159e7fc8f720badc7ffee5109296e38676c107454e03a895983";
-  };
-
-  # no tests implemented
-  doCheck = false;
-
-  pythonImportsCheck = [ "tmdb3" ];
-
-  meta = with lib; {
-    description = "Python implementation of the v3 API for TheMovieDB.org, allowing access to movie and cast information";
-    homepage = "https://pypi.python.org/pypi/tmdb3";
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/tokenserver/default.nix b/pkgs/development/python-modules/tokenserver/default.nix
deleted file mode 100644
index 6d3c7e2be05..00000000000
--- a/pkgs/development/python-modules/tokenserver/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, alembic, boto, cornice, hawkauthlib, mozsvc, paste, pybrowserid, pyfxa
-, pymysql, pymysqlsa, sqlalchemy, testfixtures, tokenlib, umemcache
-, mock, nose, unittest2, webtest
-}:
-
-buildPythonPackage rec {
-  pname = "tokenserver";
-  version = "1.3.1";
-
-  src = fetchFromGitHub {
-    owner = "mozilla-services";
-    repo = pname;
-    rev = version;
-    sha256 = "04z0r8xzrmhvh04y8ggdz9gs8qa8lv3qr7kasf6lm63fixsfgrlp";
-  };
-
-  propagatedBuildInputs = [
-    alembic boto cornice hawkauthlib mozsvc paste pybrowserid pyfxa
-    pymysql pymysqlsa sqlalchemy testfixtures tokenlib umemcache
-  ];
-
-  checkInputs = [
-    mock nose unittest2 webtest
-  ];
-
-  # Requires virtualenv, MySQL, ...
-  doCheck = false;
-
-  meta = with lib; {
-    description = "The Mozilla Token Server";
-    homepage = "https://github.com/mozilla-services/tokenserver";
-    license = licenses.mpl20;
-    maintainers = with maintainers; [ nadrieril ];
-  };
-}
diff --git a/pkgs/development/python-modules/toolz/2.nix b/pkgs/development/python-modules/toolz/2.nix
deleted file mode 100644
index 8c8a64db3a5..00000000000
--- a/pkgs/development/python-modules/toolz/2.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-}:
-
-buildPythonPackage rec {
-  pname = "toolz";
-  version = "0.10.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560";
-  };
-
-  checkInputs = [ nose ];
-
-  checkPhase = ''
-    nosetests toolz/tests
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/pytoolz/toolz";
-    description = "List processing tools and functional utilities";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ fridh ];
-  };
-}
diff --git a/pkgs/development/python-modules/tornado/4.nix b/pkgs/development/python-modules/tornado/4.nix
index da86c7037b9..b4343b5d5ff 100644
--- a/pkgs/development/python-modules/tornado/4.nix
+++ b/pkgs/development/python-modules/tornado/4.nix
@@ -2,19 +2,13 @@
 , python
 , buildPythonPackage
 , fetchPypi
-, backports_abc ? null
-, backports_ssl_match_hostname ? null
-, certifi ? null
-, singledispatch ? null
-, futures ? null
 , isPy27
 }:
 
 buildPythonPackage rec {
   pname = "tornado";
   version = "4.5.3";
-
-  propagatedBuildInputs = lib.optionals isPy27 [ backports_abc certifi singledispatch backports_ssl_match_hostname futures ];
+  disabled = isPy27;
 
   # We specify the name of the test files to prevent
   # https://github.com/NixOS/nixpkgs/issues/14634
diff --git a/pkgs/development/python-modules/tornado/5.nix b/pkgs/development/python-modules/tornado/5.nix
index 2905f89dc0c..2f3ba5c1c2a 100644
--- a/pkgs/development/python-modules/tornado/5.nix
+++ b/pkgs/development/python-modules/tornado/5.nix
@@ -2,19 +2,13 @@
 , python
 , buildPythonPackage
 , fetchPypi
-, backports_abc ? null
-, backports_ssl_match_hostname ? null
-, certifi ? null
-, singledispatch ? null
-, futures ? null
 , isPy27
 }:
 
 buildPythonPackage rec {
   pname = "tornado";
   version = "5.1.1";
-
-  propagatedBuildInputs = lib.optionals isPy27 [ backports_abc certifi singledispatch backports_ssl_match_hostname futures ];
+  disabled = isPy27;
 
   # We specify the name of the test files to prevent
   # https://github.com/NixOS/nixpkgs/issues/14634
diff --git a/pkgs/development/python-modules/traitlets/4.nix b/pkgs/development/python-modules/traitlets/4.nix
deleted file mode 100644
index bffd7c790be..00000000000
--- a/pkgs/development/python-modules/traitlets/4.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, glibcLocales
-, pytest
-, mock
-, ipython_genutils
-, decorator
-, enum34
-, pythonOlder
-, six
-}:
-
-buildPythonPackage rec {
-  pname = "traitlets";
-  version = "4.3.3";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7";
-  };
-
-  checkInputs = [ glibcLocales pytest mock ];
-  propagatedBuildInputs = [ ipython_genutils decorator six ] ++ lib.optional (pythonOlder "3.4") enum34;
-
-  checkPhase = ''
-    LC_ALL="en_US.UTF-8" py.test
-  '';
-
-  meta = {
-    description = "Traitlets Python config system";
-    homepage = "http://ipython.org/";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/treeo/default.nix b/pkgs/development/python-modules/treeo/default.nix
new file mode 100644
index 00000000000..3629b47e8a2
--- /dev/null
+++ b/pkgs/development/python-modules/treeo/default.nix
@@ -0,0 +1,41 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, jax
+, jaxlib
+, lib
+, poetry-core
+}:
+
+buildPythonPackage rec {
+  pname = "treeo";
+  version = "0.0.9";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "cgarciae";
+    repo = pname;
+    rev = version;
+    sha256 = "0jfqj5150braj4ybnifc6b8mp0w2j93li6bm20lcd7a19qs0lkk2";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  # These deps are not needed for the wheel, but required during the import.
+  propagatedBuildInputs = [
+    jax
+    jaxlib
+  ];
+
+  pythonImportsCheck = [
+    "treeo"
+  ];
+
+  meta = with lib; {
+    description = "A small library for creating and manipulating custom JAX Pytree classes.";
+    homepage = "https://github.com/cgarciae/treeo";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ndl ];
+  };
+}
diff --git a/pkgs/development/python-modules/trio-asyncio/default.nix b/pkgs/development/python-modules/trio-asyncio/default.nix
new file mode 100644
index 00000000000..f6feb789690
--- /dev/null
+++ b/pkgs/development/python-modules/trio-asyncio/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, trio
+, outcome
+, sniffio
+, pytest-trio
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "trio-asyncio";
+  version = "0.12.0";
+
+  src = fetchPypi {
+    pname = "trio_asyncio";
+    inherit version;
+    sha256 = "824be23b0c678c0df942816cdb57b92a8b94f264fffa89f04626b0ba2d009768";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "'pytest-runner'" ""
+  '';
+
+  propagatedBuildInputs = [
+    trio
+    outcome
+    sniffio
+  ];
+
+  checkInputs = [
+    pytest-trio
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    "tests/python" # tries to import internal API test.test_asyncio
+  ];
+
+  meta = with lib; {
+    description = "Re-implementation of the asyncio mainloop on top of Trio";
+    homepage = "https://github.com/python-trio/trio-asyncio";
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/pkgs/development/python-modules/ttystatus/default.nix b/pkgs/development/python-modules/ttystatus/default.nix
deleted file mode 100644
index f32045ce9cd..00000000000
--- a/pkgs/development/python-modules/ttystatus/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchurl
-, sphinx
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "ttystatus";
-  version = "0.23";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "http://code.liw.fi/debian/pool/main/p/python-ttystatus/python-ttystatus_${version}.orig.tar.gz";
-    sha256 = "0ymimviyjyh2iizqilg88g4p26f5vpq1zm3cvg7dr7q4y3gmik8y";
-  };
-
-  buildInputs = [ sphinx ];
-
-  # error: invalid command 'test'
-  doCheck = false;
-
-  meta = with lib; {
-    homepage = "https://liw.fi/ttystatus/";
-    description = "Progress and status updates on terminals for Python";
-    license = licenses.gpl3;
-    maintainers = [];
-  };
-
-}
diff --git a/pkgs/development/python-modules/twitterapi/default.nix b/pkgs/development/python-modules/twitterapi/default.nix
index 31caed5ebd9..01a905d55bf 100644
--- a/pkgs/development/python-modules/twitterapi/default.nix
+++ b/pkgs/development/python-modules/twitterapi/default.nix
@@ -3,18 +3,21 @@
 , fetchFromGitHub
 , requests
 , requests_oauthlib
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "twitterapi";
-  version = "2.7.10";
+  version = "2.7.11";
   format = "setuptools";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchFromGitHub {
     owner = "geduldig";
     repo = "TwitterAPI";
     rev = "v${version}";
-    sha256 = "sha256-NWvoamSSyMssV4yJpMZtnCwQ5zBpqbgyUA7sJa9854U=";
+    sha256 = "sha256-Rxc0ld0U8fhE3yJV+rgGsOfOdN6xGk0NQuHscpvergs=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/typed-ast/default.nix b/pkgs/development/python-modules/typed-ast/default.nix
index 05ef879b3e4..c4977ab0829 100644
--- a/pkgs/development/python-modules/typed-ast/default.nix
+++ b/pkgs/development/python-modules/typed-ast/default.nix
@@ -1,24 +1,24 @@
-{ buildPythonPackage, fetchFromGitHub, lib, pythonOlder, pytest }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytest
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "typed-ast";
-  version = "1.5.0";
-  disabled = pythonOlder "3.3";
+  version = "1.5.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "python";
     repo = "typed_ast";
     rev = version;
-    sha256 = "sha256-z3l5gMG1Jp6EI7SnGn5ABVXVBi+bK///iJBqEWn4d+s=";
+    hash = "sha256-qfXMT+rSf/WcWHpkg4VZXZMYj/5IKQWAKRsxQ0TRzPU=";
   };
 
-  pythonImportsCheck = [
-    "typed_ast"
-    "typed_ast.ast27"
-    "typed_ast.ast3"
-    "typed_ast.conversions"
-  ];
-
   checkInputs = [
     pytest
   ];
@@ -34,9 +34,16 @@ buildPythonPackage rec {
     runHook postCheck
   '';
 
+  pythonImportsCheck = [
+    "typed_ast"
+    "typed_ast.ast27"
+    "typed_ast.ast3"
+    "typed_ast.conversions"
+  ];
+
   meta = with lib; {
+    description = "Python AST modules with type comment support";
     homepage = "https://github.com/python/typed_ast";
-    description = "Python 2 and 3 ast modules with type comment support";
     license = licenses.asl20;
     maintainers = with maintainers; [ SuperSandro2000 ];
   };
diff --git a/pkgs/development/python-modules/types-decorator/default.nix b/pkgs/development/python-modules/types-decorator/default.nix
index 631d4836d7f..4436c5a2a6a 100644
--- a/pkgs/development/python-modules/types-decorator/default.nix
+++ b/pkgs/development/python-modules/types-decorator/default.nix
@@ -5,17 +5,20 @@
 
 buildPythonPackage rec {
   pname = "types-decorator";
-  version = "5.1.0";
+  version = "5.1.2";
+  format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-mavQDGFOVOde4I2IeZiGrMKRjMiJBeymR0upF7Mncps=";
+    sha256 = "b3dd9027af1131b4e55ccd09248b7accc7a02d567139e2009ed20db13cf90600";
   };
 
   # Modules doesn't have tests
   doCheck = false;
 
-  pythonImportsCheck = [ "decorator-stubs" ];
+  pythonImportsCheck = [
+    "decorator-stubs"
+  ];
 
   meta = with lib; {
     description = "Typing stubs for decorator";
diff --git a/pkgs/development/python-modules/types-protobuf/default.nix b/pkgs/development/python-modules/types-protobuf/default.nix
index 8545db539fb..382bd311174 100644
--- a/pkgs/development/python-modules/types-protobuf/default.nix
+++ b/pkgs/development/python-modules/types-protobuf/default.nix
@@ -1,15 +1,29 @@
-{ buildPythonPackage, fetchPypi, lib, types-futures }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, types-futures
+}:
 
 buildPythonPackage rec {
   pname = "types-protobuf";
-  version = "3.18.1";
+  version = "3.18.2";
+  format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "6696bf3cabc51dcc076e8de025c405dbdea7488c5268c2febd14527dac82c233";
+    sha256 = "sha256-yiHe3+d1msvrDNj1xyp0/zxAmuDAe8HZTv9RI6wPojw=";
   };
 
-  propagatedBuildInputs = [ types-futures ];
+  propagatedBuildInputs = [
+    types-futures
+  ];
+
+  # Module doesn't have tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "google-stubs"
+  ];
 
   meta = with lib; {
     description = "Typing stubs for protobuf";
diff --git a/pkgs/development/python-modules/types-requests/default.nix b/pkgs/development/python-modules/types-requests/default.nix
index 527893aed00..3006c2c5e99 100644
--- a/pkgs/development/python-modules/types-requests/default.nix
+++ b/pkgs/development/python-modules/types-requests/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-requests";
-  version = "2.26.2";
+  version = "2.26.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0e22d9cdeff4c3eb068eb883d59b127c98d80525f3d0412a1c4499c6ae1f711e";
+    sha256 = "sha256-1j+mF4Rtzv/1qi1Z5Hq0/9gG5LsFZxFfetu15DgwL+Q=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/types-setuptools/default.nix b/pkgs/development/python-modules/types-setuptools/default.nix
index c8ac731ce9d..b88dc5b0260 100644
--- a/pkgs/development/python-modules/types-setuptools/default.nix
+++ b/pkgs/development/python-modules/types-setuptools/default.nix
@@ -5,18 +5,20 @@
 
 buildPythonPackage rec {
   pname = "types-setuptools";
-  version = "57.4.4";
+  version = "57.4.5";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-o8vL8/AhQrtdO1xfWRj0U7h1I2K5bViroqXPpDum0gk=";
+    sha256 = "sha256-pGAO/cpoozIErZwIP9mWbWOu5hp9AH6RK2r8b/V9bgI=";
   };
 
   # Module doesn't have tests
   doCheck = false;
 
-  pythonImportsCheck = [ "setuptools-stubs" ];
+  pythonImportsCheck = [
+    "setuptools-stubs"
+  ];
 
   meta = with lib; {
     description = "Typing stubs for setuptools";
diff --git a/pkgs/development/python-modules/types-typed-ast/default.nix b/pkgs/development/python-modules/types-typed-ast/default.nix
index 7c2c7f66a24..4962f2d02e3 100644
--- a/pkgs/development/python-modules/types-typed-ast/default.nix
+++ b/pkgs/development/python-modules/types-typed-ast/default.nix
@@ -5,17 +5,20 @@
 
 buildPythonPackage rec {
   pname = "types-typed-ast";
-  version = "1.5.0";
+  version = "1.5.1";
+  format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2Op5y/vFIL6Nm8jeSHL0SzQtvbwJFmfi8hsDu9eWkVA=";
+    hash = "sha256-UQ876qlUkrNUTWfoFYGvopA8dktwiJ/82yhubGJn0pc=";
   };
 
   # Module doesn't have tests
   doCheck = false;
 
-  pythonImportsCheck = [ "typed_ast-stubs" ];
+  pythonImportsCheck = [
+    "typed_ast-stubs"
+  ];
 
   meta = with lib; {
     description = "Typing stubs for typed-ast";
diff --git a/pkgs/development/python-modules/tzlocal/2.nix b/pkgs/development/python-modules/tzlocal/2.nix
deleted file mode 100644
index ba96c63af85..00000000000
--- a/pkgs/development/python-modules/tzlocal/2.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib
-, buildPythonPackage
-, pythonOlder
-, fetchPypi
-, pytz
-, mock
-}:
-
-buildPythonPackage rec {
-  pname = "tzlocal";
-  version = "2.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "643c97c5294aedc737780a49d9df30889321cbe1204eac2c2ec6134035a92e44";
-  };
-
-  propagatedBuildInputs = [
-    pytz
-  ];
-
-  checkInputs = [
-    mock
-  ];
-
-  doCheck = false;
-
-  pythonImportsCheck = [ "tzlocal" ];
-
-  meta = with lib; {
-    description = "Tzinfo object for the local timezone";
-    homepage = "https://github.com/regebro/tzlocal";
-    license = licenses.cddl;
-    maintainers = with maintainers; [ dotlambda ];
-  };
-}
diff --git a/pkgs/development/python-modules/ujson/2.nix b/pkgs/development/python-modules/ujson/2.nix
deleted file mode 100644
index d9ec65c2392..00000000000
--- a/pkgs/development/python-modules/ujson/2.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools-scm
-, pytestCheckHook
-}:
-
-buildPythonPackage rec {
-  pname = "ujson";
-  version = "2.0.3";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "18z9gb9ggy1r464b9q1gqs078mqgrkj6dys5a47529rqk3yfybdx";
-  };
-
-  nativeBuildInputs = [ setuptools-scm ];
-
-  checkInputs = [
-    pytestCheckHook
-  ];
-
-  meta = with lib; {
-    homepage = "https://pypi.python.org/pypi/ujson";
-    description = "Ultra fast JSON encoder and decoder for Python";
-    license = licenses.bsd3;
-  };
-}
diff --git a/pkgs/development/python-modules/umemcache/default.nix b/pkgs/development/python-modules/umemcache/default.nix
deleted file mode 100644
index 26f8ba02756..00000000000
--- a/pkgs/development/python-modules/umemcache/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ lib, buildPythonPackage, isPy3k, fetchurl }:
-
-buildPythonPackage rec {
-  pname = "umemcache";
-  version = "1.6.3";
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "mirror://pypi/u/umemcache/${pname}-${version}.zip";
-    sha256 = "211031a03576b7796bf277dbc9c9e3e754ba066bbb7fb601ab5c6291b8ec1918";
-  };
-
-  hardeningDisable = [ "format" ];
-
-  meta = with lib; {
-    description = "Ultra fast memcache client written in highly optimized C++ with Python bindings";
-    homepage = "https://github.com/esnme/ultramemcache";
-    license = licenses.bsdOriginal;
-  };
-}
diff --git a/pkgs/development/python-modules/uritools/default.nix b/pkgs/development/python-modules/uritools/default.nix
index 1d915042808..3d1b274d069 100644
--- a/pkgs/development/python-modules/uritools/default.nix
+++ b/pkgs/development/python-modules/uritools/default.nix
@@ -1,18 +1,29 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27 }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "uritools";
-  version = "3.0.2";
-  disabled = isPy27;
+  version = "4.0.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "28ffef82ce3b2793237d36e45aa7cde28dae6502f6a93fdbd05ede401520e279";
+    sha256 = "420d94c1ff4bf90c678fca9c17b8314243bbcaa992c400a95e327f7f622e1edf";
   };
 
+  pythonImportsCheck = [
+    "uritools"
+  ];
+
   meta = with lib; {
     description = "RFC 3986 compliant, Unicode-aware, scheme-agnostic replacement for urlparse";
+    homepage = "https://github.com/tkem/uritools/";
     license = licenses.mit;
-    maintainers = [ maintainers.rvolosatovs ];
+    maintainers = with maintainers; [ rvolosatovs ];
   };
 }
diff --git a/pkgs/development/python-modules/uvloop/default.nix b/pkgs/development/python-modules/uvloop/default.nix
index c7e11ab6c25..41a0972a315 100644
--- a/pkgs/development/python-modules/uvloop/default.nix
+++ b/pkgs/development/python-modules/uvloop/default.nix
@@ -38,6 +38,8 @@ buildPythonPackage rec {
     psutil
   ];
 
+  LIBUV_CONFIGURE_HOST = stdenv.hostPlatform.config;
+
   pytestFlagsArray = [
     # from pytest.ini, these are NECESSARY to prevent failures
     "--capture=no"
diff --git a/pkgs/development/python-modules/variants/default.nix b/pkgs/development/python-modules/variants/default.nix
index 2055a481344..e23407ab06b 100644
--- a/pkgs/development/python-modules/variants/default.nix
+++ b/pkgs/development/python-modules/variants/default.nix
@@ -3,8 +3,7 @@
 , fetchPypi
 , pytest-runner
 , setuptools-scm
-, singledispatch ? null
-, pytest
+, pytestCheckHook
 , lib
 }:
 
@@ -23,8 +22,8 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytest
-  ] ++ lib.optionals isPy27 [ singledispatch ];
+    pytestCheckHook
+  ];
 
   meta = with lib; {
     description = "Library providing syntactic sugar for creating variant forms of a canonical function";
diff --git a/pkgs/development/python-modules/vpk/default.nix b/pkgs/development/python-modules/vpk/default.nix
index a65aacd4eb2..a39f0a47dfa 100644
--- a/pkgs/development/python-modules/vpk/default.nix
+++ b/pkgs/development/python-modules/vpk/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "vpk";
-  version = "1.3.3";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "ValvePython";
     repo = "vpk";
     rev = "v${version}";
-    hash = "sha256-kFKu4fuclanMdlfA/2ZccglM7rSzaq9BbbSaKuIN+Pk=";
+    hash = "sha256-SPkPb8kveAR2cN9kd2plS+TjmBYBCfa6pJ0c22l69M0=";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/wptserve/default.nix b/pkgs/development/python-modules/wptserve/default.nix
deleted file mode 100644
index 7caf36fa6b2..00000000000
--- a/pkgs/development/python-modules/wptserve/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, six, h2
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "wptserve";
-  version = "3.0";
-
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "11990a92b07e4535c2723c34a88bd905c66acec9cda6efa7a7b61371bfe8d87a";
-  };
-
-  postPatch = ''
-    substituteInPlace setup.py --replace "h2==" "h2>="
-  '';
-
-  propagatedBuildInputs = [ six h2 ];
-
-  meta = {
-    description = "A webserver intended for web browser testing";
-    homepage =  "https://wptserve.readthedocs.org/";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ raskin ];
-  };
-}
diff --git a/pkgs/development/python-modules/wsgiproxy/default.nix b/pkgs/development/python-modules/wsgiproxy/default.nix
deleted file mode 100644
index e2cc26ff143..00000000000
--- a/pkgs/development/python-modules/wsgiproxy/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, paste
-, six
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "WSGIProxy";
-  version = "0.2.2";
-  disabled = isPy3k; # Judging from SyntaxError
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0wqz1q8cvb81a37gb4kkxxpv4w7k8192a08qzyz67rn68ln2wcig";
-  };
-
-  propagatedBuildInputs = [ paste six ];
-
-  meta = with lib; {
-    description = "WSGIProxy gives tools to proxy arbitrary(ish) WSGI requests to other";
-    homepage = "http://pythonpaste.org/wsgiproxy/";
-    license = licenses.mit;
-  };
-
-}
diff --git a/pkgs/development/python-modules/xattr/default.nix b/pkgs/development/python-modules/xattr/default.nix
index cbec33483cc..28b9f809dd0 100644
--- a/pkgs/development/python-modules/xattr/default.nix
+++ b/pkgs/development/python-modules/xattr/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "xattr";
-  version = "0.9.8";
+  version = "0.9.9";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "bf11c8c857215e3ef60b031e7807264f30af4348d7565a7e9b8dca70593753c7";
+    sha256 = "09cb7e1efb3aa1b4991d6be4eb25b73dc518b4fe894f0915f5b0dcede972f346";
   };
 
   propagatedBuildInputs = [ cffi ];
diff --git a/pkgs/development/python-modules/xcaplib/default.nix b/pkgs/development/python-modules/xcaplib/default.nix
deleted file mode 100644
index 086eaf1e348..00000000000
--- a/pkgs/development/python-modules/xcaplib/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchdarcs
-, isPy3k
-, eventlib
-, application
-}:
-
-buildPythonPackage rec {
-  pname = "python-xcaplib";
-  version = "1.2.1";
-  disabled = isPy3k;
-
-  src = fetchdarcs {
-    url = "http://devel.ag-projects.com/repositories/${pname}";
-    rev = "release-${version}";
-    sha256 = "15ww8f0a9zh37mypw5s4q1qk44cwf7jlhc9q1z4vjlpvnzimg54v";
-  };
-
-  propagatedBuildInputs = [ eventlib application ];
-
-  meta = with lib; {
-    homepage = "https://github.com/AGProjects/python-xcaplib";
-    description = "XCAP (RFC4825) client library";
-    license = licenses.gpl2;
-  };
-
-}
diff --git a/pkgs/development/python-modules/yenc/default.nix b/pkgs/development/python-modules/yenc/default.nix
deleted file mode 100644
index 453f3113853..00000000000
--- a/pkgs/development/python-modules/yenc/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ fetchurl
-, lib
-, buildPythonPackage
-, python
-, isPyPy
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "yenc";
-  version = "0.4.0";
-  src = fetchurl {
-    url = "https://bitbucket.org/dual75/yenc/get/${version}.tar.gz";
-    sha256 = "0zkyzxgq30mbrzpnqam4md0cb09d5falh06m0npc81nnlhcghkp7";
-  };
-
-  checkPhase = ''
-    ${python.interpreter} -m unittest discover -s test
-  '';
-
-  disabled = isPy3k || isPyPy;
-
-  meta = {
-    description = "Encoding and decoding yEnc";
-    license = lib.licenses.lgpl21;
-    homepage = "https://bitbucket.org/dual75/yenc";
-    maintainers = with lib.maintainers; [ fridh ];
-  };
-}
diff --git a/pkgs/development/python-modules/yt/default.nix b/pkgs/development/python-modules/yt/default.nix
deleted file mode 100644
index 9611b272229..00000000000
--- a/pkgs/development/python-modules/yt/default.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, matplotlib
-, setuptools
-, sympy
-, numpy
-, ipython
-, hdf5
-, nose
-, cython
-, python
-, isPy3k
-}:
-
-buildPythonPackage rec {
-  pname = "yt";
-  version = "4.0.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "6219cbf971871320a13679a57722c0363e50db5e6d4d64ea9d197461b2a7f70f";
-  };
-
-  buildInputs = [
-    cython
-  ];
-
-  propagatedBuildInputs = [
-    matplotlib
-    setuptools
-    sympy
-    numpy
-    ipython
-    hdf5
-  ];
-
-  checkInputs = [
-    nose
-  ];
-
-  checkPhase = ''
-    cd $out/${python.sitePackages}
-    HOME=$(mktemp -d) nosetests yt
-  '';
-
-  meta = with lib; {
-    description = "An analysis and visualization toolkit for volumetric data";
-    homepage = "https://github.com/yt-project/yt";
-    license = licenses.bsd3;
-    maintainers = [ maintainers.costrouc ];
-  };
-}
diff --git a/pkgs/development/python-modules/zbase32/default.nix b/pkgs/development/python-modules/zbase32/default.nix
deleted file mode 100644
index 715da719bbb..00000000000
--- a/pkgs/development/python-modules/zbase32/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptoolsDarcs
-, pyutil
-}:
-
-buildPythonPackage rec {
-  pname = "zbase32";
-  version = "1.1.5";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "9b25c34ba586cbbad4517af516e723599a6f38fc560f4797855a5f3051e6422f";
-  };
-
-  # Tests require `pyutil' so disable them to avoid circular references.
-  doCheck = false;
-
-  propagatedBuildInputs = [ setuptoolsDarcs pyutil ];
-
-  meta = with lib; {
-    description = "zbase32, a base32 encoder/decoder";
-    homepage = "https://pypi.python.org/pypi/zbase32";
-    license = licenses.bsd0;
-  };
-
-}
diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix
index 932ac92d8b9..38921d25fe0 100644
--- a/pkgs/development/tools/analysis/checkov/default.nix
+++ b/pkgs/development/tools/analysis/checkov/default.nix
@@ -46,13 +46,13 @@ with py.pkgs;
 
 buildPythonApplication rec {
   pname = "checkov";
-  version = "2.0.693";
+  version = "2.0.702";
 
   src = fetchFromGitHub {
     owner = "bridgecrewio";
     repo = pname;
     rev = version;
-    sha256 = "sha256-xteBVQ+OXxLc2BOlhajGX+1wTc7BHGjPtpgU3IjA7g0=";
+    sha256 = "sha256-6FaJkGQpjTNW73D39KD9qMw97znt9B1vzdlJPvqI7Vo=";
   };
 
   nativeBuildInputs = with py.pkgs; [
@@ -63,6 +63,7 @@ buildPythonApplication rec {
     aiodns
     aiohttp
     aiomultiprocess
+    argcomplete
     bc-python-hcl2
     boto3
     cachetools
diff --git a/pkgs/development/tools/analysis/rizin/cutter.nix b/pkgs/development/tools/analysis/rizin/cutter.nix
index 3082d9d4f82..698f9e8231d 100644
--- a/pkgs/development/tools/analysis/rizin/cutter.nix
+++ b/pkgs/development/tools/analysis/rizin/cutter.nix
@@ -11,13 +11,13 @@
 
 mkDerivation rec {
   pname = "cutter";
-  version = "2.0.3";
+  version = "2.0.4";
 
   src = fetchFromGitHub {
     owner = "rizinorg";
     repo = "cutter";
     rev = "v${version}";
-    sha256 = "sha256-OC04d3j8Dfsob1dUjNBc1pSQFxJlexzWJ4v0V3QNkno=";
+    sha256 = "sha256-Z5mqLkeA7AZnvKdpdRzaYfNMsGUI7i7wPTXVyIRYwxI=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/tools/analysis/rizin/default.nix b/pkgs/development/tools/analysis/rizin/default.nix
index d76c63044cc..e632c3c3cc0 100644
--- a/pkgs/development/tools/analysis/rizin/default.nix
+++ b/pkgs/development/tools/analysis/rizin/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "rizin";
-  version = "0.3.0";
+  version = "0.3.1";
 
   src = fetchurl {
     url = "https://github.com/rizinorg/rizin/releases/download/v${version}/rizin-src-v${version}.tar.xz";
-    sha256 = "sha256-+XW12VIaRfRkLc3Li6ItF4VQfWLNRvxZW2VGtxVYJxY=";
+    sha256 = "sha256-muS3+cR75jZl/Q5ZN1srEPg8NxVquwRMpNYcHw/Ij34=";
   };
 
   mesonFlags = [
diff --git a/pkgs/development/tools/analysis/tartan/default.nix b/pkgs/development/tools/analysis/tartan/default.nix
new file mode 100644
index 00000000000..0ac4bf32528
--- /dev/null
+++ b/pkgs/development/tools/analysis/tartan/default.nix
@@ -0,0 +1,52 @@
+{ stdenv
+, lib
+, fetchFromGitLab
+, meson
+, ninja
+, pkg-config
+, llvmPackages
+, gobject-introspection
+, glib
+, unstableGitUpdater
+}:
+
+stdenv.mkDerivation rec {
+  pname = "tartan";
+  version = "unstable-2021-12-23";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.freedesktop.org";
+    owner = "tartan";
+    repo = "tartan";
+    rev = "bd4ea95d8b3ce1258491e9fac7fcc37d2b241a16";
+    sha256 = "l3duPt8Kh/JljzOV+Dm26XbS7gZ+mmFfYUYofWSJRyo=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    gobject-introspection
+    glib
+    llvmPackages.libclang
+    llvmPackages.libllvm
+  ];
+
+  passthru = {
+    updateScript = unstableGitUpdater {
+      # The updater tries src.url by default, which does not exist for fetchFromGitLab (fetchurl).
+      url = "https://gitlab.freedesktop.org/tartan/tartan.git";
+    };
+  };
+
+  meta = with lib; {
+    description = "Tools and Clang plugins for developing code with GLib";
+    homepage = "https://freedesktop.org/wiki/Software/tartan";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ jtojnar ];
+  };
+}
diff --git a/pkgs/development/tools/buf/default.nix b/pkgs/development/tools/buf/default.nix
index 7914af6ec80..1a14e78af31 100644
--- a/pkgs/development/tools/buf/default.nix
+++ b/pkgs/development/tools/buf/default.nix
@@ -9,15 +9,15 @@
 
 buildGoModule rec {
   pname = "buf";
-  version = "1.0.0-rc8";
+  version = "1.0.0-rc10";
 
   src = fetchFromGitHub {
     owner = "bufbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Oye+nYvKdT9t36hAMJSAJZCOQ2L3rHSjhjIu9gU2MWo=";
+    sha256 = "sha256-N6BZ6HDDQ0m41BHGdKOONUjdIBDnPJOpN3eJMcsXYi8=";
   };
-  vendorSha256 = "sha256-aZv44ZPW/bJ8TEXU79ExREj2DH6j7J1+E/E1yh13Hvc=";
+  vendorSha256 = "sha256-VPS5nRsAssgKSQ6DMtB6+MkMrpIY5+JEvOpaMZ3IWV8=";
 
   patches = [
     # Skip a test that requires networking to be available to work.
diff --git a/pkgs/development/tools/build-managers/apache-ant/1.9.nix b/pkgs/development/tools/build-managers/apache-ant/1.9.nix
index 80f8f1f886c..14b16b6cc82 100644
--- a/pkgs/development/tools/build-managers/apache-ant/1.9.nix
+++ b/pkgs/development/tools/build-managers/apache-ant/1.9.nix
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
     ''; # */
 
   meta = {
-    homepage = "http://ant.apache.org/";
+    homepage = "https://ant.apache.org/";
     description = "A Java-based build tool";
 
     longDescription = ''
diff --git a/pkgs/development/tools/build-managers/apache-maven/default.nix b/pkgs/development/tools/build-managers/apache-maven/default.nix
index 24f2a54f42e..3cc3f374045 100644
--- a/pkgs/development/tools/build-managers/apache-maven/default.nix
+++ b/pkgs/development/tools/build-managers/apache-maven/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Build automation tool (used primarily for Java projects)";
-    homepage = "http://maven.apache.org/";
+    homepage = "https://maven.apache.org/";
     license = licenses.asl20;
     platforms = platforms.unix;
     maintainers = with maintainers; [ cko ];
diff --git a/pkgs/development/tools/build-managers/pants/default.nix b/pkgs/development/tools/build-managers/pants/default.nix
deleted file mode 100644
index 53333c217ba..00000000000
--- a/pkgs/development/tools/build-managers/pants/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, pythonPackages }:
-
-with lib;
-with pythonPackages;
-
-buildPythonApplication rec {
-  pname = "pantsbuild.pants";
-  version = "1.7.0";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1d7ff1383287c8e72f2c9855cfef982d362274a64e2707a93c070f988ba80a37";
-  };
-
-  # No tests
-  doCheck = false;
-
-  prePatch = ''
-    sed -E -i "s/'([[:alnum:].-]+)[=><][[:digit:]=><.,]*'/'\\1'/g" setup.py
-    substituteInPlace setup.py --replace "requests[security]<2.19,>=2.5.0" "requests[security]<2.22,>=2.5.0"
-  '';
-
-  # Unnecessary, and causes some really weird behavior around .class files, which
-  # this package bundles. See https://github.com/NixOS/nixpkgs/issues/22520.
-  dontStrip = true;
-
-  propagatedBuildInputs = [
-    twitter-common-collections setproctitle ansicolors packaging pathspec
-    scandir twitter-common-dirutil psutil requests pystache pex docutils
-    markdown pygments twitter-common-confluence fasteners pywatchman
-    futures cffi subprocess32 contextlib2 faulthandler pyopenssl wheel
-  ];
-
-  meta = {
-    description = "A build system for software projects in a variety of languages";
-    homepage    = "https://www.pantsbuild.org/";
-    license     = licenses.asl20;
-    maintainers = with maintainers; [ copumpkin ];
-    broken = true;
-  };
-}
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 5371bea7760..d45f15b59e7 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchurl {
     url = "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz";
-    sha256 = "sha256-Y52xcPZRDQ+IX/QAVGRODshbuDb5oJA45r9OT2Jxusw=";
+    sha256 = "sha256-YChr8bh1sx4pVfimmYiM0mEumv2U0DzeCi5x79dJL/w=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/continuous-integration/github-runner/default.nix b/pkgs/development/tools/continuous-integration/github-runner/default.nix
index 239d0c3430b..1b95903c601 100644
--- a/pkgs/development/tools/continuous-integration/github-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/github-runner/default.nix
@@ -241,6 +241,11 @@ stdenv.mkDerivation rec {
     ln -s ${nodejs-12_x} $out/externals/node12
     ln -s ${nodejs-16_x} $out/externals/node16
 
+    # Install Nodejs scripts called from workflows
+    install -D src/Misc/layoutbin/hashFiles/index.js $out/lib/hashFiles/index.js
+    mkdir -p $out/lib/checkScripts
+    install src/Misc/layoutbin/checkScripts/* $out/lib/checkScripts/
+
     runHook postInstall
   '';
 
diff --git a/pkgs/development/tools/continuous-integration/laminar/default.nix b/pkgs/development/tools/continuous-integration/laminar/default.nix
index dc1eac59ced..05f96c0695b 100644
--- a/pkgs/development/tools/continuous-integration/laminar/default.nix
+++ b/pkgs/development/tools/continuous-integration/laminar/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , lib
 , fetchurl
+, fetchFromGitHub
 , cmake
 , capnproto
 , sqlite
@@ -25,9 +26,11 @@ let
 in stdenv.mkDerivation rec {
   pname = "laminar";
   version = "1.1";
-  src = fetchurl {
-    url = "https://github.com/ohwgiles/laminar/archive/${version}.tar.gz";
-    sha256 = "1lzfmfjygmbdr2n1q49kwwffw8frz5y6iczhdz5skwmzwg0chbsf";
+  src = fetchFromGitHub {
+    owner = "ohwgiles";
+    repo = "laminar";
+    rev = version;
+    sha256 = "sha256-9JiFO5Vi/NT/o7v/KXZw3/P5s5qQwmQXjrQq+uUXHQk=";
   };
   patches = [ ./patches/no-network.patch ];
   nativeBuildInputs = [ cmake pandoc ];
diff --git a/pkgs/development/tools/dapper/default.nix b/pkgs/development/tools/dapper/default.nix
index 29ad5c0cc4e..45e4614b448 100644
--- a/pkgs/development/tools/dapper/default.nix
+++ b/pkgs/development/tools/dapper/default.nix
@@ -5,7 +5,7 @@
 
 buildGoPackage rec {
   pname = "dapper";
-  version = "0.5.7";
+  version = "0.5.8";
 
   goPackagePath = "github.com/rancher/dapper";
 
@@ -13,7 +13,7 @@ buildGoPackage rec {
     owner = "rancher";
     repo = "dapper";
     rev = "v${version}";
-    sha256 = "sha256-kzjDhBmyB1Yf39bvdlGJ6EFtaviDqozf20mDaaaChSs=";
+    sha256 = "sha256-t1w8bhwCjZHmvgBG6Tv8kgqTbC7v5P5QOvJGuTJUC04=";
   };
    patchPhase = ''
      substituteInPlace main.go --replace 0.0.0 ${version}
diff --git a/pkgs/development/tools/database/schemaspy/default.nix b/pkgs/development/tools/database/schemaspy/default.nix
index 00309c343d2..264d2cc3264 100644
--- a/pkgs/development/tools/database/schemaspy/default.nix
+++ b/pkgs/development/tools/database/schemaspy/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = "http://schemaspy.org";
+    homepage = "https://schemaspy.org";
     description = "Document your database simply and easily";
     license = licenses.mit;
     maintainers = with maintainers; [ jraygauthier ];
diff --git a/pkgs/development/tools/ddosify/default.nix b/pkgs/development/tools/ddosify/default.nix
index fd4b1ea279b..509dabb0b01 100644
--- a/pkgs/development/tools/ddosify/default.nix
+++ b/pkgs/development/tools/ddosify/default.nix
@@ -2,23 +2,25 @@
 
 buildGoModule rec {
   pname = "ddosify";
-  version = "0.6.0";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-RA+WmlSrNwkysuvAXjCoKZ528nt0tTZ5OHkqCETMskE=";
+    sha256 = "sha256-QzNMUeA9oOZaNZDGf9TXloZ5r2prDHTRX1wso3fSetc=";
   };
 
   vendorSha256 = "sha256-TY8shTb77uFm8/yCvlIncAfq7brWgnH/63W+hj1rvqg=";
 
-  # triggers a different set of tests that seems to be interactive and fail (no url target defined)
   ldflags = [
     "-s -w"
     "-X main.GitVersion=${version}"
   ];
 
+  # TestCreateHammerMultipartPayload error occurred - Get "https://upload.wikimedia.org/wikipedia/commons/b/bd/Test.svg"
+  doCheck = false;
+
   doInstallCheck = true;
   installCheckPhase = ''
     $out/bin/ddosify -version | grep ${version} > /dev/null
diff --git a/pkgs/development/tools/delve/default.nix b/pkgs/development/tools/delve/default.nix
index 0ad756614de..54c1f12432b 100644
--- a/pkgs/development/tools/delve/default.nix
+++ b/pkgs/development/tools/delve/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "delve";
-  version = "1.7.3";
+  version = "1.8.0";
 
   goPackagePath = "github.com/go-delve/delve";
   excludedPackages = "\\(_fixtures\\|scripts\\|service/test\\)";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "go-delve";
     repo = "delve";
     rev = "v${version}";
-    sha256 = "sha256-cqIU4nzS8l1JgW3DWRLpyCISDf2uPgw6CbVGyyvx0mg=";
+    sha256 = "sha256-NihlBFZ5xu+DMBtUiGyjxpgob2hoLlFJ7MfnM55feuw=";
   };
 
   subPackages = [ "cmd/dlv" ];
@@ -30,7 +30,7 @@ buildGoPackage rec {
 
   meta = with lib; {
     description = "debugger for the Go programming language";
-    homepage = "https://github.com/derekparker/delve";
+    homepage = "https://github.com/go-delve/delve";
     maintainers = with maintainers; [ SuperSandro2000 vdemeester ];
     license = licenses.mit;
     platforms = [ "x86_64-linux" ] ++ platforms.darwin;
diff --git a/pkgs/development/tools/dprint/default.nix b/pkgs/development/tools/dprint/default.nix
index 729e523dc89..505a0681085 100644
--- a/pkgs/development/tools/dprint/default.nix
+++ b/pkgs/development/tools/dprint/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchCrate, rustPlatform }:
+{ lib, stdenv, fetchCrate, rustPlatform, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "dprint";
@@ -11,6 +11,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-ezfVDgZs0QemYHm/o3aX2QGO2WuMweE8LuNZaX4whhw=";
 
+  buildInputs = lib.optionals stdenv.isDarwin [ Security ];
+
   # Tests fail because they expect a test WASM plugin. Tests already run for
   # every commit upstream on GitHub Actions
   doCheck = false;
diff --git a/pkgs/development/tools/esbuild/default.nix b/pkgs/development/tools/esbuild/default.nix
index 1258df45639..c3ed6ce6b14 100644
--- a/pkgs/development/tools/esbuild/default.nix
+++ b/pkgs/development/tools/esbuild/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "esbuild";
-  version = "0.14.2";
+  version = "0.14.8";
 
   src = fetchFromGitHub {
     owner = "evanw";
     repo = "esbuild";
     rev = "v${version}";
-    sha256 = "sha256-ou1fkmlychf6VbKQD/PT1ehfyIQMIpbwEKlxpfncfEo=";
+    sha256 = "sha256-RyxlU6Wf+rHSZ/xuhiCbF+KYhMxHEEh3XvLCdwAVTYw=";
   };
 
   vendorSha256 = "sha256-QPkBR+FscUc3jOvH7olcGUhM6OW4vxawmNJuRQxPuGs=";
diff --git a/pkgs/development/tools/fedpkg/default.nix b/pkgs/development/tools/fedpkg/default.nix
deleted file mode 100644
index 2ba0f494c21..00000000000
--- a/pkgs/development/tools/fedpkg/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib, python2Packages, fetchurl }:
-
-with python2Packages;
-
-let
-  fedora_cert = buildPythonPackage rec {
-    name = "fedora-cert";
-    version = "0.6.0.2";
-    format = "other";
-
-    src = fetchurl {
-      url = "https://releases.pagure.org/fedora-packager/fedora-packager-${version}.tar.bz2";
-      sha256 = "02f22072wx1zg3rhyfw6gbxryzcbh66s92nb98mb9kdhxixv6p0z";
-    };
-    propagatedBuildInputs = [ python_fedora pyopenssl ];
-    doCheck = false;
-  };
-in buildPythonApplication rec {
-  pname = "fedpkg";
-  version = "1.29";
-
-  disabled = isPy3k;
-
-  src = fetchurl {
-    url = "https://releases.pagure.org/fedpkg/${pname}-${version}.tar.bz2";
-    sha256 = "1cpy5p1rp7w52ighz3ynvhyw04z86y8phq3n8563lj6ayr8pw631";
-  };
-  patches = [ ./fix-paths.patch ];
-  propagatedBuildInputs = [ rpkg offtrac urlgrabber fedora_cert ];
-
-  meta = with lib; {
-    description = "Subclass of the rpkg project for dealing with rpm packaging";
-    homepage = "https://pagure.io/fedpkg";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ ];
-    broken = true;
-  };
-}
diff --git a/pkgs/development/tools/fedpkg/fix-paths.patch b/pkgs/development/tools/fedpkg/fix-paths.patch
deleted file mode 100644
index 1831337a585..00000000000
--- a/pkgs/development/tools/fedpkg/fix-paths.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- orig/setup.py
-+++ new/setup.py
-@@ -27,10 +27,10 @@
-         'bin/fedpkg',
-         'bin/fedpkg-stage',
-     ],
--    data_files=[(bash_completion_dir(), ['conf/bash-completion/fedpkg.bash']),
--                ('/etc/rpkg', ['conf/etc/rpkg/fedpkg.conf',
-+    data_files=[('share/bash-completion/completions', ['conf/bash-completion/fedpkg.bash']),
-+                ('etc/rpkg', ['conf/etc/rpkg/fedpkg.conf',
-                                'conf/etc/rpkg/fedpkg-stage.conf']),
--                ('/usr/share/zsh/site-functions', ['conf/zsh-completion/_fedpkg']),
-+                ('share/zsh/site-functions', ['conf/zsh-completion/_fedpkg']),
-                 ],
- 
-     tests_require=['nose', 'mock'],
diff --git a/pkgs/development/tools/frugal/default.nix b/pkgs/development/tools/frugal/default.nix
index 0fc0abca7b0..fb6a4f49624 100644
--- a/pkgs/development/tools/frugal/default.nix
+++ b/pkgs/development/tools/frugal/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "frugal";
-  version = "3.14.11";
+  version = "3.14.12";
 
   src = fetchFromGitHub {
     owner = "Workiva";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-XUG9Md6T0/+yn3KGqJO09FFlpuli2wJqOf/SEIVKXac=";
+    sha256 = "sha256-2fXefYvcclcxMeX6JtHjoVNRwJTsUAhxet646BDPHic=";
   };
 
   subPackages = [ "." ];
 
-  vendorSha256 = "sha256-Z42t9dGlNbSwNy2N/ZoEejkbIEeUUk87mcYhkTnxhpc=";
+  vendorSha256 = "sha256-4Ak+mh9ege38iO1QyxvGkYvRyU11QjphfLrit1qfu58=";
 
   meta = with lib; {
     description = "Thrift improved";
diff --git a/pkgs/development/tools/go-task/default.nix b/pkgs/development/tools/go-task/default.nix
index 3cb0497ee0c..822633982c8 100644
--- a/pkgs/development/tools/go-task/default.nix
+++ b/pkgs/development/tools/go-task/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 buildGoModule rec {
   pname = "go-task";
@@ -15,6 +15,8 @@ buildGoModule rec {
 
   doCheck = false;
 
+  nativeBuildInputs = [ installShellFiles ];
+
   subPackages = [ "cmd/task" ];
 
   ldflags = [
@@ -23,6 +25,8 @@ buildGoModule rec {
 
   postInstall = ''
     ln -s $out/bin/task $out/bin/go-task
+
+    installShellCompletion completion/{bash,fish,zsh}/*
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/gofumpt/default.nix b/pkgs/development/tools/gofumpt/default.nix
index 42494266339..051e9207aa5 100644
--- a/pkgs/development/tools/gofumpt/default.nix
+++ b/pkgs/development/tools/gofumpt/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gofumpt";
-  version = "0.1.1";
+  version = "0.2.0";
 
   src = fetchFromGitHub {
     owner = "mvdan";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MHNxJ9DPBWrLkaEEfXOmRqo2h2ugwgZT/SIe7bi3J2E=";
+    sha256 = "sha256-Kgj3f90bAtaVl4mby6FQr4t4BT4I3QLtHhvO10f1BOk=";
   };
 
-  vendorSha256 = "sha256-LR4W7NKrDP7Ke5NYDZPYorZI77upP5IksBFRFsPnDRc=";
+  vendorSha256 = "sha256-gxxK2eUmYUqHjt8HP6OANaHsO43wCaodUDR4BlMY8Zw=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/gopls/default.nix b/pkgs/development/tools/gopls/default.nix
index d3eab38627c..efbe65799f5 100644
--- a/pkgs/development/tools/gopls/default.nix
+++ b/pkgs/development/tools/gopls/default.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "gopls";
-  version = "0.7.3";
+  version = "0.7.4";
 
   src = fetchFromGitHub {
     owner = "golang";
     repo = "tools";
     rev = "gopls/v${version}";
-    sha256 = "sha256-aaRaStQ35a/SK4YIR5rjvp8gPxvoNuhLh2AGbr0c6p4=";
+    sha256 = "sha256-tpJkEq3TuEiJ4bChlWXi2241WMcZjChEt1hV1G+h8f8=";
   };
 
   modRoot = "gopls";
-  vendorSha256 = "sha256-8+sWd48w+ghQzznobBPcCQMuc9HLgOuAZPwD6lbbfj8=";
+  vendorSha256 = "sha256-MEL3VRHPSf1Im09Hw+GX+3J3UGt7j29V4kxzoiWhqfk=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/hjson-go/default.nix b/pkgs/development/tools/hjson-go/default.nix
index bbd1f3c0ec0..ce6da30d3b5 100644
--- a/pkgs/development/tools/hjson-go/default.nix
+++ b/pkgs/development/tools/hjson-go/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "hjson-go";
-  version = "3.1.0";
+  version = "3.1.1";
 
   src = fetchFromGitHub {
     owner = "hjson";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-X02NnSefJfKUfagzJpdW1UpOLe84SvRaTN+8GqGKzbU=";
+    sha256 = "sha256-yU1VkxwQ12CjzITR9X6LLaOfiteN+807rfB/tWcRR1c=";
   };
 
   goPackagePath = "github.com/hjson/hjson-go";
diff --git a/pkgs/development/tools/java/visualvm/default.nix b/pkgs/development/tools/java/visualvm/default.nix
index 0eb39f85011..b9020f2cc0e 100644
--- a/pkgs/development/tools/java/visualvm/default.nix
+++ b/pkgs/development/tools/java/visualvm/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchzip, lib, makeWrapper, makeDesktopItem, jdk, gawk }:
 
 stdenv.mkDerivation rec {
-  version = "2.1";
+  version = "2.1.1";
   pname = "visualvm";
 
   src = fetchzip {
     url = "https://github.com/visualvm/visualvm.src/releases/download/${version}/visualvm_${builtins.replaceStrings ["."] [""]  version}.zip";
-    sha256 = "sha256-faKBYwyBGrMjNMO/0XzQIG+XI1p783p26Bpoj+mSY7s=";
+    sha256 = "sha256-LXMPdzIOFPzFUx3uufx+2UeJ6mg/9kJXGews4KU3rrU=";
   };
 
   desktopItem = makeDesktopItem {
diff --git a/pkgs/development/tools/metal-cli/default.nix b/pkgs/development/tools/metal-cli/default.nix
index c5488cdb900..f88fcd9f429 100644
--- a/pkgs/development/tools/metal-cli/default.nix
+++ b/pkgs/development/tools/metal-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "metal-cli";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "equinix";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dGeOFrsqhW0+aQyB4f6pvv4ZBawqKX2+WRskDWoLS7E=";
+    sha256 = "sha256-Zl0OuyqF+bNsp1AqnS8jhQlY7l4U6OjHHgth7pRPwEc=";
   };
 
-  vendorSha256 = "sha256-ifSfeJjrZI1Hrsq64zAGBiLVc8GKvq+Ddg26gQooyTs=";
+  vendorSha256 = "sha256-F8d5i9jvjY11Pv6w0ZXI3jr0Wix++B/w9oRTuJGpQfE=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/minizinc/ide.nix b/pkgs/development/tools/minizinc/ide.nix
index 3be33656431..8c2756f801e 100644
--- a/pkgs/development/tools/minizinc/ide.nix
+++ b/pkgs/development/tools/minizinc/ide.nix
@@ -1,7 +1,7 @@
 { lib, mkDerivation, fetchFromGitHub, qtbase, qtwebengine, qtwebkit, qmake, minizinc }:
 mkDerivation rec {
   pname = "minizinc-ide";
-  version = "2.5.3";
+  version = "2.5.5";
 
   nativeBuildInputs = [ qmake ];
   buildInputs = [ qtbase qtwebengine qtwebkit ];
@@ -10,7 +10,7 @@ mkDerivation rec {
     owner = "MiniZinc";
     repo = "MiniZincIDE";
     rev = version;
-    sha256 = "1c80ilb1xbgzfadgal668h2zsaiv62il1jnljizrisgb7pszzyzw";
+    sha256 = "sha256-0U3KFRDam8psbCaEOcrwqzICAy1oBgo8SFEiR/PMqZk=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/tools/misc/doclifter/default.nix b/pkgs/development/tools/misc/doclifter/default.nix
index 22de87b95c3..d346f94b478 100644
--- a/pkgs/development/tools/misc/doclifter/default.nix
+++ b/pkgs/development/tools/misc/doclifter/default.nix
@@ -1,13 +1,14 @@
-{lib, stdenv, fetchurl, python3}:
+{ lib, stdenv, fetchurl, python3, makeWrapper, libxml2 }:
 
 stdenv.mkDerivation rec {
   pname = "doclifter";
-  version = "2.19";
+  version = "2.20";
   src = fetchurl {
     url = "http://www.catb.org/~esr/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "1as6z7mdjrrkw2kism41q5ybvyzvwcmj9qzla2fz98v9f4jbj2s2";
+    sha256 = "sha256-BEuMbICJ8TD3+VjUr8rmhss7XlPNjxSy1P0SkmKLPsc=";
   };
   buildInputs = [ python3 ];
+  nativeBuildInputs = [ python3 makeWrapper ];
 
   strictDeps = true;
 
@@ -16,7 +17,12 @@ stdenv.mkDerivation rec {
   preInstall = ''
     mkdir -p $out/bin
     mkdir -p $out/share/man/man1
+    substituteInPlace manlifter \
+      --replace '/usr/bin/env python2' '/usr/bin/env python3'
+    2to3 -w manlifter
     cp manlifter $out/bin
+    wrapProgram "$out/bin/manlifter" \
+        --prefix PATH : "${libxml2}/bin:$out/bin"
     cp manlifter.1 $out/share/man/man1
   '';
 
diff --git a/pkgs/development/tools/misc/gede/default.nix b/pkgs/development/tools/misc/gede/default.nix
index 17259290262..e56910bb132 100644
--- a/pkgs/development/tools/misc/gede/default.nix
+++ b/pkgs/development/tools/misc/gede/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "gede";
-  version = "2.18.1";
+  version = "2.18.2";
 
   src = fetchurl {
     url = "http://gede.dexar.se/uploads/source/${pname}-${version}.tar.xz";
-    sha256 = "sha256-iIP4QYBiowRs9vjgF73JVKKle8f7ig2exaIp1+ozRp0=";
+    sha256 = "sha256-QWrDHV+2trl+wKKibWiDa+kVREN116OwQ6DomaKj3LY=";
   };
 
   nativeBuildInputs = [ qmake makeWrapper python3 ];
diff --git a/pkgs/development/tools/misc/inotify-tools/default.nix b/pkgs/development/tools/misc/inotify-tools/default.nix
index 7b179e7de8d..51c23eed8f3 100644
--- a/pkgs/development/tools/misc/inotify-tools/default.nix
+++ b/pkgs/development/tools/misc/inotify-tools/default.nix
@@ -1,20 +1,26 @@
-{ lib, stdenv, autoreconfHook, fetchFromGitHub }:
+{ lib, stdenv, autoreconfHook, fetchFromGitHub, nix-update-script }:
 
 stdenv.mkDerivation rec {
   pname = "inotify-tools";
-  version = "3.21.9.5";
+  version = "3.21.9.6";
 
   src = fetchFromGitHub {
     repo = "inotify-tools";
-    owner = "rvoicilas";
+    owner = "inotify-tools";
     rev = version;
-    sha256 = "sha256-2eMYCFqecpY/yvhwl5+kvQ+pkdWzhX6Xsb+rcJEK37c=";
+    sha256 = "sha256-oKcVmF39N43g8O1S+xwUhVJryFcW+ZUteyoe3fUkRH8=";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
 
+  passthru = {
+    updateScript = nix-update-script {
+      attrPath = pname;
+    };
+  };
+
   meta = with lib; {
-    homepage = "https://github.com/rvoicilas/inotify-tools/wiki";
+    homepage = "https://github.com/inotify-tools/inotify-tools/wiki";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ marcweber pSub shamilton ];
     platforms = platforms.linux;
diff --git a/pkgs/development/tools/misc/premake/3.nix b/pkgs/development/tools/misc/premake/3.nix
index d72cca0e785..28894743dd6 100644
--- a/pkgs/development/tools/misc/premake/3.nix
+++ b/pkgs/development/tools/misc/premake/3.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   setupHook = ./setup-hook.sh;
 
   meta = {
-    homepage = "http://industriousone.com/premake";
+    homepage = "https://premake.github.io/";
     description = "A simple build configuration and project generation tool using lua";
     license = lib.licenses.bsd3;
     platforms = lib.platforms.unix;
diff --git a/pkgs/development/tools/misc/premake/default.nix b/pkgs/development/tools/misc/premake/default.nix
index ccd8a4574a1..192a7746203 100644
--- a/pkgs/development/tools/misc/premake/default.nix
+++ b/pkgs/development/tools/misc/premake/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
   setupHook = ./setup-hook.sh;
 
   meta = with lib; {
-    homepage = "http://industriousone.com/premake";
+    homepage = "https://premake.github.io/";
     description = "A simple build configuration and project generation tool using lua";
     license = lib.licenses.bsd3;
     platforms = platforms.unix;
diff --git a/pkgs/development/tools/mold/default.nix b/pkgs/development/tools/mold/default.nix
index 3613b18e728..c275777c12b 100644
--- a/pkgs/development/tools/mold/default.nix
+++ b/pkgs/development/tools/mold/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mold";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "rui314";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-89Dh4qly70Jzyo/KPlRte58hbN5HNnzZpi32tFd8fXU=";
+    sha256 = "sha256-G+mVZS3ZRuBd00xfBqrTvmHOykFk63nJlucxv01nr3k=";
   };
 
   buildInputs = [ zlib openssl ];
diff --git a/pkgs/development/tools/ocaml/ocamlformat/default.nix b/pkgs/development/tools/ocaml/ocamlformat/default.nix
index 24d94fbcf24..096fe1b4324 100644
--- a/pkgs/development/tools/ocaml/ocamlformat/default.nix
+++ b/pkgs/development/tools/ocaml/ocamlformat/default.nix
@@ -60,5 +60,13 @@ rec {
     version = "0.19.0";
   };
 
-  ocamlformat = ocamlformat_0_19_0;
+  ocamlformat_0_20_0 = mkOCamlformat {
+    version = "0.20.0";
+  };
+
+  ocamlformat_0_20_1 = mkOCamlformat {
+    version = "0.20.1";
+  };
+
+  ocamlformat = ocamlformat_0_20_1;
 }
diff --git a/pkgs/development/tools/ocaml/ocamlformat/generic.nix b/pkgs/development/tools/ocaml/ocamlformat/generic.nix
index afd7ae8807b..5686e33f9b7 100644
--- a/pkgs/development/tools/ocaml/ocamlformat/generic.nix
+++ b/pkgs/development/tools/ocaml/ocamlformat/generic.nix
@@ -23,6 +23,8 @@ let src =
       "0.17.0" = "0f1lxp697yq61z8gqxjjaqd2ns8fd1vjfggn55x0gh9dx098p138";
       "0.18.0" = "0571kzmb1h03qj74090n3mg8wfbh29qqrkdjkai6rnl5chll86lq";
       "0.19.0" = "0ihgwl7d489g938m1jvgx8azdgq9f5np5mzqwwya797hx2m4dz32";
+      "0.20.0" = "sha256-JtmNCgwjbCyUE4bWqdH5Nc2YSit+rekwS43DcviIfgk=";
+      "0.20.1" = "sha256-fTpRZFQW+ngoc0T6A69reEUAZ6GmHkeQvxspd5zRAjU=";
     }."${version}";
   };
   ocamlPackages =
@@ -47,7 +49,26 @@ buildDunePackage {
   useDune2 = true;
 
   buildInputs =
-    if lib.versionAtLeast version "0.19.0"
+    if lib.versionAtLeast version "0.20.0"
+    then [
+      base
+      cmdliner
+      dune-build-info
+      either
+      fix
+      fpath
+      menhir
+      menhirLib
+      menhirSdk
+      ocaml-version
+      ocp-indent
+      (if version == "0.20.0" then odoc-parser.override { version = "0.9.0"; } else odoc-parser)
+      re
+      stdio
+      uuseg
+      uutf
+    ]
+    else if lib.versionAtLeast version "0.19.0"
     then [
       base
       cmdliner
@@ -62,7 +83,7 @@ buildDunePackage {
       menhirSdk
       ocp-indent
       dune-build-info
-      odoc-parser
+      (odoc-parser.override { version = "0.9.0"; })
     ]
     else if lib.versionAtLeast version "0.18.0"
     then [
diff --git a/pkgs/development/tools/parsing/byacc/default.nix b/pkgs/development/tools/parsing/byacc/default.nix
index 7f9aacd8ce7..b02af6e7e86 100644
--- a/pkgs/development/tools/parsing/byacc/default.nix
+++ b/pkgs/development/tools/parsing/byacc/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "byacc";
-  version = "20210808";
+  version = "20211224";
 
   src = fetchurl {
     urls = [
       "ftp://ftp.invisible-island.net/byacc/${pname}-${version}.tgz"
       "https://invisible-mirror.net/archives/byacc/${pname}-${version}.tgz"
     ];
-    sha256 = "sha256-8VhSm+nQWUJjx/Eah2FqSeoj5VrGNpElKiME+7x9OoM=";
+    sha256 = "sha256-e8QoZ6CV3yGJYYtkSXAWKYgY6I5RP8p5LLWtyaaOv7g=";
   };
 
   configureFlags = [
diff --git a/pkgs/development/tools/perseus-cli/default.nix b/pkgs/development/tools/perseus-cli/default.nix
new file mode 100644
index 00000000000..9ec8aa21e2d
--- /dev/null
+++ b/pkgs/development/tools/perseus-cli/default.nix
@@ -0,0 +1,28 @@
+{ lib, rustPlatform, fetchCrate, makeWrapper, wasm-pack }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "perseus-cli";
+  version = "0.3.0";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-YyQQjuxNUxuo2PFluGyT/CpG22tgjRCfmFKA5MFRgHo=";
+  };
+
+  cargoSha256 = "sha256-SKxPsltXFH+ENexn/KDD43hGLSTgvtU9hv9Vdi2oeFA=";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  postInstall = ''
+    wrapProgram $out/bin/perseus \
+      --prefix PATH : "${lib.makeBinPath [ wasm-pack ]}"
+  '';
+
+  meta = with lib; {
+    homepage = "https://arctic-hen7.github.io/perseus";
+    description = "A high-level web development framework for Rust with full support for server-side rendering and static generation";
+    maintainers = with maintainers; [ max-niederman ];
+    license = with licenses; [ mit ];
+    mainProgram = "perseus";
+  };
+}
diff --git a/pkgs/development/tools/profiling/heaptrack/default.nix b/pkgs/development/tools/profiling/heaptrack/default.nix
index fc2937a8b0f..7f42c39cb21 100644
--- a/pkgs/development/tools/profiling/heaptrack/default.nix
+++ b/pkgs/development/tools/profiling/heaptrack/default.nix
@@ -6,13 +6,13 @@
 
 mkDerivation rec {
   pname = "heaptrack";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "KDE";
     repo = "heaptrack";
     rev = "v${version}";
-    sha256 = "0pw82c26da014i1qxnaib3fqa52ijhf0m4swhjc3qq4hm2dx9bxj";
+    sha256 = "sha256-GXwlauLspbY+h/Y75zlHPoP27pr3xVl05LuDW+WVYxU=";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules ];
diff --git a/pkgs/development/tools/pup/default.nix b/pkgs/development/tools/pup/default.nix
index 018232b3f40..8cdfddb7f01 100644
--- a/pkgs/development/tools/pup/default.nix
+++ b/pkgs/development/tools/pup/default.nix
@@ -17,6 +17,6 @@ buildGoModule rec {
     description = "Parsing HTML at the command line";
     homepage = "https://github.com/ericchiang/pup";
     license = licenses.mit;
-    maintainers = with maintainers; [ yegortimoshenko SuperSandro2000 ];
+    maintainers = with maintainers; [ SuperSandro2000 yana ];
   };
 }
diff --git a/pkgs/development/tools/rust/sqlx-cli/default.nix b/pkgs/development/tools/rust/sqlx-cli/default.nix
index 9be99de8b33..e86380c53e7 100644
--- a/pkgs/development/tools/rust/sqlx-cli/default.nix
+++ b/pkgs/development/tools/rust/sqlx-cli/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "sqlx-cli";
-  version = "0.5.9";
+  version = "0.5.10";
 
   src = fetchFromGitHub {
     owner = "launchbadge";
     repo = "sqlx";
     rev = "v${version}";
-    sha256 = "sha256-z8gIuMknqiXpmXANS+V1GYioevCysDDzb+UYc9NeU04=";
+    sha256 = "sha256-OBIuURj0C/ws71KTGN9EbMwN4QsGMEdgoWyctmHaHjQ=";
   };
 
-  cargoSha256 = "sha256-b+X4u83Jae2xjKFT4lYqSk125wPQjMiM8wZ36tA/rjo=";
+  cargoSha256 = "sha256-9+I4mi7w1WK2NkmN65EtC52KtSZR9GjrHCPE9w82IXw=";
 
   doCheck = false;
   cargoBuildFlags = [ "-p sqlx-cli" ];
diff --git a/pkgs/development/tools/selenium/chromedriver/default.nix b/pkgs/development/tools/selenium/chromedriver/default.nix
index 4df279f7313..c47cddea586 100644
--- a/pkgs/development/tools/selenium/chromedriver/default.nix
+++ b/pkgs/development/tools/selenium/chromedriver/default.nix
@@ -17,6 +17,11 @@ let
       system = "mac64";
       sha256 = upstream-info.sha256_darwin;
     };
+
+    aarch64-darwin = {
+      system = "mac64_m1";
+      sha256 = upstream-info.sha256_darwin_aarch64;
+    };
   };
 
   spec = allSpecs.${stdenv.hostPlatform.system}
diff --git a/pkgs/development/tools/sumneko-lua-language-server/default.nix b/pkgs/development/tools/sumneko-lua-language-server/default.nix
index 85cdb9d53b4..d27506e2c4b 100644
--- a/pkgs/development/tools/sumneko-lua-language-server/default.nix
+++ b/pkgs/development/tools/sumneko-lua-language-server/default.nix
@@ -4,13 +4,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "sumneko-lua-language-server";
-  version = "2.5.1";
+  version = "2.5.6";
 
   src = fetchFromGitHub {
     owner = "sumneko";
     repo = "lua-language-server";
     rev = version;
-    sha256 = "sha256-3iWD0kXbF8Rad7fQ36ppD5q8V8COacLrT+vasCkygDc=";
+    sha256 = "sha256-dSj3wNbQghiGfqe7dNDbWnbXYLSiG+0mYv2yFmGsAc8=";
     fetchSubmodules = true;
   };
 
@@ -55,15 +55,15 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
 
-    install -Dt "$out"/share/lua-language-server/bin/${target} bin/${target}/lua-language-server
-    install -m644 -t "$out"/share/lua-language-server/bin/${target} bin/${target}/*.*
+    install -Dt "$out"/share/lua-language-server/bin bin/lua-language-server
+    install -m644 -t "$out"/share/lua-language-server/bin bin/*.*
     install -m644 -t "$out"/share/lua-language-server {debugger,main}.lua
     cp -r locale meta script "$out"/share/lua-language-server
 
     # necessary for --version to work:
     install -m644 -t "$out"/share/lua-language-server changelog.md
 
-    makeWrapper "$out"/share/lua-language-server/bin/${target}/lua-language-server \
+    makeWrapper "$out"/share/lua-language-server/bin/lua-language-server \
       $out/bin/lua-language-server \
       --add-flags "-E $out/share/lua-language-server/main.lua \
       --logpath='~/.cache/sumneko_lua/log' \
diff --git a/pkgs/development/tools/tokio-console/default.nix b/pkgs/development/tools/tokio-console/default.nix
new file mode 100644
index 00000000000..f04de27f1c2
--- /dev/null
+++ b/pkgs/development/tools/tokio-console/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, fetchFromGitHub
+, rustPlatform
+, protobuf
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "tokio-console";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "tokio-rs";
+    repo = "console";
+    rev = "tokio-console-v${version}";
+    sha256 = "sha256-1wxRTdDmgTlGJ3W1txDA/3Rnccs3KBw55vprrGaVnkg=";
+  };
+
+  cargoSha256 = "sha256-RScu5V55OowwWHi3MLjW8DPlTMA/IEBYFt4VUDUHPKo=";
+
+  nativeBuildInputs = [ protobuf ];
+
+  meta = with lib; {
+    description = "A debugger for asynchronous Rust code";
+    homepage = "https://github.com/tokio-rs/console";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ max-niederman ];
+  };
+}
+
diff --git a/pkgs/development/tools/wally-cli/default.nix b/pkgs/development/tools/wally-cli/default.nix
index bc0ca398fb9..c0ed3477060 100644
--- a/pkgs/development/tools/wally-cli/default.nix
+++ b/pkgs/development/tools/wally-cli/default.nix
@@ -17,8 +17,7 @@ buildGoModule rec {
     sha256 = "NuyQHEygy4LNqLtrpdwfCR+fNy3ZUxOClVdRen6AXMc=";
   };
 
-  vendorSha256 = "AVYG+aLpAXohUOORV/uPw7vro+Kg98+AmSmYGHtOals=";
-  runVend = true;
+  vendorSha256 = "sha256-HffgkuKmaOjTYi+jQ6vBlC50JqqbYiikURT6TCqL7e0=";
 
   meta = with lib; {
     description = "A tool to flash firmware to mechanical keyboards";
diff --git a/pkgs/development/tools/wasm-pack/default.nix b/pkgs/development/tools/wasm-pack/default.nix
index cf151733ef6..575d18f9e7d 100644
--- a/pkgs/development/tools/wasm-pack/default.nix
+++ b/pkgs/development/tools/wasm-pack/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-pack";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner = "rustwasm";
     repo = "wasm-pack";
     rev = "v${version}";
-    sha256 = "sha256-I5TxpJTSus3fXMV0We9SCVMEERS0wIdYvC8SHo8zEHY=";
+    sha256 = "sha256-nhO/SLeJTq2viDqsJCRNLbgjyDKRli3RWExUNzKT9ug=";
   };
 
-  cargoSha256 = "sha256-MmbQb2JYaDpLijKRAxzD9pR4gh+Eoem0MtfdiuRC7Tg=";
+  cargoSha256 = "sha256-6qrCHpg92IRPsf/dK6xcLGX8BLmqox3vgLRqsV4ubsY=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/web/cypress/default.nix b/pkgs/development/web/cypress/default.nix
index c5ec9b95dce..aea8ba6b19a 100644
--- a/pkgs/development/web/cypress/default.nix
+++ b/pkgs/development/web/cypress/default.nix
@@ -17,11 +17,11 @@
 
 stdenv.mkDerivation rec {
   pname = "cypress";
-  version = "9.1.1";
+  version = "9.2.0";
 
   src = fetchzip {
     url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
-    sha256 = "sha256-zJi4fNsj2MM7sv5zb3B3a03tmkhzsb9sTTqEhpd7z+w=";
+    sha256 = "sha256-NxmGMHAEVuFl/3YgcHSbg+yWHB2tRpVTWlP5p5nGtPc=";
   };
 
   # don't remove runtime deps
diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix
index 0c4f2a35372..31a8ef404d9 100644
--- a/pkgs/development/web/deno/default.nix
+++ b/pkgs/development/web/deno/default.nix
@@ -17,15 +17,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.17.0";
+  version = "1.17.1";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fkgsMPSmJVp62sVKuuHOsOUczFfBoooKNEY3w5f9zbE=";
+    sha256 = "sha256-XzpOJTLTiF4GrECC7ObFzoPusFM8mvhUGH9F52o88MY=";
   };
-  cargoSha256 = "sha256-wzQf5Wb0kxAg5sNxom9qltdkpJbNatA7IK4oVstQXME=";
+  cargoSha256 = "sha256-7uTxDkAyViNidSDH6bdUrtP96vQgyz+p2OlK+/FUJvc=";
 
   # Install completions post-install
   nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix
index 56c83e38c4f..72615b35622 100644
--- a/pkgs/development/web/nodejs/nodejs.nix
+++ b/pkgs/development/web/nodejs/nodejs.nix
@@ -181,6 +181,7 @@ let
       maintainers = with maintainers; [ goibhniu gilligan cko marsam ];
       platforms = platforms.linux ++ platforms.darwin;
       mainProgram = "node";
+      knownVulnerabilities = optional (versionOlder version "12") "This NodeJS release has reached its end of life. See https://nodejs.org/en/about/releases/.";
     };
 
     passthru.python = python; # to ensure nodeEnv uses the same version
diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix
index 5896bbf336e..efed625cd2f 100644
--- a/pkgs/development/web/postman/default.nix
+++ b/pkgs/development/web/postman/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "postman";
-  version = "9.6.1";
+  version = "9.7.1";
 
   src = fetchurl {
     url = "https://dl.pstmn.io/download/version/${version}/linux64";
-    sha256 = "sha256-4nnOMMfxk4VP8t5eLGHrlHEIeDA+Tp1Hqfe8EWaXUik=";
+    sha256 = "sha256-Ioh2FfcKkpLGQdYmRnJC5cj7bNCwCMkg/gsXwPdQa1U=";
     name = "${pname}.tar.gz";
   };